I’ve found utility in removing code.
I feel that doing the job with the fewest lines of code, is best.
I also believe in focused/pure scope. If I write a type or API to do a job, then it should do that job, and only that job. If I want to add functionality that is out-of-scope, then I’ll often write another type, instead of adding it to the existing one. Making this type of decision is always fraught.
But, like in all things, it depends. Sometimes, reducing the overhead of things like setup and testing is a good reason to not introduce a whole new resource, but I should make it a point to document the reason for the incongruity.
This is especially true, when designing user interface. I’ve found that, usually (not all the time, though), less is more.
Josef Albers is known (amongst other things), for the quote “Sometimes, in design, one plus one is three or more.”.
I think when somebody trains code golfing LLMs with reinforcement learning they will inadvertently be smarter
> removing code
Cue link to Negative 2,000 LoC [0]:
He recently was working on optimizing Quickdraw's region calculation
machinery, and had completely rewritten the region engine using a simpler,
more general algorithm which, after some tweaking, made region operations
almost six times faster. As a by-product, the rewrite also saved around 2,000
lines of code.
He was just putting the finishing touches on the optimization when it was
time to fill out the management form for the first time. When he got to the
lines of code part, he thought about it for a second, and then wrote in the
number: -2000.
0. https://www.folklore.org/Negative_2000_Lines_Of_Code.html
> I’ve found utility in removing code.
> I feel that doing the job with the fewest lines of code, is best.
And that is one of my gripes with AI models and code. They are so, so verbose. It's a nightmare.
"Why don't you let AI implement that small feature, it will be faster.", they would ask.
Well, because if do, it will completely pollute my carefully crafted interface that I kept small, simple and understandable for easier maintenance and extension.
And yes, I might spare a few hours by having _it_ work for me. But then I need to spend a more hours to clean-up the code noise and complexification.
Sorry for having polluted the conversation by bringing AI in, when for once, ironically, it was not about AI.. I needed to vent, while fully approving of your take.