Yeah this kind of stuff makes my blood boil. One can shame and belt their kid into compliance, and it might even get them (barely, only if they're lucky) all the way through university but holy shit the lifelong damage of self loathing and burnout and broken relationships it creates is im-fucking-measurable.
Taking a neurological imbalance and turning it into a morality thing is abuse. Even if unintentional. This is real. Parents look for simple answers like "give em the strap" but how is that less reductive than "give em the pill"?
To add a data point, I used to do Pomodoro timing (25+5 min) but now switched to 15 min timer with a loose 2-5 min break. It's still hard to actually pull out of hyper-focus/anxious perseveration sometimes, but the shorter timer period seems to match my task cadence better. And the non-timed break just vibes better because it doesn't feel like punishment then.
Reminded me of one of my favourite text-art/PETSCII adjacent creators I follow - Mrmo - who creates satisfying retro stuff like this custom font/tileset: https://mrmotarius.itch.io/mrmotext
One clever hack I've seen is Yield Prolog (https://yieldprolog.sourceforge.net/) which basically translates the querying/backtracking execution model into mainstream language syntax - such as JS, Python or C# - using the `yield` keyword and loops. Supports things like variable unification, too.
I'd say for 95% of data fetches https://github.com/slorber/react-async-hook works really well without needing generator syntax or explicit promise cancellation boilerplate. I'm not the author but a satisfied user.
The fact that choosing to use Uber represents a certain amount of trust in the driver (basic background check, identity information, etc), makes it more than lead generator or transparent broker.
Law as an industry is pretty dysfunctional. Plenty of data governance issues, losing track of documents, etc. A lot is at stake there, for sure, but that's actually the thing that process helps with - reliability and safety. And law is very resistant to incorporating that.
I had some success with https://www.beeminder.com/ in my short time of using it so far. Essentially, it moves items from "important + not urgent" quadrant to "not important + urgent" one: by dinging your card $X dollars if you don't comply.
However, I also had to shift my mindset towards trying to progress via small inconsequential chunks, rather than trying to "fix everything". E.g. the idea is to just show up to the gym - not exercise - but if latter happens, then sure, why not (and it usually does). I think it helps snap out of the failure avoidance mode.
This is a really neat looking project (and the GH readme references the original HN discussion). For folks who are generally into TTY UIs and dashboards, I also want to point out the Blessed terminal rendering lib and its ecosystem (which even includes a React bridge!):
Rules like DRY or keeping line counts low are based on surface metrics and definitely lead people to over-fit the model based on incomplete information.
Underlying principle of maintainable code is "simply" that it is a concise and flexible expression of knowledge. The "simply" part is in quotation marks because, of course, it takes a good amount of self-awareness and meta-consideration to understand why some ways to express knowledge are better than others. There is also a limit to how "perfect" it can get, because it really depends on the audience too.
This is also why it's OK to let it slide sometimes and move on to more interesting topics - there are diminishing returns on splitting hairs, once broad strokes of good encapsulation and basic readability are applied.
Taking a neurological imbalance and turning it into a morality thing is abuse. Even if unintentional. This is real. Parents look for simple answers like "give em the strap" but how is that less reductive than "give em the pill"?