Truth be told, I never knew exactly what I wanted to do with my life until I discovered coding. I only knew that I wanted to do something that was valuable to others and I wanted to make a lot of money doing it. My family continually pushed me to enter into science and engineering, but I was scared because of the math involved. I did what all kids who are unsure of what path to take in college do, I majored in business and graduated in 2013 from Ohio University.
Since graduating, I've held a couple job titles while in search of something that would satisfy my two aforementioned criteria. I've worked for a freight company, braving the elements and working with hands. I moved up in that job, but the long hours and working conditions pushed me to find my path in life. I fooled around in nursing and didn't like it. I eventually retook some math and science classes and found that I really enjoy them and I'm good at it. I came to the decision that I would become some sort of engineer. I wasn't sure which kind, all I knew was that engineers help create products that people use on a daily basis to make life easier. I started taking engineering survey classes and found that I really enjoy working with software. Making a computer say "Hello, World!" is a pretty cool experience. Imagine what else you could do!
I found a new job working for my local Sheriff's Office in the jail and got so caught up in that job that I forgot about programming for a few months. While this job does afford me a lot of time to learn programming, the money I make isn't substantial enough to pay for my education and I have enough student loans, I don't want or need anymore of those. So, I am learning to code on my own. The great thing about this industry is that you can unlock the doors and get jobs without a degree! I've taken a few paths on this journey. I started with a textbook on Python and found myself ineffective. I ventured into Free Code Camp and learning JavaScript and even made a couple websites. This includes a Star Trek Random Quote Machine, a tribute page, and a personal portfolio. While, I learned a lot the community is a little lacking and no man is an island in the coding world. Luckily I found a coach and mentor, by the name of Josh Kemp. He and I are venturing through the world of Ruby with a goal of landing an entry-level position in four months that will eventually lead to me becoming a software developer by January 2017.
Of course, learning to code requires a significant amount of discipline that has led me to spend at least 3 hours a day coding. I've skipped going on dates, hanging out with friends, going to concerts, etc. to learn to code. People often inquire "why are you doing this?" I felt that I would share my reasons why:
1. Money. Boo. This isn't a good reason to do something and I think millennials get this. People of my generation are said to be intrinsically motivated (i.e. motivated primarily by factors other than money.) So I list all of my motivators that aren't money!
2. I love coding problems. It may be frustrating for others, but I enjoy the battle of exploiting a problem and finding a solution. When I was kid, I would play StarCraft religiously and I found that my best moments (the ones where I still watch the replays) were the long, drawn-out battles where I had to attack my opponent from every angle. You would test and test and test to exploit a weakness in the enemy defense and eventually overcome after hours of testing. In a weird sort of way, coding creates the same feeling. You get a problem, say reversing a string, and while you don't know everything you know where to look. You delve into the documentation, hitting stackoverflow, MDN, and a thousand other websites, and you try running the program. You fail and fail and fail until you get it right. There's no greater feeling than the moment when you finally get it right. That sense of accomplishment is unbeatable in my opinion. If you're like me, you'll laugh at yourself because you should've known to use camelCase.
3. Of course, doing those problems means that I can eventually create a working product. Whatever that is, I know that it is going to help someone. It could help businesspeople or the general public.
4. Being creative instead of a drone. Every job I've had, I've been a drone. This isn't always bad and it isn't bad for everyone, but I believe I was meant to do something else. After exploring some of the software companies around the area at events like PairColumbus or the Columbus Web Group, I found that these companies foster a work environment of creativity. The company that inspired me to learn to code, covermymeds, has pool tables, open floor plans, an on-staff chef, and a little brewery. Hearing people talk about the company, the teams they work with, and the products they create inspires a little healthy envy in me. I am motivated because I want to experience the same thing in my work.
5. "Your code was merged..." I love the coding community. It is full of people from all walks of life who aim to create. The best part is most people in this community realize that coding is hard! How many times have you done something that was difficult and failed only to hear "you're stupid!" or "come on, you should get this by now!" While the coding community has its harsher elements, most of the people I've met will meet you where you are and they're eager to help. Their vocabulary is often "instead of this, try this." They often times teach you socratically, which is the least insulting form of pedagogy.
Of course, there's more to the story with #5, which is the most important reason to me. A month after I typed my first "Hello,World!", I learned HTML and CSS. I was simply proficient, but when I went to PairColumbus at the beginning of February, my friend David wanted me to help him with the creation of a song lyrics app. He wanted song lyrics to appear on an element that looked like notebook paper. At first, my reaction was "uhhhh...." I didn't know where to start, so I started researching. Eventually I found the right code and modified it to make it look the way David wanted.
I felt that I hadn't contributed much, but I also know I am a beginner! However, I felt rather wonderful when I got an email from GitHub saying David had merged my code into his own. While I hadn't found the cure for cancer, I knew that David would be successful creating his app and once released, I would see a piece of my hard work along with everyone using the app.
So why am I doing this? I want to get paid doing something I love, like coding and creating! I know that if I continue on this path, my hard work will useful to someone else and help others and I'll make a fine living doing it. So, I finally found what I want to do with my life. I want to touch the-world.rb.