Hacker News new | ask | show | jobs
by notenoughhorses 1917 days ago
I tried to learn to self code for a few years, but kept hitting wall of what to learn next.

After realizing I really wanted a chance to change careers, I decided to just do a second bachelor’s, basically to have a curriculum.

So far, I’ve learned more math than programming. The actual coding we do is greatly benefited by the self learning I did before, but my understanding of what’s going on in code is much higher. The other place I got stuck seems very natural for other people to move past with ease, but it was how to really solve problems with code. For me, I think the much deeper understanding from a school setting will set me up to better understand how to solve problems with code. (At least, I seem to be pretty good solving problems with accounting, my first degree, so I don’t think I lack inherent problem solving ability. This whole second bachelors is a bet that I am just missing deep enough understanding of the subject area to apply it to problem solving yet.)

3 comments

Having done a bachelor/master in CS and taught a coding bootcamp, I only believe this to be partially true. It depends on what work you want to do as a programmer. For example, if you want to become a web dev at an average organization, then compiler construction knowledge isn't the most optimized way to spend your time. Yes, it'll add to your general programming knowledge, but it's better to spend the time to directly learn JavaScript, how to setup a project structure, devops tools like Docker and so on.

People that claim that such things aren't timeless are missing the fact that once you've seen enough tools that your underlying knowledge becomes deeper (and therefore timeless) as well.

What will happen though is that when you're doing your job is that you'll begin to notice that you miss certain fundamentals. At such point you know what you're missing, and you can immediately do targeted learning without doing a whole bachelor for it.

This whole story does pressupose that you know aprior what kind of developer you want to be, which is not an easy feat since it's a bit a chicken/egg problem (i.e. you need to know programming and have seen different flavors in order to better know what you want to become).

I did the self taught route and it's funny, like, I read a lot of books and kept trying to work on stuff but I'm not sure when exactly it came together for me. Just seems like I couldn't and then one day I could.
> how to really solve problems with code.

For me, it took me a long time to really understand where to begin. It wasn't that I couldn't solve a specific problem, like on leetcode. I didn't know how to go from scratch to building some kind of tool or application.

The solution for me ended up being just watching a ton of random tutorials to get something started, then taking the tutorial a totally different direction. That gave me some examples of what the entry point to the process was, and from there it was just an additive process until I got the desired behavior.