Maverick Traveler

Location Independence, Geo Arbitrage, Individual Freedom

6 Reasons Why Young Men Should Not Become Programmers

My background—and one of my passions—is computer programming. I’ve been programming computers since my early teens. I can code in all the major languages for all kinds of platforms such as web, desktop, and mobile. I’ve worked for some of the largest companies in Silicon Valley, including Yahoo! and Facebook. I’ve also worked in a good number of small startups. Software development is one of my solid skills even though it’s been some time since I did it for a living.

Having said all that, quitting my lucrative job and leaving the world of programming behind was one of the best decisions I’ve ever made.

If I could do it all over, here’s why I would never become a programmer:

You don’t develop crucial social skills

Instead of interacting with real living and breathing human beings, programmers interact with machines made of glass, plastic, and metal. It’s a surreal way of looking at it, but that’s exactly the way it is. The more you program, the better you get with communicating with machines. You learn to type code, test it out, expect a certain response, fix what doesn’t work and try again. Do it long enough and you’ll be more comfortable dealing with machines that with real humans.

You can only do one thing at a time, so if you’re sitting and building an app, you’re not at a bar, a party, a gathering where you’re mingling with new people. If you’re already introverted, then you become even more introverted. If you have decent social skills, those skills quickly atrophy. That’s even more so if you code at work and then play video games at home.

I cannot underscore the importance of social interaction. It’s pretty much the core of any male self-improvement. Do you want to have better friends? Learn how to meet people. Do you want meet new women? Learn how to meet people. Do you want to get a job or upgrade from the shitty one you have now? Learn how to meet people.

It’s ironic that something as natural as meeting other people is now in the realm of an actual skill that can be taught and improved. That wouldn’t have been the case if you were dealing with people all day, every day. For instance, I don’t think a salesperson who makes cold calls all day and deals with endless rejections has any approach anxiety at a bar—he approaches for a living. Same goes for an aggressive real estate agent, lawyer, or advertising executive.

Moreover, the people with whom you spend most of your time are programmers just like you. They’re similarly introverted and socially awkward. They’re not going to  teach you how to behave around women. They’re not going to teach you how to conquer new lands and be real men. I can probably count on one hand how many programmers I’ve known that also happened to be very social and not awkward around others. Most were introverts who were scared of women. The most inspiring people in my life were go-getters who build businesses and not sat around and wrote Javascript closures.

You don’t develop emotional intelligence

Programming is a very logical process. Computers don’t have emotions. At the core, all computer code is made up of zeros or ones. All control statements are evaluated to true or false. A computer can’t cry, get angry or feel empathy for someone else. A computer only understands zeros or ones.

That’s what happens to your brain, too. A human mind is very elastic and can adapt to pretty much any kind of work. When you spend most of your time dealing with rational problems, your mind becomes more rigid and logical instead of more flexible and emotional.

You start seeing the world as a collection of zeros and ones; colors compress to black and white instead of beautiful shades of gray. You lose that emotional/irrational “scent” that enables you to feel a person instead of asking them a logical question and expecting a logical answer. That’s called emotional intelligence. And you lose the ability to reason emotionally when you write intricate “if” and “else” statements all day.

It’s only after I stopped communicating with a monitor and a keyboard and started dealing more with people, that I finally started building this crucial emotional intelligence. Life is much richer and more rewarding when you’re not always being introspective and breaking everything down to its logical components.

You’re giving away your best value

You know the saying that, “you’ll never get rich working for someone else?” I’m pretty sure a programmer invented it.

We’re living in a capitalistic society where people with money (capital) hire workers to do stuff for them (labor). Programming is a form of labor. When you program for a salary, you’re giving away your time and expertise in exchange for money. You’re helping to create value for the company, and all you’re getting in return is money that’s eroded by inflation and the rest eaten by taxes.

That’s not an ideal situation to be in. Capitalists get richer by hiring labor because they know that after paying their wages, they’ll still come out much more ahead.

Tech companies perfectly understand this, so they provide all kinds of perks and financial incentives (stock grants, options). Nonetheless, don’t be fooled: unless you’re one of the founders (or one of the first ten employees), the amount of value you’ll give away will be always greater than the value you’ll receive. That’s just how capitalism works.

Generally speaking, it’s a good rule to avoid situations where you’re trading your time for money. I know many guys who used to make a killing in freelancing, but have moved on and started their own companies that make money even while they’re sleeping. That’s the beauty of letting capital work for you.

Programming is not an “empire” skill

People understand the above point (that you cannot get rich while working for someone else), but they still believe that being able to code is somehow different. They think they can build an app in their basement, launch it to the world and have a $25 billion valuation tomorrow.

Well, I’m going to tell you a little secret that took me some time to figure out. You will never become rich or successful because you happen to know how to code. Unless you’re one of the best programmers in the world and Microsoft or Google are luring you with a $2M signing bonus, you’ll never really strike it big. That may sound obvious, but that’s not what I thought for a long time. I thought that because I knew how to code and build the next Facebook or Google or WhatsApp and immediately strike it big.

It doesn’t work that way. Yes, I can easily build a Facebook app. Yes, many of the founders of tech companies are engineers with tech backgrounds: Bill Gates is an engineer; Larry Page and Sergey Brin (Google) studied engineering in school. The founders of WhatsApp have an engineering background. Even Mark Zuckerberg (Facebook) is a computer nerd.

But that’s not why those companies became so successful. They became successful because the founders created a great product that was in high demand. Any programmer can build a Facebook clone (it’s actually really easy), but it takes special talent and skills—and, of course, timing—for it to be a blockbuster success. It’s no surprise that many of the founders went on to more executive and strategy roles at their own companies; they have skills that are way beyond sitting at the keyboard and writing classes and functions.

A good example of an “empire” profession is marketing and sales. Another great skill is knowing how to hustle. Figuring out what customers want and being able to deliver that to them is golden. Besides, you can always hire (cheap) programmers to build your app if you have a great idea that you think will be successful.

It’s a low barrier-to-entry job that’s rapidly becoming commoditized

Someone once said that programmers are nothing but modern day mechanics. When I heard it for the first time, it didn’t click: I’m getting paid lots of money for doing something that I enjoy, so how could I be like one of those mechanics that just changed oil in my car? I have absolutely nothing in common with a mechanic at a body shop down the street. Or do I?

Now it makes sense. Perhaps I was in denial all long. The thing about programming is that absolutely anyone can be a programmer. And I mean just about anyone. Programming is now less of a science that requires a creative and imaginative mind, but something that one can learn via a book and apply the next day. One of the reasons is because lots of new tools have been created that simplified building an app by the order of magnitude.

Nowadays, pretty much anyone can find a tutorial (there’re millions of them), learn one of the web languages like PHP, Python or Ruby and build an app. It’s one thing to learn a very simple language like PHP, but it’s another thing to master an entire framework and build a Facebook clone in an hour. That process was a lot more involved just five years ago. Not anymore.

Instead of being a niche profession for a select people who are gifted with an engineering mind, coding is now a mass-market phenomenon. There are lots of boot camps and classes for pretty much anyone and their mom that guarantee that you’ll build a “complex” app in an hour or so. And it’s not even a hyperbole. I wouldn’t even be surprised if you can build a Facebook clone in an hour or two (or much less).

That leads to commoditization of the profession. There are so many people in the world who know how to build a Facebook clone, that anyone can jump on one of the freelancer sites and hire a cheap programmer from India, Russia or China, and pay him a fraction of the money that a Western engineer would get.

It’s a poor long-term career choice

If you browse any of the development or startups forums, you’ll notice that many programmers begin to question the meaning of life (and their career choice) once they get closer to 30, 35, or older. That’s because programming is mostly a young man’s game. Kind of like being an athlete but without all the money, fame and women.

It’s not surprising that software companies love to hire people straight out of college. They send their best recruiters to the top-tier universities to pimp their companies to prospective employees. Then once they hire them, they pamper these new recruits with generous perks and amenities: campuses with full-size gyms, free food, on-site massages, and pretty much anything else you can imagine. They do that so that you don’t have any reason (and why would you?) to make the trek home.

When I was in my teens and my twenties, I loved programming. I was surrounded by other ambitious guys who thought they would build some amazing operating system. Guys that lived on pizza and noodles while coding for—what seemed like—entire weeks straight without sleeping.

But once you hit the age of 30, or even the age of 35 or get a serious girlfriend or even a wife, your output will decrease compared to some new kid out of college. You’ll no longer be able to put in all-nighters at the office before a new release because you’ll have someone waiting for you at home. There will be pressure for you to move to a higher “management” position or change career paths.

This means that a programmer’s career is comparably short. I’m not saying that you would be treated any differently if you’re, say, 40+, and are looking for a job (although it’s a dirty secret in Silicon Valley that most companies only hire young whippersnappers). But even if you did get hired, you’ll probably feel strange taking orders from some pimpled-kid who’s half your age while being surrounded by a bunch of other kids who look like they’re going through puberty.

Think bigger and wider

Most guys who get into programming but later find it unsatisfying don’t realize that programming is only a tiny fraction of endeavors they can embark on. There’s a whole plethora of other problems and challenges that’s perfectly suitable for their creative and analytical minds. The key is to think bigger and wider. Start thinking in terms of people problems instead of software problems. What kind of problems are some the people might be facing that you can help solve for them?

Starting a software company that builds and distributes software services is one. Building a freelancing business that solves specific challenges for your clients is another. What else? You decide.

Think of programming as a specific tool in your toolbox that’s designed for very specific problems. For instance, I’m very fortunate that I can easily pull up a WordPress theme and implement a new feature, or quickly customize a signup form without asking anyone for help.

But these are all small problems that are done in the context of bigger and more complex challenges. Challenges that involve building real permanent capital. Challenges that are much more ambitious and rewarding than debugging an annoying Javascript function all day.

Interested in building your own passive, location-independent business? Want to avoid needless trial and error? Want to start off on the right foot under proper guidance?

Check out the Maverick Mentorship program. It has helped 100s of guys just like yourself to build their own business. Click here to learn more

40 Comments

  1. Timely post. I’m actually about starting learning Ruby on Rails. Should I still learn it or not?

  2. Great post, Uncle Mav! Showing the way to the younger generation. I like that!

  3. Keep the gold coming, Mav.

  4. Great post, Maverick. I only have one quibble: I wouldn’t counsel young men against becoming programmers period, but to limit their time spent practicing the discipline. Five years strikes me as a good rule of thumb. There’s value in learning in depth a craft that requires technical skill, and being able to have that experience as a reference for more ambitious later endeavors.

    I passed the age 40 milestone not too long ago and have been at this profession for some 15 years on and off (I didn’t not study CS in school). I’ve suspected for a long time that my commitment to the profession had atrophied my social skills and in general kept from pursuing goals more worthy of a man, just as you’ve described here.

    My faltering productivity is now driving me to seek new challenges, and I wish I had done it sooner, but I don’t regret at all having spent a few years in this field. I just overstayed my welcome.

    I’m also not entirely in agreement with your point about that “anyone can be a programmer.” While it has become easier to accomplish basic web development tasks, genuinely skilled developers with deep knowledge of a technology stack and good instincts for how to make best use of it are still quite hard to find.

    Anyway, really great material here generally — keep it up.

    • James Maverick

      September 2, 2015 at 2:25 pm

      “Great post, Maverick. I only have one quibble: I wouldn’t counsel young men against becoming programmers period, but to limit their time spent practicing the discipline. Five years strikes me as a good rule of thumb. There’s value in learning in depth a craft that requires technical skill, and being able to have that experience as a reference for more ambitious later endeavors.”

      This is a great compromise. I absolutely agree with this.

  5. Very good post. I was thinking about learn programming. But now I know a lot of insights from you. That helped a lot to decide better for my future. I also have two friends are programmers who I have send this article too. Some of the things you described fit on there personality so you described it very well. Really good information, again.

  6. I run a webshop where we hire people even non-experienced for internship. When you write stuff like this: “The thing about programming is that absolutely anyone can be a programmer. And I mean just about anyone.” – I JUST MUST SAID ***NO*** you are totally wrong.

    Maybe if we are talking about easy stuff like changing a theme in wordpress, then maybe you are right – but when it comes to solving REAL LIFE problems, then your statement is totally wrong and will be wrong for at least next 50 years (or even forever).

    • James Maverick

      September 2, 2015 at 5:11 am

      I see what you’re saying, but there’s a difference being a guy who knows how to code a PHP app and a thinker who can solve real world problems. The latter will always thrive.

      • There is only one problem with this post of yours, and problem is that the computer where you posted this, this website you are posting, the phones you have, every single machine you have, its all done by programmers.

        • How long before these things are consolidated to a drag and drop program that marketing interns will be using to create websites?

  7. Really good post and correct in general. However if it interests you, do learn to program.

    Not for programmings sake but because these skills can help you earn your freedom (if it’s an office you want to escape from). If you can code, become a product builder.

    As Maverick said, what matters is solving peoples problems. Today a lot of those problems happen to look like software problems. Programming then becomes pretty useful.

    The world is awash with dudes making ~$12,000 a month doing just this. Analytical apps, niche dashboards, plugins, etc. Not life changing money but enough to buy you more time as you aim for something bigger and pretty achievable for anybody with decent programming skills.

    And while it’s true that anyone can build an app today in whatever the latest framework of the month is, many (most) people lack the will, drive or hustle to find that app an audience. Everybody is building doesn’t mean everybody is selling.

    This is the important point people forget as they become skilled: the ease in building the solution doesn’t detract from the value to the customer. I made $500 today updating a wordpress blog (Ha, I know). Took an hour. Few years ago it would have taken a day – less skills, less resources online – and yet it doesn’t matter. My customer doesn’t see the work – just the end product…which is a masterpiece btw.

    So yeah, this article is on point – however being able to program is invaluable if you treat it as just one of the many pieces of business lego you have to join together to get paid and a way to escape the office so you can spend your precious days doing better things.

  8. Agree. I was a programmer for 10 years then I went into technical sales support work where I don’t sell products but support the sales and marketing guys from a technical side with customers. Far more lucrative long term. Made 200K per year in this versus 60K as a programmer.

  9. Good post. One definitely hinders their social and personal growth through a programming job. I’ve seen it through other programmers who go through Zombie phases where they sit in a cave all day and as a result hurt their ability to socialize and gain more defining life experiences. As with most computer jobs that lack much interaction.

  10. I agree with the premise that becoming a programmer shouldn’t be the endgame. However, knowing how to program is a huge skill to have these days.

  11. I have graduated as a computer engineer and worked as a programmer for the last 17 years. Today I can’t even find a job. Why? Well pretty much exactly what you said:

    1. There are younger programmer who are more energetic and hungry than I am. Experience means very very little in the programming world

    2. Commoditization of programming skills .. Every vendor is trying to make everything point and click. Sure the hard things still need coding but there are less and less well paid jobs, and jobs are all going to India

    3. Technology changes at the speed of light. What I used to program in was the latest and greatest and had 50+% market share. Today it barely exists and jobs, if any, are only in production support

    I wish I had never gone into programming and if and when I have kids I will make sure they do not go into technology jobs.

  12. I agree with a lot of your points, but what’s the alternative? What should people do instead of programming?

    Fact is that programming still pays well, gives you a good work/life balance, and makes it easier to work remotely relative to most other jobs. If there’s a better profession out there to go into, please share. Programming can be terrible in many aspects, but it’s possible that it’s the least terrible job out there.

    • James Maverick

      September 6, 2015 at 8:35 am

      It depends what you’re trying to achieve. There are always alternatives. One alternative is build something using your raw skills (programming).

      If you want to transition into other areas where you’re actually interacting with people, that’s something else. I’ll be writing a post on this soon.

  13. I think you’re a bit off track here.

    The issues you seem to have with programming are not issues with programming, but issues with having a job.

    From where I’m sitting, having programming skills is probably the easiest way to actually make money in the real world. How many dentists do you know who can magically create a metaphysical product someone will pay thousands of dollars for (often *per month* on a recurring basis) with their thoughts? Obviously if you sell your time to someone else you’re not going to get rich, but the same can be said for literally every other profession that exists, no?

    And yes, a lot of programmers have limited social skills, and that’s a two fold issue: the nature of the work tends to attract aspies, and the culture surrounding it reinforces that (although it is changing).

    I am a programmer (if you haven’t guessed already), I’m not about to go dive into my swimming pool of money, but I make more than I need to support my lifestyle, which is much like yours. I guess you’re having this rant because you didn’t actually like programming, and just did it because you figured it paid well? (said every unhappily employed person ever).

    It sure isn’t a golden ticket to riches, but nothing is. What it is though is a potentially very lucrative, intellectually stimulating and rewarding, and versatile skillset which has the potential to give you superpowers in whatever domain you choose to tackle.

    ” it’s another thing to master an entire framework and build a Facebook clone in an hour. That process was a lot more involved just five years ago. Not anymore.”

    Go build Facebook in a month. Then you’ll have a line around the block of people begging to pay you $500/hr to solve their scalability issues.

    Programming != Rails CRUD app

  14. I’ve been programming for the last 9 years (I’m now 25) and I have to say that I do not see similarities with what you have expressed in relation to the social aspects.

    It’s true that sometimes I spend 16 hours of a day in the black hole that is programming, but it rarely interferes with my social life. I do lunches, brunches and dinners on a weekly basis with many people and go out almost every weekend with my main group of friends.

    I’m also not sure where this assumption that programming makes you more socially anxious comes from. I have no problem striking up conversations with random people who seem interesting. I just figure that networking is one of the most important skills to have in any career, so adding interesting or useful people to my list of contacts is something which I enjoy.

    Just a few days ago I met a guy at a party who works for the Ministry of Sound and is interested in doing game scores on the side – useful for an upcoming project I’m planning with an artist I met last year.

    As for developing emotional intelligence, you can easily think of social interactions as a problem to be solved and apply whatever emotions you feel will get the result you’re looking for. If you feel uncomfortable doing that, you can always just loosen up and be yourself – keep the conversation about social topics and avoid speaking about programming unless you meet another programmer type person. It’s really not that hard.

    To give an example that is not me, my best friend is also a programmer. Although he has stated that he would like to find a more challenging job, I have not noticed any atrophy in his social skills. He lives with his girlfriend, comes out every couple of weeks and visits his parents every Wednesday.

    I do agree with some of your other points, specifically to do with programming not raking in the cash. Programmers are often not paid as much as managerial or oversight roles because the only things you need to learn are how to code, how to work in a team and answer to a head of development. In my experience, employers don’t actually care if you’re a good programmer – just that the product is shipped in a timely fashion and it works. You could write a complete mess of a product and they may not know unless the head of dev checks it or they try to upgrade it later.

    I was told in my previous job that I could “be replaced by any kid out of high school”. I believe this is because my former CEO is not a technical person and doesn’t understand that although my job at the time was Front-end web developer, I was actually doing a lot of back-end work in Perl and also helping the System Administrator with his swamped workload. I’ve been messing around at University the last year and most of those “kids straight out of high school” who are doing IT/programming know absolutely nothing.

    In any case, you’re right that programming is not a great long term career for many people. For myself, I’ve started an Indie game studio and have been bouncing around different colleges and universities networking with people who I think could be useful and interested. We’re planning to release a few games in the next few years (a couple of mobile ones and a big desktop/console project). If we don’t see a return on investment of those, I will have to look into something else. There are many opportunities for programmers to make a career out of their skills – we just have to be willing to try.

    • Well its either management or becoming a programming professor. My professor used to work for a large communications company back in the 80s and worked with many talented individuals. His thing as well as another older IT gentlemen who I know was to go to work for an industry leader in what it is that you’re trying to do.
      Go straight to the top and stop wasting time. You’ll potentially make more money that way and you can rest easy at night knowing that you’re taken care of.

      When my professor was tired of working for corp after corp, he started teaching part time. Then it became a full time investment and he did it all of the way up to being retired. AFAIK he likes to travel and in retirement can afford to do so and still live in his cheaper suburban home. I envy him a little and his classes as well as his teaching style were the reasons why I decided that I wanted to be a programmer. He gave us hope.

  15. As someone who worked as a car mechanic and learned basic programming, I can definitely relate. By the way, I like your parallel comparison between the mechanic and programming.

    Being the master salesman is the best route with anything in life. Since people are the ones paying you money and not the computer paying you money, it makes sense to reach out to the masses and solve their problem. Your blog post hits the nail.

    Cheers.

  16. This same concept applies to my career in video production. I jumped from graphic design, to animation, to video production over 12 years. Competition was driving down my value. Now I’m doing direct response copywriting and marketing full time lol . Basically any tech skill has a short life expectancy as newbies flood in and technology begins replacing you. The other side of that coin is, I enjoyed my technical work more. It was more therapeutic. Managing people and systems can be stressful.

  17. This is depressing.

    Being a logical thinker who can solve actual problems makes you unable to attract women. What a weird universe we live in where one of the most useful survival skills there are cause the organism to weed themselves out of the genetic pool.

  18. This post is depressing. Now I don’t know what career path to take.

  19. I am a computer person. However, I do lack social skills. I do believe that a dumb, social person would succeed and make more money than a smart, shy or introverted person does. If we introverts want to succeed and make more nibet, we have to talk or open up to others more. There is no other way.

  20. Should women become programmers?

Leave a Reply

Your email address will not be published. Required fields are marked *

Shares
Share This