Programmer Enhancing Supplements
NOTE: If you read nothing else, read the last paragraph
The Ballmer Peak
If you haven't heard of this, it's a good thing to read up on for entertainment, but not for use in production. The idea is that as you get slightly more impaired, you are less likely to inhibit yourself from more creative solutions to problems. So a complex issue that you can't seem to get working reliable would conceivably be easier to work out with a the blood-alcohol levels associated with Ballmer's Peak.
Does It Work?
I've heard people attribute the same effects to everything from marijuana to sleep deprivation and I don't buy it. I've had a drink or two to help me destress before approaching a project, but I've never found the code produced to be more efficient/maintainable than code I write without them. And if you look at studies and anecdotes you may see a trend in its inconsitency.
Personally, the happy medium might be to have a couple away from the project (assuming it's legal for you to do so), take notes, and then come back to do the work unimpaired.
So please, do not write important code under the influence.
Energy Drinks & Sports Drinks
Most of my personal experience lies in the realm of Energy Drinks and the chemicals that go in them. Instead of recommending or discussing any brand of the beverages, let's talk about the individual chemicals in the "energy blends" and the perceived effects they have. I have started mixing my own at this point and I have included some affiliate links to the products I buy from Amazon in some of the headers below.
Not all energy drinks have sugar, but maintaining your blood sugar while coding is a must. Hypoglycemia is bad for you in a number of ways (anxiety, confusion, etc). There is no reason to include sugar though and many energy drinks don't. Consider your diet and make sure you don't have issues in the middle of the next Death March.
The glorious stimulant that has powered many lines of code late into the night is not a good choice for everyone. Although studies suggest that levels of safe caffeine intake may be higher than previously thought, you should limit yourself. Personally caffeine helps me focus. On mornings where I don't have a cafeinated beverage of some kind, I feel sluggish and distracted. By 9 A.M. I'm usually headed to make tea if not grab a soda.
Side Effects of caffeine can be fairly disruptive to writing code (ex. "excessive urination"). And you should be aware that some people are more sensitive to caffeine and should avoid it for health reasons.
A key component of my own drinks, L-Theanine is supposed to be helpful for countering the "jittery" effects of caffeine and it seems to work well fo me. Aside from anecdotal evidence though, studies have shown that L-Theanine reduces the effects of stress. It's benefits also include helping with sleep and anxiety. That's why it's often combined with melatonine in sleep aids.
If you don't like the idea of trusting a supplement, you can get a good dose of caffeine and L-Theanine naturally with green tea. When I'm looking to sleep after coding, I brew a pitcher of green tea instead of relying on any mix I culd make myself.
You probably don't need L-Carnitine. It's a somewhat common ingredient in energy drinks and I'm interested in adding it to my pre-workout mix, but it won't help you code. It's used to lower cholesterol, potentially for weight loss, etc. There's also some safety concerns about what medicines it may interact with.
You probably don't need Taurine. It's very comon in energy drinks and is supposed to help with the effectiveness of a workout. Althought it has "neurological benefits" it's not going to help you code better. I generally use some in my pre-workout mix.
You probably don't need Inositol. Another ingredient in some energy drinks meant to be used as a pre-workout (for wight loss apparently). I intend to try adding it to my pre-workout eventually.
###Choline You most likely don't need Choline. I have never seen a valid reason to take choline supplements. I saw this listed as an energy drink additive a few times, but from all the research I have seen, it does nothing for you unless you have a deficiency.
Guarana is just another source of caffeine.
Ginseng is a bit of a mixed bag in some of the studies they suggested possible effects with mental tasks, but generally I don't think there is enough evidence to support it's use.
Supporting brain function is one of many things B vitamins do for you. They are in most Energy drinks due to their role in turning food into energy, but they do have neurological benefits. I was recommended them to help with migraines (seems to work) and there isn't much risk in the dosage typically found in energy drinks.
Do They Work?
Some of them seem to. Anecdotally I can say that I feel like I code better with some of them in my system. And some of the research seems to promote that view. I'd advise extreme caution if you decide to mix your own, and a least a little consideration before picking up an Energy Drink before heading into the office. I sip on them over the course of the day the same way I would coffee or tea.
Why List Pre-Workouts at all?
I like them, and it seems like it helps me get a better workout in the mornings. Which leads me to...
The best code I've written is after a good 30+ minutes of cardio. Note that I do use a pre-workout before I get started. So usually I'm still feeling some of the effects from the energy drink ingredients above and feeling energized from the workout itself.
Anxiety and Stress
I generally stop caring about 30 minutes in. That feeling of needing to focus on my feet and hands keeps me out of my own head long enough to think about the projects I'm working on or planning without as much self-doubt or other problems that are holding me back.
A good workout routine will improve your sleep and that will help you wake up without feeling like you just logged off. And good sleep is better for maintanable code. I've had many late night sessions where everything seemed fine only to wake up in the morning and barely remember what I was trying to do. And then not being able to read the code I'd written the night before.
There are no magic mixtures that will improve your code. Alcohol and other impairing substances have a very blunted benefit if any. Energy drinks are generally just not made for Cognitive tasks. Unless you just crave the flavor, Green Tea can get you caffeine and L-Theanine. And a good workout will put your head in a better space to code long-term.
On a side note, the energy dress mid targeting professional gamers and streamers have overlap with developers, but I've not found the couple I've tried to be better than caffeine with some L-theanine.
Did you find this article valuable?
Support Curtis Carter by becoming a sponsor. Any amount is appreciated!