Step 1: Fundamentals of CS
I started by jumping into lots of online tutorials that promised to be the easy, quick way to learn programming. It was a complete waste of time and none of it made sense until I took the time to learn some basics about CS. There are many MOOCs out there that from elite universities and many different languages that can help you do this. I personally took and recommend Stanford’s CS106a: Introduction to Computer Science because the professor is hilarious and keeps you engaged but any intro class from a university will serve this purpose. Don’t spend too much time picking the language to learn in (I made this mistake and let me tell you, it matters very very little), you just need to know universal principles – what is a method, what is a class, how do I use if loops?
Note: if you choose the class above, it is now available as a Udemy course but I recommend going through the link above, downloading all the handouts and assignments, and following the syllabus. I made myself finish this in 3 months and treated it like night school afterwork – otherwise I don’t think I would’ve ever gotten through it.
Step 2: HTML/CSS
HTML and CSS are styling languages that help you make websites and the visual part of an app. Learning these skills does not require any CS knowledge and there are plenty of resources out there to help you learn this. Choosing the right resource here is not as pivotal as it is for learning CS fundamentals. Here are a few options to get you started: Code Academy, Team Treehouse, Code School.
Step 3: Build a website
Find a project and push yourself through it. For me, I made the LearnSprout website, a personal site is also a great place to start. Here you will start to put some of the stuff you’ve learned to use but you should google any question you have. The internet has all the answers if you just look hard enough! I was pretty lost on how to start and this blog post helped me get set up using Bootstrap as a styling template and LESS to make the CSS more manageable. I also recommend Erik’s blog post on bootstrap’s grid structure.
And now here I am, able to build websites and but not much more. Updates to come as I progress through Hack Reactor 🙂