10 ms·
Ask HN: How do you keep your programming motivation up?
When I graduated Uni few years back i was very interested and excited about programming and would constantly work on side projects. Now after having worked for a few companies, it almost completely killed my motivation and interest in programming. Working on boring, crappy projects for a living is just killing me, and you never know until you get on the job. How do you deal with this?
- davnicwil 7y ago> Working on boring, crappy projects for a living is just killing me You couldn't live in a better time for being able to pick your work as a Software Engineer. Even location is irrelevant more and more with remote work. If you want to work on something that excites you, find that and do it! Outside of that, build things that you want to exist using interesting technologies or even just a refined, latest and greatest version of the stack you currently know and use. Whether you turn these things into actual products or just things you'll use yourself, it's irrelevant, as long as you enjoy building them.
- non-entity 7y ago> If you want to work on something that excites you, find that and do it! I think that's a bit oversimplified, a lot of really cool projects are simply inaccessible for one reason or another. While there's cool stuff out there, the vast majority available to your average person seems to be the boring stuff
- mieseratte 7y agoI don't. Turning my hobby into my career killed my hobby and, really, that's fine. It affords me a good life and the ability to discover and enjoy new hobbies. If you're worried about "keeping up," then I would suggest you 1) ignore the rat-race that is framework-of-the-day and 2) focus on learning fundamentals of your domain. Sure, you'll miss out on some hip startup jobs but typical employers don't care about your lack of 5 years experience in a 3 years old framework.
- scarface74 7y agoIgnoring the framework of the day and “learning the fundamentals” won’t get you past the either HR filters or make you competitive with developers who are constantly doing Resume Driven Development and have a resume that is buzzword compliant. Especially if you are an older developer (I’m 45) and you will just be seen as just another old out of touch developer. That being said, the further down the stack you go, the more stability there is in technology.
- mieseratte 7y agoPerhaps I should clarify in that I don't worry about what's cool right now, but do in continuing education in what's new-ish and a solid solution. Having fundamental understandings of your domain is very helpful in spotting what's good and what's marketing flash-in-the-pan. > That being said, the further down the stack you go, the more stability there is in technology. IME, it's about where you go and not what level of the stack. Some places are just fine with a basic form-based website with a little JS for convenience that ultimately just talks to an IBM mainframe. Others want full-blown SPA in the latest, greatest Hipster language deployed across a dozen datacenters with Kubernetes and whatever other trimmings.
- scarface74 7y agoAnd then after you get laid off from the vanishing few remaining companies using old tech and can’t find another job, you’ll be complaining about “ageism” on HN. If the market is paying higher than market salaries for the buzzword compliant “digital transformation consultant”, that’s what I will learn.
- vhakulinen 7y ago> And then after you get laid off from the vanishing few remaining companies using old tech and can’t find another job... As we speak, banks are migrating from systems written in cobol/fortran to systems written in java. I just got quite a few recruiters contacting me for open java jobs. Sure, frontend code was in angular and they offered training for it, but for some even angular might be considered to be "ancient" because they're living in a react bubble (not saying that you are).
- bg4 7y agoYou have to find better work.
- sjg007 7y agoI have side projects and I try to learn new programming related technologies. An app in the app store could set you free!
- deleted 7y ago[deleted]
- polymorphicprod 7y agoI don't and I'm bored AF!
- chapium 7y agoThis is unhealthy, try to find what you enjoy! At least a little bit. If you haven't noticed it yet this will start wearing you down.
- SecondNature 7y agoThe motivation comes with inspiration for me. If I see a problem and know that I can build a solution, I can't stop myself from building it. The more time I spend honing these skills, the higher the bar becomes for new projects, so next time you feel the spark of inspiration, don't pass it up because it becomes more and more rare!
- thanhhaimai 7y ago- I read about cool things people do (you're already on the right path if you're on this site). Learning about the cool things often motivates me to "Hey I'll make one too". - Customize your work environment. This is rarely mentioned, but it's a very effective way to keep you interested in programming. All the best SWEs I know customized their work environment heavily. I've basically never lost interest on programming, even on the most boring projects I've worked on, mainly because just "typing" on my vim/terminal is so fun! - Learn other engineering branches. When I don't feel like coding, I design and print a lot of 3D printer stuffs. I build/program RC cars/quadcopters. Then somewhere in the process, I'll be like "hey I can program it to do this!" And I'm back to having fun with my computer. - Don't burnout. I have the feeling you may have some early symptoms of burning out. Go play games and hangout with loved ones. - Know what _really_ makes you unhappy. Is that the work truly soul crushing? Are you trying to get promoted, but felt like you can't even though you are trying hard? Work environment? Lack of sleep? You usually can't debug a problem without knowing what causes it. So take some time and reflect about it. Hope things get better for you :). And keep it up!
- jaequery 7y agoWhat killed your motivation to be exact? Most programmers don’t find their work boring... you must’ve hit a really dead end company to feel that way.
- SketchySeaBeast 7y agoYou're telling me most people just love making the "latest" and "greatest" CRUD web app? Because that's what most programmers do.
- ozim 7y agoI love making our CRUD not latest and not greatest web app. I get not bad salary and I have great people to work with. No pressure, no assholes. Some point in time company owners may change, situation may change, but for what it is worth I am riding this wave until it dies and then will see. Not changing that job even for 2x salary.
- SketchySeaBeast 7y agoI am genuinely jealous of your position. Sounds like you have a great situation going.
- eanthy 7y agono idea how you have CRUD apps interesting, it's always the same thing just different tools/application. The most mindless work I've ever done really
- seisvelas 7y agoIf your job is very 'real world engineering'y, work on projects that tickle theoretical itch. Try to implement a y combinator in a language you like without looking it up. Or learn physics and do simulations to help you. The real question is why should you keep your programming motivation up if its not something you're enjoying? Find something you enjoy and do that! Programming is a means to an end. If you want to enjoy the means more, find a more inspiring end! It's a bull market right now, you can try working in a very different kind of programming.
- non-entity 7y agoI'm starting to wish I went to school solely for the potential to get into research if I wanted. Unfortunately, although it seems like it would be more interesting and fulfilling, it also seems like financial suicide. > you can try working in a very different kind of programming. On that note, how do you manage to work in X when all your years of experience are in Y? I'd love to try different things, but I just don't know how to pivot
- heliodor 7y agoPart of it might be to find work where the grunt work is more closely related to business goals. Seeing its purpose (and assuming you care about the business goals) might provide the drive needed to do the work.
- fuzz4lyfe 7y agoFor me, I haven't worked in an organization where I would be rewarded in any concrete way if the business achieved it's goals. (0 equity, pay based on market forces more than effort) So I don't particularly care about business goals in any real sense as they don't appear to align very well with my personal goals. Honestly I just do whatever looks best on a resume at this point.
- mrdoops 7y agoMotivation is usually a product of mental health. Mental health is a product of a variety of things like work-life-balance, good sleep, healthy diet, physical exercise, and measured progression towards realistic goals. Optimize and improve on those, and you'll have more motivation and mental energy overall. Since full time work rarely makes good use of focused mental resources, you might be lucky if you have a couple hours in the evening to work on personal projects. For weekends my experience was I needed Saturday to recover - it's hard to focus on a screen and sit in a chair. But by Sunday I can devote focus into personal projects. Still not very many hours to use. It helps to have no social life and family responsibilities, but I'd rather have those than more programming time. Overall it's hard to have enough motivation and mental energy while working 8 hours a day, but you can optimize for health and get some more utility out of your free time.
- ghostbrainalpha 7y agoThis is a fantastic comment. Did you get your Motivation formula just from experience, or do you have a suggested reading where I get more info?
- mrdoops 7y agoTrial and error as a programmer dealing with depression and anxiety accounts for a lot, but for resources I'd point you to Robert Sapolsky's lectures on Behavioral Biology (here: https://youtu.be/NNnIGh9g6fA https://youtu.be/NNnIGh9g6fA). Sapolsky's lectures are great for getting a Biology perspective to how human's operate. Jordan Peterson's has lectures on Personality (here: https://youtu.be/kYYJlNbV1OM https://youtu.be/kYYJlNbV1OM) which are also great and echo similar ideas from a Psychology perspective.
- luisehk 7y agoI don't do side projects, I have other hobbies. Whatever exciting thing I want to do as a Software Engineer I'll do it during my work hours.
- ozim 7y agoI lowered my expectations, just like you know when I was teenager I wanted to have a ferrari, but when you are 30 current year sedan is quite an achievement compared to 15 year old beat up car I drove when I was a student. The same with projects, I am not inventing or optimizing complicated algorithms and I am OK with that, CRUD apps that have long life are also a challange. Handling people is a challange, which I like because I work with really nice people now. Getting that new feature in a CRUD app from concept to production feels good as well! (I am also not going to work in FANG and I am not going to earn $250k a year) I had luck with my current employer, ended up in a company that needs me and are greatful for what I do for them. It is a software shop, so I am not a cost for them but an asset. So one thing to note, try to find company where software is their main product. Earlier I was working in a company where software for them was: "those silly kids fooling around", boy that was bad. Some people say they stopped doing development after work. There is so much stuff to learn that I cannot just let it go. I was mostly Windows person, I learned loads of Linux stuff. I don't do the same stuff I do at work after work. I don't have deadlines, my projects don't have to provide any value, I don't have to open source them. I don't have to learn after work to stay competitive. I am just fooling around just like I want and there is no sprint, no points, no product owners so it feels so much better than what I have to do at work. I think all those words I used could be summed up by: take it easy, don't take it too serious, have luck.
- deleted 7y ago[deleted]
- agumonkey 7y agoAnybody doing competitions ?
- flyGuyOnTheSly 7y ago>Working on boring, crappy projects for a living is just killing me, and you never know until you get on the job. How do you deal with this? I deal with it by choosing not to work on crappy projects. If a company or the project they want you to work on is crappy, don't choose them! There aren't many non-crappy tech jobs in my neck of the woods, so I branched out on my own. I do the odd consulting gig if you're a small company who has a few technical problems and want to pay to fix them ASAP. And I work on my own projects in the meanwhile... websites... saas... working on an algorithmic trading bot right now. It's working out OK. Yoga helps fill the downtime between ideas... and is really helpful at generating new ones I find. In fact, I just had an amazing idea on the way home from practice earlier today that I should really get working on! Or hey, perhaps programming just isn't your thing and you've finally realized that. It's not for everybody. It's a tough world out there, but you're doing the right thing by asking questions and trying to change yours. Take care now. Chin up!
- redmondperl 7y ago> working on an algorithmic trading bot right now. Any suggestions on how to approach building algorithmic trading bots?
- flyGuyOnTheSly 7y agoStart getting some data in front of your face and start looking at it. Really look at it... pore over it... think it... be it... once you start dreaming about price and volume data, you'll know you're on the right track... ...until you think you might notice an edge or something somewhere... then write unit tests to see if that hunch about the pattern your monkey brain thinks it saw is actually consistently profitable. Then you do all of the real work that is implementing the actual trade execution engine. (Yes, I just yada yada'd over months of work) That's how I went about it at least and it's working out great so far! Good luck!
- sashmaaan 7y agoWhat language or frameworks do you use for that? Metatrader or things like that?
- welder 7y agoWhen I had a job like yours I quickly left for a company with more interesting projects. These days to keep up my side projects I set attainable daily goals for the projects/languages I wanted to work more in using WakaTime to track my progress. I get daily emails that motivate me to keep reaching my goal of at least 2 hours coding per day. https://wakatime.com/goals https://wakatime.com/goals
- Abishek_Muthian 7y agoIn my case it is the opposite, programming has helped improve my overall morale. I was running a startup, during first few years my programming contribution to our products were very high as I had inexperienced developers. But once they gained experience, my contribution to actual coding got diminished and was limited to architecture and major troubleshooting. That was compromise I had to make as a single founder and executive of the startup. But in 2018, I had severe health problems and had to undergo life-threatening surgery which has permanently restricted my neck movements severely and had to close my startup. While I was bed ridden during recovery, I wondered whether I could even get back to computer usage if not programming. Now a year since surgery, I have adapted to restrictions in the neck movement, changed computer display setups to aid it and started programming few months back although my primary profession now is coaching startups. I recently released the project which I was building past few months[1], which was inline with what I do professionally and being able to build and launch the project after months of uncertainty over whether I will be able to use the computer again has had a positive effect on my morale. [1]: needgap - 'Submit problems for startups to solve' - https://needgap.com https://needgap.com
- maxaf 7y agoProgramming is the single thing I'm capable of that has allowed me to provide an upper middle class lifestyle for my family. I will keep doing it for as long as it serves the function. I don't require any other motivation.
- scarface74 7y agoThis. My motivation for programming is strictly that I get an above average amount deposited into my account twice a month to do a relatively easy job in an air conditioned office or at home.
- elevenoh 7y agoFocus on your impact, the 'true' value you're providing the world. This is difficult considering what most SE's work entails (i.e. advertising, addictive feedback loop design etc.). Choose your work with strong philosophical underpinning. Else you'll end up in existential crisis.
- circadian 7y agoI have three tactics that I think primarily contribute to staying interested in projects (in or out of work), even if I find them somewhat dull or unnecessarily laborious: 1. Find a good space of the day when your brain is optimally productive and lock into a tasklist that you've preplanned. For example, I will often create a tasklist in the evening for what I want to achieve the next day, then hit it hard in the morning as that's when my enthusiasm and focus is best. 2. For any given project find an interesting approach to the solutions you need to provide. I won't take a run-of-the-mill approach to solving things (unless it's a quick win or mostly appropriate to do so) but will use solutions as a platform to approach things in a new way, with a new technology or just by improving what already exists. 3. Exercise: the reason I find the morning my most productive time of day is because I cycle to work every day, I think. If I have too much sedantary time in front of the computer it does my head in, but even a quick walk around the building will let my mind work on itself to meet the other two points I mention. If you're frustrated at your desk, you're already losing. Hope that helps! :-)
- blablabla123 7y agoI'd recommend companies that have a comfortable environment and that are not overly profit focussed but also do something that you consider useful. I'd definitely also consider going with something that might not offer the highest salary/chances of getting rich. Chances are that the technology you use might also be useful for side projects. Also not working in a high pressure environment might enable you to work on interesting things and leave some space for creativity at home. The times I felt the most burned out at work where actually also those where I took the job most seriously. That's very much the experience I have now from working over 10 years at various companies. Hope this helps ;)
- akerro 7y agohttps://www.codingame.com/blog/the-secrets-to-staying-motivated-as-a-software-developer/ https://www.codingame.com/blog/the-secrets-to-staying-motiva...
- elorant 7y agoFor me the best motivation proved to be success. Once you get paying customers for your service your willingness to write code rises tenfold. And vice versa. If a service flops I don't want to touch a keyboard for weeks.
- sailfast 7y agoFind a mission you believe in and use your tech skills to help achieve it. Warning: this might mean fighting bureaucracy, older tech stacks, lack of resources, etc but that is what you are there to solve! Everybody needs help. I’d also second other comments: use the downtime / boredom at your current job to your advantage. Only spend as much time as necessary there, focus on yourself - whether that’s wellness, side projects, vacations, etc. When you’re ready to figure out what’s next, make the move.
- nickdandakis 7y agoI don't. I have stints of high motivation and stints of low motivation. The trick is to be productive without being passionate about programming. "Choose a job you love and you will never have to work a day in your life" is a toxic mentality, and it's okay for work to just be work (sometimes or even all the time!).
- eanthy 7y agothat's very true, every job will eventually become a chore. I guess working on the motivation highs is doable, and then do only enjoyable things on the lows
- Gehinnn 7y agoI somehow have the intrinsic motivation to make things better and to challenge myself. This is why I would never just program UIs which were already designed and ready to implement. I could never work on projects that don't require me using my mind. I need to invent systems, to be creative, to solve complex problems. This is what drives me.
- Dowwie 7y agoIf your work is boring and crappy, you're probably giving it no more than 30% of what you're capable of. This is going to sound cliche but it really works: make a passion out of pursuing excellence in your work. I've turned many mundane projects into interesting, educational experiences by going deeper into the work rather than simply getting the job done. Over time, I accumulated domain expertise that I never imagined I would. I've grown personally and professionally for it. Work isn't just about getting things done. Do better work. Make better things. I guess you can say this is one application of Victor Frankl's "Man's Search for Meaning", which I recommend you read if you haven't -- or re-reading if it's been a long while!
- jamessteel 7y agoMy motivation comes with inspiration to build a new general purpose programming language that worth using, it's what I have in mind after fighting with most of the technical debts and bugs in various programming languages. I still need the community to be interested in making these language more usable.
- wwarner 7y agoTry getting better projects at work. Or try working for a smaller company, as small as possible really.
- gdubs 7y agoThe author of “Feeling Good”, Dr David Burns, who popularized cognitive behavioral therapy, believes we have motivation backwards. That in reality, motivation comes from taking action. To overcome procrastination, you commit to doing some ridiculously small task — e.g., launching your code editor. Typically this snowballs into doing meaningful work. The trick is to only mentally commit to a few minutes and most of the time you’ll far surpass that. But more generally, interesting side-projects are a good “saw sharpening” exercise. I’ve found that most of the valuable skills I’ve learned in life came from projects I was passionate about, and in turn those skills have benefited my career. Another side effect of these passion projects is that they leave me feeling energized and inspired, which has a spillover effect into my “work work”.
- bigmit37 7y agoReally interesting take. I will keep this mind.
- halfjoking 7y agoMy hatred of the dayjob is what motivates me on side projects. (The goal is to make enough money to quit) I also find it useful to keep a journal. Recent research shows procrastination to be an emotional management problem.[1] If you can work through the reasons why you're feeling unmotivated, you'll be to turn things around. [1]https://www.fastcompany.com/90357248/procrastination-is-an-emotional-problem https://www.fastcompany.com/90357248/procrastination-is-an-e...
- pkrotich 7y agoThanks for the link - it’s a good read.
- vhakulinen 7y agoI found my passion again by working on a (side) project that I care about and want to use. At work, I try to steer towards projects that I find interesting.
- Rannath 7y agoMotivation is fickle. Cultivate discipline. Set aside time to do something every day. No exceptions. Don't worry about how long you do it for. Discipline is something you can learn.
- lerax 7y agoIt's hard to work on a product that you didn't even use... or do not want to use. Maybe the fundamental key is to work on a product that you care, that you want to use... I think it's important being proud of your job to keep motivation high. Something like that I think.
- WheelsAtLarge 7y agoLimit the amount of paid programming. Program projects that you really like and find interesting as recreation. You'll have to force yourself to limit the paid programming but you'll totally burn out if you don't.
- jimmyyaime 7y agoDrink some beer
- dsego 7y agoUnwinding at the end of the day is a great way to boost morale. The trick is to keep it moderate and not overindulge.
- quickthrower2 7y agoAlcohol doesn't really unwind you. And relying on it to help you relax or code is probably not a good idea. Instead I recommend doing something mildly physical between getting home and coding. Housework, playing with the kids if you have them, dog for a walk, or a mild jog should do the trick. Alternatively having a warm bath works well for me.
- lcall 7y agoRelated discussions that might also be worthwhile: https://news.ycombinator.com/item?id=18903886 https://news.ycombinator.com/item?id=18903886 "Ask HN: How do you motivate yourself to keep working on a project? " https://news.ycombinator.com/item?id=19777976 https://news.ycombinator.com/item?id=19777976 "ask hn: how do you stay disciplined in the long run?"
- simplify 7y agoIt might be a health thing. I notice when my health is poor I don't feel like doing anything. But after changing my eating habits and sleeping more[0], I have much more energy and motivation to do things I like. I didn't notice this for a long time; the decline was so gradual I didn't notice until I was constantly tired every day. Still not perfect, but much better than before. [0] Please sleep more, dear reader https://twitter.com/hillelogram/status/1119709859979714560 https://twitter.com/hillelogram/status/1119709859979714560
- Madeindjs 7y ago1. Don't accept work who does not interess you 2. Keep some personnal project with some fun technologies 3. Choose your personnal environment (OS, code editor, etc.. )
- eikenberry 7y agoA few years ago I found myself in the same situation and finally determined it was going into the office and dealing with so many people that was to blame. Once I started working remotely I found I had lots of spare energy and motivation for all my hobbies. I don't mean to say that this is your issue, but take a look your life and what drains you. It might be the boring work or it might be something else completely.
- eanthy 7y agothis plays a huge role yes, but seems to me that finding remote work is quite difficult
- algaeontoast 7y agoWhat scares me more than constantly asking myself if I’m still motivated and really improving as an engineer is a worry that I don’t have enough energy or the cognitive ability to improve to where I’d like to be.
- jlarocco 7y agoDon't stress out over side projects. If you don't feel like working on them, don't. The cliche that good software devs have to sit at desks coding 20 hours a day is silly and unhealthy. Use your free time to do stuff you enjoy. Maybe you'll get inspired to work on the project, or come up with an entirely new one, but there's no point forcing it. And I'd suggest not taking work so seriously. Don't slack off, but don't over think it, either. Most work (in every field) is crappy and boring, so just do it and get it over with and don't stress out over it.
- dsego 7y agoOne idea is to have more influence on the business decisions, take a more active role in the project. So push back on the crappy parts and bring new ideas to the table. Try to make it your own, be proactive instead of reactive. That might give more weight to the work you do and having more stake is also more thrilling. You could be the next team lead, architect or cto, who knows. And if it doesn't work out, at least you gain some valuable lessons.
- eanthy 7y agoour team is very separate and even if you do anything it goes unheard. Also I can't make myself care that much about a project which is not mine. If that's something that benefits me personally yes, if it's something for the company to make more money I can't care less
- dagnysdildo 7y agoI don't need motivation. I have a mortgage.
- naikrovek 7y agoLearn to not need motivation in order to get work done. This is what my father and his father called "work ethic." In short, the memory I always think back to went something like this: me whining about digging a ditch, followed by: "I'm paying you to dig a ditch. I don't care if you're motivated about digging the ditch. Dig it, and I'll pay you." It's the same with anything. If you can't work without motivation then you really aren't doing your job. Everyone has up days and down days, up years and down years. You're paid for all of it, so you should be working for all of the time you're paid to work. Once you surpass the need to be motivated, you really start to get good at something, in my experience. There's a pride in the finished work, which is completely independent of how much fun you had while doing the work. I am not saying that motivated people do not produce great work that gives them pride, I am saying that you will be viewed as more reliable, more dependable, more capable, and more professional if you can simply push out those keystrokes even when you don't feel like it.
- muzani 7y agoI find this works fine with physical labor but not anything requiring creativity. I used to work 14 hours/day as a barista, no problem, but 4 hours straight untangling code is impossible.
- naikrovek 7y agoSoftware development isn't really a creative endeavor, though. A large portion, if not all of it, is seeing what needs to be done, then doing it. Creative friends (coworkers, really) tell me that "the wall" is a very real thing and that to get through it, you simply must find a way to push through it, somehow. That sounds a hell of a lot like me getting over my inability to want to dig a ditch as a child. My creative friends say that they switch projects or turn to another art, such as drawing if they are a writer, to force their imagination and creativity to stay on, while not banging their head on the same section of "the wall" and getting terribly burnt out. Others just switch projects within the same medium. I'm not a creative person, so I can't say if what that have told me works for everyone (almost certainly not) but I can paraphrase what they summarized for me.
- 7y ago
- Zionsnet 7y agoSim, pergunte pro coração! Ele tem a resposta que procura, basta ter fé em Deus.
- mokurai88 7y agotake a vacation, keep away ur gadget, pc and other tool for 3 day or more, u will feel it's gratefull to have your current job