Hacker News new | past | comments | ask | show | jobs | submit login

>it is easy for me to flounder when debugging if I feel unable to visually see or mentally hold the entire problem in my head at once.

So much this. Fuck OOP-inheritance-thinking for spreading implementations to so many files.




I also find this splitting-out that happens with OOP extremely unhelpful. I'd never considered that problem being exacerbated by ADHD, but it makes perfect sense.


The opposite to this: sum types (enums with values).

You have all the logic in one place, and if you forget to handle a case in most languages you're forced by the compiler to be explicit.


In my first job after college, we had codebases that took both approaches: an OPP-y Java codebase with lots of inheritance and some FP-oriented codebases that used Scala case classes. As a novice, I definitely found the case class handling easier to browse and understand at the time.

The OOP stuff can be made a little easier to work with if your editor can show a lot of buffers at once and makes it easy to search through buffers. Trying to just flip through all of those files with tabs would have been really hard for me.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: