Programming Self Improvement

6 Signs That You Are Not Meant to Be a Programmer

Joel Lee 02-12-2014

Not everyone is cut out to be a programmer. Sure, anyone can learn how to program, but learning how to program is not the same as making a career out of it. In fact, it’s entirely possible to be a talented coder and still be a mismatch for the career. It sounds strange, I know, but it’s truer than you might think.


I spent over a decade earning a degree in computer science and thinking it was the career for me only to realize that it wasn’t — and that’s coming from someone who enjoys the programming workflow and the associated challenges.

There’s more to it than the act of coding. You have to consider the entire picture. If you aren’t completely sure that you’re meant to be a programmer, here are some signs that may point you in the right direction.

Sign #1: You Lack Experimental Creativity

Despite being heavy on the logic, programming is ultimately a creative art 4 Must-See TED Talks On Creativity, Inspiration & Passion Creativity. Inspiration. Passion. These are all concepts of which we are very much aware, but not many of us can precisely pinpoint their source. Where does creativity come from? What is it that causes a... Read More . A new program is like a blank canvas and your paintbrushes are your languages, frameworks, libraries, etc. You’re creating something out of nothing and this is a process that hinges on experimental fearlessness.


Dogmatic coders will tell you that there’s “one true way” to write good code, but that’s not true at all. Such a statement is as nonsensical as saying there’s only one way to build a house, write a novel, or cook a stew. There are many ways to code software and you should be willing to experiment.


Without natural curiosity, you’ll develop tunnel vision and always approach your coding problems from the same angle. At that point, programming becomes rote work and loses much of what makes it rewarding in the first place.

Sign #2: You Are Not Self-Driven

All good programmers need to be self-driven and there’s no way around this. When you strip away all of the extraneous details, programming is fundamentally repetitive. If you have no personal stake or ambition in the code you write, then you’re just going to be miserable.


This is true of any creative endeavor (and no matter what anyone says, programming is creative). Your motivation to write code 10 Motivational TED Talks To Help You Chip Away At Your Mental Blocks The valuable lesson from the lives of achievers is that they chip away at their mental blocks more consistently than others. Ten TED Talks underscore one simple thing – it’s all in the mind. Read More has to come from within. You have to love the act of coding just as much as the potential for walking away with a final product. If you don’t love the process, you’ll never reach the product.


If you wake up in the morning and you don’t feel a burning desire to work on your project, perhaps programming is not the right outlet for you.

Sign #3: You Hate Logic Problems

Despite being a creative endeavor, programming is more about fixing than it is creating. While other creative outlets do involve a fixing process (such as writers who need to revise their drafts), programming is unique in that most of the problems that pop up are based on logic-based faults.


This fixing process, known properly as debugging, is the heart of programming. Are you fascinated by riddles and logic puzzles 10 Websites for Puzzles, Brain Teasers and Riddles Read More ? Do you have an innate desire to repair that which is broken? And by extension, are you naturally inquisitive about the inner workings of things? You should be able to answer “Yes” to all of the above.


Much of the reward in programming comes from fixing bugs. The more complicated the bug, the more rewarding it is when you finally solve it. If you find no satisfaction in this, then programming will be nothing more than an endless string of frustrations.

Sign #4: You Can’t Sit for Long Periods

The nature of programming requires that you sit in front of a computer for extended lengths of time. You may be able to work around it by building a standing desk How To Build A Cheap Standing Desk From Ikea, And What It's Like To Use There's a current craze emerging for standing desks, literally desks that you stand at while working. Having spent the last five years as a self-employed freelance writer who spends most of his days sat at... Read More but the essence is the same: you’re going to spend a lot of time in front of your computer.


There are some concerns when it comes to this kind of computer-related sedentary lifestyle 5 Reasons Working With Computers Is Bad For You & How to Stay Healthy Working on the computer may sound like the most relaxed job in the world, but it's quite the contrary. It's very tough on your body, which is not used to this modern type of work.... Read More and it can lead to serious health issues 4 Serious Health Issues From Sitting Too Long (And How to Avoid Them) Sitting too long at your desk or on your couch is a modern epidemic. Here are four deadly risks to a sedentary lifestyle. Read More if you ignore it for too long. Along similar lines, you may have to wrestle with mental issues like unwanted distractions Focus! 4 Best Tools To Temporarily Block Facebook & Co You're not alone, we have all done it - wasting hours browsing the web instead of getting stuff done. Need a spike in productivity? Find the best tools for escaping social media here. Read More , cabin fever, and lapses in productivity How To Be More Productive When Working From Home Is working from home (or to use the term – telecommuting) more productive than working from an office? The debate was re-ignited after Marissa Mayer's clarion call to all Yahoo employees. Just like all blah-blahs,... Read More .


Ultimately, the question is: are you comfortable being in front of a computer for most of your day? In fact, comfortable may not be enough; you have to prefer being in front of a computer. If not, productivity and happiness are going to be uphill battles.

Sign #5: You Want Normal Work Hours

Programming careers fall into one of two types: 1) you work for someone else or 2) you work for yourself. Either way, it’s not uncommon to hear stories of late nights, long coding sessions, and an overall low quality of life.

Software development is a deadline-centric industry and deadlines don’t play nicely with traditional 9-to-5 work days. As deadlines loom closer, coding teams often enter a phase of “crunch time” defined by all-nighters. Even when working for yourself 5 Legitimate Online Self-Employment Opportunities Read More , you’ll have to pour in many daily hours if you want to stay ahead of your competition.


In addition, programming problems tend to get stuck in your brain and follow you around everywhere you go. You’ll be working through solutions while in the shower, while commuting, and even while lying in bed. Because so much of programming happens in your head, compartmentalization can be difficult if not impossible.

If you’re lucky you may be able to find a company that doesn’t do crunch time, but I wouldn’t count on it.

Sign #6: You Expect to Get Rich Quick

There was a time when software development was a lucrative pursuit. Nowadays, programmers who get rich quick are the exception to the rule. If your primary motivation for being in this industry is to make a lot of money in the shortest amount of time, you’re in for some disappointment.


Overnight success stories, such as the popularity of Flappy Bird The Short Story Of Flappy Bird [Weird & Wonderful Web] Few mobile games enter into the collective consciousness of the mainstream in the way Flappy Bird has done. It passes into Internet folklore, but these videos will help to preserve its virality. Read More , can lure us into false expectations and delusional confidence. A lot of people have tried their hand at indie game development 5 Free Game Development Software Tools to Make Your Own Games Free game development software is a great way to start video game making. We've compiled the best game software on the market. Read More in the hopes of striking similar levels of success only to flop and leave the industry altogether.

Can you make a lot of money as a programmer? Sure, but it won’t be an easy road. If you’re looking to get rich quick Are You In A Rush To Make Money From Home? Spot 7 Work At Home Scams Wealth, speed, ethics -- when it comes to money, you can only pick two. When it comes to working from home, it's very likely that you won't get a chance to even pick one of... Read More , you might as well play the lottery instead.

Final Thoughts

Let’s say you’ve decided that programming isn’t for you but you still want to make use of the programming-related skills and knowledge that you’ve built up over the years. What are your options?

Writing. The technical experience from programming can make you well-suited for technical writing (manuals, documentation, etc.), journalism (staying up to date with bleeding edge news), or education (teaching others what you know).

Analysis. Depending on your field of expertise, you could put your knowledge to use as a consultant for security systems, web platforms, game engines, monetization models, etc. Quality assurance testing is another field where analytical expertise can come in handy.

Management. If you have a heart for business but want to remain connected to the software industry, why not manage your own team of developers? Managers who understand the nuances of coding are few and far between.

That’s just scratching the surface. Just know that even if you realize that you don’t want to be a programmer anymore, those skills are transferable and your time was not wasted.

Feel like you still have what it takes to be a programmer? Did you switch to Linux The 11 Best Linux Distros for Programmers Linux offers a thriving environment for coders and developers. Here are the best Linux operating systems for programmers. Read More , yet?

Image Credits: Yarn Idea Via Shutterstock, Miserable Worker Via Shutterstock, Puzzle Piece Via Shutterstock, Tired Worker Silhouette Via Shutterstock, Clock Face Via Shutterstock, Raining Money Via Shutterstock

Explore more about: Job Searching, Programming.

Whatsapp Pinterest

Enjoyed this article? Stay informed by joining our newsletter!

Enter your Email

Leave a Reply

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

  1. Muhammad Zawawi Bin Manja
    February 15, 2020 at 4:21 am

    First point is correct. It is about creativity. For me I am not a creative person but I learn and read the code from other projects.

  2. Mike
    July 21, 2019 at 5:06 am

    I literally have all of those, but here i am wondering why I am excited to rush into coding everyday like i play game or checking btc prices. It is possible that I just started and current stress out. I am late on c++ class now. I just want to sleep through my life now. Can anyone offer me some helps? I feel hopeless in life.

    • Mike
      July 21, 2019 at 5:07 am

      ** not excited to rush...

  3. Kriti
    April 24, 2019 at 4:13 am

    Hey !!! Actually I have great interest in programming. But I am quite confused. if I want to take programming as my carer, is software engineering the only path ?? What if I don't want to become an engineer ?? Aren't there any other carer options for software development ?? If yes , please explain them and tell what I would need to do for it after 10th standard ( I mean which sub you should opt for and then what next ?) ?

  4. jimmy mugpups
    April 4, 2019 at 11:51 pm

    I exercise in morning to point of exhaustion in order to sit in front of computer screen at work for 8 hours. Absolutely miserable. Just listen to albums and concerts on YouTube all day.

  5. Juan
    January 4, 2019 at 4:35 pm

    Does an article decide what is or can be?

    I believe that what is expressed in the article is only a PERSONAL OPINION based on the beliefs and / or experiences of a certain person.

    Publications like: "if you do not meet x number of items, then you do not serve" is a biased and even misleading view, which generates more harm than utility.

    Each person is different.

    I want to believe that it was involuntary and not a way to unload frustrations ...

  6. Muhammad Zawawi
    May 19, 2018 at 8:35 am

    I take IT course and this coming December i will be graduated from the university. Now i am also doing the internships as Social Media Manager. I am more interested in Digital Marketing
    but i am taking IT courses , is it weird guys!??

    My task is also sitting in front of computers but without thinking to solve problem like programming.

    I love programming if i doing it for myself. I cannot stand or burden myself to build something that i hated for someone. That is my opinion i things.

    Dont quick or left the programming world. Choose a career that not related to programming.Then,use free time to you build something that actually for yourself.

    I think programming is ok when someone not asking you to build something that you hate.

    I also admit that programming you need to spend a lot hours if you need to solve a problem even a simple problem can takes a lot of hours.

    I also build a standing desk at my home after sitting to much on chair at office eventhough my job just manage social media!! If i have free time , i will do programming. You can just playing programming game on others website. In others words , programming is not die inside of you. You still have it.

    Just take care of your health. I dont like to be fat or sick. And lastly , life is too short . Use your time wisely when you still can breath.


  7. Albert
    January 17, 2018 at 11:53 pm

    I really dispute the creativity aspect of programming. In order to meet unreasonable deadlines, one often has to fall back on the tried-and-true. Or worse, follow the dictates of the developer that is the loudest and most fervent in their opinions. My early career was the wild west, so creativity was a (welcome) requirement. Now, there are patterns and best practices and cookbooks that suck out all of the joy of discovery.

    I am (or was) very self-driven. However, I was driven to learn more about the domain that I'm developing for rather than the latest language or coding technique. It was the domain knowledge that kept me working on a project rather than the opportunity to code. These days, domain knowledge doesn't seem like a desired trait and the expectation is that programmers are just as happy coding for widgets as for rockets.

    Regarding logic problems.... I excelled at proof-based mathematics and logic courses, because I found the problems interesting. I feel like I've been solving the same logic problem for the last 10 years or longer. Repetition doesn't breed mastery, it breeds boredom.

    I can sit for long periods of time. As I've gotten older, I find that I'd rather be sitting less. If I am sitting, I'd rather it be with a book or a child or a pet or any number of things other than a computer facing me.

    When I first started out, there were the occasional all-nighters. As time went on, the expectation seemed to be that 60+ hour weeks were the norm and the more-than-occasional 80+ week became more frequent.

    I don't expect to get rich quick. In fact, I've told several employers that I'd work for less if I had more interesting problems. Apparently, paying for someone's tedium is a better business plan.

    There are a few extra signs that I found during a stint at a startup:

    1) You are interested in more than just coding - After 15 years in the same field, I wanted to fill in some of the blanks in how a business works and thought that a startup would be a place to get that experience. It may be somewhere, but I was treated as a workhorse good for one thing only despite my asking on several occasions to wear more hats and to actually use the expertise I'd gained to help the business succeed.

    2) You care if customers ever see your handiwork - Startups often have to pivot and change their business plan. Don't be surprised if something you've worked on for a few years suddenly doesn't fit into the company's strategy and is thrown into the dustbin.

    3) You want to help shape the product - You're a coder. You code. You don't have any useful ideas beyond coding. Go back to work.

    4) You like credit for your hard work - If your code isn't thrown out, it is never good enough. Unless it is, but that is only recognized when a new developer adds that last cherry on top and gets all of the credit for everything.

    5) You don't like very intense office politics - When you are close in seniority to a founder, be prepared to agree with everything they say otherwise you'll wind up in the black hole that time forgot, cut off from new projects and given all of the sh!t work that the favored ones won't do but still needs to be done to keep the business afloat.

    6) You value your health - I ended up meeting more new medical personnel in my time at the startup than all of the ones I'd met in the prior 40+ years of life.

    I could probably go on, but you've probably already dismissed me as a bitter individual. I wasn't always this way, I played politics, often displayed a witty and wry sense of humor, and was considered the go-to guy with the nerves of steel.

    After 25 years as a programmer (which I fell into rather than went to school for), I am looking back at all of the time I invested and how utterly unfulfilled I feel. I am trying to come up with a transition plan, but I'm so burnt out that I'm having quite the time working on that.

    • Tony
      February 11, 2018 at 9:27 pm

      Albert, feel real sorry for your experience and overall view on the programming industry. Do you think it would've been more bearable if you had tried working for yourself? I'm an aspiring 29 yo. coder/programmer, and must say a lot of your points raise some serious doubts as to whether I should pursue this path or not. Good luck with the transition into a different industry. The 'health' point should probably be a bit higher up the list, I think.

      • Mike
        July 29, 2019 at 10:59 pm

        Tony, absolutely. I've tried every single avenue, every kind of company with every kind of team over the past 10 years as a programmer, and the problems that Albert identified have never ceased to exist.

        Working for myself is the 5 year plan that I'm trying to create now. Part of that involves building which will try to improve a lot of what's wrong with programming culture (currently in beta if you want to sign up). Albert if your response isn't a separate blog post already, it should be.

  8. carl
    December 20, 2017 at 9:36 am

    good article

    if i had my time over again i wouldnt touch a cs degree or programming career with a ten foot pole

    in my case #4 is very spot on

    the spine requires movement to be healthy

    sitting or extended standing periods in front if a computer for many years left me with a bad lower back, herniated and degenerated discs, bad sciatica and two surgeries

    and no bosses dont like you going on a stretching trip every 15 minutes. they still want asses on seats to meet crunch/deadlines in a lot of cases

    many other problems with programming as a career from constant retooling, relearning, socially isolating to outsourcing -> avoid!

    id advise reading the ea spouse article too - not much has changed.

  9. mike
    November 8, 2017 at 11:10 pm

    Well, you left off one positive. If a person is curious and wants to know.

    You can create a long on ramp to learning a language, having fun along the way and learn how to program. Let's face it most programming is not "brain surgery"; it is more like knitting or mending a fishing net. To be any type of techie, one has to understand at least some programming and using the strategy above can learn how to at least write a script (mending that net) which is really the most common task. I don't "love" programming and while I could stand-in for a while on a team, my first "love" is the hardware, making it work, but still to do this I had to learn to program.

    By taking your time, (ahead of time) and learning some less esoteric language; learning can be made easier so you can overcome the list of obstacles in this article. On the trip to learning that simple language a person can find out if they want to become that night owl, coffee guzzling, fast talking programming maven and still end up with a usable skill.

  10. mike
    November 8, 2017 at 10:56 pm

    Well, you forgot one positive. Not everyone needs to be a maven and simple curiosity and pure fun goes a long way toward learning to program. If someone creates a long on ramp, having fun along the way, most of the perceived issues listed above can be overcome. Let's face it, most programming for most situations is not "brain surgery" but more like knitting or repairing a fishing net. I don't especially "love" programming, but I was able to learn to do it using the strategy above and overcame all the "issues" listed. To be any sort of a techie one must have at least some programming knowledge at least enough to write a simple script (mending that fishing net) , which is for the most part necessary for most tech jobs and not that hard to learn.

  11. J
    October 21, 2017 at 7:39 pm

    As someone who’s worked as a programmer in a professional capacity, and has experience in totally different fields, such as teaching and music performance, a couple more points I would add:

    1. Your creativity is of such nature that it deplores tight systems of restraint where that creative energy will be dedicated entirely to problem-solving rather than personal expression. If you’re an artist at heart and are deeply in touch with your soul, don't waste that soul on what is a wholly non-artistic endeavor: programming. Yeah, yeah, people say it's creative, but as a concert musician who got into programming in my 20s, I can tell you writing code is nothing like a soulful musical performance or act of painting freely on a canvas. At the end of the day, you're a programmer to solve problems. Writing music and painting and writing literature is self-expression, not problem solving. The vast majority of software jobs virtually DEMAND that you turn off your soul and work completely from your head. If you want to express yourself, put down the code books and look into becoming a designer.

    2. You're a fantastic people person. Look. I've worked with dozens of programmers and I can tell you that I can count those who I would describe as "a great people person" on one hand. Most coders are introverts, that's just a fact. And of those introverts, many of them are not merely introverts but are practically asocial ones at that, constantly buried in their headphones/computers and generally avoidant of human interaction. Again, that’s just the nature of many, many programmers. If you want a career where you're interacting with other human beings in a colorful, energetic way, run far, far away from software development, where any interaction with other humans is a tertiary necessity of the job, not one of its focal points or joys. If helping individuals and seeing other people smile brings you deep fulfillment, programming will almost certainly not.

    • Anon Programmer
      October 22, 2017 at 1:52 pm

      Thanks, J, I needed your advice. I'm artistic at heart, and I've been trying to learn how to program for years now, with little progress made, because I'm not using my strength.
      There's very little creativity involved in programming. Self-expression is creativity. Writing concise code is more about efficiency than creativity.

      Unlike software development, in South Africa, graphic designers earn peanuts, but I think I'll be happier doing that than programming!

  12. Ryan
    October 20, 2017 at 2:33 pm

    This article resonates with me greatly and I'm very thankful I stumbled across it.

    I graduated with a bachelors in Computer Science with the desire to be a programmer/developer. I struggled quite a bit more than my classmates in grasping how to code and how to apply it in the future in the real world. I graduated with no confidence in myself, could just be a personal issue there, and an utter fear of failure, which I eventually did. I partially want to blame professors for lack of quality teaching, but ultimately I have to take blame for not driving myself enough to learn on my own. But you can't blame me for wanting direction from the university professors.
    I got a job right after graduating as a computer programmer. I was expected to learn an outdated language that I will forever despise, FoxPro, which has been a dead language since about '96, yet this whole company was using it almost exclusively. I had very limited online sources, since it was dead, and co-workers were not always too nice when I would ask questions on how current applications used this language the way they did. I was deeply stressed over failure and would try hard to research things to self serve questions and projects, but ultimately I was 'let go' for not being up to their "standards". Having no confidence and this being my first real world experience I turned my back to coding in a career because I was just too afraid to try again.
    I struggle with coding but I really do enjoy it when I understand what I am doing or have an idea of how to find answers when I need to. Sometimes I hate coding and sometimes I love it, but I could say that about a lot of things.
    In the future I would love to be a developer again, but its been 2 years and I feel so far behind that it's impossible to catch up and try again. I've tried reading books and learning on websites like Pluralsight but end up thinking it's a sharty pipe dream to be a developer again.
    Should I just tough it out and keep working towards it and hope that over time I could build coding knowledge, confidence, and the problem solving know-how to succeed?

    • Michel
      October 27, 2017 at 1:08 am

      I've started a new career as a developer after my 36th birthday (2.5 years ago) . It's never too late to catch up, man. Good luck.

  13. Burp
    August 19, 2017 at 3:45 am

    None of these explain me, but I still suck at C++...


    int main()
    std::cout << "Okay so now wtf do I do, read every damn book?!\n";
    std::cout << "Garble garble some shit arithmatic garble!\n";
    return 0;

  14. Kevin Tran
    August 9, 2017 at 5:38 pm

    Thank you for the article. My problem stems from the fact that I have not learned the proper way to program or I lack the motivation to keep going. My 2nd year at UCSC I was at my lowest in terms of programming. I took and failed a Data Structures class because towards the middle of the quarter I simply crashed and lost the motivation to keep going. It was for me to understand the concepts and I felt like my heart was not in it. However, it could be the professors fault as well but to be honest, the problem was me. I could not logic my way through the assignments and I felt like I was behind most of the time. Understanding the assignment is one thing, but actually writing code and remembering what syntax to use was miserable. Like, I would rely on peers to help me because I thought that I could not do it myself. Also I can draw a bunch of pictures/diagrams to map out the problem but I could not type it out. I lack the patience to debug and solve the problem out because I wanted an immediate answer. Sorry for the ramble but I would like some advice on how I should improve. I'm currently a Information Management major at UCSC going into my 3rd year.

  15. klizzal
    June 3, 2017 at 7:21 pm

    I am one of the people who was good at programming, but the career/culture just wasn't a good fit for me. I was also extremely good at math (mu alpha theta represent), into technology, and embarked on a degree in 1999 (at the height of the dot-com era) as it was a lucrative field and I had no better idea of what to do. I was quite good at what I did, worked in the Bay Area, etc. but then around 2008 after about 5 years of working at 3 different companies, I knew I couldn't do it any longer and did a career change, as it just wasn't meaningful for me. I now work as a journalist (obviously not for the big bucks) and am MUCH happier than I ever was working in IT.
    Almost 10 years later, I'm still into technology, but glad I make it work for me, instead of working in the field. I do wish I made more money though, I still don't have the salary I once had... :(

  16. ed
    May 1, 2017 at 9:30 pm

    I work as a web 'developer'. I have pretty good linux skills, good CSS skills, good html skills, good sql skills and I have a working understanding of php and javascript. I work with CMSs so its building as opposed to development - mostly. I have enough understanding of coding to know what I don't know quite quickly. In which case I can manage small bits of custom development. It's a confusing world, often its just good enough to be the one eyed king in the kingdom of the blind. I wish I burned for coding. But I don't.

  17. Danno
    April 23, 2017 at 5:07 pm

    Okay this article touches on some things that do exist in the wild as a programmer, but there are other points that I have just GOT to get off my chest.

    1.) Part of being an 'overnight success' is not specific to IT. A lot of times a good idea comes as a result of hobbies that people do in their free time while maintaining some kind of day job. Anyone that has started their own business can tell you this. You already realize that it's going to take some time on your part to get the dream off of the ground. The only difference between those who make it and those who don't are the ones who give up. Sands do not shift overnight.

    2.) You want to work normal hours. - The writer's point here is a little off base. Most jobs in the business sector require you to work some kind of overtime in order to get projects done. I would say that most of business has to do with some kind of project work at some point or another ( company acquisitions, product development, market research, etc ) but most of those places will admit that their core hours are 8-5. The only time that this is not the case is when you're working at a startup which you would have already known that from the jump. If when interviewing for a job you ask what the expected working hours are and they give you an answer other than 40 hours and some overtime on occasion, then it's probably a sign that they aren't a great place to work. A good company realizes people have families and responsibilities outside of work and won't drive you to work extra.

    3.) You hate logic problems. - I can see how this can be a problem at first. But honestly, if you keep at it long enough you should be able to overcome this by finding you inner calm and concentration as opposed to trying to force an answer. More times than not, just take your time and the answers will come all by themselves.

    I'm going to add some of my own perceived caveats to pursuing a programming career.

    1.) Micromanaging bosses. - This is a biggy in the project based working world. It doesn't matter if your industry is mechanical engineering or programming, you're going to run into this problem at least once in your career. You could end up working for someone who wants everything done their way. This can impact your motivation and personal growth if your boss is always stepping in to 'fix your mistakes' whether they are really mistakes or not. Programming is already a tough enough field without those problems looming large.

    2.) Failure to adopt modern engineering practices to create order and velocity. - A lot of companies are stuck in the same waterfall delivery model and what they may not realize is that this is hurting them. Some of the more successful companies in the software industry use agile practices and usually some kind of scrum practices. This means that instead of delivering a whole product, they deliver pieces of a solution that the customer can verify that is what they want and then by the time they deliver the end product everything comes together the way that they want. Trying to deliver everything at once at the end of waterfall causes problems with error correction which stretches out development and if there's a critical error can make a company miss deadlines.

    3.) Not invented here and trust issues. - Because software is a complicated pursuit, a lot of companies will re-invent the wheel because it made sense to them at the time or because of egos in the room. If you mention a better alternative to the status quo this can be perceived as a stunt to get a promotion or to show up the powers that be. This situation can be difficult to deal with as software is always changing and it is important for companies to keep up with changes in the industry.

  18. Alice
    March 27, 2017 at 7:53 am

    Hi. I am 22 years old. I have studied IT in university. Ever since I chose this path I knew I don't wanna become a programmer (whether I'm good at it or not) but it’s been 9 months since I’ve started a career in front-end development. I have earned a lot of experience and I can say I have improved a lot (seems like I have some talent in this job after all!) but I still don’t LOVE coding. I don’t want to sit in front of a computer all day and then go home and start learning the daily frameworks that come out! I want to have a job which I can’t wait to go to work and I’ll be excited about it, not to think of it as some kind of medieval torture!
    I have worked reallyyyy hard to study this major (in an excellent university) and I don’t want to think all those effort and time is wasted.
    I am thinking maybe I can get another job in this industry but his past months have made me think maybe I have chosen the wrong PATH.
    I never wanted to have an ordinary life with average salary but I also don’t want to have a job that I hate for the rest of my life just for the money!
    I don’t know what to do

    P.S. sorry for the poor english

  19. Coda
    February 9, 2017 at 11:02 pm

    Well I always thought I loved programming. I love relying on logic, and solving problems, still all psychological tests show me that I should be a coder.

    But in reality I hate it. The code is always poor quality and I've been to dozens of companies. It always is as bad as it can be to barely meet expectations - because it's the only way to meet the always tight budget.

    If I'd get a penny for every error on production therese no resource to fix, i'd be a millionaire.

    But the biggest problem for me is the fact that there is really no point in learning anything, as all the frameworks and technologies change constantly, how do you even keep up?

    Why constatnly develop new tools if old one work?

  20. Webstar
    February 2, 2017 at 5:54 am

    I think am a born programmer but I lack a good MASTER, although internet is the highest place to learn but having a master matters too, please do help me,Thank you

  21. Felipe Vega
    October 21, 2016 at 1:28 pm

    I'm 34 years old and I've just been fired for lack of performance from one of the best digital agencies in Canada. I've spent the last 10 years programming from flash, then, for the past year and a half to web (html, css, javascript). I entered the company thinking that the reason I felt bored and wasted was because I was working in the wrong place (honestly, the job before this sucked). But when I entered the company I was overwhelmed with heavily skilled people, almost 10 years younger than me, and with big expectations about me (of course, I was supposed to be a 10 years expert programmer). The sum of facts only tells me that I've been working in the wrong profession all these years, yeah, I think I wasted 10 years of work, now I must find a new profession to do, start again from the ground. I'm working in a bike shop in the meantime while I figure out what to do with all these wasted years, but for now, I think I'm a dead developer

    • Alex
      November 5, 2016 at 4:28 pm

      That's the wrong type of attitude. 10 years is a long time, you surely learned a lot of things during that time. If you did it for TEN years, I'm sure you're not as bad as you think you are. Instead of being so negative about it, you could instead focus on what you have to catch up with. You said you only started doing front-end dev like a year and a half ago. That's not all that long. Start looking at JS and CSS frameworks and what you can do with them, start making websites, try and learn new things all the time. See how Angular is, Backbone, jQuery, etc., play around with Bootstrap, learn to do stuff in html5 canvases, look for cool-looking menus and see how they're do, look for one-page designs and understand how they work, etc. There's so much cool stuff that you can learn and I'm sure you can find an employer that will appreciate you for it. It's all up to you. Besides, it's not all about front-end. Try learning PHP, C++, Java, etc.

      Just because you got fired from one company, doesn't mean a different one doesn't want you and you should quit a ten-year career.

      • swampwiz
        December 8, 2016 at 7:15 am

        The problem is that in front-end work, any experience is tied to languages/tools/frameworks that are not directly transferable to others, so that when the winds change, the experience is worthless; the core concepts are not all that hard to get up to speed with either, thereby allowing anyone with a modicum of CS education to be just as well-versed as someone who is "seasoned". I'm sorry, but it's very hard to be self-motivated to learn that the function ThisDoesSomthingStupid with a certain signature needs to be now be called as ThisSomethingEvenMoreStupid in the next rev. All that front-end programming these days is is learning the new k3wl framework to do a project and then learning the next one after that.

    • jack
      January 25, 2017 at 5:20 am

      Umm ... if you were employed for 10 years then surely you were doing something right?!

      • Tre Holliday
        May 29, 2017 at 2:18 am

        I have experience with investment,
        If theres one thing you learn right away it's KNOW WHEN TO QUIT.
        If it doesn't work for you, then stop- even if you spent $25,000, 10 years, a death, w/e.
        If the market is in a downtrend (so to speak) then get out, it wont benefit you. i know when to quit, I'm a quitter, so i can exact my wins, I can invest in my victories.
        "The scars i get, they will just collect, ensuring that i won't forget, reminders of the battles that I've lost and I've won."

        It seems even experienced investors don't understand this, it's wisdom that can take lifetimes to learn, I'll give you my epilogue right here

  22. Abu Ali
    September 21, 2016 at 8:58 am


    All those symptoms apply to me, which means I am a normal human being Now :) after a decade of computer programming slavery where I was being "Used" to do the dirty job for the executives, ... it was a nightmare and a disease, but finally I am clear of it now and happy for that ...

    Programming is a jail with a stupid dog trying to teach him how to talk !!!

    • Wiesen
      September 22, 2016 at 6:54 am

      what you do now?

    • Joel Lee
      September 27, 2016 at 5:01 pm

      Of course there are great programming companies out there, but yeah, it seems like your experience is more common than it should be. What career did you switch to, Abu?

  23. Raga
    September 15, 2016 at 12:57 pm

    I'm 20 years old, and pursuing and Information Technology/Computer Science degree. I really feel like programming is not meant for me, i.e. I don't want to sit in front of a computer all day, and I feel like I am generally not great at it. I've done internships on Ruby On Rails, and learned a bit of Hadoop Developing, but I felt that administrator is something I'm more interested in. But from this article I'm a bit confused, because I love logics, and solving logical problems, basically, I said YES! to all three questions in #3. I cannot go to sleep without fixing something that is broken. But at the same time, I also really want to work with people, and I know that this implies that a management position, but I'm not sure what I can do as a fresh graduate. Basically, I'm confused, as to what direction to go in.

    • Joel Lee
      September 20, 2016 at 12:44 am

      Hey Raga, if you've had a taste of programming and you feel like it isn't the right path for you, don't feel bad about pursuing something else (assuming you gave a "proper" try to programming). If you love logic and problem solving, there are other ways to put that passion to use, and I believe there will be much of that if you decide to go into management.

    • Jessica
      January 17, 2018 at 6:45 am

      Hi raga! I know this might be a bit too late but I am currently in the same position as you. I want more human interaction but at the same time I love solving puzzles and problems. I was doing software engineering for a semester and dropped out coz I just crashed and absolutely hated coding I couldn't cope up with it. But I like reading about tech related stuff even though I don't go hunting for articles about it. I have kind of decided on changing my major to international business management. It would be great if you could give your insight on what you decided to do

  24. H.
    August 29, 2016 at 6:34 am

    Article is imposing an "Programmer/Nerd/Virtual Reality all day infront of a screen master race" dogma, you can certainly have all those qualities and be a god and still not learn or be a programmer! Creative, Logic, Problem Solving, thousands of years humans have explored these, even today you will find logicians, mathematicians, scientists, writers, artists, engineers who wouldn't have two bits of know how of any sort of programing. I know I don't, I am a real life problem / hardware type person, not some gibberish program that if short on one line of code wont function properly when everything is there and just flawless. Let somebody else do it, and think they are high and mighty, there are better uses of ones life then programming alone. / vented

  25. Esme
    August 5, 2016 at 10:51 pm

    I found this an interesting read. I think I am a bit old to be a 'proper' programmer now (30), but I started writing code by accident and really enjoy it. I used to spend 10 hours a day writing Excel formula for accounting and coding feels very similar for me. I accidentally discovered the VBA tab on Excel a few years ago and got hold of a VBA for Dummies book so I could build MI dashboards for my company. Then they needed someone to do basic SQL for database work, so I taught myself that. In the meantime, my friend wanted a website built for her band so I learned HTML at the weekends. The accounting work was really dull and not a career I chose, but sitting there writing and testing code was really relaxing and felt more creative. So now I'm wondering if I can make a basic living from programming. I'm not fussed about getting rich and I know I'm too old (and can't afford) to go back to uni and take a computing degree. But I'm taking online courses and helping out with projects on github for fun, so maybe I can do this as a hobby at the very least. I get bored very easily if I'm not learning new things, so programming is great as there are always new projects, new languages to learn, new technology. I'm also not a social butterfly, so long hours behind a computer is much easier for me than going out to party!

    • Dave
      August 8, 2016 at 11:44 am

      30 is not too old at all to learn a new skill. Just because you aren't "young" doesn't mean you can't learn and excel at new things. Go for it, and don't count out a degree. I know plenty of people going to college later on in life to learn something new.

    • Anees
      September 29, 2016 at 5:49 pm

      ESME....plzzz tell me the websites or youtube videos or books or something which i learn programming...i started my IT degree from a university...but i m very new in this field...i have nocomputer-study i m worried that why i select this degree program....kindly help me that HOW I CAN LEARN PROGRAMMING?

      • Malcolm Duff
        November 2, 2016 at 6:51 pm

        Hi Anees,
        There are many, many free resources available that are focussed on helping you learn "programming". This is actually the problem.

        Your question is too broad. Try and narrow it down;
        Why do you want to learn programming? is it for a specific job/career? A specific language/platform? Just "dipping your toes in"? and so on.
        Are you interested in particular platforms? Particular problems?
        For example; I have worked in programming for over 40 years and I have never been involved in computer applications that - if they go wrong - could cause injury or death. Like Air Traffic Control Systems or Defence Systems. The reason that I don't is not a political/religious/philosophical reason. No. It is because I would not be able to take that sort of responsibility. I would not enjoy my work. So I don't do it. What sort of applications would you enjoy or not enjoy?
        Your answers to all those questions above - and others - will point your search engine towards the most helpful sites.

        What you may find useful is to think about it this way;
        Imagine a line with marks on it from Total Beginner to Programming Expert. Say, around 100 marks from 1 to 100. You can put your own descriptions between those two extremes. I have one, around the 10 mark, labelled "No Longer Dangerous". Have some fun with it.
        Everyone on the planet can be placed somewhere upon that line. Where are you? Be honest - it is only you that you will be fooling. This will help because you will not become demotivated if you land on a website that looks like it was written by aliens :)

        Apologies for the length of this reply. Feel free to keep this thread going.
        Finally, I wish you the very best in your quest to educate yourself.
        Keep going!

    • Kt
      November 22, 2016 at 3:29 pm

      Esme, I know this is a bit late but it was eerie to read your post because I was also an accountant who realized they loved programming. And I also realized this by getting into VBA and other script writing to speed up my job. I went back to school for computer science in my thirties and I could not have made a better choice then to change my career. I've now been working as a software engineer for a little over a year. If I were you, I would go for it. Before you quit your job though, I would take a few classes while working full-time just to make sure it's what you really want to do. There are a lot of online courses that you can take that are provided by accredited universities.

  26. wuff
    July 29, 2016 at 9:52 am

    I feel there are "programmers", "coders" and "developers". I think I'm a programmer, but after working with developers, i know I can NEVER be a developer - nor do I want to be. Being a developer is a collaborative craft. I enjoy creating one-off automation scripts that just work - but linking huge libraries and deciphering other peoples code and creating dependencies!?! It's an absolute nightmare for me. Especially after seeing "coders", seemingly adjust naturally to anyone's source and effectively understand and modify. I have too much dyslexia and Asperger's to ever be able operate at those levels - YET - I still enjoy programming.

    QA test automation is where I chose to practice my "craft". It's not nearly as well paid as being a "coder" or "developer", but it's an enjoyable career path.

    One note - I have never met a "coder" or "developer" who got good in college. Most excellent "coders" and "developers" develop their craft in their teenage years. In my opinion, if you're not developing code by the time you're 15 - you'll never make it as a top-tier developer, sorry.

  27. LK
    July 19, 2016 at 10:00 pm

    Sign #5: You Want Normal Work Hours

    No, we're not going to be explored and no, programmers can't accept this! We have life after work like everyone else. If i only left work after all the work is done i would die there.

    Bad piece of advice and a ridiculous foul play

    • Eric
      July 28, 2016 at 6:28 pm

      I don't feel this isn't entirely inaccurate. Often times developers will have to work lot's of extra hours due to say a bad deployment, random bugs, server failures, etc. It's not about getting ALL the work done in one day, that is just not fathomable in programmers mindset. This is why projects take months to complete, because they don't stay all night long every day.

      This would simply mean that they would need to be there for emergencies and deadlines, and it is often stated in contracts if you are working with companies. If you own your own business and say "I'll deal with it in my own work hours", I feel you may lose business swiftly.

      This technically could be applied to many areas in life, but this one particular is true.

  28. Aboubakr
    July 13, 2016 at 11:51 am

    I started with programming some 2 years ago and I hope well experience with html, css, javascript and average experience with mysql, php and codeigniter but I have a strong feeling that I never will become a programmer. When I started with working with computers and staying long times behind the computer, I saw that I'm less social and that affects my social life and got social fobie. Also I often lose concentration and the power and logical thinking and some time I don't how to solve a problem. I Tried to improve my english by reading, listining and other stoff but I don't come further...
    The problem is that i'm now 24 years and i'm unsure about my future. I spend long time to build nice things but no...
    I'm Aboubakr from the Netherlands. You can contact me to:

    • Cristian Cocos
      August 17, 2016 at 5:01 am

      Don't be so hard on yourself, Aboubakr. You don't start living until after you're 25!

      Given your name, I imagine you're Muslim or born into the Islamic faith. With that given, take the prophet Muhammad (PBUH), he didn't even marry until he was 25, his career was to barter for his boss and soon to be his wife, Khadija, and lived a very simple life until he was 40, then things got interesting...

      Keep your chin up and follow your heart, if it's programming you want to do then you must put in the work.

      [Broken Link Removed]

      Cheers mate!


    • Bakr Alashwal
      September 6, 2016 at 5:00 pm

      I don't know if this is ironic or not, but it is so relevant to me; to begin with, my name is Bakr, and I'm 29 years old. I spent 5 years of my life studying Medicine, dropped, and just now, started to persue major in CS. I am neither experienced in programming nor good at problem solving, but I chose to learn it and going to do my best to be a good programmer. However it goes I will stick to my goal: 'to develop something unque', which is not easy, but I will surely do it, once my brain adapt to the knowledge am going to work for. We are in the same boat as the matter of English struggles, but let that aside and focus on learning how to code in computer languages; after all, they are universal and the concepts will come by eventually.
      Big Big Thank you for Cristian; as what brought me here is the same idea that aboubakr posted -> "is it too late?", I am not an ideal muslim, however, considering that in your replay is very heartfelt and I can't really grab the words to describe how am feeling right now, it's surreal! So again, thanks <3

      Finally, I wish you good luck in your lives, as programmers, or whatever you choose to do in your lives.

      With big love & respect,

  29. Jetdie
    May 23, 2016 at 3:35 pm

    about most of those doesnt affect me at all

    • Joel Lee
      May 27, 2016 at 1:45 am

      Nice! I guess that's good news then. :)

  30. unbanned
    May 17, 2016 at 8:29 am

    What bullshit this is. None of this are needed to be a good programmer. Anyone can be a programmer if they truly desired to be and have the willpower to work hard.

    There is no such thing as being "meant" for something. Really hate people who write such crap.

    I hate programming. I hate puzzles. And yet I am doing well as a Computer Science student. You can be good at something even if you do not like it.

    • Joel Lee
      May 27, 2016 at 1:44 am

      This post wasn't about the act of learning how to code. The very second sentence admits that anyone can learn how to code. This is more of a reality check to see if the career path of a programmer matches your expectations.

      • Ayman husseini
        June 24, 2016 at 1:52 pm


    • Eel Leoj
      June 16, 2016 at 3:25 am

      This article is bullshit. At first I thought is was going to be good when you said; "it's entirely possible to be a talented coder and still be a mismatch for the career..." but that is where I was mistaken.

      You never said anything to back up this claim. You continued going on and on about lack of creativity, laziness, inability to comprehend basic logic, etc. WTF?
      I have never heard of anyone that learned to program with one of these 'disabilities'.

      Except the lack of creativity one. I'm 100% sure you have got this one backwards. Have you ever programmed? Do you realize that 99% of programming is just linking different libraries. Some of these libraries are in-bedded into the programming language. We are the uncreative ones, sure each persons program will differ, but that is only because we use different people's code in a different sequence to produce the same result.
      If we were truly "creative" we would all be writing our algorithms in binary so that it would be all original, but then still how creative can it be to write a long line of 0's and 1's.

      Secondly you said that you need to be self driven. Hello? Doesn't this apply to every single career ever?

      Thirdly you said "debugging, is the heart of programming". I as far as I know, sequential procedure is the heart of programming. Debugging is more like the kidney of programming that filters out all the bad code. But I you are so strong to this belief I am willing to pay for your heart to be replaced by a kidney.

      Fourthly; "You Can’t Sit For Long Periods... and it can lead to serious health issues..."
      I agree with you, when you cant sit there is probably something wrong with you and you have to go and see the doctor.

      Fifthly "You Want Normal Work Hours... If you’re lucky you may be able to find a company that doesn’t do crunch time, but I wouldn’t count on it.". As a matter of fact, I would count on it. You do realize that most programmers first start working around 9:00 am. Do you know why this is? The companies want's their programmers alert and able to produce solutions efficiently. They do not want you to be half asleep on the job. And if your boss expects you to work until 3:00 am, find another job. There is a huge shortage of programmers.

      And last but not least, programming is a job just like any other. Most programmers make an average of $82,690 USD per year. The average earnings in the world is $18,000 a year. This includes the amounts millionaires makes. If you should take the mean you would get just under $1000. This means that a programmer makes more in one year than the average person makes in his entire life.

      In conclusion this article says that it is better to become a writer in case you will be awe full at programming and I (Joel Lee) have no idea what I am talking about.

      Keep on with the good work. But plz stop discouraging people with bullshit like this.

      • James Gabbitus
        December 8, 2016 at 8:50 pm

        nicely said

  31. NeonSnake
    April 27, 2016 at 2:37 am

    I'm not sure about #5. Sometimes "us programmers" find ourselves in crappy contract gigs or full-time jobs that at-times can be dull. Personally, I like to keep the "work" at work and go home and work on my little code projects on my free time. This can open a can a of worms outside the scope of this post... but people who don't keep an eye on the clock and work terrible OT hours can easily find themselves being taken advantage of. Your employer will take what they can get!

  32. sim000
    March 20, 2016 at 10:19 pm

    Programming is amazing! Just thinking about it makes me happy, though I have heard horror stories of people slaving over their work for hours and hours and getting sick and tired of it long after they had the opportunity to quit. Scary stuff, I tell ya.
    I just hope I get the rare change to work on my own. I don't like the idea of a boss (Who does?) and working under someone usually has disastrous results.

  33. jack
    February 28, 2016 at 6:40 am

    IMHO, if you have all these attributes, you are on your way to being a great programmer. But you can still be an mediocre career programmer if you have a few of these as you could develop some of these traits to a reasonable degree while working as a programmer. Otherwise, nothing is stopping you from programming as a hobby.

    Also ... "not everyone can be a great programmer" vs. "everyone cannot be a great programmer." These 2 statements mean completely different things. The second statement is the same as saying that "no one can be a great programmer". The first statement gives the possibility that some programmers can be great. I often see this confusion in workplace communication.

  34. Godfrey
    February 18, 2016 at 1:31 pm

    Sign #2. Your motivation to write code has to come from within. If you don’t love the process, you’ll never reach the product. I can't agree more.If you can go for as long as a functional unit takes to build, big or small, then you are meant to be.

    Sign #5: If you work for someone else, there should be no OT, if you work for yourself, there should be OT :-) baffling but...

    The truth is programming requires creativity and concentration, we all have our most creative or productive moments of the day and whilst sticking to a working shift that starts and ends at specific times everyday works for some, it has never worked for me.

    It is the reason I work during my best time of the day and flex my work times to suit my mood. I ask my programmers to do the same. This also helps me to estimate, how much workload to give them, project effort time and project duration.

    • Joel Lee
      February 25, 2016 at 2:46 am

      Haha, absolutely right, especially about it requiring creativity and concentration. Thanks for sharing, Godfrey!

  35. eda
    February 18, 2016 at 8:09 am

    Another sign that you are not for programming; you start crying in the middle of the office because you hate it so much. Like me 15 mins ago

    • Joel Lee
      February 25, 2016 at 2:45 am

      Yikes! Yeah, that might be a big sign. :(

    • James Gabbitus
      December 8, 2016 at 8:54 pm

      I guess your name, (meaning "stride for wealth*), didn't really cut the pie for you, did it?

  36. Mutebi
    February 6, 2016 at 7:14 am

    Hehee.. Me love and crazy with programming.. Mwaaaa...

  37. Gabriel
    January 29, 2016 at 4:38 pm

    "Programming careers fall into one of two types: 1) you work for someone else or 2) you work for yourself. Either way, it’s not uncommon to hear stories of late nights, long coding sessions, and an overall low quality of life."

    Don't agree at all.
    In my 8 years career I've only worked overtime less than a handful of times, and have always had freedom in my work schedule.

  38. Ryan
    January 17, 2016 at 2:59 am

    I agree with most, but I'm a programmer and I work 10-6 on a flex schedule and never go over and never have to put in OT.

    There are two kinds of programming jobs in my opinion.

    A. Consulting (deadline driven)
    B: Directly Employed - Internal Work

    I'm in the B group, I maintain existing sites, make changes, and some new dev. While there are deadlines, they are so lenient if I go past one it's not a big deal and never, at anytime, am I expected to work extra time.

  39. Darkone
    December 21, 2015 at 1:57 pm

    LOL none of that explains me, but still makes me wonder why programming isn't any easier to grasp. Not saying its difficult, I find Java actually quite approachable hell even Python. But I don't see myself devling into C++ anytime soon I'm just not that hardcore.

    • Manish
      January 18, 2016 at 11:16 am

      I really very much eager to learn programming. since work in excel and trying to join vb from excel , I feel hard to make a simple form which covers detail i.e name , address , pho of company. since last 10 years i trying and i dropping to become know but still not . May be I will learn Programming in next life. Lol I am seriously sad.

  40. Isaac Orija
    December 3, 2015 at 10:32 am

    Is this article discouraging others from learning how to code? Because I know of a dude that struggled with programming and decided at a point to quit and said to himself that he wasn't born to code. But guess what?! He's a guru at programming now, I took time to really inspire him and told him as humans we have the capability to specialize in different disciplines in life. It takes only a coward to fail, People are born naturally with talents and gift but guess what? Humans have the ability to master Talents, gifts or even skills... oh I almost forgot to say something. I play 5 different instruments and I also sing too, after being told I was tone deaf years ago by my older brother. HUMANS ARE CAPABLE OF DOING THE IMPOSSIBLE

    • Tom
      December 4, 2015 at 11:15 pm

      I think different people are good at different things. Humans are capable of doing the impossible means nothing because everyone can't be a great doctor or programmer or artist.

      It's dishonest to say that anyone can become anything they want.

      • Isaac Orija
        December 5, 2015 at 9:25 am

        Dear Tom, I'm still going to REPEAT myself clearly. HUMANS ARE CAPABLE OF DOING THE IMPOSSIBLE. If you woke Julius Ceaser and told him we have figured a way to destroy a country with out even stepping on the soil of that country with drones and missiles, he would worship you. Earlier generations would think we are demigods or a supernatural being with the latest inventions and technologies.... It's a matter of progression, if you can put your interest into something, you will be a master in that thing. I have watched videos scenes of monks sitting in hot boiling water, I have seen people walk on hot coal. We created computers, we should be able to know how it works, how to control them and also how to command them. You can only be honest to yourself by learning what you have interest and passion for. Dishonesty is trying to learn what you don't have interest and passion for.

        • jen
          February 13, 2017 at 11:33 pm

          but what if you have the interest but aren't very passionate, how much of that mental block is fear... getting in the way of you pursuing that interest. I feel personally a lot my passions go unfulfilled because of fear of failure and/or lack of discipline (again i think that goes back to fear of failure also)

          how do you know when it's worth the risk to change careers. like myself debating to either go to coding school or take classes and develop my IT skills so i can have a career as a tech or network engineer, at 42 it's really scary to start over but i hate being an office manager/property manager and just don't want to do it any more.

    • Joel Lee
      December 5, 2015 at 1:05 am

      If for some reason you REALLY want to program even though you're bad at it, then yeah, determination and perseverance will go a long way. I'm not necessarily trying to discourage people from learning how to code, but I am a realist. There are only so many hours in one lifetime, and if you don't have a burning PASSION for coding, then there comes a point where it becomes counterproductive to keep going.

    • Rick
      December 14, 2015 at 9:52 pm

      Isaac, I would love to hear your methods used to inspire your buddy. I feel I would be a good fit for the profession, but sometimes feel I should quit.

      I have done tons of beginner online tutorials and lessons, but can't figure out how to bridge the intermediate knowledge gap. Everything seems to jump from beginner to advanced. I am focusing on Python and it seems to get complex very fast when you are looking at 500 plus lines of code in an example.

      I am older (40 plus), so maybe that is a bigger factor than I had originally thought. I learned front-end dev easily and had thought back-end would be a lot harder, but not impossible for me. I am struggling now to lay out a game plan on getting over this basic to advanced hump...or trying to decide if I made a mistake with this career change decision.


      • Isaac
        January 8, 2016 at 9:19 am

        Hi Rick, I understand clearly what you're going through, the pressure to get quick gasp of writing codes and I'm going to point out one of @Joel Lee points that says... "There are only so many hours in one lifetime, and if you don’t have a burning PASSION for coding, then there comes a point where it becomes counterproductive to keep going." I believe Quincy Larson started coding when he was 30 +. I still and firmly believe that anyone can learn how to code. Man, I believe the challenge you're facing right now is "Distraction" I would suggest you read this blog post written by Quincy Larson of Free Code Camp here - I believe you will be inspired to keep going and finally, you can learn how to code by yourself but not alone. Talk to real people and find a mentor or partner, it doesn't matter the person's age; just find someone that you can build a personal development relationship with; someone with vast experience with which you can build a learning and development partnership with... Always remember that writing codes is a lifetime learning process.

        • jen
          February 13, 2017 at 11:37 pm

          thank you isaac for this reply and the link because this is my battle as well. i wish i was 30 i'd be in school right now without hesitating. At 42 i'm just going to have to forget my age and just go for it because thinking "i'm too old" has kept me stuck without more of that! my aunt became a therapist at 60 yrs old and went back to university with all the 20 something year olds and guess what? She now has her own private practice and lvoes it.

    • Aziz Amari
      January 7, 2016 at 10:55 pm

      How is he going your dude man , Can you tell us about his/your experience with coding ?

    • jen
      February 13, 2017 at 11:28 pm

      wow Isaac, you are a real inspiration. I keep searching for answers as i am working partime and really need a career change. Everyone keeps telling me "jen you would be good at this, or jen you shouldn't do this I don't think you'd be good at it" I love solving problems and have a strong curiosity and passion for fixing computer issues and keep wanting a carerr in IT or Coding but ....i'm 42 :0 I feel like i'm sinking and i've wasted years not going for what i want out of fear and because i listen to my family's and friends' adivce and guess what? I am frozen in my path from hearing what everyone "thinks" I should do. I don't know what to do about it anymore. so tired of analyzing careeer options and hearing, you're too old for that. Anyhow the haters and nay sayers are always going to be out there. Your brother saying you're tone deaf for example. Look how you proved him wrong and showed yourself you are capable of anything. Impressive you learned 5 instruments! What I need is guidance and confidence and discipline so i can stop spinning my wheels and just take action already. Thanks for reminding me "humans are capable of doing the ipossible!!! we doubt ourselves too often. I just wish I knew what direction to go in, IT repair or programming, I"m so stuck

      Heeeellllpp!! I just want to do a bootcamp school already . I already have a BA in education which i'm not using so that has made it harder to go back to school, that fear comes again of "what if i don't like coding" what if , what if. etc.... :) so hard to figure it out. I just want to figure it out and work towards my new career already.

      • QA_Tester
        December 20, 2017 at 8:57 am

        42 is not old... hell I'm about 10 years older than you lol. I've gotten the same comments as you "You should get into computers" (I did, see below), "Are you sure you want to do this? Will they hire someone your age?" (current situation) My BA degree was in Education also. Spent some time working in social service field... hated it and burned out. Then got into computers- took a 7 month program in COBOL (yes COBOL).. loved it- while the paper tests I did horribly on, the projects I did very very well on (and once solved a niggling problem sitting in a doctor's exam room...).
        Ahem.. to keep this brief... Worked as a QA Tester in Mainframe for years then lost my job and unemployment stretched out (for different reasons). Now I'm considering getting back into it- in other languages like javascript, Ruby, Python so applied to bootcamps (funding is a problem though...). Age is a problem only if you let it be.

        Best of luck to you but boy do I understand your story.

  41. dakata619
    December 2, 2015 at 12:33 pm

    sign 7: Don't think you don't have to go through basics

  42. Anonymous
    October 14, 2015 at 8:42 am

    Oh if only #5 were true, businesses these days want to cram all of their developers into 8-to-5 cubicles, destroy everyone's telecommute, and then wonder why they can't get anything done as efficiently. Worse? Crunch time isn't an option any more. You WANT to pull an all nighter, you WANT to meet your obligations. But you aren't allowed, because some toad in upper management thinks things will work better this way.

  43. Anonymous
    October 14, 2015 at 6:18 am

    Oh my goodness love the comments here!! @ alexander boss I totally know what you mean about feeling you would love it but just not able to get over that initial humble advice just take a programming class! As a statistics major (BORING!) I have to take a class in C....WAS DREADING IT!!! Now it's all I look forward to. After reading this article makes me want to go into computer science even more...I also realize it doesn't qualify me as an engineer and I might not make the most money but I don't care being somewhat of an introvert (but seen by others as an extrovert)...anyway I just love love love coding esp when my simple program executes oh my it's beautiful...I'm working on for loops now with increments I keep getting infinity really annoying...I have two other midterms I am not interested in anything else. I think with the logic and art it can be imbalanced as long as you have enough of one. But seems logic will get you started :/

  44. Anonymous
    October 11, 2015 at 7:14 am

    My major is IT Networking and I'm required to learn Java programming as part of my major. I personally hate programming and think it's tedious and pointless, but can manage 10,000 node networks and configure high-end Cisco Routers and Switches blindfolded.

    I don't have any patience for coding and my mind scrambles when I see code. I over-think it and confuse myself, a sort of attention deficit disorder overcomes me when I try to force myself to understand coding logic.

    I have experience in networking, I can fusion splice multimode/singlemode optical fiber to near 0.0dB, keep the TLP SNR between two encrypted satellite links optimized, and manage DSLAM networks in hazardous environments such as the middle-east without fear, but coding scares the hell out of me.

  45. Anonymous
    July 6, 2015 at 11:06 pm

    I think the nature of the industry has changed.
    It used to be a more creative job, you'd spend half your time thinking up new stuff, and half your time fixing stuff
    these days its 99% glueing other peoples stuff together and hunting bugs.
    Being creative and expressive is a DISADVANTAGE.

    I want out, but I've just gone 40.

    • Anonymous
      July 7, 2015 at 9:17 pm

      I agree with you, it's sad, but true.

      Just reminds me the frameworks : each time I hear "Don't redo the wheel", "Don't redo the wheel". Assembling code from others you don't even always understand ...

      I think only working with frameworks is also a part of being dogmatic.

    • Anonymous
      September 27, 2015 at 6:57 pm

      Thats your fault you should always use frameworks that have been in development for long times and have all you need and bugless(well almost bugless lol).
      And the rest of the time write tools and libraries to make your life easier as a programmer.
      Everything happens very fast nowdays, or at least thats what its asked from developers and everything in general to be honest.
      Businesses want fast results and IT companies to deliver so they can make money and survive, they cant wait on your ass to become creative.
      Thats just like saying hey we have to build a bridge but we wont use existing tools and machinery we will build and create our own.Well good damn luck with that you will go bankrupt and then hobo.
      I still think you can be creative if you know what you are doing, otherwise use the frameworks.
      my 2 cents.

  46. Raiyan
    May 7, 2015 at 3:39 pm

    My stand corrected i was really built to be a programmer ('-')

  47. Alexander Boss
    March 28, 2015 at 4:50 am

    I'm skilled at all of those, especially sitting on my butt for extended periods of time. (but seriously)
    Does this mean I SHOULD be a programmer?

    Sure i'm an INTP and this type of work is my "thing"/natural skillset, I guess. Surely i'm not the only one to feel programming is too limiting though?

    I've got as far as Hello World, twice, admittedly undiagnosed ADHD at the time, and are now medicated (but not a fan). I've had ideas for frequent ideas for AI, game design, and some serious crazy sh*t, way beyond my experience or programming knowledge. I DO have all the traits of the above and that of typical programmers (little more artistic, little less technical perhaps), I just can't seem to get past the initial hump, even though in heart of hearts, I know I would excel at it!

    "If you aren’t completely sure that you’re meant to be a programmer, here are some signs that may point you in the right direction."

    This article only served to confuse me further, lol. Current focus was on business and just try AI for fun whenever I feel like it.
    Accurate piece though. Well done.
    You've given me more to think about. Thank you/damn it.

    • Anonymous
      June 19, 2015 at 8:56 pm

      Hi there!

      INTP here as well. I understand your situation. The skills mentioned in the article are necessary to be a programmer, not sufficient. This article is sound but not complete; it implies that you shouldn't be a programmer if you don't want to be one.

      Maybe you should try a language that can help in rapid prototyping of your ideas - business or AI. A language that suits your domains (and any domain in general) at the moment is Python. So just go with it. Program the basic AI ideas in just 20 lines or so. Or create that game you wanted to build with PyGame again in less than 50 lines. That can help you get started. Tenacity develops over time.

      You won't have to sit for extended periods of time in that case.

      And I agree with you, this is a good article.


  48. Shakir Moledina
    March 16, 2015 at 12:56 pm

    I think this article has very accurate and simple points. It's something someone should check before going into programming.
    If you try hard, you can become a good programmer but will not the 'natural' programmer that you would have hoped to be

    • Joel
      March 16, 2015 at 12:59 pm

      Thank you Shakir! I think anyone is capable of becoming a great programmer, but it will require more effort for some. However, if you lack persistent determination, you'll never get there! Sometimes it could take 30+ years.

  49. Daniel Abel
    January 12, 2015 at 4:52 am

    Daniel Abel
    It does not matter what you studied in school.I srudied Business Education in school and today i can use at least five languages successfully and i have written many apps and designs lot of websites.It all bore down to your interest and calling in life.I am doing fine in business before i have urge for programming and i took it up .I went for it and my life change for better i mean i am fufilled doing what my heart want.You can immagine sombody who is not doing fine in chemistry and biology coding well.
    In fact, to my surprise i have trained somebody who is a art student and his coding well.Your interest is no 1 follow by your passion
    The worldhas derailed forget about those HR looking for BSC Computer and Msc in other computer related subject it wil dawn on them soon that somebody without school certficate will programme wimdow and application for them to use.What is theeducation status of BILL GATE,STEVE JOB , Mike DELL..........

    • Adeyemi Olumuyiwa
      May 28, 2015 at 10:52 am


  50. Daniel Abel
    January 12, 2015 at 4:45 am

    Daniel Abel
    It does not matter what you studied in school.I srudied Business Education in scho and today i can use at least five language successfully and i have written many apps and designs lot of website.It all bore down to your interest and call in life.I am doing fine in business before i have urge for programming and i took it up .I went for it and my life change for better i mean i am fufilled doing what my heart want.You can immagine sombody who is not doing fine in chemistry and biology coding well
    In fact to my surprise i have trained somebody who is a art student and his coding well.Your interest is no 1 follow by your passion.

  51. Lexi Alexander
    December 22, 2014 at 12:45 pm

    Joel Lee, I just love a handsome, intelligent Korean man. ??. Oh wait, is this off topic?

  52. Joshua Barrett
    December 7, 2014 at 4:29 pm

    I agree, sort of, with what is said here. I also have something to add: In order to become a programmer, you must have a project. Something to work on. Without this, you will have no way to improve. This is something I frequently struggle to find, as everything just seems to be too complicated for a beginner like me. One of the things I plan to do is find somthing to work on.

  53. penguinman
    December 4, 2014 at 11:04 pm

    Interesting article, I agree with the points.

    As a programmer, I find I reach the point of utter frustration many times with a confusing and 'impossible' problem, and this is when I decide that I will either solve the problem, or sit in front of the computer without eating until I die of starvation.
    It seems that most problems are solved within an hour of reaching this point. It is only rarely that I will end up writing abusive entries on stack-exchange.
    And it is important to celebrate and enjoy the success by walking away from the computer after it has been conquered and have a break. You should view the computer as your friendly obedient servant. Not an adversary.

    • Joel Lee
      December 6, 2014 at 6:48 pm

      Yes, breaks are so important! It's important to sit back and congratulate yourself when a big problem is solved, but it's also important to get up and refresh yourself every hour or so. Sometimes a 5-minute walk is all it takes to break through an "impossible" issue.

  54. redsnappa
    December 4, 2014 at 9:10 pm

    ?Sign #1: "programming is ultimately a creative art. "
    If this point is true why illustrate this paragraph with a creative created light bulb image when there must be thousands of illustrations of creative programming out there you could have used.

  55. Nelson Maldonado
    December 4, 2014 at 5:16 pm

    Very insightful. I'm an Operations Professional, very interested in picking up PROGRAMMING. So far I've signed up for courses on Treehouse, Udemy and Codecademy. Any suggestions from you on how to systematically approach this?

    I'm first learning Web/Front-End Developement and am next going to focus on back-end development. Any recommendations on whether or not I'm approaching this the right way?

    • Joel Lee
      December 6, 2014 at 6:46 pm

      I think the biggest battle is developing the proper mindset for learning how to program. Once you've got that down, learning the actual languages and tools just comes down to study and practice. Read this for more on the mindset: //

      As far as web development goes, I think that's a good approach. Front-end first, back-end later. Go through as many online courses as you can find, join relevant online communities (there are some good ones on Reddit), and constantly put what you learn to practice. Work on little side projects here and there. That's the fastest way to get comfortable with coding.

  56. Dan Sutton
    December 4, 2014 at 4:51 pm

    Very good.

    I'd also add "Sign 0: You're fundamentally sane." I think that in career programmers, there's an element of insanity we've learned to harness which just doesn't quite manifest in the same way in anyone else!

    • Joel Lee
      December 6, 2014 at 6:42 pm

      Yeah, anyone who **wants** to subject themself to the horrors of programming has to be insane to some degree. But hey, that insanity has potential to lead to greatness. "Harnessing" is a good term for it!

  57. Brandon Wilhite
    December 4, 2014 at 4:16 pm

    Not sure I would say I agree or disagree with #5, but I think maybe it depends on where you are in your career. If you are just starting out, you should definitely expect longer hours (imo). Why? Because gaining mastery in programming takes a lot of time and effort. Also, if you wish to keep up with your field and not become a dinosaur (a function of thought-process, not age), then you should expect to spend time outside of your normal working hours continually honing your craft.

    If you expect to come out of college and just work 40-hour work weeks.. let's face it, either you will have to be a genius or you will just suck.

    The flip-side is that you can't keep a crazy-pace of growth going forever, so eventually you are going to have to learn how to balance all of that or take it in cycles. You will also have to start deciding not only what to learn, but what not to learn.

  58. Bruce K
    December 4, 2014 at 3:16 pm

    I'm not a programmer and have no interest in being one. That said, I used to be a " computer hobbyist" in the early days, when you could quickly knock out a useful utility with Visual Basic V. 3 or Borland's ObjectVision. Now, most programming environments are so complex it takes a year or more of study to get barely proficient beyond "Hello World".

    I really wish someone would dig up that old ObjectVision code and recompile it to a modern 64-bit version for "hobbyists". Who knows, perhaps early successes with a simple object environment might even encourage more youngsters to buckle down and commit to the long and complex path to good programming.

    • Joel Lee
      December 6, 2014 at 6:40 pm

      It's amazing how much programming has evolved in such a short time. It's more complex, but it's also a lot more friendly; it all depends on which angle you're viewing it from. That being said, I don't envy newbies who are just getting into programming today. It must be so overwhelming.

    • dragonmouth
      December 8, 2014 at 1:35 pm

      @Bruce K:
      Visual Basic/Object Vision is like building a house out of prefabricated modules rather than from dimension lumber. Either way you wind up with a house but the former limits the design and requires less skill.

      Object Oriented Programming is only one small corner of the programming universe. Before OOP came along there were many complex programming langauages such as Assembler, COBOL, Algol, Fortran, ADA, etc. In fact, the fourth and fifth generation languages in use today, were created to take a lot of that complexity out, to make the programming simpler.

  59. David Crombie
    December 4, 2014 at 3:00 pm

    I am a neophyte programmer but a professional career counsellor. Thank you so much for writing this article. The depth of the comments left by your readership will leave my clients considering a coding career much richer for reading them. Thank you everyone.

    • Joel Lee
      December 6, 2014 at 6:37 pm

      I hope it helps, David! I'd also like to offer my thanks to everyone contributing their thoughts.

  60. Jim B
    December 4, 2014 at 2:45 pm

    Interesting article, Joel. I fall into the "creative and likes to solve problems" category. My degree was all about programming (ADA, Pascal, C, Unix, Systems Analysis), but I didn't actually start doing it until I was 10 years into my IT career. Now, 14 years in, the all night deployments and more than my fair share of 50+ hour weeks, I'm officially burned out on it. I'd probably be qualified to teach or manage a team of developers, but I honestly would like to close the door on it completely and get out and enjoy the world. The managers I've worked for have all been probably paid very well, but it appears that the quality of life does not improve when you become an IT manager. It just gets worse. That's why I'm "retiring" from IT early and going a different direction.

    • Joel Lee
      December 6, 2014 at 6:36 pm

      Those long hours really do make it easy to burn out, don't they? Sad to hear that it doesn't get much better if you climb the corporate ladder either. Which career path do you think you'll switch to when you retire from IT?

  61. Kent
    December 4, 2014 at 2:43 pm

    Well said.

  62. Kent
    December 4, 2014 at 2:38 pm

    Well said.

  63. Kent
    December 4, 2014 at 2:22 pm

    Well said.

  64. G3
    December 4, 2014 at 12:13 pm

    One sure sign I tend to notice is when people don't care to properly indent/layout their code. They appear to not take sufficient "pride" in their code. My code is clean, indented, no spelling/grammatical errors in comments, etc. For me this is a natural part of being a professional programmer. I know colleagues who "don't mind" having proper indentation. This for me shows a lack of commitment / passion / pride in their work. "It works, so who cares".

    • Joel Lee
      December 6, 2014 at 6:35 pm

      I feel your pain! I wonder if there's a clear correlation between programmers who write pretty code and programmers who write quality code? I would believe it. More people should take pride in the work they do, both programmers and non-programmers alike.

  65. RubberDucky
    December 4, 2014 at 10:59 am

    I disagree somewhat with the point 1. And I'll explain why. To become creative takes time. You often need a lot of knowledge. Someone very knowledgeable may play with code as he/she pleases. I, on the other hand don't come up with anything creative. It's all been done before.
    Sometimes we need more time to become driven about something even our own growth. If one is not patient enough he/she may never find out what his/her passion is. Also, jobs can be boring and you may not have choice at the beginning where to work and what kind of job to have. Patience for oneself is crucial. Because we are so impatient to reach goal we expect from ourselves to have every good trait right away. Some of the points on the list can be developed over time : Drive, creativity, rational expectations, patience. Some people reading your article may think they don't cut it before they even started their first job. Sometimes you need to experience a lot to see if it really suits you or not. If any of the points makes one not suitable for programming atm, then that person is not suitable for any kind of job.imho.

    • Joel Lee
      December 6, 2014 at 5:14 pm

      Thanks RubberDucky, that's a good point. There's definitely a certain amount of initial effort that has to be put in before there's enough room for creativity. Perhaps Sign #1 should've been "Not Willing To Be Creative" or "No Desire To Be Creative" instead?

    • dragonmouth
      December 8, 2014 at 1:15 pm

      Sorry, RubberDucky but you are wrong about creativity and drive. One either has those qualities or one doesn't. They cannot be learned. The way you define "creativity" it sounds more like "skill", which can be learned over time.

      "It’s all been done before."
      That is the way a skillful person thinks. A creative person will find a new way that has not been done before.

      " Perhaps Sign #1 should’ve been “Not Willing To Be Creative” or “No Desire To Be Creative” instead? "
      If you are not willing to be creative, then you are a "coder", not a "programmer." Just as someone without creativity is nothing more than a snapshot taker, not a photographer.

  66. Rick
    December 4, 2014 at 10:10 am

    This is a great article. After programming for six years, I am hoping to get into analysis or management because staring at a computer screen for longer than 40 hours a week is not for me. I fortunately found a government job that allows me to work 40 hours a week but I am a contractor and there are regular job cuts. Some of us fall into a depressive state after programming for long hours day and night in a high-pressure environment.

    • Joel Lee
      December 6, 2014 at 5:11 pm

      It's great that you bring up the mental effects of programming day in and day out. It applies to anyone who has to work long hours in front of a computer without real sunlight, not just programmers, but the impact is real. I wonder what can be done about it, though? I hope your desire to move onto something else works out for you!

  67. Murray Lang
    December 4, 2014 at 9:45 am

    I strongly disagree with Sign #5: You Want Normal Work Hours
    What this would mean is that software developers should not want to have a normal, healthy, life - one with human relationships and responsibilities.

    Sure, you should expect to put in some long hours. If you're routinely putting in long hours and neglecting your health, family and friends, then there had better be a payoff at the end where you can repair the damage. A career means long term. Long term long hours means untimely death (and no more software development).

    Also, in my experience, planning on long hours results in work stretching out for those long hours. In other words it takes you a very long day to get a normal day's work done. There is a burst of productivity initially, then it becomes a blur.

    I have found that many good ideas and solutions come to me soon after walking away from a problem. On the other side of the same coin, I have realised logical errors and misunderstandings that I could not see when I was buried in the issue. So I think that greater productivity and creativity comes from a healthy work/life balance. Your career is more durable and your relationships are more durable.

    • Joel Lee
      December 6, 2014 at 5:08 pm

      It's certainly possible to be a programmer with "normal hours", but I'm not sure if that's an industry-wide thing yet. I only have anecdotal evidence so take it with a grain of salt, but most of my programmer buddies (both freelance and salaried) spend at least 50 hours a week coding, occasionally spiking up to 60 and 70.

      But yes, I agree that this shouldn't be the norm and we should be more conscious of our long-term health. Finding a balance as a programmer isn't impossible, but it can be tough.

  68. Phil Murray
    December 4, 2014 at 8:47 am

    Disagree with point 5, I'm in my forties now and my time for pulling all night coding session is well and truly over.

    Experience teaches you to plan out the workload and more importantly have the ability and willingness to say no when presented with impossible tasks.

    The ideal of the "rock star developer" working 100+ hours weeks and producing quality code is a complete fallacy.

    • Jeff Schwandt
      December 4, 2014 at 9:36 am

      I agree with Phil. A shop that regularly drops into crunch mode is operating at CMM Level 0.
      Agile approaches with cyclical iterations also help prevent crunch mode. Teams can plan which Stories to tackle and when they a forced to drop some from an iteration, they can learn what went wrong and apply that knowledge in the next cycle.
      Crunch mode then means "cancel a few status meetings" or "eat lunch in." It might mean work a couple of hours later for a night or two.

    • Joel Lee
      December 6, 2014 at 5:04 pm

      I think that's great news. Some programming fields - especially the gaming industry - still seem to operate on the assumption that crunch time is a necessary evil, so anything to help move it away from that is good. Hopefully in the next few years, crunch time will become a thing of the past.

  69. Thomas
    December 4, 2014 at 8:18 am

    pretty slick writing there :D

    • Joel Lee
      December 6, 2014 at 5:03 pm

      Thank you! I appreciate it.

  70. berick
    December 4, 2014 at 7:00 am

    It was always a rare occurrence for a programmer to get rich. And only a fraction of those did it "quick."

    • Joel Lee
      December 6, 2014 at 5:02 pm

      That's true. However, I think that non-programmers tend to **perceive** programming as a way to get rich quick, at least from my experience. So, for those thinking of learning to code in order to make millions off of the "next Angry Birds", they might want to reconsider.

    • dragonmouth
      December 8, 2014 at 12:43 pm

      Non-programmers tend to focus on Gates, Andreesen, Brin, Zuckerberg, etc. and projecting their success onto all programmers. If you like to program, it will show in your performance and, sooner or later, you will be well paid.

  71. Barak
    December 4, 2014 at 2:58 am

    The 6 signs - do we need to AND them or OR them?

    • Dan Sutton
      December 4, 2014 at 4:52 pm

      Well, either we do XOR we don't...

  72. Dann Albright
    December 3, 2014 at 9:43 am

    Thanks for this article, Joel—I think a lot of people think about programming as something different than a regular job. But when it comes down to it, it's a job like any other; it requires a lot of hard work, doesn't result in getting rich super quickly, and has its faults as well as its advantages. I actually have an article coming up about jobs that you can do in the tech sector without programming, which is something that I've given a lot of thought to. I enjoy coding, but not nearly enough to be a programmer!

    • Joel Lee
      December 3, 2014 at 3:48 pm

      For sure, programming is a job. And unless you endure several stressful years of climbing the promotion ladder OR strike lucky with an overnight success product, I don't feel that the pay is commensurate with the hours worked.

      I look forward to that article, Dann. Lately I've been second-guessing my programming pursuits so it'd be nice to learn about other opportunity that don't involve direct coding.

    • dragonmouth
      December 8, 2014 at 12:36 pm

      If you treat any job as just a means of paying the bills, you are not going to be very successful doing it, it will be a drudge, you will hate it. You have to like the work you are doing to be good at it and be successful at your job.

  73. Zhong
    December 3, 2014 at 5:04 am

    Since I'm not a programmer at heart, I've begin studying Python as my first programming language, but I'm confused at what career options is available for Business Information System major?

    • Douglas
      December 4, 2014 at 6:28 pm

      I have a degree in Management Information Systems (I suspect just a different name for BIS) and I have found my options to be fairly wide open. Right now I am doing System Administration (which basically involves software roll-outs), however I am hoping to move into a Process Analyst role. I have also developed ADP.NET websites for internal use , SSIS packages for interfacing with external vendors, end user support, report writing, and on and on and on. It's really what do you want to do in the business world with computers.
      I always thought the degree positioned me well as I could talk business with the business people and tech with the tech people. Biggest compliment (to me) was when a manager told me that she was really impressed with how I could take a complicated technical process and explain it to a business user in terms they could understand. I credit that ability to my college training.
      Anyway, I guess that is a long winded way of saying the options are nearly endless. Pick an aspect that you like about it and go for it. Business Process Analyst was my eventual goal, but I'm not in a huge hurry to get there.

    • Zhong
      December 5, 2014 at 4:32 am

      I see. Then what kind of entry level position would there to begin with? People said you could delve into the technical field of computers or the local duties in a office setting. However, will options be more limited if you have an AAS degree instead of the traditional Bachelor?

  74. KT
    December 2, 2014 at 10:10 pm

    Sign #5: You Want Normal Work Hours:
    Sounds like the poor programmers at EA Games! Those poor people are worked like dogs!

    Most of this article applies to my field as well: CNC, PLC, auto-cad, robotics, and variable bending code. The only difference is most of the programming I have to do is on a loud, fast-paced shop floor. It adds a different degree of difficulty and distraction, especially when a crew of guys are waiting for you to make adjustments so they can get running. Keep that in mind when you're in a climate controlled office or cubicle.

    • Joel Lee
      December 3, 2014 at 3:42 pm

      That's an important point, thanks for bringing it up. Not all programming jobs take place in an office cubicle, that's for sure. I don't have much experience in the things you describe, but I can't imagine how annoying it would be to code in the midst of all that chaos. Would you prefer working in a quiet office instead?

    • KT
      December 3, 2014 at 8:25 pm

      All the master programs are made in the office, but the varying conditions of material inconsistencies, machine wear, process improvements, etc. have to take place in real time on the floor. The robotic welding programs have to be done in the machine with a pendent (that sucks in the summer). CNC laser program adjustments and variable bender code has to be done at the machine as well.

  75. Kris
    December 2, 2014 at 6:13 pm

    As both an experienced and beginner developer who has ADD, I agree with your assertions, but would like to encourage others with ADD to think twice about this list. In my day job I do data integration, so I write a lot of SQL, XML, Regular Expressions, etc. I spend a fair amount of time creating but even more time troubleshooting. In my personal time, I enjoy learning web development. But, because of my ADD, I have started and stopped learning many other languages and thus am only a beginner at all of them. Contrary to popular belief, some people with ADD can some times focus on solving problems and be creative and thus feel very self-driven. In fact, during these times, they often over-focus to the exclusion of everything around them. But the flip side of that is when the ADD person is motivated in their mind but can't seem to concentrate on anything and has trouble getting started on the task at hand. It is often very frustrating for us because we know deep inside that we are self-driven and that we do enjoy being creative and solving logic problems once we actually get into it. The problem is that the enjoyment we get from those things is often short-circuited by our inability to get started or maintain concentration.

    I would encourage anyone with ADD to pay attention to this list, but temper it with what you know about your ADD and don't be discouraged if think you still want to be a programmer.

    • Joel Lee
      December 3, 2014 at 3:40 pm

      Thanks for that insight, Kris. ADD sounds so frustrating, especially when it interferes with something that you genuinely find enjoyable. What sorts of steps do you take to deal with it? I admit I'm a bit ignorant on the topic and the only treatment I know about is medication.

    • Kris
      December 3, 2014 at 7:56 pm

      Well, two of the biggest problems ADD people face is having trouble starting a project or task and losing concentration during the task. Several of the productivity tips found on sites like MakeUseOf can be very handy for the ADD person. A few of the things I use are:

      When you're having a hard time getting started:
      - Just do one small thing. If you have trouble defining a "small" thing, then find just one task and work on it for just 5 minutes. Sometimes just working on it for 5 minutes will create enough momentum to keep you going.

      When you're having difficulty concentrating while doing a task:
      - Use a Pomodoro timer. Many people use a Pomodoro to make sure they take breaks so they don't burnout. I use it to reward myself with a break. I tell myself, "If I can just work for 40 minutes, I'll take a break for 10 minutes." Even if you don't use a Pomodoro, make sure you take short breaks often.
      - Along that same line, I try to divide my work up into small parts and work in short bursts. I define a short burst as a period of time where I think I can manage to work with a lot of focus, even if that's just a few minutes.
      - When a distracting thought enters my head (which it always does), I keep a notepad open and just jot down that thought so I can get it off my mind. Then I can look at later and act on it. Also, going back to your distracting thoughts is a good use of your breaks.
      - I also listen to music or white noise. For me, music is good when I am feeling especially motivated. White noise is good for when I'm distracted. Not only is it good for drowning out ambient noise, it's also good for just helping your mind focused, even if the room is totally quiet.

    • Name Withheld
      December 4, 2014 at 3:39 pm

      As a developer with inattentive ADHD. I've found that we all must find our methods of dealing with our issues and that's the key to being successful in the workplace. Management type of roles will always elude me - I can force myself to do them for a short time but they exhaust my resources.
      In contrast to your experience, I love starting projects but am not as concerned about finishing them. I have found that Ritalin is a big help in those cases.

    • Joel Lee
      December 6, 2014 at 5:01 pm

      Lots of great tips. I'm a big fan of Pomodoro and ambient music, but the "just 5 minutes" tip is good too. Thanks for sharing!

  76. Jacob Johnston
    December 2, 2014 at 4:06 pm

    What about those of us who are a perfect fit for a programming career but opted for another degree? Growing up I had the impression that anyone who knew how to program could get a coding job (and it may have been true back then) but today, nearly any job even vaguely related to programming requires an advanced CS degree. Do I really have to go back to school for CS just to get a basic programming gig?

    • dragonmouth
      December 3, 2014 at 12:01 am

      "What about those of us who are a perfect fit for a programming career but opted for another degree?"
      Just because you do not match any of the signs, does not mean you Will be welcomed with open arms. First you must learn how to code in a langauge or two. You will be competing for positions with unemployed programmers with years of coding experience.

      "nearly any job even vaguely related to programming requires an advanced CS degree"
      Job postings are composed by HR drones who wouldn't know the difference between BS and CS if it hit them in the face. The "CS degree" requirement is just another way to legally eliminate the applicants they do not like. If you can impress the HR drone, he'll overlook your lack of CS degree and accept anycollege degree. Way back when Java was just coming into use, many IT job announcements demanded that the applicant have at least 5 years of Java experience. The requirement was total BS because at that point even the developers of Java did not have 5 years experience with it.

      You don't have to have a CS degree (although it helps) but it would be much to your advantage to have certificates in at least a couple of languages from an established programming school like Chubb Institute.

    • Doc
      December 3, 2014 at 12:59 am

      Not really. Except for a boring year of college where I learned almost nothing about real programming (some Modula-I and Pascal...both dead languages today!), I'm entirely self-taught...Apple ][ basic, C-64 Basic, 6502 assembly, DOS batch scripts, FoxPro 2.0A-9.0, HTML, CSS, PHP, Symfony and Magento frameworks for PHP...

      There's a lot of those points above that rule me out as a programmer. I must have been in the wrong line of work...for the past 18 years. :)

    • Bill
      December 4, 2014 at 2:24 pm

      I have a degree in English plus a few classes at a technical college which jump started me into software. Fifteen years later, no one cares what my degree is in.

      Getting that first job will be the hardest. If you want to break into software as a profession, start learning and writing software. Read, read, read. And read some more. Buy a membership to PluralSight for $30/month so you can get some great tutorials to jumpstart you on any topic you can imagine.

      Build a portfolio to demonstrate you can code. Find a non profit and redo their website for them. Write some cool app for iPhone or Android in your spare time. Put them in the appropriate store to show off to potential employers what you have done. A company is taking much less of a chance on you if you already can prove you can code. If you can prove you can code, it becomes only a question of whether you will fit into their company culture or not.

      Good luck!

  77. dragonmouth
    December 2, 2014 at 2:16 pm

    "learning how to program is not the same as making a career out of it."
    That goes for any activity. Learning how to "insert activity" is not the same as making a career out of it.

    "I spent over a decade earning a degree in computer science and thinking it was the career for me only to realize that it wasn’t"
    According to college statistics, close to 60% of all students change their major at least three times before graduating. Getting a degree in a particular field does not mean you will work in that field. Besides, CompSci is not the best concentration to become a programmer. I have a degree in Astronomy but spent at least 30 years as a programmer.

    "You Are Not Self-Driven"
    Goes for almost any field.

    "You Can’t Sit For Long Periods"
    I basically agree with the statement. However, one does not need to be sitting at a terminal to be programming. A programmer, like a writer, is working on his creation most of the time whether he is actually writing or not. Writing just records the creation and is the last step of the creative process.

    "You Expect To Get Rich Quick"
    Again, goes for all fields, not just programming.
    Programmers do not get rich unless they create something new and unique (VisiCalc, AppleDOS, AltaVista, etc.) Mostly they are just well-paid.

    Analysis - if you hate logic problems, you cannot be an analyst. Actually the same 6 signs apply to an analyst.

    Management - the worst bosses I've had were ex-coders. They always tried to micro-manage. Their way was the "only way." Living proofs of the Peter Principle.

    There is another sign that you are not meant to be a programmer - you are not a problem solver. You do not like/want to see what makes things work.

    • Joel Lee
      December 3, 2014 at 3:53 pm

      You're right. I suppose the essence of these signs can apply to pretty much any field that involves some degree of creative work. This post was meant for those who think that becoming a programmer is some kind of panacea for career problems. It's not!

    • Johnson
      December 5, 2014 at 9:54 pm

      No offence, but you come across as a bit of a cunt.

    • dragonmouth
      December 6, 2014 at 1:51 pm

      None taken, dick.

    • greg
      December 8, 2014 at 6:41 am

      7. You think having an opinion makes you a jerk and you are easily offended.
      8. You didn't get a good laugh out of dragonmouth's response to Johnson.

    • Connor Johnson
      March 26, 2015 at 6:18 am

      9. You are Johnson

      Hey, wait a second... I'M a Johnson. Shit.

      You are a cool guy, Greg.

    • Danno
      April 23, 2017 at 5:18 pm

      That mention of management really hit it on the head for me. I've seen this first hand and that person just kept getting promoted in the company because he had a knack for getting it done which usually meant stepping in and fixing other's mistakes.