Mastodon hachyterm.io

Last weekend I attended my first tech conference: Ruhr.js 2019 in Bochum, Germany. Milestone reached!

I will write about my impressions tomorrow.

My Coding Journey

I’m a self-taught developer who decided one day (on a whim) to learn how to program.

I started with HTML, CSS, and JavaScript with Freecodecamp.

Soon I realized that I didn’t have a clue on how to design programs, how to come up with a concept and make it happen as a web application.

I then stumbled across How to Design Programs and its accompanying edx courses How to Code: Simple Data and How to Code: Complex Data.

For me, that was the best thing that could happen, because I learned about functional programming in a structured way (with Lisp).

Still, the gap between writing a simple function and building a web application was huge. And after a while, I took a pause, because I couldn’t bridge that gap. Life happened, I had some health issues, coding is hard, and I lost interest.

If you ask around on the internet, a standard piece of advice is: “Build a side project - build something that you’d enjoy!”
But that never worked for me because building a to-do app was never exciting to me, and stuff that might interest me was just way beyond my skill level.

After a while, I realized that I’m motivated by learning new concepts and not by creating things.
That is a good thing and a bad thing: I am insanely curious about programming, but at the same time, I’m not that “productive.”

Looking back, I would do some things differently. It might have been wiser to decide how to build a clone of a popular web application and learn concepts along the way.

On the other hand, I got to know Clojure, ClojureScript, Elixir, Python (Flask and Django), Docker, React.js, Redux, ReasonML.

And learning to code is also a matter of time and repetition. I needed different approaches to learn how programming works.

Everyone learns at their own pace.

Going Forward

I’m still working as a tax officer, and programming is my hobby and passion.
That means that I’m free to do what I like when it comes to coding.

I enjoy following courses, and tutorials. They have their place because some concepts are too hard to learn without someone showing them to you.

But now that I’m not a total greenhorn anymore, I plan to do more exploration: building things and learning along the way.