I read very few tech blogs. I just don’t like to read tech stuff. I know that probably seems strange coming from a computer programmer… but it’s true. I’m possibly the least technical *technical* person you’ll ever meet.
I read a blog today asking readers to share their story of how they wound up working in software development. And since over the past few days I have been reading blogs (and especially comments on said blogs) that made me question my worth in the programming world and wonder if I learned to code for the right reasons, I thought I would take this opportunity to explain exactly how and why I ended up where I did.
I’ll start by saying that I like coding alright. I don’t dread going to work, I enjoy working with the people I work with, I get really excited when I solve a particularly difficult or frustrating problem, and I ♥ the feeling of satisfaction that I get when I make users happy by making their work day just a tad bit easier.
I don’t love writing code.
Unlike so many programmers, I didn’t grow up writing code. I did not find at a young age that I was fascinated by how the computer worked, I never cared to take things apart and put them back together, and I have never EVER written code for fun. It’s not a hobby for me, it’s a job.
I never wanted to be a programmer.
So how did it happen? Let me explain…
I had my first child when I was 18, and I had my second at 19. When I found myself, at 21 years old, trying to support two young children while working at a Walmart snack bar, struggling to put food on the table, wondering where the rent money was going to come from and living in fear of when the electric company would show up to shut off our power, I realized I had to do something. Never one to just resign myself to the idea that “this is just how it is”, I opted to fix the problem instead. I guess you could say this was my first real attempt at problem solving, a skill that actually comes in really handy in the world of software development!
I picked up a catalog for the local community college and attempted to choose a career path. I narrowed it down to three.
- Psychology – I have always been fascinated with people and how they think, so anything to do with psychology or sociology = perfect. Plus I have always had a desire to help others, so a career in counseling or social services would have been a fabulous fit.
- Accounting – Loved it in high school (but realized after one college level class that it sucked, so it’s a good thing I didn’t pick this one!).
- Computers – Because it paid well with minimal education and it appeared to be where the future was at.
Yes, you read that right. I selected computers NOT because I was so enthralled with my families first home computer that I spent hours writing my own games in BASIC (I only vaguely remember my families first home computer, and I had little to no interest in writing code back then), but because it paid well with minimal education and seemed like it had solid long-term potential.
You also have to keep in mind that my goal in going to school was to be able to support my family. That’s it. It’s what I needed, and I chose the best course of action based on the end goal. When you have young children to care for, and you want to ensure that the lights always turn on when they flip the switch and water comes out when they turn on the faucet, what you WANT becomes rather insignificant!
You have got to admit, it’s a logical decision. Programmers are logical people.
Even at this point I had NOT chosen programming. I was planning on getting into networking, or desktop work, help desk maybe. Programming was not even a possibility. But one of the classes I had to take was an introductory class in my first semester that included two weeks of programming at the end of the course. When week one was done… I HATED IT! I crabbed and complained and fought against it tooth and nail. I informed the instructor that I had no intention of being a programmer and there was NO REASON for me to learn this crap!
Honestly, I didn’t understand it. It made no sense. Absolutely no sense at all. I was lost, confused, frustrated, and getting angry.
Then the instructor said to me: “The computer is never going to do anything that you don’t explicitly tell it to do.”
And it clicked.
I can’t even explain why that worked, but it was like she had flipped a switch and suddenly there was understanding. I just got it. It miraculously made sense.
Ever since then I just understand code. I read code like almost I’m reading English. I can’t explain why, I just do, it seems simple to me. I’ve moved easily from one language to another with little to no training and zero time spent coding at home. I have been successful as a programmer for about 15 years now, and I have never worked a job where users, co-workers, and bosses weren’t extremely happy with the work that I have done. I have never received a bad review. I’ve never lost a job because I sucked at it, and I was with my last company for over seven years.
Those of you who are “real programmers”, who question why someone who can’t answer basic technical questions or whip out a few simple lines of code in an interview would even bother applying for a programming job…
I can’t answer the technical questions in interviews. Not because I can’t write code, but because I don’t have to know what something is called in order to do it. I can’t typically whip out a few lines of code in an interview, but it’s not because I’m not a good programmer, it’s because I tend to be nervous in interviews and I am always wondering if there is a trick in there somewhere… especially if the request is super simple.
For a number of years I have questioned my own ability as a programmer, and it was primarily because I find myself surrounded by people who talk the talk, and who trip me up with terminology. People who have certifications, and in some cases, an unhealthy amount of arrogance to go along with it. I have encountered those who seem to thoroughly enjoy throwing their knowledge around and trying to make themselves seem superior. And in the past it has always succeeded in making me feel… small.
Truth is, I’ve come to find out, I’m a damn good programmer. It took me 15 years to reach this level of confidence and be able to explain this to people without fear that they would judge me as incompetent. I know that I’m not incompetent now; In the past I wouldn’t even have been able to write this blog.
And I don’t believe for a second that I’m all that unique; I’m sure there are actually a lot of us who don’t quite fit the mold. I just wish I knew where they are!
Hello? Am I right?? Are you out there somewhere??