So, You Wanna Learn Web Development

Or what I like to call web-stuff, or internet-thingies to build other internet-thingies.

Then
A little more than ten years ago I started my first MySpace account. My best friend and I would spend hours looking up hex codes and the proper HTML to make our pages look really COOL. That was my very first experience with web-stuff.

Some years later a friend bought me my first domain name. That fun project turned into days and days of figuring out what to put in my iframe and HOW AM I GOING TO MAKE MY PICTURES LOOK REALLY GOOD, I MEAN, I AM A PHOTOGRAPHER, RIGHT?

Eventually another friend suggested I just scrap the whole hosting my own HTML site altogether: “Just get a Tumblr!” A what?

I signed up instantly. Starting looking at all the themes. I found a super plain one and started adding my own CSS styles. I broke my site many times. But, as of today I am a Tumblr Wizard.

Now
Fast forward to 2014 when I started looking into bootcamps and asking myself a lot of hard questions.

“This is something I’m really interested in, but which one should I go to?”
“Can I afford to just drop $15-20k on a 3-month bootcamp that may or may not get me a job?”

Two years later and I’m asking those same questions. Yet, in those two years, I’ve learned a lot online. I’ve learned through various web courses, and tools, some books, advice from friends and by trying a bunch of different things.

Last summer I did a 3-month WordPress course. I learned why I was constantly breaking my WordPress sites. I learned how to read documentation better. I learned how to migrate sites more efficiently. Years ago, I would just wrecklessly move core files, break a site, and just say: “Screw it! I’ll start all over again.” And start all over again I did. I would rebuilt sites and then re-upload years worth of images. Not only was I clueless, I was arrogant as hell about it too. I’LL FIX THIS!

Side note: what I should have done was GOOGLE the error messages and figure out from there how to fix my problems. And, if you’re using StackOverflow, always upvote advice that worked for you. It’s why that site is Magick.

During that course, I redesigned one of my favorite websites! Which is awesome because I made money and made a site I visit every day easier to read.

During the fall I did a 3-month Ruby Blueprint. I learned how to build a Rails app and why Ruby is the prettiest language out there. I also learned how to write and run tests! I didn’t even know what that meant a year ago!

Now I’m enrolled in a part-time Data Visualization course at Metis. I’m learning how to make interactive charts with D3.js (like all the cool stuff you see on WSJ and NYTimes).

How to get started
Even if you decide along the way that web development and software programming is not for you, these three sites will serve you well. You won’t break your computer, I promise.

– Watch the first lecture in this EDX course: Introduction to Computation
– Check out the different courses on CodeAcademy
– The BEST free resource there is on the web: The Command Line Crash Course

Git
It has taken me two years to feel very comfortable with GitHub and I still feel like a n00b whenever I’m about to commit something. Can I just put, “messed something up, trying to fix it, I think?” Not really.

Some of my other favorite learning tools
Codepen.io – a website where you can make really pretty CSS animations, JavaScript-based app prototypes, blog designs. it rules!
Hacker Rank – learn how to write algorithms
Typing.io – Get better at typing commonly used programming characters

After a bunch of learning and feeling like you still don’t really know anything, read this article on Imposter Syndrome. It’s gonna be okay.

And finally, Matt Might’s list ‘What CS Majors Should Know’ will give you some great ideas on what to study next.