http://www.perlmonks.org?node_id=351751

It's been a long time since I've had anything worth saying, but I need a bit of advice.

Recently I was in a bad car accident that has left me disabled and out of work for a few months. First thought I had when I got home and typing again was "Great, what a time to update/debug some of the code I've been too busy to work on!". So I sit in front of my machine, pull up a terminal and start a list of what needs to be done. Then, I continue to sit there, scrolling through the code over and over. The problem here, is that I can't get motivated to do anything. I start thinking to myself, who else is going to use this, and why would they? It's probably already been done, and more than likely, it has been done better.

What do you do, when your interest is lost, to spark it again?

Thanks,

Bored and unmotivated in Knoxville

--
A conclusion is simply the place where someone got tired of thinking.

Replies are listed 'Best First'.
Re: It's a problem of motivation, Bob
by Juerd (Abbot) on May 08, 2004 at 20:43 UTC

    What do you do, when your interest is lost, to spark it again?

    I spend a lot of time on IRC and here. These days more on IRC than here. I help others code, because I lack inspiration and motivation to code things for myself. Although I am sure that whatever I say to help others has already been said a thousand times before and often much better than I can, I do think helping others code is worth its while.

    If you have the skill, but not the motivation, consider sharing your skill with people who have the motivation. Eventually they will share their motivation in return, but it takes time.

    The easiest way to help someone is to yell RTFM and refer them to the right documentation. This is also a great way to learn new things yourself. Unfortunately, on Perl Monks, saying RTFM without elaborate explanations and comforting now results in downvotes. (I am convinced that the flood of basic/stupid questions is the direct result of discouraging RTFM-replies.)

    Summarized, I suggest that you put away your code for now and help other people, until they help you regain your motivation. You will learn a lot yourself in the process :)

    Juerd # { site => 'juerd.nl', plp_site => 'plp.juerd.nl', do_not_use => 'spamtrap' }

      This is really excellent advice. I think that you would be surprised at how much code there is to write in the world. I work in a scientific research field, and the majority of code that has been written for my application is poorly written, poorly designed and generally not commented. I completely agree with your sig "A conclusion is simply the place where someone got tired of thinking," it's applicable here. I've never written a program that I consider finished, there are always new features that I'd love to add, new ideas I'd like to test.

      Helping people learn Perl better is a great way to dredge up useful idioms from the back part of your brain. It can also help you realize how many applications are out there just waiting to be written. Another thing that you could do is to help yourself by using the PM community, post some unreviewed code up in a node and ask people what they think. I'm always impressed by the quality of code review around here.

      One thing that I like to do when I don't feel creative enough to write a new program is to learn a new module. I have no idea what you know or what you are interested in, but over the last week I've learned about Class::DBI a module that has really changed the way that I code database-driven applications.

      I've always thought of writing code as very similar to writing a book or essay. Both are creative processes, both require a great deal of patience, and both can make you susceptible to writer's block. The important thing to remember is that you've been physically hurt by this car accident, and you need to take it easy on yourself for a while. Consider this just a time in which you can improve your Perl Kung-fu significantly, because you have the time to do it.

      One more thing: try to relax as much as possible. Read a book, watch a movie, play cards with some friends. That will probably make you feel better more effectively than any kind of programming, and I think it will improve your attitude about programming a great deal.

      Sorry to hear about the crash, good luck with your recovery.

Re: It's a problem of motivation, Bob
by castaway (Parson) on May 08, 2004 at 20:49 UTC
    Sounds familiar. I'm always complaining I don't have enough free time to do all the little projects I'd like to, yet, when I do have some time, I'm as like to spend it surfing, chatting, or something unrelated.

    First, don't sweat it, it's your free time, so why force yourself to do anything in particular? (It's bad enough working to deadlines and orders at work, I find)

    Next, find something that you want to do, that you want to *use* as well. If you don't want to reinvent wheels, go find some and adapt them? The reason people code in their free time, is because they can't find a tool or whatever, to do exactly what *they* want it to. If you're doing it because someone else may use it, you're starting in the wrong place (IMO)

    What do I do? Well, start on something else usually, or go back through my notes of things that might be useful, to see if anything catches my attention. If not, then I may not code at all, I might go play a game instead, watch TV, read a book, work on a paper model, which when it's finished, will just gather dust and get in the way.. But I did it, for me, not for anyone else, so it's worth it.

    You can always just go browse though the nodes here, help a few people out, read some of the interesting code chunks, maybe you'll find something you think you'd use, with just a little adaption...

    C.

Re: It's a problem of motivation, Bob
by jacques (Priest) on May 08, 2004 at 20:52 UTC
    What do you do, when your interest is lost, to spark it again?

    Take a break. Staring at the computer will get you nowhere fast.

    Read a book. Buy a pet (I have always wanted to own an African Grey). Basically, do something new.

    When you are ready to start again, you will know.

Re: It's a problem of motivation, Bob
by Abigail-II (Bishop) on May 08, 2004 at 23:19 UTC
    What do you do, when your interest is lost, to spark it again?
    Find yourself another interest. If you really liked what you were doing, interest in it will come back. Perhaps after a week. Perhaps after a year. But true love never dies.

    Abigail

Re: It's a problem of motivation, Bob
by exussum0 (Vicar) on May 08, 2004 at 21:48 UTC
    Half of computer science is writing programs. Half of it is also solving problems "outside of the box". I don't know what you do for a career, but if you could solve any problem in anyplace you've worked, that can be done with a compy, what would it be?

    With perlmonks, I couldn't find a CB client that suited me. An application that sits on my desktop, easily installable, and does things the way I liked.

    At work, it was the prior person's mess I decided to one day clean up.

    So, what would YOU want to fix?

      Alas, I won't be going back to work till June 10th. A lot of things change in 3 months in the Cellular industry.

      Although there are some logs that I would like to see parsed for pertinent information.... I just won't be able to access our network till I get off of disability :/

      --
      A conclusion is simply the place where someone got tired of thinking.

Re: It's a problem of motivation, Bob
by talexb (Chancellor) on May 09, 2004 at 14:36 UTC

    I can relate.

    I broke my leg pretty badly back in January 1993 playing hockey. My leg was in a full length, non-weight-bearing cast for 13 weeks. I was in a walking cast for another 27 weeks, and still limped when I started a contract job in November 1993.

    I didn't have a computer of my own back then, and after two weeks cliumbing the walls, my pal Jason took pity on me and loanded me an old 386/25 (I think) with a 9600 baud modem. I immediately installed the Borland C compiler and started writing code. About a week and a half later I had an OO version of roff, complete with microjustification on the Epson printer I'd rented. It was a huge relief to be able to use a computer to do something creative again.

    After that, I just hung out on CompuServe, visiting the OS2 and CANOPUS forums (fora), not really doing much. it was hard to get motivated after that initial burst. So I can relate

    Here's what I can suggest: leave it all for a while, and give it a rest. Recovering from an accident like that is a good opportunity to think about your life and figure out if you're going in the direction that works for you. In my case, one thing led to another and two years later I was separated from my wife. From a distance of almost ten years later, it was good for both of us. At the time, it was painful.

    I also thought a lot about the career I was in (software development) and considered doing something else. Eventually I got a contract development job, dived right in, enjoyed it thoroughly and then knew I was in the right field. I also taught a two week course on Programming C at a community college, and discovered that while I like teaching, it's bloody exhausting work.

    So, take some time off from your computer, spend some time thinking about Life In General. Heal. Meditate. Rest. Have a great time. And be sure to let us know how it all comes out.

    Alex / talexb / Toronto

    Life is short: get busy!

      it was hard to get motivated after that initial burst.

      I feel the same after playing in a chess tourament!

      I will spend hours practicing before the tournament and after the tournament, will not feel like playing chess for weeks (even casual games).

      I would have lost all my energy after three day 5 round tournament.

Re: It's a problem of motivation, Bob
by flyingmoose (Priest) on May 08, 2004 at 22:26 UTC
    I always want to resurrect some programming project in my spare time to compensate for the mind-numbering corporate slave drone job I have during the week. I never come around to it. Really, internet posting is about all I use computers for....and lately that's becoming ok....I'm learning how to focus on 3D objects...slowly....

    In short, I've realized I only want to spend X% amount of my time with computers, and X is pretty much darn small. I'm in this area because I like to solve problems, think, etc, and I've given up trying to write the next killer app.... gotta have some time to live too, ya know? Which brings me to my favorite hobby, violently crashing bikes into trees. It's the exact opposite of cube farming, and that's why I like it.

      3D is overrated, really..

      I know all about crashing into things. Suprisingly, Hondas and telephone poles don't mix very well..

      --
      A conclusion is simply the place where someone got tired of thinking.

        They installed a ping pong table at work. I thought it was for token morale boosting, but I really do think it is there so we can remember how to interact with moving objects :)

        Darn monitors, I want my neural interface dang it!

        BTW, I was talking mountain bikes....Hondas and telephone poles does sound like fun though.

Re: It's a problem of motivation, Bob
by defyance (Curate) on May 08, 2004 at 21:37 UTC
    This is all excellent advice. While I don't always feel qualified to help a lot of the people that come here, I think that might be what I need. Even if I don't help, I'm sure someone will tell me where I went wrong, so I learn not to do it again :).

    --
    A conclusion is simply the place where someone got tired of thinking.

Re: It's a problem of motivation, Bob
by zentara (Archbishop) on May 09, 2004 at 12:18 UTC
    Get some drugs from your doctor or wherever. :-) Seriously, some anti-depressants, or .......

    The US population is the most heavily-drugged population in world-history, why deny yourself ? Better living thru chemistry.

    P.S. I can sympathize with your situation, I sometimes wonder if its all just a waste of time. Then I remember something Einstein said.."Depression is the well-spring of inspiration".

    What does that mean? Well, we live in this "youth-oriented rat-race culture" where everything is supposed to be fast, interesting and exciting. But of course, it's all an illusion. The reality is something like an "amish farm". So when our brains start to slow down, from the "hyper-excitement", it seems "depressing", but it is actually slowing our thinking down, so we can see "the big picture" and from that comes "inspiration".

    So when you start getting depressed, go with the flow, and break out on the other side into that "serene clarity of thought" that comes from being in the "slow lane".

    Also it helps to stop watching TV. All the commercials do is try to force you to be in that "fast lane", which leads to unhappiness, because you can never really attain it.


    I'm not really a human, but I play one on earth. flash japh
      All the same, if you feel lame for months and months, seriously consider getting on something. Personally I think a lot of people can survive a brief downswing, but a lot of others can't. Stressful events often do trigger depression in people, and some of us don't respond well to it for some reason or another.

      Depression doesn't always lead to great ideas or clarity of thought. I think often there is this thought that we should be able to have a Zen-like control of our brain and will ourselves to have more serotonin or norephinephrine or something. We feel like we should have some brilliant ideas that we are the people who see the dark side of life and so on. But often it just leads to thinking that those thoughts all suck and that you don't have anything worthwhile to do and what's worse, you don't bother trying to do new things, find new interests. At least that has been true for me. I think we all have our ups and downs, but some of us don't get those brief downs that aren't so bad. Some of us actually stay down for a long time, and it is not healthy or fun.

      Anti-depressants do not turn you to some placid stable person who never feels anything. You still have ups and downs - you are just more sane, is all, and better able to bounce back from things . Anyway I just wanted to offer another perspective...
        On the flip side of that same coin, be careful not to play the "there's nothing I can do without medication" card too soon. I'll probably get flamed into oblivion for this, but I think that things like depression and m/^ADH?D$/ are over-diagnosed these days. There is such a thing as being in the doldrums, and there is such a thing as a mis-behaved child. It doesn't necessarily mean that we have to go reaching for a little orange bottle to "cure" the "disease". "Back in the day", people did something called "pulling themselves up by the bootstraps". I think the world might be different if we remembered that.

        thor

        p.s. Yes, there are a lot of "quotes" in this post.
Re: It's a problem of motivation, Bob
by bradcathey (Prior) on May 09, 2004 at 12:53 UTC
    Read or see a biography of a famous innovator, artist, scientist or creator. My favorite is a PBS special video on the work of I.M. Pei. After I watch that, I can hardly wait to get to work. Everything is connected to everything else (sounds trite, but think about it).

    —Brad
    "A little yeast leavens the whole dough."
Re: It's a problem of motivation, Bob
by Wassercrats (Initiate) on May 08, 2004 at 23:11 UTC

    If you think it's already been done and it might serve no purpose, then you haven't lost any worthwhile motivation. You could continue with that project when and if you feel like it, a little at a time. It's good to have little, unimportant projects like that. They allow you to be moody and still always have a project that fits your mood. It helps if they're not all programming projects, and you could include hobbies and sports as "projects".

    Interest is sparked by a good idea, and sometimes by other things, but it's not not easy. Trying to spark interest in a particular field is very limiting and harder. Sparking interest in a project that's probably useless is the hardest of all.

Re: It's a problem of motivation, Bob
by svsingh (Priest) on May 09, 2004 at 15:21 UTC
    Usually I find editing (both text and code) to be a bit of a drag. To spark things, I'd try rewriting instead of modifying things in place. Maybe pick a subroutine that you know you could do better and just rewrite it. Then another, then another. It's not quite doing something new, but I find that a lot more rewarding (and easier to motivate myself for) than changing things line by line.

    Bottom line. When I'm in the low motivation part of the cycle, I try to find lots of really small tasks I can do quickly. Normally having those wins gets me going again.

Re: It's a problem of motivation, Bob
by dragonchild (Archbishop) on May 09, 2004 at 18:01 UTC
    It's funny. I've been working on a way of providing CGI-type programming for stand-alone applications. I worked on it for weeks and finally got a framework up and running. I also used it to learn TT and SQLite. My wife practically threw the laptop out. I was even working on something for me - a personalized version of Quicken.

    Then, I got a bad case of the stupids and showed it to my team leader at work. He immediately gave me permission to flesh out the framework on work time, cause he saw massive benefits from it. Now, I have to force myself to work on it outside work time, and I still don't get very far.

    But, I can spend hours analyzing a Go position (especially in my game against corenth). I can spend hours reading my favorite authors. And, in a few weeks, I'll dust off my CGI standalone and work on it at home. Maybe, I'll even wrap some process around it. (Putting it in CVS was a first start, I guess...)

    ------
    We are the carpenters and bricklayers of the Information Age.

    Then there are Damian modules.... *sigh* ... that's not about being less-lazy -- that's about being on some really good drugs -- you know, there is no spoon. - flyingmoose

    I shouldn't have to say this, but any code, unless otherwise stated, is untested

Re: It's a problem of motivation, Bob
by QM (Parson) on May 09, 2004 at 16:51 UTC
    I have a similar problem, except I'm not disabled (at least not physically ;)

    I can spend all day working on some minutia I found discussed here (like this), but working on some WGL2LST converter for a one-off at work seems like drudgery.

    My motivation will come eventually, perhaps at the end of a big stick. Yours will be more indirect. I'd suggest doing other activities you like doing; seeing people you want to see, and some you haven't seen for a while; or volunteer somewhere, either in person or remotely (perhaps slinging some easy web code for a seniors' home or something?).

    Best of luck, and keep us posted.

    Update: fixed link.

    -QM
    --
    Quantum Mechanics: The dreams stuff is made of

Re: It's a problem of motivation, Bob
by didier (Vicar) on May 09, 2004 at 10:34 UTC
    Like Abigail said: if you really liked what you were doing, interest in it will come back.

    Try to merge very different things that you like to build a new one.
    Just a bet ;)

Re: It's a problem of motivation, Bob
by defyance (Curate) on May 09, 2004 at 17:50 UTC
    Again, this is all excellent advice. I must say, hanging out here and browsing nodes, throwing in a post here and there is proving to help with the boredom. Also, I've slowly started playing the guitar again, something I did avidly before all the hardware got put in my arm. I think that working to play at the level I was before will help to ease my mind. Yesterday I found my self reading The Hobbit(not TheHobbit ;)), something I've not done in ages.

    After having done all that yesterday, I found myself up till 4am, reworking my DBI wrapper! :D

    --
    A conclusion is simply the place where someone got tired of thinking.

Re: It's a problem of motivation, Bob
by vek (Prior) on May 09, 2004 at 19:19 UTC

    At some point I think we all suffer from a lack of motivation or a lack of tuits. Don't think that it's just you.

    Sometimes the problem can be the simple fact that you're bored with looking at the same codebase over and over again. Try to find a new coding project (doesn't have to be Perl) that interests you and see if the spark comes back.

    I recently saw a post on the Evolution blog asking for assistance. I was immediately interested and went off to find out more. While I'm no great C programmer, I had a lot of fun hacking away. None of my hacks went anywhere but I didn't really mind because I had my coding motivation back.

    Take a look at Sourceforge or Freshmeat and see if there's a project that interests you. See if there's anything you can do to help out.

    While YMMV, all I can say is that this helped me get out of my doldrums. So who knows? What have you got to lose right?

    -- vek --
Re: It's a problem of motivation, Bob
by bl0rf (Pilgrim) on May 10, 2004 at 01:19 UTC
    Dear defyance,
    loss of motivation happens to all of us. The first time this happened to me I was scared ( "Is this it? All those years of learning gone to ruin?" ) but since I learned that this is natural and I've had my share of lack of motivation. Think of it as Yin and Yang, your mind simply has to rest from programming.

    My advice to you is this: take a break.
    Don't worry too much about it, once you rest and have time to observe things that aren't computer related you'll have many good ideas. If you don't just want to get programming after your break but get back with twice the energy you had before - take some time to read about computer technology that's completely unrelated to what you usually do ( you can also sneak up into a university comp. lecture :-) ).

    Have no worry about the natural cycle of things.

Re: It's a problem of motivation, Bob
by arc_of_descent (Hermit) on May 11, 2004 at 18:35 UTC

    Books. read some books. tech books.
    sex books. mostly try some tech books.
    And stay away from coding, unless you really
    really feel the need for it. You'll know when.
    You always do.

    --
    arc_of_descent

      You all rock. I'm happily coding again, no longer frustrated. , no longer bored.

      Now, to convert 2k lines of CGI.pm html to HTML::Template....

      --
      A conclusion is simply the place where someone got tired of thinking.

        nice to see that you've found your motivation again! :)

        btw: where did you get that thoughtfully signature from? did you come up with it?

Re: It's a problem of motivation, Bob
by RolandGunslinger (Curate) on May 10, 2004 at 13:15 UTC
    Boy, do I feel your pain. I've been trapped in a job supporting a graph system. That's all I do, support this one system. It's important, but I feel like my knowledge of this graph system is a real problem, because I can't get opportunities to do much of anything else. Of course, no one else wants to touch this system. It's sort of like the proverbial kiss of death. Motivation is a *huge* problem, and my frustration hovers just below the surface. My hope now is in being reassigned. To get to the point, I have found the only thing that gets my motivation up at all is my faith in Christ. If I work for Him, then I can hold myself accountable, if I work for them I just don't care.
Re: It's a problem of motivation, Bob
by Anonymous Monk on May 12, 2004 at 08:32 UTC
    hmm,

    -Got to get out. Feel nature, look at trees and babies, feel _life_.
    - Join your local perl monger group.
    - Build something with your hands (kayak, dog house, wood spoon whatever)
    - Find someone motivated to drag you out of your numbness and into an interresting project (I have one or two)
    - Kiss your wife and children (it's uncredible the amount of energy one can pump out of a hug) and do it again and again till you feel good (that's when you start programming again :-).

    Good luck (though it has nothing to do with luck), Nadim.
Re: It's a problem of motivation, Bob
by doran (Deacon) on May 12, 2004 at 01:08 UTC
    Find some small thing to 'fix' first. Get the gratification of a positive result. Often when I'm confronted with a long TODO list, my eyes glaze over and nothing gets done. To get out of the funk, I do little, easy-to-do things that produce near-instant results.

    Also, avoid (at first) making changes which don't change anything (eg. removing comments, rearranging routines, renaming variables to better names, etc). These may help readability, but I find they ususally aren't very inspiring. Better yet to find something which can be made more efficient or more scalable. After working on these, I feel I've accomplished something.
Re: It's a problem of motivation, Bob
by chance (Beadle) on May 27, 2004 at 15:52 UTC
    one thing that sometimes works for me is this:

    if you have working on the project 'top-down' switch to 'bottom-up', and vice versa.

    I.e. if you have the main loop/sequence written, but some (or all) of the functionality isn't there, think of a bottom level function/class that you think you will need and write that, even if it isn't clear exactly how you'll hook it up. As a bonus, I usually write more generically useful and robust modules when doing it this way.

    But if you have just been gathering lots of little things and aren't quite sure how they are going to go together, go ahead and write the main loop. Fill it full of function calls that do absolutely nothing.

    Also, and this is really hit of miss, make a check list of things to do for the project to be done. Find the easiest thing on the list, and do it. Then check it off the list. Sometimes the mental reward of 'see I got _something_ done' is enough to kickstart me.
Re: It's a problem of motivation, Bob
by holli (Abbot) on Apr 29, 2005 at 11:38 UTC
    Oh, oh. So your path to the zone is blocked?
    Doctors advice: Relax, have a smoke ;-) .oO(I sound like zentara)


    holli, /regexed monk/