1/

So you want to be a solidity developer?

In this thread, I'll detail my journey as a solidity dev and answer such questions like:
- What resources should I use to learn?
- Do I need a degree in Computer Science?
- Are all crypto devs gods?
2/

A little disclaimer: I don't claim to be a god solidity dev at all.

In fact, I consider myself just sufficient enough; enough to understand protocols and implement basic contracts. This thread is just simply some tips I wish I knew when starting my journey.
3/

First of all, a little bio about my software developer journey.

I got into coding in my late 20s, which is considered dinosaur years in developer years.

I started off self-teaching React through online tutorials on Udemy and FreeCodeCamp for a year.
4/

This was 2017, around the same time the ICO boom was about to take off. Once it did, I was enthralled. I knew I wanted to become a crypto dev.
5/

But then the bear market happened and normal life resumed.

At this point I had the option of accepting a full-time offer or going back to school to get a Master's in Computer Science. Reluctantly, I chose the latter.
6/

Anyways, enough about me. All this info will be relevant later on in this thread.
7/

First question: what resources should I use to learn?

There are many great beginner tutorials out there, a lot more than when I first tried to learn solidity back in 2017.

I recommend:
- Cryptozombies: bit.ly/3fBTCNe
- Stephen Grider: bit.ly/3xv2QB1
8/

However, once you're done with these tutorials you'll still struggle if you try to understand popular DeFi protocols, such as Uniswap.

That's because there's just a huge lack of advanced solidity tutorials out there. This is the biggest barrier to entry right now.
9/

If you're at this point in your solidity journey, my advice is TO NOT TAKE ANYMORE TUTORIALS.

Really, it won't do anything other than just make you feel more insecure and waste your time.
10/

The next step is to clone the repo of a popular protocol and try to understand what it's doing underneath the hood.

I recommend cloning Uniswap's frontend so you can click around and see what methods it's actually calling on the smart contract.
11/

Finally, the last step is just take the leap of faith and get involved in a real crypto project. Anywhere where they're happy to take volunteers. I did this with @snowballdefi.

Don't wait to feel "ready" before taking this step, because you'll never feel ready.
12/

For the first few weeks you'll feel completely out of your depth and that's fine. I'm pretty sure most of the devs on @avalancheavax felt the same way when they first started.
12/

The thing with solidity is that it's actually quite an easy language to learn.

But when you try to go through the codebases of popular protocols, there are certain gotchas that you wouldn't know about unless someone was there to guide you.
13/

So try to take on a volunteer apprenticeship/internship role at a project. This is really the best way to spearhead your solidity knowledge in a short span of time.
14/

As the saying goes: see one, do one, teach one.

In order to complete your learning, teach. The last step is where you start consolidating all the knowledge you've learned.
15/

You can do this by writing tutorials. For example, @avalancheavax is offering $50k in prizes for tutorials (bit.ly/3yu9bOc).

This will also help enforce your coding; it's no coincidence that good coders also tend to be good writers.
16/

Or take on an intern yourself. We recently took on a summer intern, @Louis_Mslf, whom I'm currently mentoring. (He also writes on @traderjoe_volly).

He's making amazing progress and currently writing up his own bonding curve contract without having prior solidity knowledge.
17/

Lastly, in order to continue your learning: keep on reading. Read as many smart contracts from as many protocols as possible.

By reading abundantly, you'll be able to differentiate what's good coding practice from bad.
18/

You'll also be surprised to learn that many popular DeFi projects actually have poorly written code! So not all crypto devs are gods :)
19/

Anyways, this thread went on way longer than I planned.

In the next thread I'll answer whether you need a Computer Science degree to become a solidity dev.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with cryptofish

cryptofish Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @cryptofishx

1 Jun
1/ Your feed is probably filled with it and it seems like everyone can't talking about it.

But what the juice is MEV?

In this thread I explain:
- MEV
- Why gas fees are so high on $ETH
- Sandwich attacks
- Dark Forests
- Flashbots
- And how all this relates to $AVAX
2/ MEV stands for Miner Extractable Value.

On Eth, each tx has a fee and miners can choose which tx's to put in each block in whatever order they want.

MEV is the profit miners can make by including or re-ordering tx's into the block they mine.
3/ E.g, say there's a $10,000 arbitrage opportunity on Uniswap.

A bot submits a tx for it with a $10 gas fee to the miner.

One of two things may happen:
1. Miner executes the transaction themselves.
2. Other bots notice the tx and offer a higher gas fee to frontrun that tx.
Read 17 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(