So I started writing a new blog post titled "My personal struggle with mental retardation" about how impossible it is for me to think in the simplest terms and come up with the simplest solution to a given computer programming problem.

No matter what I do, I can't help but overcomplicate almost every piece of code/application I write. My mind automatically jumps to thoughts of 'OK, I'll need to write this, this, this, and this, and I'll need to make sure to use a repository and MVVM patterns, utilize this and that library' etc. An hour of coding later and it's already spiraling out of control with features & settings that don't need to be there.

The blog post starts out reading like I have actual clinical mental retardation but then goes into the various mental processes that I went through this past week.

So I was wondering if there is an actual word directed specifically at computer programmers that implies a type of mental retardation related to their inability to "think" in simple terms and their propensity to jump ahead and overcomplicate / self sabotage their work without even realizing it.

If there is no such word… well that's your cue to help me come up with one! :P

  • 10
    Use of the term mental retardation to describe your difficulty in dealing with intellectual problems is considered highly offensive. While I appreciate that you are looking for terms to describe your struggle, you should consider rewording your question.
    – bib
    Commented Dec 13, 2013 at 16:12
  • Why not use something less severe-sounding like "My personal struggle with mental challenges"?
    – Ste
    Commented Dec 13, 2013 at 16:16
  • don't reinvent the wheel.
    – Justin
    Commented Dec 13, 2013 at 18:59
  • 2
    You should totally drop mental retardation and use jQuery.
    – RegDwigнt
    Commented Dec 13, 2013 at 19:59
  • Don't forget to use a "queue" next time you play billiards, or when you prompt someone for a response.
    – Robusto
    Commented Dec 13, 2013 at 20:17

6 Answers 6


I don't think you want a word. I think you want a device such as an oxymoron or some other kind of play on words. Obviously, over-thinking is the opposite of retardation. So, I think you want something like "simple complexity" or "elegant retardation" - both of which are oxymora. Some other examples that are probably more akin to your original ask are portmanteaus; such as complicatard (n.) "someone who is retardedly over-complicated" or retarex (adj.) "something that is complex to a retarded degree." One last thing, I do think one reason why this exercise is difficult is because it starts with a modified or irregular definition (slang) of retarded. I believe retarded in this sense you are using it, aptly means "to be broken, messed up, or otherwise dysfunctional." So, if you started with one of the words that you mean, rather than the slang retarded, then that might give you a better base from which to think about other words. Something as complex as MVVM or the Repository pattern, as well as the capacity to understand their use and overall context, are anything but subjects of a "mental retard." Happy writing!


Consider some of the following compounds.
• antisimplifier
• overcomplicator
• codebloater
• doublethinker
• featuregrubber

  • I like antisimplifier. (It's a terrible word, but, given the context, it's perfect. It's an overcomplified word for an overcomplicating mind – but I wouldn't recommend using it much beyond this particlar blog post.)
    – J.R.
    Commented Dec 13, 2013 at 22:28

I would call the practice overengineering, but I'm not sure how to describe the person.


If building up a complex infrastructure is causing indefinite delays in actually solving the problem, you could be caught in Analysis Paralysis.

As others have mentioned, it is highly inappropriate to refer to this common antipattern as "mental retardation".


I don't think the word you're looking for is retardation, for sure, for in spite of your difficulty in coming up with an answer, mental retardation is quite specific, and it would seem to be minimizing the actual problems people face.

You might have a handicap (not far from retardation, but not limited to decreased intelligence). People with dyslexia have a handicap in reading comprehension.

It sounds to me that you tend to obfuscate things, that is, render unclear, or confused, make unclear, blur, muddle, complicate, overcomplicate, muddy, cloud, befog.

From what I've read of your statement, I'd say you may handicap your thinking by obfuscation.

  • 1
    Clearly, the questioner is trying to describe HOPD, hyper-obfuscation proclivity disorder. In severe exacerbations, we describe the affected as being "hopped up." (Thanks @Susan Gerard for reminding me of "obfuscate" Commented Dec 13, 2013 at 16:23
  • 1
    @SusanGerard In the DSM? How about making HOPD the title of the DSM? Commented Dec 13, 2013 at 22:45

It sounds to me as if you might be a Rube Goldberg programmer, and your condition might be a Rube Goldberg mentality.

Not the answer you're looking for? Browse other questions tagged or ask your own question.