Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How does one overcome the need for instant gratification?
235 points by sidcool on July 12, 2017 | hide | past | favorite | 126 comments
...in the context of programming and problem solving. For me, it becomes intensely boring and border line ADHD while pondering over a complex problem that requires some dedicated attention without worrying about the end result. Instead, I end up taking the easiest solution that may solve the problem only partially, just for the instant gratification it gives. Needless to say, this is harmful for important decisions.

I believe this has come from years of INSTANT dopamine rushes from social media and Hacker News.

How do you avoid it?

Some things I'd recommend, off the top of my head:

- Do not grab phone/computer etc. and mindlessly browse first thing in the morning. (Or before bed. Or at any time really.) But doing it first thing really starts your day on the wrong foot.

- When seeking to relax, do not mindlessly browse the internet/social-media/tv. Read an enjoyable book. This is an order of magnitude more fulfilling and beneficial to you. And genuinely more relaxing: screens are stimulating, and might let you 'relax' in the sense that you can momentarily be completely absorbed in something 'other', and forget your day to day life; but they don't relax you in the sense of being calm and contemplative (in general, in my experience).

- Reduce instant gratification from as many areas as possible. Do things that are rewarding longer term. Like reading, cooking, growing plants, hiking, etc.

- Cut video games.

- Block facebook + reddit + sites you waste a lot of time on, from main computer. Maybe have a secondary device you use to access these sites, for a set period each day (I recommend this mainly because it can be quite difficult to maintain a social life without facebook, (which is a terrible state of affairs)). Have days where you don't go onto these sites at all.

- Spend as little time on screens as is possible -> if you can work on paper do so

- have a regular exercise regime. eg. swim/run. Doing first thing in the morning really helps set your day on the right track, you have already exerted a good amount of self discipline, and achieved something, and this makes it easier to continue being disciplined.

- I recommend reading 'The Power of Habit'.

"Do not grab phone/computer etc. and mindlessly browse first thing in the morning..."

Expanding on this... Don't use mindless browsing as a filler at all. Ever.

If your build is gonna take a minute, don't reflexively switch over to Facebook/email. Sit there and think/meditate. Stand up or do some pushups.

Browsing Facebook is fine when that's the activity you're doing. Set aside some Facebook browsing time, timebox it, and stick to that.

"multitasking" is the devil. Don't do it. Better to be blank and let your mind rest for a moment instead of trying to timeslice something in. Focus on each thing separately and you'll end up more productive and efficient and also feel more personally gratified after accomplishing specific tasks one by one vs. a mishmash of "multitasking" where you're not really sure what you even did at the end of the day.

// If your build is gonna take a minute ...

Same applies if you read a tutorial post while you wait your build to finish ?

I would say yes.

This is great advice.

Wonderful advice. Thank you for sharing.

Strangely, this sounds like adults that I observed as a teenager. I always wondered how they could survive in such a boring existence.

Now I know they were just more evolved than I was :-)

I agree with this and other suggestions to seek for deeper habits. In addition, I'd suggest keeping a journal of what deeper habits you develop: when I'm tempted to kill some time browsing or watching cat videos, I look at my notes (both in a journal and as Emacs org files), give myself a little pat on the back, check some things on the list, and write down a little more of what I've been doing. I find that doing some "gardening" on my notes is useful in the long and provides me with a small dopamine hit in the moment.

I so much agree wih your post. All your advice is right and should help but there is one thing I am wondering:

Why are you on Hacker News?

Reading and in particular commenting which is an instant gratification activity (quick post, many likes paired with non-stop checking of the thread).

Is this not against your advice or is it the end of the work day in your time zone?

I don't feel HN is about instant gratification at all. I come here to see more about what is going on in the tech community. For me, it is about awareness of what is going on, reflection and analysis of where I currently fit and where else I may want to go.

If you are constantly non-stop checking for responses and your scores, that doesn't match what I do. I tend to comment, then come back a couple days later, and see what discussion ensued.

HackerNews doesn't have a message notification system, right? You have to purposefully look at your older comments to see what transpired? That's probably one of the saving graces of this community.

Absolutely agreed. @dang, please never implement a notification system.

He reached enlightenment and so has returned to samsara to guide the rest of us.

Only to reflect back on this at a later day and head to the river.

May be that he doesn't follow his own best practices every day. Got to be careful that we don't let that undercut the usefulness of the advice.

"Do as I say; not as I do"

Really good advice. I tried blocking some sites but whenever my 'bad side' comes up again, I always find a way to get around the block and visit the site anyway. Any recommendations on blocking a site indefinitely?

I have a weird alternative strategy. First a backstory, when I quit smoking, I tried what you did, making my vice less accessible/desirable using the sort of strategies you'd find in top 10 ways to quit smoking article. After failing at that for the umpteenth time, I did the opposite. I bought my favourite cigarettes, bought some very nice cigars, fresh pipe tobacco and put it all on my desk where I have to study all day.

Now that it was in my face it wasn't about working around myself, bit rather deciding if I actually wanted and had the will power to do what I had claimed I wanted to do.

So, if you really want to reduce mindless browsing and find you can't and little strategies end up being ineffective, perhaps the opposite might be a worthwhile strategy.

All the best.

This is a good point. Those moments where you are ambivalent about a course of action are self-defining moments. If you want to quit smoking, you need to become a person who chooses not to smoke when they have the opportunity to. The problem with habit is that you're no longer choosing. By keeping your cigarettes close, you gave yourself many ambivalent moments in which to build the self that you wanted to become.

And to look at it another way:

When the object is out of common sight, you only encounter your self-defining vice moments when you're at your most vulnerable (because you willfully sought the thing out).

When you bring yourself into more frequent contact, you provide yourself with more training opportunities when your willpower is greater (because maybe you're already busy, or happy, etc).

Thus, even if you fall victim to the poor choices you're trying to avoid the same number of absolute times, you've drastically increased the number of times you make good choices. And the percentage of times you choose good choices over bad.

Counterintuitive, but I like it!

Good advice. I have a similar anecdote.

When I was 18, I worked at a produce clerk at a middling grocery store. Day after day of stocking fresh fruits and vegetables while watching the same customers (and even my co-workers!) come in and eat the same horrid prepared slop really motivated me to lose weight.

I lost 50 pounds in 2 months.

And also, speaking from experience, please, never attempt to lose 50 pounds in 2 months; my lung popped. Fortunately, I survived.

Block it in your router. Make the router's GUI accessible only on a static ethernet port, so that you have to walk a laptop over to it to configure it. Your urge to goof off will be lower than the cost to unblock it, and your laziness will end up protecting you.

i actually did some pretty extensive research on this. there's very few high-quality apps in this area. the only software i found to be genuinely effective is this very obscure program called sprintworks (windows only). dunno how it works but so far i haven't been able to figure out a way to bypass the block.

to my mind, an effective blocker is extremely important and far superior to using willpower to resist your bad side. the fact is that when gratification is impossible or really difficult, you don't need to spend any willpower at all, you can just count on your other bad side, i.e. your 'lazy' self, to kill off the social media impulse. when a little person inside you says "go check out facebook!", previously you yourself have to step in and say "no, f* off*!" but now you can just sit back and watch with quite amusement as another little person (your lazy self) steps up and say "nah man, it's too much trouble" —— and bam! the impulse is gone.

the ego depetion theory in psychology may have turned out to be less empirically well-founded than people think, but personally i found it to be very useful. avoid using willpower as much as possible. instead, cleverly design your environment and play the little bad people inside your against one another to your advantage.

Use SelfControl app on Mac

Just don't look under the hood of how it works - anyone reading this and familiar with the app please don't comment saying how to circumvent it).

Another story here, when I started working in an internship, the environment was conducive for me to work but I still didn't. What saved me, was a repetitive strain injury preventer app. Whenever it said to take a break I would sincerely take a break. This makes your mind more relaxed and I could work for 8-10 hrs a day without any mindless browsing. Hope this helps :)

Along these lines, I switched my book-reading back to paper. It really helps.

From kindle on your phone or physical kindle? I have all the regular problems if I kindle on my phone, but the physical device is single-purpose enough that it's as good as a book to me.

For me, it's the difference between an LED screen and an E-Ink screen. I get fatigued when reading on backlit screen. E-Ink is pretty much paper. There's no strain when staring at it for long periods of time.

> already flexed your self discipline muscle

...what? Is there any evidence that self discipline needs to warm up?

Is there any evidence that the author's life experiences aren't valid until someone documents them in a laboratory setting?

Yeah, sort of. In terms of saying "this works for me so it works for everyone" anyway


It's less of a warm up and more of a habit. You've done it once, you'll be more likely to continue to do it throughout the day.

Current understanding of willpower is that does, indeed, function like a "muscle".

I got this from reading a few books and articles and it might be wrong, but it's my impression.

Training willpower in general is one thing - doing "warmup" just like a real muscle it's a different thing.

Actually, there used to be research showing that ("ego depletion" it was called) but it is getting more and more controversial because it's been quote a few years now and nobody managed to reproduce the effect.

I'm surprised no one mentioned meditation yet!

A regular meditation practice helps with impulse control (sitting still for X minutes requires exercising self control) and that will help with resisting the urge to do tasks which are immediately gratifying, which will free up time and energy for activities which lead to long term growth.

Two things really helped me with meditation: setting a timer, and meditating every day.

Insight Timer (not affiliated) helped with both of these, keeping track of how many days in a row you've meditated, and allows you to set daily reminders.

There are also guided meditations available (in the app or YouTube if you prefer) if you are just starting out.

Best wishes!

This is one of the two things I miss about my more religious days as a younger man.

I would pray a lot and it was a great way to run through things I was both thankful for and the people in my (pray for) list who I needed to reach out to and make sure they were OK. I cut it because I stopped thinking it had an affect on the external world, but should have kept it because of how it affected me internally.

I also miss the community, but you can get that elsewhere it's just harder for me personally.

This is very good book teaching about mediation in a geeks way: https://www.amazon.com/Search-Inside-Yourself-Unexpected-Ach...

Highly recommended.

Insight Timer looks good but - to hijack a little bit - how does it make money?

You don't. There are some great suggestions in this thread. I would definitely recommend reducing social media usage, random browsing, picking up meditation, sleeping, and looking to learn new skills. None of those will overcome or avoid the need for instant gratification because seeking dopamine rushes is something we do no matter what. You need to change what gives you the rush. Define the end goal, break up the project into chunks, and then award yourself when you complete a chunk. This is how video games work, they divide up long-range goals into chunks, and then award you for those chunks. I'm currently training for my second-degree black belt. I have no idea when I will get it, so instead, I focus on daily practice which gives me the hit, which then combines with the long range pleasure of knowing that so long as I continue to practice and improve, I will get promoted.

Before you ask yourself how can I avoid something, it's better to ask yourself how you can use it to improve yourself. Fighting against something drains your willpower and you only have a limited amount.

I too second the recommendation for "Deep Work" by Carl Newport (http://calnewport.com/books/deep-work/ ). This is one book which is a must-read for all the current generation technology workers like us. I started reading this book about two weeks back and I have finished reading 90% of the book. Already I am seeing tremendous improvement in my day-to-day life.

Yep. This book develops a solid basis for why this matters and offers many practical techniques for implementation, including seriously questioning whether each and every online service you visit is truly required to support your work and who you are, and ditching the ones that aren't.

A key tip from the book is to practice building resistance to caving. Set a time limit for the next time you will check. However short that limit needs to be is fine; the key is to build resistance and extend it. The book argues you need to maintain this ability to resist during off hours, too. It's fine to have long sessions of surfing online and do it more often than during work, but continuing to set limits and resist the urge to just grab it and check is important for not losing everything you may have built up during the day or week.

There is a whole section and recurring theme on the finite, depletable nature of willpower and the end to set up a routine to build habits to protect your willpower reserves. It's very tactical.

I found the many examples of real people applying the principles to their personal situations inspirational, such as from the author himself, professor colleagues, Carl Jung, Don Knuth, and various business and tech folks he interviewed.

Cal Newport (not Carl) -- just in case anyone is searching by author.

Thirded. Read his book. Do what he says.

Just bought the book.

Neat. It is one of that books that really helped me change my habits. I don't think there is anything revolutionary in there for the average knowledge worker, but the presentation is compelling and it offers very practical advice and examples. I often think we "know" a lot of things that are good and work well, but without picking some of those good things we "know" and just working them and doing them "knowing" that stuff doesn't help. Books like this offer a practical framework to narrow the scope of the doing and can surpass the mental hurdles to commit to things you already "know" or have a good idea about.

Cal also did a recent podcast with Ezra Klein (formerly of Washington Post and now leading Vox) about his book and the ideas behind it [0].

I'm skeptical of most "self-help" and business books but Deep Work was helpful for me and I come back to the book any time I feel myself slipping. I admit I may be biased towards his work since he is a theoretical CS professor [1] who happens to write books about work and productivity.

[0] https://soundcloud.com/panoply/cal-newport-on-doing-deep-wor...

[1] https://scholar.google.com/citations?user=EhodjeAAAAAJ&hl=en

that book is incredibly good! Especially, since he earned enough street credibility as a Computer Science professor compared to other self-help/productivity/life coach gurus

The exact answer to your question is explained in this book and Carl calls it as "Deep Work".

Several thoughts, somewhat unsorted:

- There could be an underlying medical problem. Mild depression often has low willpower as the most noticeable effect. If it's not too much of a hassle, maybe get your thyroid checked. And whatever works for depression should usually work for your problem as well, exercise unfortunately being the most effective

- If what you're doing really doesn't interest you, it doesn't make much sense to see a pathology where everything is working as intended. Try something new (as a hobby maybe) that requires similar levels of engagement, and see if the problem persists. If not, it's time for tough decisions.

- There's a theory that willpower works much like a muscle. There's a book about that phenomenon, but it really doesn't have much more content than the last sentence. It's one of those results that I don't completely trust, but trying it out doesn't cost much: do anything that requires willpower regularly, and see if you improve. The examples from the book were really small interventions, such as brushing your teeth with the non-dominant hand. After three weeks or so, people were significantly more likely to successfully stop smoking, compared to the control group. That's a rather big effect.

- Try reducing your work hours. Being "always on" just drains your resources. Start with restricting your daily work hours to something like 3h or even less, and only expand again if you're productive in those hours.

- Somehow get your hands on ADHD meds (or, you know, the generic alternatives that fuel the bitcoin boom). You'll be as focussed as you ever wanted to be, and even a one-time experience can be helpful, by reminding you what it actually feels like to be "in the zone".

> Somehow get your hands on ADHD meds

Are you a qualified medical doctor?

> Are you a qualified medical doctor?

You don't need an MD to know that stimulants increase focus.

But you should be one to tell someone to take medication.

And what would you say if the author comes back and replies "Yes, I am an MD."

"Oh, okay. Sorry."


More likely what lottery numbers I should pick for the week since they must be psychic to diagnose a guy on the Internet after just a few sentences.

Right. So regardless of his qualifications, you would have objected to his suggestion. So why ask at all?

I think brango's point is that it can be dangerous to give medical advice if you are not qualified / not a MD, & even then, it should be given only after proper examination

The MD will not even give a public advice public about sensitive subjects.

* Temperance: Restricting yourself in things. Try it: find a vice. Now stop doing it.

* Integrity: Doing the right thing, when no one is looking, or "when it doesn't matter"

Example: Yesterday, Amazon accidentally discounted a $3.5k guitar to $112. It was widely publicized and hundreds of them were purchased. Some people go theirs shipped. Is this right or wrong? After all, it's just "pennies" to a company like Amazon. Answer: yes it's wrong.

* Self-discipline: Do you work out? Force yourself to work out 2x a week. Stick to the schedule. Do you play an instrument? Force yourself to practice multiple times a week.

These things were beat into me as a kid by a pair of "tough love" parents. I cannot thank them enough.

Thanks for this.

Non-ironically, I watch this video every couple months to remember all my problems are first-world problems and I need to remember how good I have it:


That helps with the instant gratification problem for me.

I watch https://www.youtube.com/watch?v=8CrOL-ydFMI http://www.metastatic.org/text/This%20is%20Water.pdf

This is Water - David Foster Wallace Commencement Speech.

I watch this from time to time for a similar reasons.

That was pretty eye opening indeed. I feel that companies as well as schools should be attempting to instill more conscious and empathetic behaviour in their execs and employees.

After all - as Foster states education never really ends - considering the immense time and commitment we give our employer I think their reinvestment in our skills and mental well being will reap dividends for both parties.

Don't watch porn (nofap). It is one of the worst habits of instant gratification

> taking the easiest solution that may solve the problem only partially, just for the instant gratification it gives.

This isn't necessarily bad. "YAGNI", after all.

In a work programming context, if you're trying to work up the motivation to do it properly rather than hack it, can I suggest a variant on "rubber duck debugging"? Simply find a more diligent co-worker and discuss the short and long solutions. When they say you should do the long one, agree with them.

Bang! Now you're socially committed to the non-instant solution. It's like having a running buddy. Or the old joke about why are mountaineers roped together: to stop the sensible ones going home.

> socially committed

I've found the opposite to be true unfortunately. I can work on a project for hours and hours but the moment I say something about it to a friend, coworker, spouse the motivation to complete it just dies. Very odd effect and sucks when you're trying to release a product MVP

Well, think twice if you really want to go that way. From my own repeating experience, you spend years working on some insanely difficult problem, making you feel miserable all the time, then once you accomplish it you have your 15 minutes of chemical euphoria in your brain; in a week or so everybody around you starts treating it as nothing interesting anymore, and your bosses induce themselves even daily a similar feeling you had from your accomplishment by snorting cocaine, inflating their egos. In addition, all the "easy problem, low hanging-fruit" solvers that rank high in popularity contests will overtake you.

> all the "easy problem, low hanging-fruit" solvers that rank high in popularity contests will overtake you.

I laugh at myself, heartily, merrily, humbly. I am in my low place. Maybe they laugh at me, maybe they hate themselves, maybe they don't even exist.

1) You could try doing TDD. Each passing test will give you instant gratification. You could even try doing Acceptance Test-Driven Development. Basically you start by writing end-to-end test and implementing minimal code to make it pass. After that you will go one level deeper etc. I would suggest reading "Growing Object-Oriented Software Guided by Tests", this will give you a good overview of the method.

2) Also, if you can choose language to work with, you can try languages that allow you to work in the REPL. That way you can have instant feedback loop and feel satisfied even when you get some small functions working.

3) Pomodoro technique.

Addictions can't be unlearned, in my experience. It's more like training a muscle. And like with body training it's an additional habit. So if you are addicted to instant gratification when programming, you need to learn an additional habit of keeping to go on. The longer you do it, the easier it becomes. But it will always cost energy. And when you stop training that muscle restarting will become harder again.

Your question contains a second part: The question for motivation to continue training despite having no internal motivation. I'm not good enough in that department to give a short, precise answer yet.

Sure they can. You ever see someone drink too much tequila, get sick, and never want it again? Or go to mcdonalds, see a cockroach, and never go again?

It's called an aversion, and aversion therapy was a common method of habit cessation through the mid 90s. Check out this study on how >50% of 2-pack a day smokers quit smoking after just 6 sessions:


I know a lot of people who don't like to ever drink again in the morning, and I also see them again with a bottle of tequila in the evening.

Joke aside, a successful aversion therapy will also train another habit additionally to the addiction habit, that just has the opposite reaction, and the hope is that it becomes stronger than the original habit. So it's more of a method of application rather than a counter argument. Wouldn't you say?

Sometimes you have to harness your perceived weakness and turn it into a strength.

Sure, meditation and exercise and reading on paper are great overall lifestyle changes that will help in the long run, but that's not what I see you asking about.

Two things I think can help you immediately:

1) Timers. Set a timer if you're working on a hard problem. 10 minutes focus, 5 minutes to fuck around, rinse, repeat (work/break times are up to you, just start somewhere). Personally, I notice that the "it's only 10 minutes and then I can take a break and look at cat pictures!" is enough to temporarily short circuit the "instant gratification" I want. Before you know it, you'll find yourself annoyed when the 10 minutes is up because you broke your train of thought. Time to add another 5 minutes. Then 5 more. It's important to reward yourself for your work, even if it just means you went 10 minutes without checking Reddit.

2) If you can't shake the feeling and need to just solve the problem and move on, that's fine. Figure out a way that works for you to revisit the problem. Make a note in a journal? Give yourself a calendar reminder? Put in a ticket detailing what you still feel needs to be done so it can be added to your next agile cycle? It's up to you. It's okay to implement temporary/bad solutions and revisit later.

Don't be too hard on yourself and don't let anybody tell you that you're doing to little. Start somewhere an iterate. This is self-improvement and in this context nobody else matters but yourself. Good luck!

I recommend reading Deep Work by Cal Newport. There are some good techniques explained in it.

Just bought a hard copy. Thanks.

By realizing that there isn't enough instant gratification in the entire universe to satisfy that void in you. But a less melodramatic way is to learn to frame things differently. I agree it's a rush to create something that functions even if it doesn't solve the problem in it's entirety, but why stop there? A polished product is much more interesting and satisfying than a sample of one. I don't think there's anything wrong in hacking together a program, in fact it's probably a great way to begin a project, but you'll feel so much more fulfilled and the high will last so much longer, if you take your basic machine and add jet engines to it. By doing things the way you are you've basically created the end result so now .you can work on refactoring the best way of getting there. A bunch of little dopamine rushes is fun, but why settle for that when you can bathe in perma-rush?

In order to stop the time drains in my life, endless browsing of the internet, venturing down rabbit holes when I would read something, etc. I had to initially set a schedule for internet activities. I had to do that for about a month in order for me to break the habit of distracting activities when I needed to do other things.

Willpower works for some, not for others, but the bottom line, willpower will only get you so far and if you keep testing it, it will let you down at some point. Get up from the computer and take a short walk, do some form of light exercise or maybe just meditatefor a few moments so that you can refocus. Sometimes just stepping outside for a couple of minutes to enjoy the refresh air and sunshine will let you go back to your project refocused and ready to get after it.

Find what works for you and when you find yourself drifting into things that waste your time, remove yourself for the reset that works for you.


I repeat versions of these mantras in my head:'

- Always do your best work

- It's not done until it's done 100%

I also find it's helpful to chunk things down so that I can bite off a smaller piece without wanting to be done with the larger project of which it is a part. But, I strive for excellence in that part, and often can leverage that momentum to keep going.

Putting my phone in another room while I'm working does wonders.

For rationale to steele your resolve for pursuing your question, see this jblow comment for the ages [1] and the comments on Deep Work.

[1]: https://news.ycombinator.com/item?id=7789438

Solve the problem on paper including writing code, even if it is pseudo code. Once you have a good grasp of the problem and your hands are just twitching for a keyboard move over.

I find that whenever I am unfocused but have a big problem to solve doing the paper exercise for 30 min to 1 hour greatly help me focus throughout the rest of the day.


Something to consider: Trying to hold onto the systems and methods of the past is one way in which people lose relevance as they age.

Personally, I embrace the dopamine rush provided by small tangible units of progress, but I make sure that some of these units include refactoring and reworking design decisions, which also provide a tangible sense of progress. (And improves your skills in these areas!)

I believe this is an overall better system than trying to build a perfect artifact from the start -- too often you're actually solving the wrong problem, even if your solution ends up being elegant.

Scott Adams has some good writing on choosing to do the thing that gives you the most energy, which for me is very often something quick and dirty, and I love it.

> Something to consider: Trying to hold onto the systems and methods of the past is one way in which people lose relevance as they age.

I'll bite. The older I get, the more I realize how stupid it is to throw out the systems and methods of the past without understanding them first.

ZOOM IN. focus on the smallest details discernible.

that is what the idiom "put your nose to the grindstone" is about.

if you dont know/aware that the journey is long or even how long , time will fly.

you put one leg in front of the other , until you realise you finished something.

You don't have an underlying medical problem, you're fine, you're just wired to want to solve the problem as fast as possible. It's not a bad thing. It's an awesome thing, that's what motivates you. I'd have you on my team! for every engineer like you, there's another who's wired to come up with the most insanely flexible solution possible. Sometimes the quick solution is needed, and sometimes the flexible solution is needed. If I was doling out work, I'd give you the important stuff that needs to be done now, and I'll give the infrastructure work to the other guy.

Why (e.g. for whom) are you solving these programming problems in the first place?

For my employer. As in I work with a tech corporation.

I don't expect gratification from my work as an employee: I expect money.

Many years of submerging my own will has resulted in the realization that the company does not get any gratification from me, either. A quick and dirty solution that produces the expected results is completely acceptable to them, and making an extraordinary effort to produce a deliberate and solid solution was likely a waste of effort.

If you want to write code that won't make you cringe after a six month hiatus, start a side project at home in your leisure time, or launch your own company. Don't think of the rapid and sloppy fix as instant gratification, but as cost-effective development effort. In general, companies don't want the well-considered, "correct" solution, but the one that represents the lowest costs or the greatest profits. And they don't often consider technical debt in those calculations.

If they cared at all about code quality, they would have a person whose job is to monitor and improve it, with the authority to institute procedures for the other developers. If you don't have a boss (or pseudo-boss) nagging you about code reviews or test coverage or metrics, your company doesn't care. Just fix the problem in front of you with as little effort as possible. Take the instant dopamine hit, if you still get one from solving your company's stupid problems with a scant twitch of your brain.

The real challenge in an office environment is to build personal relationships and trust networks, not the actual work you are assigned. In a way, all of your assigned tasks are a distraction from that.

If this seems wrong in your gut, this is a direct result of the current management culture.

Does the employer have a say on how purportedly superficial your solutions seem? I mean, if your "partial" solutions seem to work and don't incur some extrisnic penalty (e.g. technical debt for your colleagues, legal liability for the company, shaming during a salary review, etc), perhaps the satisfaction you seek won't be found at work?

Perhaps this isn't a risk for you, but it is a problem when employees overthink or over solve a problem (e.g. bikeshedding, premature optimization, etc). At the least, maybe your current inclinations aren't a net negative to your employer. What kind of problems do you try to solve that aren't work-related, and do you find that you have that same kind of ADHD as at work?

Stop consuming sugar and caffeine. Fruits are a great suppliment until your body adjusts. You cannot have an abundance of attention without the fuel to power it. - It was one of the hardest things for me to do.

I second this. Sugar does much more harm to our body than we usually realize. After stopping sugar, my health tremendously improved. But the first few weeks and months of stopping sugar, (I used to consume too much sugar earlier) I noticed the worst possible games my mind can play against me. My mind used to say that it is ridiculous and I am being impractical, childish and what not!. It was a war and I won it. And now I am reaping the benefits. I am able to focus better. I am having better energy and my memory has improved.

How much of that is sunk cost fallacy? Of course you'd feel better

Fruits contain fructose, which is another form of sugar, and not quite good when consumed in large quantities.


Fruits also contain a lot of hard-to-digest fibers. Both the fructose and the fibers taken together are fine.

It's when you refine the fruit (e.g. juice it) that you separate the fiber away and therefore loose the counterbalance. The fiber and relative inconvenience in consuming the fruit also help to regulate the intake. Contrast a tall glass of orange juice, which is about 4-5 oranges minus their fiber, with manually pealing and eating that same number of oranges. One can be gulped under a minute, or maybe a few minutes if you drink it slowly, the other will take quite a while to eat and leave you with a feeling of being full.

That's why if I'm offered juice, I try to sip it slowly.

Where would some blended fruit come in that regard? Would it be still good, or are we losing some fiber benefits?

I doubt this. Anything naturally occurring and has existed for millions of years cannot be bad for us. No matter, what the "research" says.

And if you do want to go by research, please read the works and watch videos of "Robert Lustig" (http://profiles.ucsf.edu/robert.lustig )

> Anything naturally occurring and has existed for millions of years cannot be bad for us. No matter, what the "research" says.

Like plutonium?

The difference is, that fruit tends to contain a lot of fiber, which makes the fructose harder and slower to absorb. So fruit is okayish.

However, fruit juice is just sugar water worse for you than Coke, so keep that in mind.

Not sure if satire or not, but plenty of naturally occuring things which existed for millions of years are bad for human beings. Poisonous plants for are an example.

That's right. Here's some hemlock. Eat it. It's all natural and good for you.

Sugarcane is naturally occurring. As are the beets used for producing beet sugars.

I second the suggestion for DeepWork. The bit on "Embracing Boredom" is a really good way to exercise that muscle. Also, think deeply about the axiom "think more, type less." Ideally you're programming to create long-ish term solutions. Programming for the flow or gratification does not lend itself well to that. On the other hand, if you're in competitive programming, think about the gratification you can get by writing clean AND fast code.

Simplest trick for me (and anecdotally for my peers in the developer world): track your time. Pomodoro technique [1] can give some structure if you're not used to it, with the main benefit (to me) that it forces you to quickly track & dismiss distractions.

[1] https://en.wikipedia.org/wiki/Pomodoro_Technique

Break big problems up in smaller ones. Make a checklist of the smaller items. Feel a rush of fulfillment every time you check something off

Taking the shortest path is a very beneficial habit in a startup environment. That works for us really well - make a quick and dirty solution, manage expectation that it's not permanent, gather feedback, design and commit to a long term solution, implement it. When you promise a specific solution to a given customer the social obligation will help you stay on track.

Pavlok allows you to add a slight punisher (uncomfortable negative stimulus) when you do activities like load up Facebook/reddit, use your phone, or sit for too long. The whole design is structured around removing instant gratification.

Bias: I'm the inventor.


Think I remember seeing this get roasted on Shark Tank...

Is this similar to how an electric dog collar works?

like a smart dog collar for humans :)

I'd suggest taking more vacation. I find myself a lot more willing to take on bigger tasks when I come back from vacation.

When I face a problem that I don't know how to deal with, I try thinking about it. But that's a very unfocused, ungrounded issue.

I've found some help with typing out, free-flowing style: "What's the issue? Why is this difficult? What are my options? How can I fix it?". YMMV.

Simple. (Purely my personal opinion)

1) Divide the complex problem into small yet challenging chunks of problems.

2) Totally forget about the large/complex problem.

3) Focus/Solve one problem at a time, the way you already do.

4) In the end, ask someone else to weave the individual solutions to solve the original problem. (or DIY if you prefer to!)

As someone who was diagnosed by with bad ADD well into my career, I know of three solutions:

(1) Have a work-related problem that absolutely needs you to take the approach you wish you'd be taking.

(2) Adderall.

(3) Vyvance.

EDIT: I've found (2) and (3) to be very helpful for impulse control, which might be an additional factor in your troubles.

Weird I'm kind of the opposite. I will procrastinate before I start something big usually a day or two and then it's kind of like my subconscious gives me the answer. And I'm like that's how I need to do this. This has to do more with design than programming tasks.

Some great tips and tactics here. I think it's worth describing the end-state you might be shooting for which those tactics can help with.

From what I'm reading, I think you're looking for the ability to deeply immerse in problems when the time is right.

When you're deeply immersed or in a flow state, your conscious and unconscious are completely aligned on a common goal. In fact, your conscious mind participates less and less in the tasks - only providing high-level strategy notions to your work, letting your subconscious tactical problem solving, recall and muscle memory do the work of getting the solution out into the world.

When it's working:

- your working memory (i.e. the classic 7+/-2 figure from psychology) is filled with the task at hand, and nothing else. Not only are you not thinking about other things, but you also have no doubts or second thoughts about what you're doing or how you are doing it.

- you have short feedback loops in place, letting your brain's pattern recognition work effectively.

- you have all of the tools you need at hand to solve the problem, and don't need to switch tasks to build/acquire them.

When you're in this state, you don't need a dopamine rush from anything else - you're caught up in in the problem, and don't need something to synthesize the excitement of discovery. You're getting that from the task!

Conversely, some examples of how it can break down:

- The steps required to reproduce your test conditions overflow your working memory, especially when decisions or analysis is required. Any conscious thought put towards the steps to recreate a test case is a task switch away from the problem you're solving. You might want to invest in scripts to automate some or all of the work.

- you're not sure if your approach is the right one. Now you're spending some of your problem solving energy on the "meta-problem" of how best to solve the problem. Take a moment to prove to yourself that the approach is at least worth investing in and then move forward.

Finally, know that deep immersion has its own drawbacks! Most importantly, while deep into solving one problem, it's easy to "over-invest" by going down the wrong path. For now, you might consider that a good problem to have and a sign of success at acquiring this skill. Honing the skill of choosing between the two approaches is level 2 ;)

Growing older always helps with this.

Meditation. Coursera have a course called "Demystifying Mindfulness". Check it out.

I'd first like to recommend a book called "power of habits" which will help you better understand the mechanics of habit forming & reforming habits.

Deep work as mentioned by other poster is also another good resource for focus related topics.

one thing that really helped me is working out, when you are building muscles, the result is only visible after a few months, that is how i got to enjoy and grasp the benefits of delayed gratification

I have another border-line mental sickness that keeps me from going for the easy solution. If something is sub-optimally structured, it will get under my skin beyond what is normal.

I am reading the book 'The Subtle Art of Not Giving a Fuck' by Mark Manson. Quite an interesting read. Also have bought Deep Work by Cal Newport.

Solve the problem the first way. Take a step back and see how the solution might break or doesn't work. Solve the problem again. Repeat.

Learn how to have a feeling without acting on that feeling. It works some of the time!

Do not have a computer. Just leave it at home. Nothing else works.

I've been battling this with Vipassana meditation. I came accross it via Sam Harris. He posted a very nice little intro essay to it [0]; and there is a good podcast interview with Harris and Joseph Goldstein, on Harris's podcast[1].

Another thing is to get off of Social Media, immediately [3].

[0] https://www.samharris.org/blog/item/how-to-meditate

[1] https://www.samharris.org/podcast/item/why-meditate/

[2] http://matthewbrecher.com/socialmedia.html

Some ideas/tactics that might be of interest and have been useful to me or people I know:

- Find some short programming tutorials you can follow along on and gradually increase the length.

- Starting and stopping your day with the right routines makes a difference. I don't check email and use aquamail to not bug me during those hours. If somethings down I setup a different kind of emergency alert.

- Treat your senses a little different when you want to focus. Tools like white noise, ear plugs, 9th beet stretch of brain.fm can work well.

- Keeping a dedicated space for work has taught me to focus at that desk and play in other locations. I have the exact same desk and screen setup at my office and home. I keep it to focus.

- Log out of all social media apps. And news apps. Disable all notifications. Every app thinks it's at the centre of your life by wanting to gamification you so take it away. Only use the mobile web sites in your phone in a web browser installed only for it.

- Refuse to read or watch anything that isn't immediately useful for you and what you're up to now. Afraid you'll miss it or forget it later? Install diigo and keyword evening you read. You may find you rarely go back. Plus people don't mind filling you in when you've missed something.

- Manually block all news, social media sites in your hosts file (point everything to on your laptop. Seems to help a lot of folks. If the path of least resistance is increased just enough..

- Read books more. Finding good books will teach your brain the act of immersion, focus and flow. You know you've found it when you get slightly enraged by an interruption.

- Going for walks or bike rides help me. There has been some studies out linking walking, learning and problem solving.

- Take up some meditation as a form of settling your thoughts and focussing. Meditating can provide the same feeling of a buzz without any hangover, mixed with giving you the fresh mind and focus you woke up with.

- Use do not disturb and silence notifications as much as possible. It makes a world of difference.

- Install a plugin that limits the number of browser window and tabs you have open at any given time.

- Keep a separate device for reading, communicating/socializing. I use a kindle and phablet phone.

- Understand your time. Be ok with scheduling your day in 1 hour pockets, including fixed reading time, at first and working your way down to 15 minute increments when needed. Be ok with tracking your time for 30 days to observe what you're doing with a tool like harvest.

Hope that mught be of some use.

Some other things I try to remember:

Productivity is as much a muscle as it is a habit as it is a discipline.

It's possible to grow out of the chasing shiny things phase little by little by cutting out all the other places that contribute ute to a distracted state of mind.

We distract ourselves when something becomes a little more difficult, and it's an important thing to manage.

Don't pressure yourself, a little sustained improvement at a time will go way further in the long run.

Building discipline that you can selectively use to focus when needed helps get things done is the goal.

We have a fixed amount of attention each day. Many things are trying to steal it from us so we don't get much done.

Much of our digital experience has devolved into the mindless chasing for hits of dopamine of the good enough updates, links, articles, etc. It's not anyone's fault except the PhD's spending their life's work getting people to click on stuff. If you are, don't feel bad about it, just cut the jerks out :)

There's very little worthy of being an interruption in a day.

Managing focus means managing those hits of novelty and distractions.

The power of habit is a great book as someone mentioned.

IIRC, If will take a few weeks to start forgetting and form new habits according to this book. Starting small, and keeping a list of what your doing helps you come back to it when one strays.

I recommend: https://chrome.google.com/webstore/detail/xtab/amddgdnlkmoha... to limit the number of tabs

Outstanding to store valuable tabs and get on with your work is one-tab


iterate more, starting simple has its merits



Applications are open for YC Winter 2023

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact