Challenge addiction

One of my very first blog posts was about what fuels my passion for technology & writing code and this blog post could be considered the continuation of that one. If you are a follower of mine on Twitter it won’t be a great shock if I admit here that I’m addicted to learning, but that doesn’t really describe it well enough. It took me a long time to realize what was really going on.

At the time of that post I was starting to feel what I’m describing here but at the time I couldn’t really put my finger on it. I said the following.

My mind just doesn’t seem to stop thinking or wanting to tackle things. In reality my passion level is on a growth curve. Even if I am tired, I do not stop.

A few years later and that curve is even steeper. I’m learning faster now than before and I didn’t think I could go any faster, but I have. I suppose you can’t identify a pattern until the pattern has repeated enough times but now I’ve identified the pattern.

My career is a totally predictable sequence of events.

  1. Join a new job.
  2. Within the first 6 months establish myself as a key influencer on a team.
  3. Within the first 12 months I gravitate to the organizations toughest problems. I want to be the one to solve them.
  4. Solve the problem.
  5. Look for even harder problems.
  6. Solve those, too.
  7. Run out of problems that were harder than the last.
  8. Eventually go absolutely bonkers from boredom to the point it makes me extremely unhappy. I mean extremely unhappy. Life sucks so bad when I’m bored.
  9. GOTO 1

Another pattern is frequent crazy weekend coding seems to surface when I’m not challenged daily.

Yesterday I watched a video of Sabrina Farmer’s heart felt talk about her career. When she spoke about the beginning of her career it hit me like a ton of bricks. Especially these quotes.

If there was something I didn’t know, I wanted to work at that company.
I worked at Nasa to learn about scale.
I went to WebMD to do their data warehousing.
Then the quote that really resonated at 8:50 of the video.
If a problem seemed impossible, I wanted to do it.

This nails it. Right now I’m in the middle of building bigger and bigger systems. The next one bigger than the last. I’m almost scared at the size of the system I’m in the middle of building while I write this. I will want to build a bigger one though when I’m done because it gets harder and harder, and that makes me happy.

I am the most happy when I’m challenged which is twisted because I also doubt my abilities the most when I’m challenged because with challenges comes failures. I’m a competitive person. I see people writing code or having deep knowledge in subjects I don’t understand, so I ask questions, and more questions, until people are probably blue in the face.

I go on crazy weekend coding tangents

like trying to build a columnar database that supports a subset of SQL syntax in a weekend. A year ago I didn’t know a lick about bloom filters, bitmap indexes, delta encoding, cooperative scanning or that CPU branch prediction existed and how threading can really hurt performance by introducing excessive CPU cache invalidation causing hundreds of extra CPU cycles when it should have been done in less than 10. Now I do.

I used to play organized sports and my programming is almost a reflection of that competitiveness. I see some production piece of software and I think “I bet I could make something that goes faster than that” . So I find the material I need to learn to have the knowledge to try.

So what does all this mean?

I have challenge addiction.

Is this a mental problem? It really feels like it at times. It’s hard to find employers that can keep up with re-positioning me to keep up with these needs. What is wrong with me? In a project thats making tons of profits and everything is going according to plan and everyone is happy is an environment that makes me so unhappy I cry at night. An environment where we are debating, white boarding and thinking so hard how to solve a really hard problem for a customer is when I am happy.

So far up until now I embrace it, but I have to admit there are days where I wonder why I’m stressing out so much. It’s really hard to explain, but most people just tell me to slow down, or relax. The problem is, that is what makes me terribly unhappy. So I’ve just kept my foot to the floor.

I’m extremely proud of my growth, especially this last year. I only dreamed about what I’m building this year. This last year of learning and experiences have been my biggest leap yet.

I’m still not satisfied though.

  • http://twitter.com/perlundholm Per Lundholm

    I can sort of relate to that but I am on another place on the scale, if you get my meaning

    I wouldn’t be to worried about your addiction to learning as long as your listen to your body as well. We need to rest to get reflect and gather new energy. A lot of learning happens during sleep as the mind ponders over the days findings.

    There could be one thing though, to look for. If you don’t allow yourself to rest because you are not considering being “worth it”, that will cause trouble in the long run. But I don’t really hear that from reading your tweets and this post. You seem to be genuinely happy in your endeavors.

    Speaking of body, you don’t get younger (grandpa here). Accept that. Period. :)

  • http://themodernscientist.com modernscientist

    We are of the same source. I chose a career in research, a focus on biophysics, and a specialty in experimental NMR because each is the most difficult path I could find for my interests. Often the daily problems I tackle are difficult, both conceptually and mathematically, which I love. And I hate. And then I doubt myself and my choices. And after banging my head against a wall, I usually succeed. And the exuberance of such hard-fought success is addictive.

    I, too, am a challenge addict.

  • Rob Eisenberg

    I will share this with you, because it was already on my mind this week, and seems appropriate here:

    The woman who makes a dog the centre of her life loses, in the end, not only her human usefulness and dignity but even the proper pleasure of dog-keeping.

    The man who makes alcohol his chief good loses not only his job but his palate and all power of enjoying the earlier (and only pleasurable) levels of intoxication.

    It is a glorious thing to feel for a moment or two that the whole meaning of the universe is summed up in one woman—glorious so long as other duties and pleasures keep tearing you away from her. But clear the decks and so arrange your life (it is sometimes feasible) that you will have nothing to do but contemplate her, and what happens?

    Of course this law has been discovered before, but it will stand re-discovery. It may be stated as follows: every preference of a small good to a great, or partial good to a total good, involves the loss of the small or partial good for which the sacrifice is made.

    . . . You can’t get second things by putting them first. You get second things only by putting first things first.

    —C.S. Lewis, “First and Second Things,” in God in the Dock: Essays on Theology and Ethics

    Here’s another statement of this idea:

    “Put first things first and we get second things thrown in: put second things first and we lose both first and second things. We never get, say, even the sensual pleasure of food at its best when we are being greedy.”

    —C.S. Lewis, A Letter to Dom Bede Griffiths (April 23, 1951)

    This is something I constantly struggle with. I can tell you from experience though, looking back at my life’s healthy and unhealthy points, this is absolutely true.

  • http://markstarkman.com Mark Starkman

    Wow! I’m on the same path as you. I’ve been in web development lately and it’s not the challenge that I expected. So now, I’ve taken to learning Erlang.

    I hope you figure this out and that I can learn from what you’ve done. :-D

  • http://rwandering.net Robert W. Anderson

    There is no doubt that your learning and creativity and need for challenge are a major asset. Through Twitter and your blog posts I have seen only a small part of your growth over the last year or so, and I am certainly impressed with your growth and depth.

    And I don’t know you . . . and you can delete this comment . . . but what you say concerns me.

    I wouldn’t tell you to chill out or relax, because that isn’t the point (and won’t work). I do suggest you try to find a way to distance yourself from such work challenges (meaning it seems like you and the challenge almost become one). At least compartmentalize so that you can turn off at the end of the day (or week); maybe have a rich life outside of work (which you may have, again, I don’t know you).

    I have gone through periods of my life where health, family and friends were secondary to the challenge (not by choice, but objectively so). It is a bad habit to get into, and gets harder to break the more you give into it. If you make the choice that your work is your life, that’s of course OK; however, being so emotionally engaged as you describe it just isn’t healthy.

    I wish you the best.


  • http://twitter.com/ed_frey Ed

    You pretty much just described me as well. The running joke with my boss is that if he gives me a problem, I’ll solve it by the due date. If he gives me an “impossible” problem I’ll have it solved by next week. I’m also the same that If i’m running without any kind of challenge, I tend to get really bored at work. Now that I have kids though, the weekend coding binges are definitely less frequent, but I still try to squeeze them in :) .

  • http://arnon.me Arnon Rotem-Gal-Oz

    I can’t tell you that it gets better over the year but at least it is a fun ride. I am almost 41 now and still learning new stuff everyday, still need to know more tomorrow.

  • http://gaffeaday@tumblr.com Gates VP

    You are addicted to challenges, you are addicted to scaling mountains.

    This is a problem because most modern businesses are not built around sending individuals up a mountain. A business does not exist simply to pay somebody to find some new height or new piece of the mountain. Most of the work we do is about sharing these new heights and new pieces of the mountain with the rest of the world.

    You can’t just build a faster database, you have to get it used and make it work, you have to find all of the corner cases, you have to deliver mundane features that are “time-consuming” instead of “hard”.

    It’s really hard to explain, but most people just tell me to slow down, or relax. The problem is, that is what makes me terribly unhappy. So I’ve just kept my foot to the floor.

    I think this is the pivotal part of your post.

    When people ask you to slow down, it’s because you’re no good to them on some far reach of the mountain. Of course, you get bored when with the challenges they’re facing.

    Have you considered working some start-ups? Or an MS research? These might be the things to keep you happy. (BTW, the Valley has lots of Canadians, you won’t watch CFL alone)

  • Faibo

    Oh boy, I’m at the same place as you are… I think I new line of study in psychology should be started to treat us…

    I don’t think it should be normal to “always” be unsatisfied for the lack of learning or challenge.

  • Theraot

    This is what I call the problem of equilibrium of problems

    Each person has a particular level of problems that needs to do not get bored, and also a particular level of problems that are too much and makes the person feel impotent and eventually depressed.

    To mitigate the problem, people with a greater capacity to solve problems can import problems and people overwhelmed with problem can export them.

    So, to avoid boredom you buy problems in exchange of debt (people give you a problem and you give them a debt)… I mean, you sell solutions for money. [By extension, getting money to get the solution is a problem, therefore you are exchanging a problem for another, if people buy, it is because the replacement problem is simpler or easier from their perspective].

    Now, if you are empowered by solving problems and have a tendency to find patterns and the intuition that anything can be improved, then your problem capacity will grow. Eventually you get known because of this and so problems gravitate to you.

    If you are reaching a point where you have “solved all the problems” and get bored afterwards it is because you are constraining your scope to one organization at a time, that organization will get new problems eventually… but for that moment you will have moved on. So, I think, you need a greater audience.

    You can consider to be a consultor, or an auditor… but I suspect that wont be enough. We, with an engineer mind want to do more than suggest the solutions, we want to implement them.

    A greater audience will either overwhelm you, or eventually bore you… if it bores you… maybe it is time to solve the problems of humankind. I don’t know, a greater audience seems too much for me. So far the problem of equilibrium of problems seems to overwhelm me… every moment I have to decide in what to work next, up to a point where I have decided to work toward creating a better solution to organize my projects. Yet, I know I still have potential to grow my problem capacity, and I enjoy the way.

    Do not let boredom translate to unhappiness, neither stress with solving problems. If there is a psicological aspect that needs to be improved, it is not the desire to solve things, but the feeling you associate with that.

    Think that if you are the person to solve problems, you need to be ready and stay calm when the storm comes. If problems gravitate to you, it means that people will look up to you. Meanwhile, in the moments of tranquility, it is not time to get bored, it is time to improve yourself, reload for the next wave. Do not get stressed or bored, that will only damage your health. You need to learn to do it before stress and boredom gets you sick, literally.

    I understand that there is no point to “quit” and enjoy life, yet, that doesn’t mean that you cannot enjoy life without quitting. Maybe you need to be a little more egoist, I mean, work a little more for yourself. In fact, consider to grow your egoism to the point it embraces other people.

    If you want to improve your own condition, you need to recognize that there are other people on which you depend, may be not for problem solving, but for others things like entertaining, care, company, support, recognition and love. Thefore if you want to be egoist, it is a good idea to consider them too. Yet, they depend on other people, and so you can grow your egoism to embrace your family, your neighbour, you city, your country, humankind, the whole world.

    I’m egoist, and it hurts me at times. Why do I have privilegies that other people need? The world in unjust. Yet, I’m not exactly on the gifted side… I mean, there is a whole expectrum, not just poor and rich. So, aspire to improve yourself up to the point where you can help… and help, even if it is just little things. Being honest and helping other will give you peace. If you don’t do it for others, do it your health.

  • Geoff

    My sense is that you are on a path that is ultimately unsustainable. Sooner or later you will go long enough without a new challenge that your unhappiness or boredom will become unmanageable, and then what?

    I am sure you are a brilliant young man who will always be problem solving, but what you are describing is madness and self destructive. I think there must be some void you are trying to fill and you’re not being successful at filling it with code and learning.

    I strongly recommend you at least talk with a counselor once. If a professional shares my concerns, then it is worth working through this with them. Ultimately you will be happier.

    Best of luck to you.

    P.S. white text on a brown background must only work if you’re under 40! Yikes!

  • Brian Donahue

    Have you seen the book “Refuse to Choose?” I just learned about it, and started reading it. It addresses exactly what you are describing – the addiction to learning, and the huge variety of interests and challenges. She gives some strategies for healthily managing those interests and embracing your tendencies as strengths rather than weaknesses.

    One thing you don’t seem to have a problem with, that she discusses in the book, is having so many interests you can’t follow fully through on many/any of them. Seems like you have the execution part down!


  • Tarik C

    I can also relate and this is something that I am working on. I have spent entire weekends and pulled all nighters coding. At work, I felt like I needed to be a champion and when I was not, I felt worthless. My work defined me and when I was not dealing with a challenge, I felt extremly bored and useless.

    For me, the root cause was underlying depression and low self esteem. I needed to constant re-inforcement of solving problems to prove to myself that I was good enough. When I lacked it, I fell into depressed and unhappy. My life was not worth living as is.

    I now work 40 hours a week. I enjoy joking around with my colleagues just as much as I enjoy the work. I try to give myself plenty of time to finish tasks (twice my gut instinct). When I leave work, I have fun, exercise, see friends. I don’t feel defined by my work anymore, and I’m happier.

    I think it is remarkable the level of self awareness that you have acheived on your own. I am in a 12 step program based on AA. Addiction is addiction. Workoholics anonymous has a list of questions that identify addiction to work. It might be worth checking it out. http://www.workaholics-anonymous.org/pdf_files/ABriefGuide.pdf

  • Leslie Satenstein

    I too was in your situation. I would tackle the more complex problems, and then 60 hours a week were not enough.

    But, I had 3 kids and a wife. And that is where I realized that things could really be done at 44 hours per week, and not 60 (40 hours and 1 evening overtime). Even 44 hrs per week was too much.

    That returning to reasonable hours saved my marriage, and my kids respect for me. Otherwise, I was being obsessive compulsive about the challenges. And when I got into the 40hrs/week routine, I was able to think about the job with a “from an overview perspective”. I probably saved a lot of wheel spinning because the solution or the challenge was not fully thought out. I practice agile method of development, as a comfortable style.

    Yes, I am very very happily married, and the CTO Architect in my company.

  • http://www.joepritchard.me.uk Joe Pritchard

    Interesting article.

    I’m a greyhead – 51 years old and have been involved in developing in one way or another (starting with bit level machine code on SCMPs as a teenager) for over 30 years.

    What I really like is solving problems for whoever I work for – today, for example, I found myself working out how to get a 25 year old PC controlling a 30 year old industrial test machine running again.

    Yesterday was jQuery.

    Tomorrow is mentoring.

    For me the challenge is in those real-world problems that make a difference to my customers. I don’t think I’m a real geek anymore as I didn’t understand several of teh ter,s you used in your initial article. :-)

    I wish you well, but the writer who quoted CS Lewis is well worth listening to….

    Best wishes!


  • http://www.opwernby.com Dan Sutton

    I can relate to this. I can’t claim to have half the energy that you seem to have, but yes — sometimes a new theory will take root, and then I’m in front of the computer for an entire weekend, writing something just to see if I’m correct… Here’s what I’ve realized over the years: once you stop learning, you’re done: I like to term it, “legally dead.” Keep at it… you say you’re proud of yourself: well, you should be!

  • http://ramonecung.com Ramon

    Wow, your list of career events is so close to mine it’s uncanny. Keep feeding the addiction. I know I will :)

  • Dan

    In a way, for me, this post is almost funny :)
    I have been like this for a long time now, I’ve gone through different jobs and no-jobs periods – and moved to different places searching for the biggest challenge of all.

    One company 2000 miles away from where I lived – and had friends and family – hired me simply because I told them my dream was to solve the problems operating systems have today. I moved there. After about 6 months, the work became “a joke” as I called it. I quit and looked for something “better”.

    It’s not arrogance, we know these things are very difficult and we fail sometimes.
    It’s the addiction to feeling useful, to prove our self worth, to ourselves or to everybody else.

    I am a programmer too. I’m not gonna tell you what I’m working on now, you wouldn’t believe it.

    I too have learnt too many things and can’t stop myself. I waste countless hours and countless nights reading about stuff “I need to know” because “I need to solve this”. I have bothered a lot of people with my questions…
    Once solved, once I have proven myself to myself, I drop it and move to the next big thing. It has to be bigger, though…

    I’m sorry to have to say this, but it is a psychological issue. I have it too and it’s kind of a stressful life. I know it and yet I can’t quit.
    The good news is it’s not that bad as long as it doesn’t do any damage to health or family.

    It’s self worth related. We need to feel we are useful and, as opposed to other people who feel useful and worthy enough while simply doing their jobs, we can only get that feeling after solving harder and harder problems. It’s a form of overcompensation: I’m not good enough so I have to take on bigger things. Sometimes, people don’t even have to know of my results. What matters is that I know I solved it.

    The challenges have to get bigger since the “old ones” are easy and solved now and that level of difficulty doesn’t bring us the usefulness we need to feel.

    The sense of lack of usefulness that sets in when we don’t have a challenge – and the emotional impact that follows – are very good signs. I feel like a vegetable if I don’t have a “target”, something big to think of.

    A friend of mine who’s a professional therapist says “it’s not that serious of a problem, don’t waste your money on therapy, everybody has self-worth issues – see facebook”. :-)
    Go figure.

    And, you know, some of the great figures in the history of technology had it too (kind of).

    Sorry for the long reply.
    I wish you all the luck and try to be happy knowing that you have the most useful (for the society) kind of addiction there is :)

  • http://m.andric.us Milan Andric

    It sounds like you’re really happy but it’s difficult to manage your desire to solve problems and your desire to be growing constantly. It might get a little OCD now and then but so can anything, and you have to watch for those moments and learn to manage them too. You can also learn a lot about meditation and philosophy for example. At the end of the day though managing your need for learning is a problem too, which also needs resolution and can’t be ignored! ;)

    Your desire is more common than we think. People want challenges, especially if provided the right environment. Once you succeed at one challenge you only want more. Problems are prevalent in this world and are begging to be solved. My challenge to you is to be thoughtful about which problems you solve and where you put your energy. It really is the meta-challenge, the challenge to be aware and choose your challenges and your life path wisely. We can all continue learning forever, the human mind is built like that, but what is the point of learning? We must also rationalize an answer to the question of what problems are important? If your focus is computing then which parts of computing should you focus on and why? This is also an important problem to consider, and a fundamental part of the human experience as well.

  • Pingback: Can you Handle an Elite Performer? | Passion for Coding

  • Peter Chon

    That’s really awesome. I wish I had the drive and the mental capability to do what you do.

    But then again, the cpu is faster on the other side – right?

  • Jeff Ratcliff

    As I follow you on twitter, I’m really amazed at the diversity of development subjects you explore. Are you sure you’re not a team of clones?

    Despite your occasional boredom, it’s important to stop and realize just how blessed you are to be paid to do a job that challenges you intellectually when so many people are forced to do drone work to survive.

    There may come a time in your life when you have more limited opportunities, so take a look around and soak in the joy of the moment.

  • George Trujillo

    There are many of us like you in the IT industry. However when you are 40 or 50 you don’t want to look back at a list of companies that are just a blur. You really need to make sure you are enjoying life and living to the fullest. Human experiences are just as important for happiness and mental wellness as conquering the next challenge. Make sure every day you call, email or text someone you care about. Make sure you are taking vacations that take you away from work. Experience London, the Caribbean, New York, etc. Make sure at least one a week you do something personal with someone you care about. Find ways to give your time to others to make a difference in the lives of others. I wish you success, but more important I wish you happiness.

  • josh

    What’s wrong with you? You’re a nerd with hypomania and, based on this blog, a touch of hypergraphia? Or maybe just a very motivated hyperfocusing ADHD inattentive (not a contradiction btw). You might have some testing done to find out- especially if you feel like your work is negatively affecting your health or relationships. If not, consider these characteristics your superpowers and harness them for good!