Next step in developer's journey?

Hi !

My name is Olivier, I am 36 from Belgium.
I would love to have some advice from experienced developers.
About 3 years ago I started my journey into becoming a programmer. I started doing online courses as well as part time courses at the university. (micro degrees in Java and Computer Systems).
I am still working full time as a pilot though but with enough downtime.

My question: I have learned a lot from the last few years and my interest really jumps from subject to subject in the IT space. (web dev, java, linux, cloud computing, etc , etc) Whatever I am learning about becomes my focus and then when that course is finished I move on to something else. I don't necessarily want to dive into 1 subject but want to know "a bit of everything" in order to really have a good bird's eye view of all that's possible and one day build something great.

Now I have the feeling I am kind of getting stuck as Im not building expertise in one single area enough to start building projects etc. I am most comfortable following along with a tutorial but that's not the goal of course.

I suppose I should just start building a project instead of learning new stuff and not actually building things?

Any ideas on where/how to start with that ?


  1. 4

    Hi Olivier,

    From all of my software engineering experience (10+ years), I can conclude, that building real projects is the best and fastest way to learn to program.

    I've seen many examples when people with zero programming experience were successful in building great startups. For example, Sheet2Site, Andrey's story is amazing, highly recommend listening to the IH podcast with him.

    1. 2

      Thanks for the advice. Funnily enough I listened to that podcast episode two weeks ago with Andrey and thought to myself: shouldn't I be building stuff instead of learning for years and then forgetting half the stuff I learned! It just seems harder but I will need to force myself a bit here :)

      1. 1

        Happy to be helpful!

    2. 1

      Second on this. Following tutorials is OK, but you end up learning so much faster by just trying to build things.

      Nowadays I don't bother to read a language spec usually, and just try and go and fix things (though simpler because you pick up on common language idioms).

  2. 3

    I started my journey at a similar time as you, though I think you're farther ahead than I was then. I'm a consultant and I've had to hustle to make things work.

    My advice -

    You know that advice to go deep in a niche?

    After a lot of time avoiding that, I've concluded: that's the truth.

    However you feel about it, that's the truth: that's the best way to succeed in the IT space.

    Find a profitable niche. Become the expert. That's how you make it big.

    The problem w/knowing a lot of small things is that, even if they are collectively very impressive, people will look at them individually and say, "that skill isn't very impressive, or expensive."

    So to make a living, find something very specific - example: smart contract development - and become far better at it than the best tutorials (which, on the edge, are always scarce).

    Those people are always in demand, and you want to be one too.

    1. 1

      Did you start out learning more general and then once you did that , narrow down into one niche that you were interested most?
      It makes sense to be a "specialist" especially being a consultant. Did you start out being a consultant in the IT space or did you work full time in it first?

      1. 1

        Exactly. I started off learning more generally and now I'm narrowing down. I became a consultant a few years ago after seeking more opportunity, after being employed as more of a bizdev person at tech startups.

        I can solve problem for you in Python, Ruby, JavaScript, Perl, Go, Lisp... but no one cares. No one is looking for that combination. It's just a thing clients or employers say "oh, cool" about if you bring it up.

        You learn what they want by talking to them; and you learn, quickly, that some things are very much in demand - like, do you know just a tiny bit of this? let's talk! - and other things are low in demand - that's cool that you know that, we already have a person who does that (ie that skill is easy to find) but if we need more help we'll reach out.

        You'll end up being a specialist in something anyway - whatever you're okay at, you'll find work in, and inevitably becoming a specialist as you do more work, so that becomes your calling card.

        In that situation it makes sense to optimize for what the market rewards.

  3. 3

    Hello Olivier,

    Sébastien here, also from Belgium! :)

    I've been working for fifteen years in IT. I've had a passion for computers since I was 8. A few years back, I decided to leave my corporate job and embark on the freelancing & indie hacking train. It's been quite fun so far.

    At the end of last year, I started a project that you might find interesting: Dev Concepts (https://dev-concepts.dev), to help people like you. Dev Concepts is a series of 12 e-books that explains a ton of concepts/topics around IT & Software Development.

    The most useful thing that I can already tell you is indeed to start building things right now. You'll get to learn what you need when you need it, instead of learning a ton without being sure that it'll be useful to you.

    The best path to get started is HTML > CSS > Coding basics > JavaScript > Browsers/DOM > HTTP > Back-end & APIs > Infrastructure > Security > (a gazillion more things)

    If you're interested, then we can discuss and I can give you (free) advice in private.

    1. 2

      Still the problem is not about learning. me too have this problem that it's really easy to follow some tutorials and build exactly what other build,the really problem is how to go beyond that and sometimes of your own

      1. 1

        I agree. Just following tutorials won't cut it. You have to build your own thing, and learn just what you need to move forward. This requires tons of trial & error, but it's okay, it's not like we're going to crash Boeings ;-)

        That's actually why I focus on concepts in my books. A developer that knows about X and understands why it's useful is much more capable of solving problems on his/her own, and can apply that knowledge to any language/framework. It gives ideas, and helps find solutions faster.

        1. 2

          yes, I did find that as I progressed my learning that I got more concepts and got stuck "less" on certain items as at least I now have an idea what is needed and can look up that specific part and continue..

          No, in coding luckily we can do trial and error. Different mindset then flying airplanes ;)

    2. 1

      Thanks for the advice Sébastien!
      Your project where you focus on concepts seems interesting. I like the idea where you don't go too much into detail unless needed. So I will check it out.
      I`m definately interested to discuss more in private!

Trending on Indie Hackers
I will promote your startup to 50K+ people 126 comments I made Session, a productivity timer that makes $5K/month in net profit, AMA! 37 comments Who uses Vue? What makes it better than React? 27 comments I sold my bootstrapped sharing economy platform for RV camping for 7 figures. AMA! 16 comments #1 on Product Hunt with an open-source project 8 comments Csaba Kissi on earning $3M+, his trick to outsmarting the competition, and growing on Twitter 8 comments