
Ask HN: 10 years of recreational programming, what takes me to the next level? - mkirklions
Almost completely self taught. Was forced to take a VB + Matlab class for my chemical engineering degree, but I basically didnt show up to class. At that point I was already a programmer and would only do the homework&#x2F;tests. 4.0, easy class.<p>Outside of that its been google + stackoverflow + tutorials.<p>Thats been great and I&#x27;ve completed a full stack app, working on my second using react-native. Doing python automation when I get tired of that.<p>What I&#x27;m looking for is something that I&#x27;m missing. I spent time reading wikipedia about OOP and I found that very interesting to put names to things Ive been working with for years. I dont know if this improved my skill much, but I only put a few hours into wiki.<p>What should I put resources into next? Goal is to spend either a few hours or ~week into something that can improve my abilities. I&#x27;m not even sure what my weak points are. Any suggestions?
======
yodsanklai
I think it depends on your goals and your interests.

A friend of mine is self-taught (mainly front-end programming, JS, HTML, CSS).
He started in his 40s and work in a completely different field. He developed
surprisingly good programming habits by himself, but he's strongly lacking in
some areas, compared to people who followed a conventional CS education. For
instance, he has little knowledge of algorithms: he can't write a merge sort,
assess its complexity, or work with dynamic data-structures. These are the
type of things that can be hard to figure out alone. I think it's worth
investing some time on this. There are tons of resources, e.g. a few good
Coursera classes.

You can also focus on different layers of the software stack. You've been
working on the front-end, but you can have fun with things like system
programming (e.g. writing a UNIX shell in C), or a compiler for a simple
programming language.

I personally enjoy doing programming projects from various universities. There
are tons of cool projects at all levels.

------
Chyzwar
Get a job as Junior Developer. You can self-taught a lot but nothing
substitute experience. As an alternative, you can contribute to open source
projects.

