Hacker News new | ask | show | jobs
Ask HN: How to succeed with poor working memory as programmer?
12 points by kusina 4328 days ago
I don't think I can hold on to any kind of a job at all. I am very restless in nature. I graduated recently and this is my first job. I can't seem to remember anything. I understand instructions and details at a very slow pace. I am very slow. I can do really hard stuff if it is very very interesting.

What work accommodations should I consider?

13 comments

Existence Disproof: I personally have a terrible memory. As an example, on the keyboard of nearly every computer I've used in the last 15 years of my ~20 years as a professional computer programmer, I've written this in felt tip pen:

\r\n

I can't remember whether it's a forward or back slash. Ever. Even though I use that at least once every single day, it still takes two tries every single time. I honestly just googled it to be sure since I don't seem to have it scribbled on this new machine.

And to be clear, I've had a very successful career.

You won't forget \r\n ever again: it spells "ReturN".
People mention todo lists but there are some other note-taking styles that I like which are useful even if you have a great memory:

i) people - keep notes about your interactions with each person you work with. Review them before you meet with them again. The greatest way to piss of managers and colleagues is to have a poor grasp on what they have told you or asked you. Whatever note taking method you use, reserve a page/section of each person.

ii) decision making - I find the spin-up cost of getting back into a project to be about getting back into the open questions that I have thought deeply about but not yet answered. I suggest finding a note taking style that works for recording in-progress thinking as its happening so that you can be interrupted and get back to deep thought asap. I like an outliner style with short-hand to indicate e.g. pros/cons, causes/consequences, connections etc.

>The greatest way to piss of managers and colleagues is to have a poor grasp on what they have told you or asked you.

That is if they have communication skills (which most people lack), share the same domain knowledge (usually the guy already knows the problem, and you'll be figuring it out in the next days, so there's no way you can even ask informed questions). Plus recall bias, plus confirmation bias, not to mention pure bullshitting, especially when things go wrong.

Dependence on memory is a system error. It means there's something wrong with the process, or the workplace lacks proper communication.

My default response to "I told you to...", is in every circumstances "no, you didn't". Until they know better.

I don't really understand your point. Is it that staff shouldn't have to remember interactions with other staff? If so, I can't agree.

Good staff I have managed are fast to interact with verbally, remember what is asked of them, remember what they are taught, remember what they have promised, remember advice they have given and don't repeat themselves etc.

The bad staff claim no knowledge of what was asked, haphazard claims of what they agreed to and require to be shown how to do things multiple times. Some other bad staff refuse to agree to anything verbally and demand everything to be written down slowing everything down to a contract negotiation.

With care, even someone with poor memory can operate like the good staff. The bad staff are unemployable.

Paul's comment about ADHD seems like really good advice, but assuming there is no medical solution to your dilemma, maybe some words of encouragement may help:

When you first start off programming professionally it feels like there's an infinite list of things you should have already learned, and it can be really overwhelming.

I remember my first job out of college, it was really stressful at first. Good news is that after a year on the job you'll feel like you've done it your whole life. There will always be things to learn but it slows down drastically after the first few months.

One bit of advice I have (and not everyone will agree with this) is that if you really feel that you're falling behind your peers, you may want to work longer hours than they do. It'll give you more time to learn and people have a lot more patience with someone who shows they're trying.

Yes, thanks for the input. I will be putting 12 - 14 hour work days from now. Life is hard but I will have to suck it up. I already have 3 yrs of experience. My managers are extremely puzzled with me. I am getting passed from one team to another like a hot potato. Pretty demoralizing. But, I will do whatever it takes and try to stay on top at work.
Your very brief description appears highly consistent with a possible ADHD diagnosis. Go talk to a psychiatrist ASAP if you haven't yet. Medication can do wonders and improve your quality of life and future prospects dramatically. So can understanding better why your mind works the way it does.

A psychiatrist told me once that curiously, many complaints that people have about memory are better explained by attention patterns. E.g in order to notice, remember or understand something, you need to direct your attention to it, and if your attention is shifting all the time, you are not going to retain very many things.

Hi HN/Paul,

Thanks for taking the time to respond. I do have ADHD. I got the diagnosis and I have medication prescribed. But, I have strong internal resistance towards taking medication. I realize I have no choice and took some today. I keep thinking if Teddy Roosevelt had ADHD he would spend all his time on working out, eating perfectly nutritious food and use whatever natural means there is to beat it.

I took around 2 to 3 vipassana meditation courses. It was brutal but it helped me focus for a few months (4 to 5 months) but afterwards I slowly reverted back.

I have strong entrepreneurial inclinations. I simply see too many possibilities. I am not very detail oriented. Should I play to my strengths or simply suck it up and rewire my brain through hard work. What if I don't have ADHD but I am simply a very creative individual? I know I am very creative. All my thoughts are out of the box. My problem solving approach is pretty wild and not straight and linear like everybody else.

I am afraid that the medication will dissolve some brain tissue and I will end up being dependent on it eventually. I don't think logically that clearly but I am very intuitive. Do you think if I get my attention under control I can think more logically? Sorry for too many questions. I am in a desperate place right now.

You should still spend plenty of time working out, and try to eat well. Medication should be a part of your approach, rarely should it be the entirety.

"What if I don't have ADHD but I am simply a very creative individual?"

One can be very creative and also able to focus.

That's exactly what I thought too. There's also ADD which is a sister diagnosis to ADHD. I had a relative who had it and with medication he went from "no good slacker" to super ambitious achiever.
Btw, I wish the answer was "only work on very interesting stuff" :) But such is the nature of the profession unless you're independently wealthy.
Dear HN,

Apart from the above question. I have one last question that weighs on my mind a lot all the time. I would appreciate any input from HN.

I am a male and around 28. Is it worth for people like me to get into a relationship of any kind? I know it for a fact that I will make the life of people around me very miserable. Is it morally right to pass on my genes and make the life of the next generation miserable too?

I do have some good qualities though. The only positive out of ADHD for me is the insane creativity, the ability to inspire people a lot, empathy etc.. perpetual idea generation etc.

Do you really know for a fact that it will make life miserable for people around you? I think you're being a little hard on yourself!
"I know it for a fact that I will make the life of people around me very miserable."

How? Are these things you can address (either directly, or taking measures to minimize their impacts on others)?

If you feel that way about your genes, adopt.
As other people have said, to-do lists are great, but one thing I'd like to point out is that using a physical notebook over an electronic method of recording things has -- at least for me -- been highly beneficial. I carry a pen and small (fits in my back pocket) notebook everywhere I go. Taking hand written notes and doodling along side them is an excellent way to help your memory. Also, the slower act of manually writing can be very therapeutic.
In addition to a to-do list, I started several years ago to keep a running log of what I'm working on from moment to moment. In the short term, it's useful for getting back into the flow of work after an interruption like a phone call or a meeting - you don't have to remember what you were doing when you were interrupted and what you wanted to try next. In the long term, it lets you go back and figure out why you did something a particular way. I'd prefer to be able to use a paper notebook for this since that would make it possible to draw diagrams and such, but I reluctantly use a text editor so that it's more easily searchable.
With programming it is a problem. My working memory is quite poor too, I am actually developing a framework with a debugger that helps to try to keep track of things so I do not have to remember n things for every thing I see in the system. Still has a long way to go but there is a demo too:

https://github.com/zubairq/coils

I think this type of debugger will be useful for people with good working memory too

I have a fairly terrible memory as well, especially for tasks less often executed or when it comes to getting up to speed with new stuff.

I used to dump new stuff I learned into an A4 black book then discovered OneNote. Now I have a trove of handy stuff I can search for such as tar command switches :).

Get yourself one of these types of apps, it doesn't need to be OneNote, there's plenty of other tools like EverNote that'll do the same thing.

I have this problem as well. Only advice that worked for me is to practice, practice, practice. Practice so much that muscle memory takes over. It's slow, it's tedious, but that worked for me.

Make it a point to use to-do lists, although I find that sometimes I forget to check my lists...

I knew this! I am pretty strong and quick at math/calculus etc. The reason being that I over practiced while learning it.

Looks like I have to do the same now. Simply spend lots of hours after work and focus on being mechanical. It is pretty depressing right, why should I struggle so much when everybody else is having it easy?

But at-least I am passionate about technology/business and hopefully massive repeated practice will pay off. I was reading wikipedia article after your comment and it turns out people with Alzheimer's can remember after a lot of repetition. At-least, I am grateful that I don't have Schizophrenia or something like that.

If you have adhd please watch the start of this video. ADHD is _not_ a joke. Its dangers are highly under-emphasized.

https://www.youtube.com/watch?v=LyDliT0GZpE

Use him as the gold standard for research.

I came across his videos before. I don't like that much personally because he is so negative, judgmental, cynical and cocky. But I watched this and it confirms all the issues that I deal with on a day to day basis.

I should probably go into consulting where there are more immediate consequences or go into business myself working on my own startup where I am in control.

My colleagues already comment on how I am hardly at my desk. Thanks for the link, I will make it a point to watch all his videos and try to address them.

He is not either negative nor judgmental. He represents the top end of the field. His brother(who had adhd) died in a car accident. He is speaking soberly about a topic matter that is taken lightly.
The fewer you memorise, the faster you remember. So the trick is to leverage abstraction and memory by association.

Abstraction helps you to reduce the amount of things to remember, and association creates clusters of related topics.

Write things down. Review your notes.
Having a simple todo list has helped a lot, both for keeping myself on track and giving me a sense of satisfaction whenever I can cross something off of it.
I love using trello for todo lists because you can create sublists, and create notes for each task.

It really helps if you leave a task for a few days and come back to it.