Cracking the Code — Part I: Getting Started
If you’re like me, and there’s a good chance you are, every morning you wake up and reach over to grab your phone. From here you either fire up Facebook or check your email, I’m guilty both, and start to consume the day’s information via the world wide wonderful. But again, if you’re like me, you probably don’t stop to think about all the processes, connections, routers, switches, load balancers, firewalls, databases and servers that information funnels through to get to your device. And certainly you’ve thought about the thousands upon thousands of lines of code that make up how the information is displayed to you. The quintessential 21 century human thought process of, “I don’t care how it works, just THAT it works”.
Working in the technology staffing industry I was able to get close to a high level working knowledge of most of these goings on. By that I mean I could talk the talk, and that’s all well and good when talking to your parents. They are easy to impress. Throw out a couple acronyms and you’re immediately the smartest person they have ever met. However, for me, I can only listen to a software engineer talk about AngularJS frameworks, and HTML script for so long before I start to get the itch.
You know, the itch. It starts somewhere in the back of your brain as just a “what if” scenario. What if I could learn to code? So you go to scratch that itch by doing some research. Turns out its relatively easy to start learning a coding language with the magic of the internet at your fingertips. The problem with any itch however, is when you start to scratch it, it feels good. So you keep doing it.
So that’s what I’ve decided to do. Scratch my itch. I am going to, slowly but surely, learn to code. Not only that, but I am going to chronicle my experience, start to finish, to prove that its possible for anyone with zero coding background like myself, to become proficient in it. Lofty, right? Well not really, a quick Google search reveals I’m one of many who have undertaken this endeavor. But I found out yesterday that am technically a millennial (born in 1984) so I’m going to own it and say that I’m special. So follow me why don’t you?
First things first, we need to pick a language. Sure, I could have put a bunch of languages on a dart board closed my eyes and threw, but that’s dangerous. Not only physically, but metaphorically as well. This is where I was happy to have an understanding of some of that lingo I was talking about earlier. I knew that web development was direction I wanted to go in because its considered entry level and I happen to like the internet. I’m on it all the time. I know when a website sucks and I know when it’s working. I also know how much money developers make with certain skill sets at their back. An entry level Java engineer here in Atlanta makes approximately $74k. Now granted that’s someone who went to school for that and made it their life for 4 years, but still. I’m a money motivated guy and seeing that right there motivates the hell out of me.
So now I know what language I’m start with, next step is finding a place to learn it. This is where it gets a little dicey since the internet is full of people who want to take your money. I’m skeptical by nature and dabbled with a few different sites, but I wasn’t about to sink money into something I wasn’t even sure I was going to like anyway. Then comes big brother to the rescue. My step brother heard about my escapades in coding and suggested I give Codecademy.com a look. I did, and it seemed to be far and away the best option out there. Sure, I can choose to upgrade to the “pro version” for a little bit of money and access to extra features but the base version is intuitive and helpful. I’m a visual person so being able to see the changes I make to the code in real time is great and interface feels really natural to use. So if you are looking to embark on this journey with me, I would recommend Codecademy.com without any hesitation.
So now I got the language, I got a place to learn, all that’s left is to get started. Obviously, I still have my day job to contend with but I decided I was going to make a conscious effort to squeeze in 15–30 minutes a day where I could. Between work and the gym, it can be challenging but nothing worth doing is ever easy. Right out of the gates I felt instantly overwhelmed. Not in a “I’m drowning here” kind of way but more of a “There’s a lot going on here I had no idea about” kind of way. So I settled in to write my first line of code and it looked like this:
<title>Animals Around the World</title>
OK, so we are on our way. Unfortunately, what took my about 5 minutes to do yielded exactly zero on screens results. I say 5 minutes because, what I quickly realized was that we are going to be dealing with keys on the keyboard that I seldom press for any reason, so this was clearly going to take the creation of some new muscle memory. What I had here with this code done was twofold. I told the browser that we would be using HTML and this page a title. The title doesn’t display on my practice screen because we in a browser box that already has a title attached to it (so essentially Codecademy operates a practice browser within a browser). It’s a little tricky so I’ll help you spot it. Look at the top of this page, now keep going to the top of the browser box? Depending on what browser you are using you’ll see a title in the window or tab that should be the title of this story. It was startling to me that so much work went in to basically nothing being visually represented but I had dipped my toes into water and now I was ready to dive in head first.
I’m going to make a conscious effort to update this post every week or so on Monday’s, depending on what I’ve learned so make sure to keep checking back for more content.