Fun fact: I built this site!
And I don't mean I got Wordpress, picked out a theme, and changed some colors around. I built this puppy from the ground up using Rails and Dokku. These are words you may not be familiar with, but by the end of this post hopefully you'll be intrigued enough to find out what they are!
I wanted to share a little bit about my journey to becoming a software developer, since it's a little unorthodox, along with some links to resources I've found helpful.
1: The Age of Livejournal and Neopets
An actual screenshot from my livejournal
The year was 2005: everyone had a myspace and a livejournal, and AIM was still a thing. I wanted to learn how to make my stuff x*X*pretty*X*x. This is when I began learning about HTML and CSS, as you can see, the subject in the post above was "Cause it helps me practice HTML". At that time, my extent of HTML and CSS knowledge went about as far as changing text to italic and making the background as obnoxiously neon as possible.
HTML and CSS are the languages you need to know to 1: have a functioning webpage, and 2: make it look pretty.
Where to learn: People (and by people, I mean developers) shit on these sites all the time but for learning HTML and CSS, which is basically just a matter of memorization, I recommend:
- W3 Schools
2: The Age of "Coding Requires Scary Math and Only Boys Do It"
By high school I had almost entirely forgotten about web development. I started to hear whispers of this thing called "computer science" and it definitely sounded like something only people who were good at math and/or science nerds could do. This doesn't mean I wasn't still doing hacker-y things without realizing it: I was the one jailbreaking friends mp3 players for them and making my own iPod themes.
Takeaways: Being a software developer doesn't absolutely require hard math skills, unless you want to become a Data Scientist or tackle intricate algorithm efficiencies. And obviously there are women in tech. Still a minority, but an increasing one.
3: The Age of Well I'm in the Deep End, Might As Well Swim
2016 was a strange year for me, outside of the whole "democracy is crumbling before my eyes" bits of it. My boyfriend and I were selected to spend a year in France working on a startup idea that we had, and we were the only employees. Rather than just let him fend for himself and bring an entire full scale app to life, I got my hands dirty.
This is when I actually learned how to code, for those of you getting impatient.
Here's stuff I tried that did not work for me:
- Doing Codecademy (but wait I just recommended it up there!)
Here's what did:
Want to know why that worked and the other stuff didn't? It taught me how to *think* like a developer.
I'm a practical learner. I need to experience something firsthand before I understand it. Reading about something pretty much ensures it goes right over my head. What's great about the Odin Project is that all they give you are a few select resources, and then a prompt with what to build. It's this building that shows you how to truly be a developer, instead of memorizing a few things.
It definitely helped that Ruby, the language the Odin Project teaches you, is one that is very similar to actual English. There aren't stupid brackets and semi-colons (you can tell what languages I'm biased against here). Ruby was the first language I could really think in.
I spent a solid three months working on the Odin Project everyday, for about 3 hours a day. This is doable, even if you have a full time job. Wake up a little earlier and keep cracking away at it. I was so consistent at it that I started dreaming about code which was extremely annoying but also a good sign. It meant my brain was re-wiring to accommodate my new skill, similar to when you learn a new foreign language. It took me about four months to be at a level where I could get a job as a junior software engineer. That's it
If you take away anything from this post, let it be this: CODING IS NOT HARD.
It's not only for super smart people.
It's not only for boys.
It's not only for math nerds.
You can do it if you have an interest in any of the following:
- Solving problems
- Breaking things down to their elemental parts
- Learning new things
- Finding new ways to do an old thing
I promise that you can do this. As with anything, it's a matter of practice & determination, but honestly a few months is all you need to learn a skill that is extremely in demand and has the potential to change your career + life.