13 ms·
Ask HN: Solo developer, what's your recipe to start working?
Hello HN, I am a new solo developer who quitted job 19 weeks ago.
At this moment of my writing, I just don't want to work. I come across this problem a lot recently.
I don't have the urge to work, and it feels too difficult to focus.
I know that once I start, I will be productive. But I don't have a recipe to start. If my mood changes, I work. If not, I dont' know what to do.
I recently read that no matter what, you just work. I tried and failed to just work.
Any advice?
- mpva 6y agoMy biggest key for this is to work on something you enjoy. Find something that you feel is wrong, or too difficult or too cumbersome and solve it technically. For example: Problem: There was too much street light at night to sleep coming through my window, so I bought black out blinds. Then I didn't have enough light to wake up in the morning and always felt sluggish. Solution: I created an arduino sensor to detect morning light (depending on time of year) and then using a motor on the blind cord, it opens my blinds gradually so I have a nice natural wake up. And it's powered by solar. I literally never need an alarm clock again. (All thought I still set one, good developers always have a plan b)
- stephc_int13 6y agoThe first think you might need to fix is your sleep, second is your environment and your eating habits / patterns. You can only tackle motivation issues when you're not feeling bad. My trick is to imagine the end-result of what I am currently working on, it pushes me to get the reward of seeing it finished. Of course it works only if I expect to be proud of the result.
- pototo666 6y agoI have never thought about eating habits' effect on motivation. Any resource I can read to educate myself?
- stephc_int13 6y agoSearch Youtube about the effect of sugar, you'll likely find a ton of ressources. Insulin level in blood is more impactful than we usually think.
- DarrenDev 6y agoSometimes the size of the project you’re working on — or looking to work on — can be daunting. At the day job, you have a manager to break down the work for you and pass it around the team in bite-sized chunks. You have to be that manager yourself — breaking the app or product down into small components and working out what should get done first. Build a list in a form you’re familiar with — even if it’s a form you don’t like such as Jira. Break it down into large chunks and smaller assignments. Then start on the small stuff, ticking them off on by one. When you see tasks being completed and the list moving, it builds a sense of momentum and it gets easier to keep going day after day. If you don't know what you're going to work on or haven't decided what to build yet, then stop what you're doing and work this out first.
- pototo666 6y agoThanks, the list advice is promising. I used to have list in my side project, mostly to help me remember what to do. I stopped having them when I becoem full-time, believing that I know what to do, which is only half true. I shall log in my trello again. :)
- josefdlange 6y agoIMO give paper lists -- or maybe something like Notes on an iPad with an Apple Pencil if you're really married to digitization -- a fair shake. Sometimes I find my brain needs the tactile/concreteness to really build motivation. Even just checking a box on paper! No book is going to solve the problem for you, but "Every Tool's a Hammer" (Adam Savage, of Mythbusters and Tested fame) I found to be a great little memoir about learning how to be a self-directed maker.
- patatino 6y agoMy methods: - Use focus app block every website which can distract me - Leave a "low hanging fruit". I can start the day with a very small and simple task and have some success in a couple of minutes. Getting into it is easier that way
- muzani 6y agoTDD was designed to get rid of the dread. You don't even need to write full tests, a checklist helps a lot. But proper TDD should work in seconds. Check out the book by Kent Beck, which explains it a lot better than many articles. The basics of it is red, green, refactor. Before you write the code, write the test. Autogenerate the code from the test until it compiles. It will be red (fail) because there's no code. This is how you test the test. Then do the absolute simplest thing to make the test green (pass). Make it really hacky. Once it passes, refactor (clean up your code). The positives of this is you don't even have to be in flow. It takes seconds to do a red, seconds to go to green, seconds to refactor. You can be interrupted at any time and not lose your train of thought. If you're writing some tough code, there's also some other techniques you can do, like write several tests for behavior and triangulate the code from that.
- dragonwriter 6y agoBacklog grooming. That is, if you can’t focus, that’s usually (to me) a sign that the “work” available is currently too nebulous to focus on, and you need instead to focus on turning it into more concrete, atomic, actionable items, which you can then focus on doing.
- pototo666 6y agoThis makes a lot of sense, thanks :)
- readonthegoapp 6y agosounds like typical case of burnout. you could prob use 3+ months off if you can afford it. you can work doing something else in the meantime if you can/need to.
- stevewodil 6y agoIf I followed this advice I would be perpetually taking 3 months off, and never get back to working. Don't diagnose people in 10 sentences. Have you ever tried solo developing? Without the extrinsic motivation, and forced external schedule it's fairly difficult for most people to stay on target with all the distractions we have today.
- atat7024 6y agoEspecially with all the fucking detractors, inside and outside of our direct circles.
- rendall 6y ago> Don't diagnose people in 10 sentences Literally every single response here is doing that. The advice is fine, even if it would be bad for you personally.
- stevewodil 6y agoYeah whenever somebody doesn't want to get started on something I tell them they have burnout and should take 3 months off. I'm kind of a doctor now honestly. They probably also have ADHD and depression based on my analysis.
- rendall 6y agoYou're revealing more about yourself than either the advisor or the advisee.
- Jugurtha 6y agoUnrelated, but eliminating resources is an effective productivity/focus "hack" for me: - Disconnect the laptop's charger and work on one charge. I used to have a laptop that had at most 2 hours and it forced me to really focus. The progress I made on some projects on a commute is amazing. - Disconnect from the internet and work only with what you have on your machine. This means no search, no tabs. No distractions. This is great for proofs of concepts/prototypes where you get something done first, then you refine it later. It taught me to look at the code instead of documentation, and it taught me that as good as a documentation can be, there always are things that are not documented but are still there to use. It also made me more familiar with the dependencies of my projects. I never really used StackOverflow much when online (I instead rely on the code, docs, and issues of the project), so your mileage may vary when it comes to removing internet access. It's also useful to reduce the "activation energy" for work. One of the ways to do that is to exploit the time you don't feel like working to play or explore. A directory named "musings" can help, where you scratch a few itches with snippets of code. If you're distracted in exploration of a new library or concept, make a new file and play with constructs, patterns, APIs, libraries, etc. Just play for play. It's low pressure. You don't need to ship something. It's not work, but it's fooling around and more often than not, it tricks you into getting in the zone without even realizing. The other benefit is that day in and day out, you're building a "corpus", a set of snippets that very often will come in handy when you actually need to do something "work related". When that time comes, you won't perceive the task to be daunting or be clueless, because it's déjà vu. You already fooled around with that concept/library/problem and you have something in your back pocket. It won't be "How on earth am I going to tackle this" and feeling under pressure and overwhelmed, but "Yup, I already played with that. Heck, I even wrote some code to do that. I'll see if I can use it". Playing when you don't feel like work is a great way to reduce the activation energy when you actually have to work.
- nextos 6y agoI did my whole BSc degree in CS like this, without Internet. That was in the mid 2000s. It was exceptionally rare not to have a home connection by then in my city (a big one in the EU). When I told my classmates they thought I was kidding. My dad, a uni professor, simply didn't want me to have one as he thought it was too distracting. And I kind of agree now, but I thought he was crazy. I remember my best friend asked his dad to take his Ethernet cable away during the exam period. Instead of rehearsing, he was playing online games. And he couldn't stop, thereby failing most courses. This was a pretty smart guy that had aced university entrance tests. It kind of worked. I got the best GPA ever in my university, and I had the best GPA across all CS schools in the country. I must say at the time having a connection didn't bring as much into the table as it does now, with e.g. quick answers on Stack Overflow. I bought dozens of textbooks, and I had things like MSDN installed locally to access e.g. C++ STL docs. It also forced me to be quite resourceful, as I had to solve everything on my own and offline. For example, I didn't login remotely to university servers to do DB assignments. Instead, I had my own local Oracle deployment and so on. Quite an experience.
- stevewodil 6y agoAbsolutely make a formal schedule and stick to it as best you can. Schedule a day that you would want and be satisfied with. Separate work time and leisure time, otherwise as a solo dev you feel guilty for not working all the time, which makes it harder to start work. Don't expect yourself to "want" to start working all the time, because you won't. That's the mistake a lot of people make. Get started on small, easy tasks that can ramp you up and get you into flow state. Ex. 8am - out of bed, make breakfast, no phone usage 9am - start working (and make sure you have specific tasks to work on) 12:30pm - lunch break + go for a walk and listen to podcast 2pm - continue working on specific tasks 5:30pm - leisure time + make dinner 7pm - workout 8:30pm - shower, get ready for bed 9:30pm - sleep
- tubularhells 6y agoYou could move workout to the morning when your testosterone levels are highest during the day-night cycle. Easier gains.
- stevewodil 6y agoDo you have data to backup the fact that you would make more muscle gains by training in the morning? Testosterone levels are higher, yes, but muscles are weaker in the morning and your cortisol levels are higher. I usually weight train in the afternoon/evening.
- tubularhells 6y agoDo your research please.
- mrlanderson 6y agoLol ur such a dick
- stevewodil 6y agoThanks! I did some research and you're wrong
- outsidetheparty 6y agoMy silver bullet: always end the day with a task in progress. Makes it much easier to jump in the next morning because you have a clear place to get started.
- stephc_int13 6y agoThis is the Hemmingway trick, always stop working before completion of a sub-task, to avoid writer's block the next day.
- bhu1st 6y agoHave you experienced a vision of the person you might become, the work you could accomplish, the realized being you were meant to be? Are you a writer who doesn’t write, a painter who doesn’t paint, an entrepreneur who never starts a venture? Then you know what “Resistance” is. - The War of Art - by Steven Pressfield
- tubularhells 6y agoThis is dumb. You are not meant to be anyone. You do not become a person who you are currently not. You are you, always, and you change throughout your life. Now here, next there. There is no percentage bar to fill up. No 'ding, grats' at level 60.
- jefurii 6y agoYou could phrase it a different way: If you want to become a write, start writing. If you want to become a painter, start painting. If you want to become an entrepreneur, start making some lemonade and selling it.
- Viliam1234 6y agoYet somehow there is the pleasant feeling of doing what you are "meant to do" and the unpleasant feeling of wasting years of your life without doing what you are "meant to do". Imagine a hypothetical "universal basic income" with a twist: you have to work for 8 hours a day, doing whatever you choose to do, and it doesn't have to be profitable at all. But you have to do something, because in this hypothetical universe they have lie detectors that actually work, and they connect you to one every week and ask whether you worked, and you don't get the money if you know you didn't. What would you do? -- If you have an answer for this that didn't change significantly for years, then that is what you are "meant to do". People often don't do what they are "meant to do". One reason is that they need to pay their bills, and they don't have a sufficient safety net that would allow them to spend a few years doing something that doesn't immediately bring money. Another reason is that perhaps the work is necessary but not profitable; for example it would be nice to have people who take care of the homeless, but it's something that can hardly bring profit -- even if you reduce some negative externalities, there is no way for you to capture this value; or perhaps there is, but you only have people-care skills, not economical skills that would be necessary to create the business plan.
- tubularhells 6y agoHave a creative outlet that is not digital. I paint. You can paint too, a lot of things in fact. Oil on canvas, watercolours, acrylics on miniatures (historical, fantasy, sci-fi, busts). It's a wonderful thing. I don't feel like sitting in front of a computer ever, so I bring this desire to motivate me in building SaaS products that might one day give me a passive income. Build a dozen, if each make 200 a month that's already a good amount. Right?
- d--b 6y agoHey, for me, what prevented me from starting work is the massive scale of the project I was setting myself out to do. This was totally scaring me into inaction. Like a deer in headlights. Then someone told me: "just try and see how far you can go". And that completely lifted my inability to start working. I don't really understand the psychological trick there, but somehow it worked well for me.
- d33lio 6y agoI'm horrible at work from home. After about a year of brute-force methods to try to get myself to focus, or to improve my impulse control when so many distractions are immediately present lead me to come to accept one signal is above all in indicating I'm on the right track. Telling myself no. So now, especially in the morning - if I catch myself thinking "just 15 min of YouTube" or "maybe ten more minutes of sleep before working out" I make conceited effort to tell myself "no" and actively do what I completely acknowledge I do not want to do. Ironically I sort of caught on to this signal in college when I was a horrible procrastinator and didn't yet know I was ADHD. It's a bit extreme, but always doing what you're most actively avoiding has started to work for me. Only took me a year of being locked in my apt to figure it out...
- finiteseries 6y agoDon’t build things for yourself. Don’t build things by yourself. Build for specific people, and feel responsible to those people. Tie your social status into it. Humans are incredibly social animals, take full advantage of that fact and make sure you’re sailing with the wind on the ocean, not tinkering with model boats in a poorly ventilated bedroom.
- Mc_Big_G 6y ago>Don’t build things for yourself. This is counter to most of the startup advice I've seen. It's practically a meme at this point that many successful startups come out of scratching your own itch.
- finiteseries 6y agoThis is advice for a solo developer struggling with emotion management, not a meme.
- gardenfelder 6y agoI always build things I want badly enough to wake up early, to dislike stopping to sleep. But, they are things I believe will benefit others. That doubles the urge to keep working.
- pototo666 6y ago> Tie your social status into it. Good advice, thanks :).
- 5cott0 6y ago"A warlord once stopped at a monastery on his way home from a successful military campaign. He came to visit the abbot who was an old teacher of his. As the abbot and the warlord sat in the courtyard pleasantly chatting and drinking tea, they were distracted by an argument between a novice and a senior monk. The novice was complaining that the meditation technique given him by the senior monk was ineffective and worthless. "It cannot teach me how to concentrate much less meditate," shouted the novice. "Give me a more reliable technique." Observing that the argument was distressing his old master, the warlord stood and said, "Please, Master, allow me to help this young man." When the master nodded his assent, the warlord summoned six of his archers. The warlord then filled his teacup to the brim and carefully handed it to the novice. "Take this cup of tea," he ordered, "and without spilling a single drop, carry it around the entire periphery of this courtyard." As the novice took the cup the warlord commanded his archers, "Follow him! If he spills a single drop, shoot him!" The archers drew their bows and began to walk beside the novice who, in the next twenty minutes, learned how to concentrate. Dear Friends, there is no substitute for determination. Enlightenment is a serious matter. It can never be attained with a casual or lax attitude. You must be determined to succeed and you must be resourceful in your determination." EMPTY CLOUD - THE TEACHINGS OF XU YUN
- vstm 6y agoHmm I guess I need some assasin archers. Motivational assassin archers as a service basically.
- pototo666 6y agoIn a world with too many safe nets, deliver negative results as a service might actually be useful :)
- elseweather 6y agoThis is, in fact, an existing product category: the one I'm most familiar with is https://www.beeminder.com/ https://www.beeminder.com/, but it's got a few competitors. I've never found it particularly useful, but then I'm also too chicken to put up serious cash. I figure I put a high price on having to be disciplined :)
- jokab 6y agoI would identify what tasks i want to get done. Than split them into pomodoro chunks. Then I would, and this is the most interesting part, record my pomodoro session using OBS studio. I love to pretend that i have thousands of viewers that are rooting for me to get the the task done in as little pomodoro chunks that I can. I set my pomodoro intervals to 50mins focus/ 15 min break, and I would change it depending on current tasks at hand.
- tarunkotia 6y ago>> I know that once I start, I will be productive. But I don't have a recipe to start. If my mood changes, I work. If not, I dont' know what to do. “I write only when inspiration strikes. Fortunately it strikes every morning at nine o'clock sharp.” ― W. Somerset Maugham
- pototo666 6y agoThanks, I am saving this quote to motivate myself :)
- sillycube 6y agoIf you don't work, how can you make your living?
- ja27 6y agoA few things that help get me moving: - Make a pretty fine-grained list of tasks that are likely 10-30 minutes - Put my task list on an index card or whiteboard - Maybe use a Pomodoro timer - Change my physical environment - take a laptop outside, kitchen table, bed (or in olden times, McDonalds, library, mall food court, etc.) - Overload on caffeine and sugary snacks - Crank up some loud, angry-ish music - Dangle a reward for myself (If I ship this app today, I can order another keyboard) - Grind out a code kata on Codewars or somewhere else - Before I quit for the day, lay out the first task or two for the morning - Take a shower - Take a walk
- mcv 6y agoI used to have the same problem, and now I can barely stop working! I grab the opportunity to start. What changed? I'm not sure, but I think it's that I'm working on a project that I believe in, that's more challenging to me, and that I feel in more control over. I used to be the guy who got added to a team that was already in progress, but now I'm the guy who was working on this project from the very start, and I'm determined to see it through. I feel more ownership over the project. How do you get there? No idea, but I just made a proposal for a new project and I've got 4 days to make a prototype. This sort of thing seems to work for me. Maybe you need to figure out what works for you.
- TylerLives 6y ago> What changed? I'm not sure, but I think it's that I'm working on a project that I believe in To me, this is the difference between being able to work 3 hours a day vs being able to work 16 hours a day. To quote Steve Jobs: "Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work. And the only way to do great work is to love what you do. If you haven't found it yet, keep looking. Don't settle. As with all matters of the heart, you'll know when you find it."
- GoToRO 6y agoThen don’t. Take a break. Too much time doing the same thing will make you ineficient. The old rich people knew this and they had diffent types of activities scheduled. Variety and the freedom to choose.
- sbacic 6y agoWhat are you doing with all this free time you have right now? If you're anything like the average person, you've probably filled it with _something_. Take a moment to assess if this "something" is worth the time you are spending on it or if you're just using it to pass the hours in the hope you'll get a change of heart. If you're just using it to pass the hours - aggressively cut those activities out of your life. You'll be surprised how motivating being bored out of your skull can be when it comes to getting work done.
- jefurii 6y agoThis doesn't always work for me, but I use Firefox with adblockers and other mods for all my personal stuff, unmodified Chrome for media, and Chromium for work. When I need to concentrate I run `pkill firefox`. A better setup would be to have a separate computer for work with no personal apps, games, etc on it.
- JabavuAdams 6y agoAfter many decades of fighting procrastination the most important thing I have learned is that you cannot analyze yourself out of procrastination. You cannot read articles to solve your procrastination problem. The only thing that works is to start the work. I wish there were something else I could tell you, but that's it. Just open the book, open the editor, open the document, whatever. Now, that said, you may be burnt out, or you may not actually have to do the thing you're putting off. That's different. I'm talking about something you know you have to do (or else painful and undesirable consequences), but you're avoiding starting it. It's a trap. Just find any way to start. Do a bit, don't get down on yourself if you only do a bit. It's better than nothing.
- pototo666 6y ago> Do a bit, don't get down on yourself if you only do a bit. It's better than nothing. This mindset is valuable, thanks :)
- santa_boy 6y agoThis has been my experience too. No amount of self-help books, videos or workshops really help. They may actually end-up hurting if you go overboard with investing time, mindshare and money. The only way I've been able to improve is: > The only thing that works is to start the work. I wish there were something else I could tell you, but that's it. Just open the book, open the editor, open the document, whatever. If you fail, try again.
- longnguyen 6y agoAgree wholeheartedly! During the years I've developed a habit to "prepare" the work for tomorrow. Imagine at the end of the day, you're about to work on this "quick and easy" task. How about just do a little of it (not enough to finish the task) and let your tomorrow-self do the rest? My favorite technique when I'm super lazy, is to write a function with bunch of syntax errors. It forces myself to clear this shit up the next day. And boom, you start working without even knowing it
- asidiali 6y ago
- nocommandline 6y agoBaby steps 1) Start with ancillary or related tasks. Basically any task that will be needed for the project but maybe not now, and that won't mentally task you a lot. E.g. pick a color scheme, register a domain, come up with your Call to Action/tagline. Draw up a list and check them off as you do them. Checking them off gets the motivation to work flowing 2) Put your design down on paper, essentially write down your pseudo-code/process flow. It's easier on the brain and actually is a good help when you finally start coding (lots of people start coding without having fleshed out the design) 3) Assign yourself a daily time quota to work. Start small e.g. I must do at least 1 hour on this project everyday. Starting small means you're able to meet your target. As time goes on, you'll find yourself blowing past that time and doing more work. 4) Focus on getting something out (very very rough but call it V1). Don't focus on a polished output. Having a first version no matter how rough tends to get the juices flowing so you can refine 5) Be willing to accept that you will not be productive on all the days and don't beat yourself up on those days. I think that feeling guilty on the days we don't 'accomplish' stuff makes us wallow in self-pity which even makes us less motivated to work. What you're going through is usually my experience towards the end of a project i.e. my struggle is to actually push through and finish the project. I wrote about this on the blog of my most current project (see my profile)
- markus_zhang 6y agoMaybe just look at your bank account. If that doesn't help, maybe you don't need to work anyway.
- villasv 6y agoIf you want to force yourself to work, the only way is to ramp up meaningful punishment for not working. Being fired doesn't serve as such because it's not felt daily, it comes all at once. You need a daily dose of reward/pain to form/alter habits. You can setup some reward for being diligent too, it's even better to have both. I say this but, of course, in your place I'd focus on the disease, not the symptom. Maybe search for a more motivating work environment or job position. Maybe do some therapy to investigate your lethargy (if it's intermittent instead of constant, there must be something to it). Maybe just stop working, if you're privileged enough to afford it.
- 123jay7 6y agoFirst focus on your health, physical and mental. If something's wrong, go to a doctor. It sounds like obvious advice, but a lot of people will overlook how important a good checkup is. Your doctor may provide you medication that could help focus, or sleep, or anxiety, or all of the above.
- TechBro8615 6y agoMy advice, which is probably not great for your health, is to lean into it and accept that coding is more of an art than a job. Let yourself get into a flow, and when you do, stay there as long as possible even if it means messing up your sleep. Then start working on reducing the time between these flow states. If you're too tired or unmotivated to start, or get into the flow, you might also want to ask yourself if you're really doing what you want to be doing. If the work doesn't matter, of course you don't want to do it. So either pick different work, or figure out how to force yourself to get it done, knowing that there's nothing "wrong" with you -- you just don't want to work on boring things. That said, it's totally possible to go in the other direction. You've got an awesome project that you want to work on, but fear of success is hamstringing you from starting. This is the worst, most insipid form of procrastination and it really just sucks. The best thing you can do is recognize it, but it's really a life long problem for some. Exercise and routine help, but I think a lot of creative types find that to be a bit of a boring shtick... if that's the case you could consider talking to a psychiatrist about an ADHD diagnosis... there are pills for that after all, but they come with their own tradeoffs. Oh, and if you haven't yet, download something like SelfControl.app and block every site that you reflexively enter into your URL bar. Another trick that works for me is leaving my work unfinished at night, but knowing what I need to do to finish it, so I have something to jump into immediately the next day.
- dave_sid 6y agoIf you don’t feel like working then just commit yourself to the smallest thing possible. Commit yourself to something really small such as opening up your IDE just take a quick one minute look at a class you wrote. If your not inspired then leave it. You’ll maybe even call it a day then, but often your brain will kick in at at least start mulling it over in the background. And sometimes you will get absorbed and carry on well after the one minute has passed. Just commit to something small and see what happens.
- rendall 6y agoIt's a big topic and there isn't enough info here to really say for sure what will work for you. Do you have to work? If not, try learning another skill: an instrument, juggling, cooking, a language, motion graphics. Did you burn out? It might help to ensure that you commit yourself to keeping a good work-life balance, and then take baby steps: work just a half hour a day at most until you find yourself working longer. Are you depressed or anxious? See a doctor. But this idea of starting very slowly will likely help get you back into things. One week imagine a project you want to work on. The next week write about it. The next week spend no more than an hour or two developing it. Eventually get yourself comfortable again actually coding, then looking for a job Good luck! Keep us updated
- CodeWriter23 6y agoMy wife always says "It's work. Do it."
- Railsify 6y agoI write comments, assuming the task is code.
- visox 6y agoHi. Just štart to work just for 5 minútes. Easy, just 5 minútes.... Eventually repete :)
- segmondy 6y agoFind other solo developers, have your daily status with them. If you can sync time start coding while on video call together before everyone signs off.
- plumsempy 6y agoWrite and Journal. Whenever I feel unmotivated and cannot move forward, if I am not tired or burnt, then it is because I don't see a path forward. That is because my thoughts and information are disorganized and they pollute my sight. Writing is a very good tool for organizing one's thoughts. For whatever reason thinking with one's short term memory, at least for me, is inferior to writing or even speaking(rubber ducky?) As Jon Haidt says, we are not a logic processing machine but a story processing one(or something like that). If you have requirements for your work, sit down and write about it. If you don't know how to start then write about how you acquired those information; write about what they mean, what you want to do and anything that peaks your fancy. Over time you will develop your favorite style. As an aside, journal your days too; looking back on your day you can put your personal story in order and then see if something went poorly, or well. If something doesn't make sense. Again, over time, you can use your work or personal journal to derive other artifacts. Think of it as a data lake. Want some slides? documentation? forgot a command? forgot why you did something? open up your work journal and copy paste some lines, images or code snippets. In summary I highly recommend writing. It is a valuable tool that for some reason is not emphasized enough. One more thing, if you are expressing something, telling a story and such, you may type for speed. If you are thinking and exploring, its best to hand write, it will slow your brain down; plus, there is something about writing letters, a meandering doodling hand an rhythm that helps think.
- xupybd 6y agoTry another job for a few months. Something in admin, something that is low on thinking or creativity. I bet you'll see your energy for coding come back.
- rajacombinator 6y agoJust do it. If you have any hesitation, you’re not cut out for this type of work.
- tdeck 6y agoI find it helps to say "I'll just work on this for X minutes" and time myself. The Pomodoro Method is a simple way to get started, although personally I track time more granularly using a set of shell scripts, but the habit of recording when I start and stop focused work took a while to build up.
- achempion 6y agoI read from a book one thing that changed this cycle for me. You expect to get motivation first, then start working. This thing not always work like that, it's self-enhancing cycle. Work -> Motivation -> Work -> Motivation... The thing is you can start this cycle from any point. I.e. if you want to get motivation for work just start doing a little.
- pototo666 6y agoElegant and insightful model. Many comments here follow this model. Thanks :)
- newusertoday 6y agokeep aside time for working say 1 hour for working and do work related stuff in that 1 hour i.e no hn, no reddit, facebook, ig, netflix or any other thing that you use for passing time. if you don't have work to do in that hour than spend time on thinking what to do next in that hour. Idea is to create a routine, once routine is setup things happen by themselves as per my experience. Give it a try and see if it works for you.
- wasyou 6y agoForm Habits Change your environment and desktop Put on your shoes LeechBlock Auto tab close Desktop links Put on music If you only work when you feel like it, you'll fail. There will be hard times in which you have to persist. Work 2 minutes a day, develop a habit.
- michalc 6y agoI suspect depends a bit on what you're doing... but for me and the things I tend to work on, I tend to get scared by "big" projects that won't be "done" until some far off point in the future after loads of work, so my motivation is kept up by: - Getting something "out there" + "working" as soon as possible. Even if _really_ rough, buggy, ugly, can't scale, only works in 1 case, needs a code change to work in any other etc... - Keep it working with every change - Every change is small. Potentially, teeny-tiny Examples: - Forking a project from GitHub. Have something working straight away! I've done a few project that literally have no lines of code in common with the original, except perhaps the license [so not appropriate for all projects] - Releasing a website with whatever it is really early. Even if unstyled, no documentation, but does a tiny sliver of what you want it to do eventually. Then iterate, releasing the new version every single change. - I think some people suggest avoiding tests in early stages of projects, but for me... some high-level tests on the "public facing" behaviour really helps give me the feeling that it's working as changes are made, and I'm never stepping backwards. Things to avoid: - Long running feature branches where lots of things are broken - Refactoring without some sort of externally-facing feature in mind - Low level tests of implementation details - Working too much on "behind the scenes" stuff. You probably don't need a really fancy CI system that supports 100 developers deploying every day... [But: enough of a system for _you_ to release often is good]
- atlantic 6y agoSomething I find very helpful, to maintain productivity when working alone at home, is this: - open Notepad - at the top of the page, briefly describe your development goal - a concrete project or task - below the first line, break it down into a list of manageable subtasks (just the first few - more will come as you progress) - keeping the list open on a separate monitor, maintain your focus on the first subtask - as you get through the subtasks, cross them out or delete them. Add more items or details as they come to mind. That's it.
- janpot 6y agoWhat works for me is picking a task that I estimate at about 10 to 15 minutes and just execute it. Even if it's just cleanup, or writing some docs, or polishing an API interface. If I haven't gained momentum after finishing this it means that today is not the day and I'll retry tomorrow. But usually it's enough to get me started and pick up more serious things. 10 to 15 minutes is short enough to not feel negative about having forced myself to do it, but long enough for me to "get in the mood"
- m_j_g 6y agoSome time ago i discovered, that when I am unable to write code, I am still able to engage in less demanding but still very beneficial activity for my project: Pair programming with less experienced members of the team. It was very important for me, because previously, when i had "bad day" i was ending with completely wasted day. Now, even when i am not able to do work myself i am still able to boost significantly someones output. For solo projects, watching advanced tutorials, or conference talks about technology beneficial for current project gives me sense of progress during days when i am unable to code.
- bemmu 6y agoI try to leave a well-defined little task for myself at the end of a work session which will be straightforward to pick up from the next day. Usually if I just do a little bit of anything at all to bring my project forward, the momentum will carry me.
- evanmoran 6y agoI have read that procrastination comes from your mind defending itself against fear. Instead of confronting something that is really important (a writer afraid their writing isn’t good enough) the brain distracts by overweighting unimportant things to the forefront. Solo ventures are very challenging and there is a lot of emotion baked in. So think through what has changed recently. The biggest fears from my experience are: is this the right product? Do people actually want it? Are you going to finish fast enough? Do I have the right life balance? (keeping relationships, family, kids, friendships; eating right, exercise, sleep)? Not an easy discussion with yourself, but I think when you believe you are on the right path and are making good decisions it will flow again!
- lmiller1990 6y agoThere is no hack or secret, just buckle the hell down and start working. Motivation is fleeting, discipline is what gets the job done.
- JoeCrosby 6y agoSame thing happened to me recently. Exactly as you describe. Even the thing I dreamt about having time to work on while I was full-time employed was difficult to get started on. Unemployed solo developer procrastination can go on for months - and that's okay. You should first accept that any time you have already wasted, was always going to be wasted, and thereby free yourself from regret. While employed I was super productive on side-projects on weekends and after work, but when I had entire days to do as I please, all motivation came to an abrupt halt. I couldn't get back into flow. The motivation dissipated. Distractions took over. Projects felt like mountains to climb without being able to enter flow mode. Without flow its amazing how little you can actually get done in a day. What worked for me eventually was getting back into flow via any means necessary - and not by working on the thing I most wanted to build. Procrastination is the key to escaping procrastination. Working on the thing that I want to turn into a successful business made me feel overwhelmed and stressed, and therefore led to procrastination. The trick is to get back into a flow state, and then when in this state regularly, you shift across to the project that you should be working on. When in flow the feeling of "if I didn't need to sleep I could get anything done right now" is what you are after. First, I like to get myself back in front on the computer, by doing some menial task. Like changing your vulnerable passwords in Chrome, or organizing your repos on Github, or cleaning up your bookmarks or browser profiles. So now you are off the couch and doing stuff. These small, easy tasks, can generate a moderate flow. Now, pick some small trivial thing that you want to fix or build. Like a bug in an open-source project that bothers you. Or a simple static website that does one silly thing that makes your life easier. Something that is going to help other people or involve collaborating with other people is a good idea - which is why a Github issue is a good. As a developer on a team, you often don't realize how much motivation you draw on from your colleagues. You grind on stuff to make your colleagues lives easier, to impress them, to push the shared company vision further, etc. Even just one other person impacted by what you are doing can be a huge boost in motivation. This is why 2 founders are better than 1 IMHO. So once you are back into flowing, interrupt yourself to work a bit on the project you really want to work on. Don't say "okay now I am full focus on the real thing I want to do" - make it feel like a procrastination of the thing you are currently doing. Then bang - you have tricked your procrastinating mind. Its good to take breaks from the thing you are working via other side projects - just the same as you did when you were working - but be careful to not stray too far into something too complex. Other things that help: - Podcasts - Listen to morning podcasts with people talking about coding. - Twitter - Listen to tech conversations. Although Twitter is a big source of procrastination it can also be a good motivator and way to feel less isolated. - Exercise - Runner's high is super powerful to get motivated - but it will give you a high that dissipates unless you adequately use it to enter flow. It can be counter-productive so don't waste time after a workout before you start coding. - Alcohol (caution) - If you get stuck in "analysis paralysis" or really can't get going, alcohol is a great way to jump start things. Sometimes I will pour myself a beer, and without even drinking it, I feel this rush of motivation, and I get going on things I put off for ages. It is powerful at taking away mental roadblocks and unleashing great motivation, but the [Balmer Peak](https://xkcd.com/323/ https://xkcd.com/323/) is real! Motivation quickly tapers off. However, it is very dangerous in the long-term. Reliance can creep in quickly - but it can be useful as break yourself out of a rut.
- tmaly 6y agoI would highly recommend using mini habits to help get started. Stephen Guise wrote a book Mini Habits that is quite short but to the point on how to implement these. https://www.amazon.com/Mini-Habits-Smaller-Bigger-Results/dp/1494882272 https://www.amazon.com/Mini-Habits-Smaller-Bigger-Results/dp... Using the Pomodoro technique is another great strategy for those days where you really do not feel like doing any work.