19
20 Comments

Ethereum programming. The good, the bad and the ugly

Thinking in becoming an indiehacker in web3/metaverse?

A few things i´ve learned from a bootstraper perspective last month.

TL;TR It looks like a Sergio Leone movie but everything is very expensive.

good bad ugle

Brief introduction

I´ve been working on Contratospublicos.eu ( a public contracts search tool for spanish contracts) for almost a year and now that is working almost fully automated I needed to relax and disconnect, so i decided take a look at the web3 rabbit hole.

How i did it?

Apart from looking at coindesk and see how everyone but you is getting richer, i did the following.

  • Follow a few accounts in twitter that are fulltime at web3. cdixon, gregisenberg, soundxyz_ .....
  • Read a few whitepapers about coins, what they do, how they work, what they offer.
  • Started to use my wallet (created a few months ago). Added some funds to coindesk (not much) and tested how to buy and sell coins.
  • Created an account in Axie Infinity to test how the economics work first person in pay to earn games.
  • I did a few courses on blockchain programming in solidity and created some code to really taste how it feels to work with blockchains, problems,etc... That is the (programmer) way.

The good

good

Many good things. Bitcoin is very polished and basically is money with steroids (big volability, lovers and haters). Ethereum is were the mambo jambo is.

A few things i discovered.

  • Many people excited about crypto and very strong opinions on both sides (lovers,haters).
  • It´s global, that means is very difficult for anybody to stop it and means more opportunities for people that were born in places with less opportunities which is good. The world is more connected now.
  • Many opportunities for those that can sell physical things and can take payments in crypto. Many digital things to buy, but you cannot buy many physical things.
  • NFT´s . Many people just look at the finger (the cartoon pictures) and don´t look at where the finger is pointing (ownership of anything. Including physical homes, land,....).

The bad

Sometimes is like the wild west but not like in a classical west movie, more like in a Sergio Leone´s movie.

  • So many Scammers. Wanna see one? Just tweet something with the words "metamask", "wallet" or "eth" and you´ll see.

  • Gas cost are a very big problem. Mainly in L1 (ethereum network), have not tried L2 networks.

tip

L1 is level 1, the main ethereum network. Where most of the people have wallets and where is most of the action. L2 are networks that work in parallel with L1 and are compatible but there are less people. L2 are usually cheaper and a little less secure.

  • Since cost of doing things in the L1 are so high (deploying a contract can cost hundreds of $ and interacting with it with metamask is like having a hole in your pocket) you need good money to do things in ethereum.
    bad

Paying 400$ to deploy a contract is very common (even cheap deppending with who you talk), and try saving things to the blockchain, uff it really hurts. Then you need a frontend to access this contract (usually react) and interact with users.

  • Hackers, hackers everywhere and hidden. Since you are working with money all the time, ANYBODY in the world with bad intentions can attack your application. You see contracts hacked and tens of millions stolen every couple of weeks.

The ugly

ugly

  • You always have to suspect about everyone or everything. Most people are good, but you only need to fail one time and you are empty.

  • It´s very difficult for normal people to do things. It´s relative easy to make a mistake with your wallet and send funds to the wrong address since you are copying addresses all the time and if you make a mistake say goodbye to your funds.

  • Sometimes it seems like an sport for rich people since people that bought 2 years ago crypto have made a lot of money and spend money in things you don´t understand or seem silly to you.

  • Not everything is so pretty. Many people have lost a lot of money too, not everyone has won a ton of money.

  • By the way, contracts are mostly inmutable so if you have any error in the contract, you have to deploy again in a different address but at the same price.

For programmers

From the perspective of a programmer. Programming in solidity is not as difficult as i expected.

  • Everything is an address and everything is an object. It has been created with that in mind.
  • Since everything is an object, is pretty easy to interact between contracts.
  • Payments are very easy, maybe even too easy.
  • The code of every contract is public so is very easy to learn (and copy) code and create very quickly contracts.
  • Security is CRITICAL. Yep, with capital words. Eveyone can see the code and you are working with money, my friend.

Final thoughts

end
Web3 is amazing, but also is expensive, caothic and anarchic.

If you are doing well in web2, I wouldn´t leave everything and go to web3, and if you don´t have much money is complicated too.

Another option, you can work for clients. I think crypto programmers are gonna be very demmanded in the next few years and can earn a lot of money and as i said before it´s fun.

I don´t think is gonna change everything because is not good for everything. Many things are never gonna be there and it can take a few years until we start to translate things to real life. One exception for this probably are nomad workers. Been able to pay without depending on banks seems like a very interesting thing.

Not ready for mainstream users. Too many things can fail and no one is on the other side to fix them.

Politicians hate it and is understandable. It creates chaos and they don´t understand how it works. In a few years governments will start to see the potential for transparency and accountability and will start using it.

Indiehackers doing things in web3

I´ve seen @Shpigford NFT collections are great.
https://opensea.io/collection/fractional-iridescence

@marckohlbrugge created a solidity game -> https://twitter.com/marckohlbrugge/status/1463913495146151937

Please add more people in the comments to follow.

  1. 2

    This is great timing! I’ve just started digging into ethereum and have a question. How do you get access to on chain data? Do you have to connect to a node? How does metamask do it?

    I’ve been trying to build some bots and analytics visualizations but running a node seems expensive and 3rd party APIs like etherscan have very low limits that would make staying in sync with the chain impossible.

    1. 1

      I haven´t tried to access the onchain data to be honest.

      Mostly when you work with contracts, you keep track of the information in your own contract (balances, access list,etc..). The way to track what you are doing is by following the events but haven´t used any tools.

      I think probably having a node it would be the best option, but as you said is expensive and not easy to mantain.

      Cannot help much with that, sorry.

      1. 2

        Thanks and good luck with the contracts. It’s an exciting world in crypto now!

  2. 2

    Nice article!

    Do you have any advices on how to get gigs as a crypto programmer?

    1. 3

      I haven´t tried to find gigs but for for previous experiences:

      Since many things are moving in discord groups, probably there are opportunities there too but be careful, you can find bad actors there.

      Hope this helps.

  3. 2

    super comprehensive, thanks for sharing

    for how long have you joined this field? one year?

    1. 2

      Been exploring for a while but didn´t do anything serious.

      Programming just about month and a half.

  4. 2

    Thanks. I was wondering about ethereum programming today, so your post is very timely.

    Did you write anything interesting?

    1. 1

      I have created a few contracts locally with truffle and remix (great tool). A token, wallet and a few more things.

      Just worked locally with truffle, when i was going to deploy to the main network saw the gas cost and almost fall from my chair 😄, but its fun. I totally recommend it.

      1. 2

        Hey Ricardo, if you want to deploy on a mainnet without paying huge gas fees I would suggest using Polygon !

        1. 1

          Agree.

          I´m gonna try L2 networks. Seems like a very good option.

          The problem is most people are on L1 and that reduces the potential customers, but seems like the best option for many projects.

  5. 2

    Very good summary, thank you for sharing.

  6. 1

    My hope in bitcoin is renewed after a recovery expert named Jim whom I hired after a sim-swap hack was carried out on my device leaving my coinbase account vulnerable. My coinbase was accessed and crypto moved outside to an external wallet. JimFundsRecovery @ Consultant dot Com simply pursued my case with a local police report I made/ some required info and was able to recover 95% for me in a 2 weeks long recovery process.

  7. 1

    Excellent summary, and thank you for sharing! I agree with you. For a good investment in cryptocurrency, you always need to be on different portals about people that are into cryptocurrency and read about their thoughts and investigations. I am also subscribed to some Telegram channels about crypto signals from https://medium.com/coinmonks/top-3-telegram-channels-for-crypto-traders-in-2021-8385f4411ff4. I read every post there because I can always find something new about the world of cryptocurrency. In this field of investment, being informed is the most advantageous thing you can ever do for being better.

  8. 1

    Great article, Ricardo.

    Tell me something, that you've created was a smart contract for ERC-20 or ERC-721/1155?

    1. 1

      ERC-20 for now. I´m gonna be creating ERC-721 this weekend. ERC-1155 in a couple of weeks.

      That´s great about solidity, clear standards makes easy to create tokens, NFT and to mix them. The most challenging is to handle propertly the resources (to reduce what you write in the blockchain) and security.

      Didn´t try Layer 2 anyway, probably in L2 is less critical the resources since is not expensive.

Trending on Indie Hackers
How I Launched My AI Startup with a Warm Email List and Zero Marketing Budget? 27 comments What you can learn from Marc Lou 19 comments Here's how we got our first 200 users 17 comments Software Developers Can Build Beautiful Software 10 comments Worst Hire - my lessons 8 comments Transforming Habits: What I Learned from 90+ Days of Regular Workouts 7 comments