Hacker News new | ask | show | jobs
by yashap 3996 days ago
Agreed with it basically being lots of hard work, and that you have to be very motivated.

I'm currently 29, working as a Software Developer, and also started late. Got my MSc in Oceanography, had some basic programming experience (built basic websites for beer money, some light scientific programming), but not much. Decided I liked the analytics more than the rest of science, and got a job at a SaaS company as a Data Analyst. Really started falling in love with programming quickly there, and did the following: - took online courses like crazy (often waking up early to get some in before work, and more on evenings/weekends when possible) - always took on the most technical tasks at work, where I'd get to write as much Python/R/SQL as possible - started a coding club at work, great for group learning and motivation

After ~2 years of this I had gotten myself to a point where I could legitimately work as a Software Developer, and got a new job as one (at the same company). Stayed in my area of expertise, data science/analytics, but as a developer instead of an analyst.

I wouldn't suggest codeacademy, though. Maybe it's changed since I tried it, but my experience was that they introduced you to a bunch of syntax, but left out most of the fundamentals of how computer science and how to structure programs. I'd much more strongly suggest taking more involved courses. Some of my favourites include (note - bias towards Python, Scala and SQL courses, as that's what I happen to use a lot of):

Intro to Comp Sci (Python) https://www.udacity.com/course/intro-to-computer-science--cs...

Intro to Web Dev (Python) https://www.udacity.com/course/web-development--cs253

Data Structures and Algos (Python): http://interactivepython.org/runestone/static/pythonds/index...

JS intro: http://eloquentjavascript.net/

Functional programming (Scala): https://www.coursera.org/course/progfun

Reactive programming (Scala): https://www.coursera.org/course/reactive

Good databases courses (boring but good content): https://lagunita.stanford.edu/courses/DB/2014/SelfPaced/abou...

My personal feeling is that things like codeacademy get you superficial knowledge, like learning to use tools, when what you really want is deeper knowledge about how to build houses, regardless of the tools.