MENU

From JVM to EVM, Comms and Diffs

0
289
0
After graduating I worked for a company that manufactured Java cards (smart cards).Still, I remember the hundreds of Java bytecodes.10 years later, now I am developing Ethereum smart contracts.As such, I am feeling catharsis with how similar those are.Shortly, look at the commonalities and differences. Java carddeveloped by Java programming language,compiled to Java bytecodes,run on Java virtual machine,executed on a single computer. Smart Contractdeveloped by Solidity/Vyper/YUL programming language,compiled to EVM bytecodes,run on Ethereum virtual machine,executed on an infinite number of computers in the world. There are more in deep such as Garbage Collector, Object Ref and etc.But it’s quite enough to understand the basics.I am really enjoying developing smart contracts, and I am passionate about solving security problems.
Read More ›

Github 200 Stars and NaughtCoin

Today I earned 200 GitHub stars. ?I just wanted to share what I learned about Ethereum during the time. So somebody who comes later would learn quickly.My studying basically focused on Ethereum security issues and how to prevent them.Many developers followed me, and I am so proud of myself to know what I can do more.Thank you so much you’ve been such wonderful learners.Tony – https://github.com/maAPPsDEV Today’s game is NaughtCoin. NaughtCoin is an ERC20 token and you’re already holding all of them. The catch is that you’ll only be able to transfer them after a 10 year lockout period. Can you figure out how to get them out to another address so that you can transfer them freely? Win this game by getting your token balance to 0. https://github.com/maAPPsDEV/naught-coin
Read More ›

Dan Price’s CEO Story

0
477
0
How I learned to be a better boss: I was a bad CEO. Years ago, I found a McDonald’s training handbook on the desk of an employee named Rosita. Turns out she was training to become a manager there because she couldn’t survive on the income I paid here. I called her to my office. She was hiding the McDonald’s job and thought it would get her fired. What kind of culture had I created? Scarcity and fear. Rosita is a college grad but was making $30k a year. She’d leave our job at 5 and secretly work 5:30-11 every weeknight at McDonald’s for 1.5 years. Before she got the 2nd job, there were nights where she would line up for a food bank. In our office that day, we went over her finances. We paid market rate. But as a CEO, I was out-of-touch with what it was like to work off student debt at $30k a year in an expensive city (Seattle). She came back and said she needed a $10k raise to quit the 2nd job. I said OK if she took on some extra duties. She quit McDonald’s, moved out of her crappy apartment and used […]
Read More ›

Completed Ethernaut Solidity Wargame

Finally, I have completed 22 levels of OpenZeppelin Ethernaut Solidity wargame.I have done these games in a different way, rather than working in broswer’s console.I created a GitHub repository for each level, and then made Hacker contract, doing experiments.Thus, in my Github, for each game, it has the target contract which is vulnerable, the hacker contract as well as test scripts.I wrote every README including knowledge that helps to solve games, and security considerations you should avoid in practice.Until Dex level was done, it took almost a month or so.Through the games, I could learn really interesting and critical security risks. Additionally, I could learn about how each Solidity version covers that risks.The most challenging levels were “Alien Codex” and “MagicNumber”. You can browse the game solutions and hacking contracts, also you can be a hacker by following my step-by-step guide. https://github.com/maAPPsDEV?tab=repositories&q=attack&type=&language=&sort=
Read More ›

Why did I become a Solidity developer?

0
644
0
https://youtu.be/MnX_CanqiCU

I have graduated from a university with a degree in software engineering.

And in every programming, my question was "What if I use the smallest data type?", and "How can I reduce the code lines?".

This attitude played an important role in my later career. I always tried to make bug-free and optimized codes, and it turned out that the feedback process between QA and developer got decreased or flat-out gone. Thus, my clients saved time.

I believe that the developer is also responsible for the success of the team or company where he belongs to, and must work for the ultimate goal of the team, not just for the money.

There is another reason why I became a Solidity developer. I have implemented Java virtual machine on the C-based smart card platform. I still remember the most of Java bytecodes.

None of this had even a hope of any practical application in my life. But 10 years later, when I met Ethereum virtual machine and bytecode, It was historical, programmatically subtle in a way that other developers can't capture.

My research mainly focused on two things - one is smart contract security, and another one is gas optimization.

  • In order to research security issues and hacking cases so far, I created 22 vulnerable contracts and made experiments through hacker contracts that attack the vulnerable contracts. Now, I promise that your smart contract never gets destroyed for the same reason that ever happened in the past.

  • Next, I am convinced that Assembly is the best way to keep gas costs down of your functions. I created and tested an inline assembly function that do a addition of two numbers, and I saved 86 gas. This gives a rough idea how much gas you can save for a more complex contract.

I am still studying Ethereum, Solidity, Oracle, sidechain, and other chains. But sometimes, learning other developers may be a faster and easier way. I could learn really a lot of patterns and architectures while working in different teams in the past, more than working alone. This is the reason why I am looking for a team where I can collaborate in, and where I can add value to, with my previous experiences.

I am sharing my developer stories and researches about the developer's responsibility in the team from a philosophical perspective. And in every study, my question is "What kind of developer is the one that most companies want?" So, the one who can be a good team player, who can attend daily stand up, who can make and review GitHub pull requests - is this someone like who you are looking for?

Thank you for watching my story.

Read More ›

The client eventually asked me to be a superhero!

0
635
0

It was a Friday when I was working for a software agency a few years ago. After work that day, I was planning a weekend vacation with my family. But in the middle of the night, I got a call from the manager. He said that there was a risk that the product could not be delivered on the date promised with the customer due to an issue that occurred in the QA stage. Then he asked me to become a superhero and help the client, then save the world.

image

I said, "Of course". I could have turned down his request. Not only additional work was not in the contract, but also both my personal life and time with my family were precious. But if I had turned down his request because of spending time with my family, he would probably not be able to keep his promises to customers and lose his credibility.

The problem doesn't end there. If the company I belong to loses credibility among customers, the company no longer has any value as an agency. Therefore, I myself will become a useless person, which indirectly affects my personal life. So I decided to cancel the weekend break and immediately started work to resolve the issue raised.

The idea of ​​only maintaining trust with the customer and satisfying the customer allowed me to concentrate more on the work, and as a result, I have solved the problem and delivered the final product much sooner than the promised time.

A few days later, after talking to the customer, the manager said that "both we and client appreciate for your hard work". Of course, there was an off-contract bonus.

image

Through this work, I was convinced of two lessons.

First, as a member of an organization, your goal is not to earn hourly money or salary, but to set the organization's purpose as my your and to share ideas for success.

Second, it is necessary to constantly try to ensure the quality of the features that you always make. At that time, there were other developers on the team besides me. But it was necessary to think about why the manager asked me first. I always write bug-free, optimized code and care about how my work works in the final product delivered to the customer. I always evaluate software products from the customer's point of view, and believe in my responsibility to improve and maintain the user experience. This mindset made the manager believe that there is always someone out there who can solve the problems raised, and I think that's the reason why he asked me first.

The point is to become a necessity - to be somebody, not just anybody.

This is why I always say that developers are also responsible for the success of the company.

Read More ›

When Frozen is connected to a Developer

0
521
0
Everyone has their favorite movies and their favorite characters. My favorite characters are Elsa and Anna from Frozen. Elsa and Anna are like two sides of a coin, both strong, albeit one through power and confidence and the other through clumsy sticktuitiveness and love. But sometimes I find their different personalities in the two programming languages that are popular among developers. You would have almost guessed it. Yes, TypeScript and JavaScript. Elsa is powerful, beautiful, elegant, magical, and charismatic. If you offend her, you can become a piece of ice that is a compile error. So I compare Elsa to TypeScript, because it illustrates the maturing of her powers. Anna is more daring than graceful and, at times, can act before she thinks – compile. She doesn’t have good postures, she’s not very elegant, but she’s a good person and she’s utterly determined. Anna is flexible, smart, lovable, and optimistic. Just like JavaScript. Which of those two do you think I like more? Well, both of them are essential to making my life easier in a way of entertaining as well as programming. Do you guys agree too? What is your favorite programming language? How about looking for a character […]
Read More ›

A React.js Developer’s responsibility

0
501
0
Hi, my name is Tony. I graduated from Dalian University with a degree in software engineering and I worked on several projects in the software industry.I have been a React developer for the past 2 years.Having worked with many global companies and teams over the years, I have found that they are not looking for just skilled, professional, and senior developers. A person who is passionate about adding value to brands and products of the companies and teams. A person with a philosophy that connects his life to the success of organizations and companies. Perhaps that kind of person is the one that most companies want.It is because the developer is also responsible for the success of the company.His responsibility is writing codes not only just running, but also considered user experience, performance, and compatibility, even though it’s a line. I am aiming to provide high-quality codes that assist the teams in achieving their ultimate goals.I write bug-free and optimized code and care about how my code works in the final product delivered to the customer.I always evaluate software products from the customer’s point of view, and I believe that my responsibility is maintaining and improving the user experience. Are […]
Read More ›