I've developed software for over 22 years now, which is way over half of my lifetime, both professionally and as a hobby.
Here are some of the most valuable lessons I learned along the way:
GitHub hosts more than 200.000.000 repositories.
But only a fraction of them are valuable resources for specific niches.
Here are 10 of my favorites repositories that help you grow as a software developer:
With average salaries of $145,000 for remote positions and an open end to what you can earn, Solidity developers are in high demand.
Time to become one and enter an interesting field in the industry.
This is your roadmap to becoming a Solidity Developer in 2022. ↓
GitHub hosts more than 200.000.000 repositories.
But only a fraction of them are valuable resources for specific niches.
Here are 11 of my favorites repositories that help you grow as a software developer:
If you want to become a Web 3.0 developer, a structured approach can leverage your learning by a lot.
Let me give you a roadmap that will definitely lead you towards your goal!
🧵👇🏻
15 Top IT Certifications In 2022
The industry loves certificates, but not all of them are equal.
An overview of the highest paying ones right now, according to studies:
15 Top IT Certifications In 2022 (before the year ends!)
The industry loves certificates, but not all of them are equal.
An overview of the highest paying ones right now, according to studies. ↓
15 Top IT Certifications In 2022
The industry loves certificates, but not all of them are equal.
An overview of the highest paying ones right now, according to studies. ↓
I've developed software for over 21 years now, which is way over half of my lifetime, both professionally and as a hobby.
Here are some of the most valuable lessons I learned along the way.
A thread.
15 Top IT Certifications In 2022
The industry loves certificates, but not all of them are equal.
An overview of the highest paying ones right now, according to studies. ↓
GitHub hosts more than 200,000,000 repositories.
But only a fraction of them are valuable resources for specific niches.
Here are 10 of my favorites repositories that help you grow as a software developer:
15 Top IT Certifications In 2022
The industry loves certificates, but not all of them are equal.
An overview of the highest paying ones right now, according to studies. ↓
Ten skills that boosted my career and tripled my income in the last two years:
1. JavaScript
2. Rust
3. GraphQL
4. Docker
5. Kubernetes
6. AWS
7. Software Architecture
8. Communication
9. Listening
10. Empathy
"Why should we hire you?"
This is another of those questions everyone interviewing hates.
It spread from traditional jobs into the tech world, and even software developers have to deal with it.
But you can turn this into a huge win. Let's see how.
A thread. ↓
Learning Web 3 isn't difficult, finding the right resources is.
Here are a few sites to get you started:
- odysseydao .com
- useWeb3 .xyz
- learnweb3 .info
- web3 .university
- buildspace .so
- learnweb3 .io
I've started to develop software at the age of 12. That was 21 years ago.
Here is some advice I want to give to any aspiring software developer trying to learn the craft and getting into the industry.
A thread. ↓
Data structures and algorithms are important for any software developer.
Sometimes loved, more often dreaded, but at the core of our craft.
Here is an introduction to the most important data structures, including learning resources.
A thread. ↓
Git is by far the most used source control management tool out there.
It is basially an essential to know. And this justifies knowing a few of the most important git commands you need in your daily work.
Here are 19 that any developer should know.
A thread. ↓
Git is by far the most used source control management tool out there.
It is basially an essential to know. And this justifies knowing a few of the most important git commands you need in your daily work.
Here are 19 that any developer should know:
Data structures and algorithms are important for any software developer.
Sometimes loved, more often dreaded, but at the core of our craft.
Here is an introduction to the most important data structures, including learning resources.
A thread. ↓
Don't only learn programming languages and frameworks.
Also, learn:
- Problem-solving
- Critical thinking
- People skills
- Software design and architecture
- Computer science fundamentals
Languages and frameworks can be your entry, but the above help you keep your job.
Let's be honest, CSS can be pretty difficult.
I had a hard time learning it, but there are a few resources that can definitely help you to understand the style language of the web.
Here is a collection of my favorite ones:
Let's talk about Rust.
A language with a steep learning curve but one of the most rewarding programming languages out there.
It powers parts of AWS, Dropbox, and probably many other platforms you use.
A thread. ↓
Don't only learn programming languages and frameworks.
Also, learn:
- Problem-solving
- Critical thinking
- People skills
- Software design and architecture
- Computer science fundamentals
Languages and frameworks can be your entry, but the above makes you a good developer.
I recently posted a lot of visual JavaScript tips, explanations, and algorithm implementations. 💛
Here is a collection of them. 📖
They will definitely help developers of any skill level to learn something new.
A thread. ↓
Don't only learn programming languages and frameworks.
Also, learn:
- Problem-solving
- Critical thinking
- People skills
- Software design and architecture
- Computer science fundamentals
Languages and frameworks can be your entry, but the above help you keep your job.
Here is a rough roadmap to becoming a full-stack Web 3 blockchain developer:
1. HTML
2. CSS
3. A CSS framework
4. JavaScript/TypeScript
5. CS fundamentals
6. React/Vue/Svelte/Angular
7. Node.js
8. Express/Fastify
9. ethers.js/web3.js
10. Solidity
Here is a rough roadmap to becoming a full-stack Web 3 blockchain developer:
1. HTML
2. CSS
3. A CSS framework
4. JavaScript/TypeScript
5. CS fundamentals
6. React/Vue/Svelte/Angular
7. Node.js
8. Express/Fastify
9. ethers.js/web3.js
10. Solidity
Clean code is important, clean code helps others understand your code, but clean code is also pretty subjective!
I want to give you my perspective on it, drawing from years of experience leading teams of developers as a tech lead and working in teams.
🧵
Git is by far the most used source control management tool out there.
It is basially an essential to know. And this justifies knowing a few of the most important git commands you need in your daily work.
Here are 19 that any developer should know.
A thread. ↓
There is React, Vue, and Angular, and then there is Svelte. It makes so many things different from all the others, which comes with an awesome developer experience.
Time for an introduction to Svelte, the frontend framework you might fall in love with. 💛
🧵🔽
Here are some programming languages that will get you developer jobs:
✅ PHP
✅ JavaScript
✅ Java
✅ Perl
✅ Go
✅ Rust
✅ C
✅ C++
✅ C#
✅ Cobol
Here is what won't help:
❌ Hating on any of those publicly and discouraging people simply because YOU think it sucks.
Most Software Developers don't code all day. You should never feel guilty for not writing code for 8 straight hours.
Software development is also about thinking, taking breaks, thinking again, and then writing a few lines of code, testing whether they work afterward.
After 22 years of software development, I can tell you one thing:
My best investment was learning JavaScript.
I used many other languages, but I always stuck to JavaScript due to its versatility and broad range of applications.
It even serves me well in Web 3. 💛
Developing software is crazy...
1. You write code to solve a problem
2. You write code to test your code that solves the problem
3. You write code to deploy your code
4. You write code to test that your deployment works
5. You write code to monitor your solution
...
I started to develop software at the age of 12. That was 22 years ago.
Here is some advice I want to give to any aspiring software developer trying to learn the craft and getting into the industry:
The top 5 most popular web frameworks and technologies according to the Stack Overflow Developer Survey 2022:
1. Node.js - 47.12%
2. React.js - 42.62%
3. jQuery - 28.57%
4. Express - 22.99%
5. Angular - 20.39%
Let's talk about Rust.
A language with a steep learning curve but one of the most rewarding programming languages out there.
It powers parts of AWS, Dropbox, and even some important blockchain projects.
A thread. ↓
Ten skills that boosted my career and tripled my income in the last two years:
1. JavaScript
2. Rust
3. GraphQL
4. Docker
5. Kubernetes
6. AWS
7. Software Architecture
8. Communication
9. Listening
10. Empathy
I'm a senior staff-level engineer, and I sometimes take a week or two to fix a bug.
Sometimes the issue is a fix in only one line of code.
Software systems are complex.
If you are a beginner and struggling:
It's fine. Take your time. You'll fix it. It's not you.
Git is by far the most used source control management tool out there.
It is basially an essential to know. And this justifies knowing a few of the most important git commands you need in your daily work.
Here are 19 that any developer should know.
A thread. ↓
There is a global talent shortage of software engineers.
This shortage is projected to reach 85.2 million by 2030, but many developers get rejected daily because they unnecessarily fail their interviews.
Here is how you can do better and ace any technical interview:
We all love Udemy courses, don't we?
They are super great to pick up a new concept or technology at the beginning before we dive into it ourselves and build our own projects.
Here are 11 FREE Udemy courses for you to learn JavaScript!
A thread. ↓
If there is one thing you really need as a software developer, it's patience.
- You can't learn coding in a day
- You can't finish most projects in a week
- Sometimes understanding a concept takes months
- Getting crucial experience takes years
- True mastery takes forever
Let's be honest, CSS can be pretty difficult.
I had a hard time learning it, but there are a few resources that can definitely help you to understand the style language of the web.
Here is a collection of my favorite ones.
A thread.
Your learning path to Web 3 web dev should start with the basics:
1. HTML
2. CSS
3. A CSS Framework
4. Computer science fundamentals
5. JavaScript
6. A frontend framework
7. Blockchain fundamentals
8. Web 3 client libs
Don't skip something only because you want to be fast.
Machine Learning and Data Science in ... JavaScript?!
Yes, that's possible!
Python is not the only language you can do data science and machine learning with.
Here are a six JavaScript libraries that will blow your mind:
We all love Udemy courses, don't we?
They are super great to pick up a new concept or technology at the beginning, before we dive into it ourselves and build our own projects.
Here are 11 FREE Udemy courses for you to learn JavaScript! ↓
Hi 👋 if you are interested in:
🛠 JavaScript
🦀 Rust
🌐 Web 3
⛓️ Blockchain
Follow me! ✔️
I'm planning on using Twitter to share a lot of content that you don't want to miss. 🎉
You can be successful without:
- Being an entrepreneur
- Training ML models
- Doing web development
- Earning a million bucks
- Gaining millions of followers
- Releasing a product
- Dropshipping
Some people are successful simply living, and I find that great.
Data structures and algorithms are important for any software developer.
Sometimes loved, more often dreaded, but at the core of our craft.
Here is an introduction to the most important data structures, including learning resources:
JavaScript, TypeScript, Python, Java, Go, Ruby, Rust, Ook!, PHP, or whatever else...
A programming language doesn't matter as long as it gets the job done. Period.
The top 5 most popular programming, scripting, and markup languages according to the Stack Overflow Developer Survey 2022:
1. JavaScript - 65.36%
2. HTML/CSS - 55.08%
3. SQL - 49.43%
4. Python - 48.07%
5. TypeScript - 34.83%
Six reasons to become a software developer:
1. You will always be learning
2. It helps a lot with problem-solving overall
3. There is a huge demand
4. It boosts your creativity
5. The salary is great
6. Remote work is on the rise
Data structures and algorithms are important for any software developer.
Sometimes loved, more often dreaded, but at the core of our craft.
Here is an introduction to the most important data structures, including learning resources:
Six random JavaScript facts:
1. null is an object
2. NaN is a number
3. Math.max() < Math.min()
4. There was a time undefined could be redefined
5. Array.sort() sorts all arrays lexically
6. "b" + "a" + + "a" + "a" === "baNaNa"
Know other fun JS facts? Share them!
Want to get your hands dirty on the frontend side of Web 3?
Perfect! 🔥
Time for a small introduction to Web 3 development with JavaScript and ethers.js!
A thread. ↓
By 2026, there will be a global shortage of about 545k software developers.
(Source: Manpower Group)
You don't need to work a shitty job - you have freedom of choice.
Continue to work on your skills, gather more experience, and you will be rewarded.
💛 JavaScript tip 💛
You can use a BroadcastChannel to send messages between browsing contexts (tabs, windows, etc.) that share the same origin.
You can use this to sync your frontend state across multiple browser tabs a user has open, no matter where they make changes.
How to become a better software developer:
1. Admit you don't know it all
2. Practice, practice, practice
3. Take every opportunity to learn
4. Accept your peers as a valuable source of knowledge
5. Embrace failure as a way to grow
I've been a software architect for most of my professional life, and system design has always been my bread and butter.
Here are 7 steps that I would advise you to follow to ace your system design interview.
They will bring you further than ever, promised.
A thread. ↓
🤎HTML tip 🤎
ℹ️You can use HTML to create a native dialog. No need for JavaScript!
✅And with a nested form that is attached to the dialog, any actions attached to it are semantically structured!
What is a Blockchain?
You hear the term Bitcoin and Blockchain more often these days, but there must be more to the technology than just crypto, or not?
Well, we can take a look at the underlying technology to understand better what it is.
A thread. ↓
"Why should we hire you?"
This is another of those questions everyone interviewing hates.
It spread from traditional jobs into the tech world, and even software developers have to deal with it.
But you can turn this into a huge win:
Most code you see on GitHub, especially in large open-source projects, has undergone countless refactorings.
It reached this level of quality through failure and multiple iterations.
Don't be afraid to show your own code. It will also improve when finally battle-tested.
I'm a senior engineer, and I sometimes take a week or two to fix a bug.
Sometimes the issue is a fix in only one line of code.
Software systems are complex.
If you are a beginner and struggling:
It's fine! Take your time. You'll fix it. It's not you.
Another cool element that was added in HTML 5.2 is the dialog. 💬
And with a nested form that is attached to the dialog, any actions attached to it are semantically structured!
Web 3.0 is the next evolutionary step of the internet and an awesome one, to be honest.
Every web developer, beginner, junior, or senior can and should contribute to it, and it doesn't even take too much effort.
Let's see how.
A thread. ↓
What actually is a Blockchain?
Bitcoin is breaking record after record, but there must be more to the technology than just crypto, or not? Well, we can take a look at the underlying technology first to understand what it actually provides to us.
🧵⬇️
Here are some random JavaScript facts:
1. null is an object
2. NaN is a number
3. there was a time undefined could be defined
4. Math.max() > Math.min()
5. Array.sort() sorts all arrays lexically
6. "b" + "a" + + "a" + "a" === "baNaNa"
Know other funny JS facts? Share them!
In the frontend, it's easier to get started with Web 3 than you might think.
1. Install MetaMask
2. Create a JS project
3. Add React/Vue/Angular/Svelte
4. Add ethers.js/web3.js
5. Start coding and exploring
That's it. You're working on your first dApp.
Software development is a field where even 50 years of experience don't make you a pro in everything.
Even funnier: Technology probably advances faster than you can keep up.
Leason: Don't burn out trying to catch up. Pick your niche. Specialize. Build a broad foundation.
What I would do if I had to learn to code all over again:
- Pick a language like JavaScript or Python
- Join a community
- Find a mentor
- Learn the hell out of all the fundamentals
- Jump into frameworks and begin to specialize
- Branch out later
That's it.