Live data from Hacker News

Effect of perceptual load on performance within IDE in people with ADHD symptoms

link.springer.com

81–90 of 288 posts

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#81
post #16

As an engineer for 10+ years with pretty severe ADHD (unmedicated, I cannot usually even read more than a few pages of a book before either losing focus or feeling drained) I have always been aware of how much my performance fluctuates based on the cognitive load of dealing with the code I am currently working with, and how it is displayed. I half-jokingly tend to describe it to people as having a "small brain buffer…

This idea of a 'small brain buffer' is why I love writing small atomic notes in wikis [1]. It lets me break problems down into simple pieces that I can later assemble upward in abstraction, rather than try to hold complex ideas in my head and compile them together in one big document. The buffer waxes and wanes, and I need to be able to adapt my writing process so I'm productive no matter where it is at the moment.

[1] https://notes.andymatuschak.org/Evergreen_notes

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#82
post #78

I have ADD and I'm struggling to write a more complex Python app right now. I'm hating myself for not being able to easily skip around the code as it gets more complex with more classes and methods. So this is very apropos for me. Thing is, I can skip around Terraform much more easily (in my normal DevOps role). I'm wondering if Python whitespace isn't "right" for me somehow. EDIT: I'm definitely more used to Terrafo…

I'll do you one better. Learn to use search tooling. My neovim setup has ripgrep + a LSP on hand at all times. You can do the same things in VSCode. If you don't know where something is... search, search, search. 2000 lines or 2 million lines. Searching cuts the mental load because you find what you NEED at that moment. Need to know what refers to this function or variable.. there's a click or key sequence for that.…

    And yeah, Python is a bit of a trip to read, 
    the lack of braces makes it unique to parse,
    if you aren't used to it.
Huge thank you for this. Just hearing that validation is helpful :)

Good point about searching. I've been using vscode, which I use for Terraform a lot and jumping around with the outline view. I need to figure out if there's a way to search in vscode and edit code while keeping my hands on the keyboard.

Or use neovim, because my beloved Emacs is often slow.

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#83
post #18
post #15

Earlier quoted context omitted.

IMO syntax coloring lessens the cognitive load. What is "high level code". You are telling a machine what to do and to do it as fast as possible. Can you still make money telling a machine what to do but not as fast, depends but most likely. We code to ultimately make money in one form or another. Whether you keep that money or put it towards altruistic causes is independent of the shared commonality.

We should organise a study of our own: does syntax highlighting help or hinder and does the answer change based on your level of ADHD traits. Could be quite interesting!

It's not adhd specific but https://arxiv.org/abs/2008.06030

After reading this I implemented a code theme based primarily around typographic variation like weight rather than color. It uses only two colors (black and deep purple) in two weights and one italic each. I have pretty severe adhd and it's hard to judge but after using it for a few months I think this is better for me. Previously I had been using solarized light for nearly a decade for probably similar reasons.

Nano emacs was created by the author of that paper and its default themes are based on it, if you want to try it without committing to hand-rolling a theme. Personally I found that one too "light" (typographically, not color) but I also have relatively poor vision and like a large and heavy font.

https://github.com/rougier/nano-emacs

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#84
post #78

Earlier quoted context omitted.

I'll do you one better. Learn to use search tooling. My neovim setup has ripgrep + a LSP on hand at all times. You can do the same things in VSCode. If you don't know where something is... search, search, search. 2000 lines or 2 million lines. Searching cuts the mental load because you find what you NEED at that moment. Need to know what refers to this function or variable.. there's a click or key sequence for that.…

And yeah, Python is a bit of a trip to read, the lack of braces makes it unique to parse, if you aren't used to it. Huge thank you for this. Just hearing that validation is helpful :) Good point about searching. I've been using vscode, which I use for Terraform a lot and jumping around with the outline view. I need to figure out if there's a way to search in vscode and edit code while keeping my hands on the keyboard…

emacs is fine, use eglot.

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#85
post #30

When a problem has my attention, nothing can phase me. I get hyperfocused. Music, colors, the need to eat or sleep.. doesn't matter. All that gets put aside, the thing that has my attention has my full and undivided attention When something doesn't grab me, it takes enormous effort to maintain focus. It's not that other distractions are just so incredibly moving that they take my focus away. Rather, it's that it's ph…

"When something doesn't grab me, it takes enormous effort to maintain focus. It's not that other distractions are just so incredibly moving that they take my focus away. Rather, it's that it's physically difficult if not painful to focus on the thing that evades my attention, so by comparison, anything else is better."

Sounds like me trying to do geometry proofs homework in my freshman year of high school. I wanted to cry it felt so shitty forcing myself to do it. Eventually, I just stopped. Didn't help my teacher was insane and demanded we make copies of our work using carbon paper in the year of our lord 2005 and would grade you down if you turned in something off a copier/scanner. More tedium on top of dreadful tedium.

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#86

I have ADD and I'm struggling to write a more complex Python app right now. I'm hating myself for not being able to easily skip around the code as it gets more complex with more classes and methods. So this is very apropos for me. Thing is, I can skip around Terraform much more easily (in my normal DevOps role). I'm wondering if Python whitespace isn't "right" for me somehow. EDIT: I'm definitely more used to Terrafo…

As someone on more or less the maximum dose of adderall, here are the commandments as I have been able to divine (for myself):

  - Thou shalt use a language server.  Esp. goto-definition and find-refs, as they shall light your path through third party libs.

  - Thou shalt refactor like a crazy person.  No component should have less than 3 or more than 5 significant members.  A concise codebase makes for a calm mind.

  - Thou shalt use black formatting, and obey *all* recommendations from the linter.  Thus shall the structure of your code always explain it's function.

  - Thou shalt use mypy, as it is The Way.

  - Thou shalt follow the way of the Unix, creating isolated components that Do One Thing Well and define concrete APIs between them.  Thus shall you both tame the Spaghetti Monster and save bits of your work from the maw of the great destroyer This-Is-Too-Complex-So-Let's-Rewrite-The-Whole-Thing.

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#87
post #73

Earlier quoted context omitted.

> I half-jokingly tend to describe it to people as having a "small brain buffer" The good news is that "smallness of bran buffer" doesn't matter very much if you are trying to implement anything non-trivial. Most useful software is so complex that it's impossible to keep all of it in your head in any case. But we can divide and conquer complexity without holding too much in our limited human heads at any single momen…

I disagree. It really does matter if you have any afflictions that exacerbate it. It maybe doesn’t matter for relative performance versus other developers but it does matter for the individual. Having frequent context switches just to keep on top of your work can be really draining. How much it matters also really depends on the languages you’re working in. Taking a couple languages I use regularly for example: Pytho…

Modern python is no longer dynamic. Type checking is a big part of python now. Python also has ADTs which match it in power to rust.

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#88
post #18

Earlier quoted context omitted.

We should organise a study of our own: does syntax highlighting help or hinder and does the answer change based on your level of ADHD traits. Could be quite interesting!

It's not adhd specific but https://arxiv.org/abs/2008.06030 After reading this I implemented a code theme based primarily around typographic variation like weight rather than color. It uses only two colors (black and deep purple) in two weights and one italic each. I have pretty severe adhd and it's hard to judge but after using it for a few months I think this is better for me. Previously I had been using solarized…

I also immediately thought of Nano Emacs when I saw this article.

There is a short talk (6min) from EmacsConf 2021 where the creator of Nano Emacs talks about his reasons for designing a simpler interface, I found it really interesting:

https://emacsconf.org/2021/talks/design/

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#89

Is that why I find embedded programming the most fun? I have been diagnosed with ADHD and had a really bad score on working memory. With embedded programming, there are usually few to no libraries and all I have to do is write certain values into certain hardware register addresses to get stuff done. All the relevant information is always on my screens, allowing my working memory to be occupied only by the problem or…

What ide are you using? Also what are you using for the build? Cmake? Just curious. I found in general most ides don't work well for embedded. There's always some really annoying flaw.

Re: Effect of perceptual load on performance within IDE in people with ADHD symptoms

#90
post #73

Earlier quoted context omitted.

> I half-jokingly tend to describe it to people as having a "small brain buffer" The good news is that "smallness of bran buffer" doesn't matter very much if you are trying to implement anything non-trivial. Most useful software is so complex that it's impossible to keep all of it in your head in any case. But we can divide and conquer complexity without holding too much in our limited human heads at any single momen…

I disagree. It really does matter if you have any afflictions that exacerbate it. It maybe doesn’t matter for relative performance versus other developers but it does matter for the individual. Having frequent context switches just to keep on top of your work can be really draining. How much it matters also really depends on the languages you’re working in. Taking a couple languages I use regularly for example: Pytho…

At least for me, naturally having experienced needing to context switch often (getting disctracted or multithreading or refreshing forgotten context), I have gotten good at it not by remebering more but by storing the context in an easily retrievable place. I keep tabs open, I print out stuff even when breakpoint debugging, and I reduce my cognitive load by default. I remember where to look to find the data, because I don't remeber the data. I keep the structure in my head and remember only where the details live. like abstracting
Post reply on HN