So you want to learn web development?
A few of my friends have been asking me how to get started with learning how to program. Most of them come from Comp-sci backgrounds from undergrad, and want to start free lancing but have no idea how to start applying their skills in a formal real-world job setting. When you know a ton of smart people who want to split their time between their love for computer science and circus, you get a lot of interest in the digital nomad lifestyle.
This side of the compsci world is a little different from a trraditional academic setting. Tread this more as a masterlist of resources that I’d recommend to you so that you can get run up to speed with a modern industry professional. Beyond that, a lot of your job will be trying to keep up with the time and noticing industry trends.
To start, I really have to tell you that my biases are geared towards Javascript, Python, and C/C++ as being a solid grounding basis and then some. That’ll put you in the profile of a pretty amazing dev-head, in my opinion. Languages I’d like to look into in my language portfolio include Julia, Go, and Clojure. Those won’t help you now in fact - C/C++ won’t really help you out starting off in the beginning anyways.
Back to the remainder - Python and Javascript. Javascript is on the rise since every webdev will have to encounter it at some point. Currently, you could call it the language of the internet. With the rise of Node.js - javascript is expanding beyond the browser and is on the rise as the next language where you can get fully ‘full-stack’ developers with one language. Learn this first. You’re also already on track with your CS degree that you have compsci fundamentals, C++ and Java - also Scheme / whatever the curriculum at Vassar is moving with these days. We also won’t be getting into Node in this email, but node blows all of that out of the water. It makes servers run as fast as C++/Go. It’s beautiful.
The idea here is to run you up to speed as a client-facing developer in Angular, which will be a great way to get started on your path of being a ‘digital nomad.’ After that, get into django or node. Here I recommend python since it’s in higher demand in the Boston area than Node jobs. I’m less familiar with this space though, and that’s where this will need some future updates.
Other skills you’ll need to pick up to pit you out as a good front-end dev include some CSS-preprocessor, and client-oriented optimizations. Overall, our lesson plan is going to look something like this:
- Javascript (2-3 weeks)
- Javascriptissexy.com will teach you an insane amount about Javascript. I would consider this a bible to run through, however we want to run you up to speed asap so I’d say check out: how to learn javascript properly just do the first half in two weeks and move on. At this point you should apply to Hack Reactor :D
- Study Javascript Closure
- The keyword ’this’
- Some Tips and Tricks
- Scoping (probably review from what I remember of CS classes)
- Then take the Secrets of a Javascript Ninja Quiz and test your skills!
- Angular (1 week)
- go through Ari’s tutorial
- and check out Ari’s book
- Python (unknown)
- Kick off with Learn Python the Hard Way
- I don’t know what to tell you about django, but there’s gettingstartedwithdjango.com which I was using and was very insightful to begin with.
- SCIKIT-LEARN as bonus: do machine learning and predict the future… as I said, bonus stuff and a side track, but vey fun.
Hope this isn’t too much/overloads you with your classes right now. Take them one at a time and give me status updates!
Also - if you want to apply to Hack Reactor you should do it as soon as possible!
Keep me posted! -Sam