2,761 karma · joined November 22, 2014
Publish a PR that has the word "fix" in the description, get it approved, release it to prod... you are the hero, took action, will get promoted, etc.
When it turns out that the "fix" makes everything worse... well, that's everyone _else's_ problem, like whichever users run into that change blowing up, whoever is on support that day, whoever has to undo it.
The old... "concentrated benefits and diffuse costs" problem.
Disallow eyeglasses. Abolish money.
Any other good ideas?
It kind of makes sense, if you're using VMWare, your choice is to pay a ridiculous but fixed/certain sum, or embark on a risky migration project that probably involves hiring a bunch of people, could take longer than expected, might fail, etc.
Now, it's all just online drivel that never turns into anything else.
I do take your point though. I've always found it quite surprising just how universal various arbitrary/western things are like, as you say, the western gregorian calendar, seconds/minutes/hours, SI units for measurement. In a world with so many unintelligible languages and disagreements, you'd think there would be more folks out there doing, I dunno, a 10 day week, or some non-hour/minute system, etc.
* regularly generating AI-slop code changes that nearly work, and then trying to hand over to someone else for "completion". this is often a pretty terrible experience, and more work than just having a single person take ownershiop of the _outcome_ - i.e. understand the need, write the code, test it, deliver, make sure it works... generally the coding was never the hard part, and its harder to start with broken code than just from scratch.
* sporadically sharing AI analysis of bugs/problems/crashes/troubleshooting type stuff. again, often nearly correct... but sometimes more work finding the incorrect aspect than starting from scratch.
* lots of AI flavored text and presentations. you know the kind, text where every bullet point is a different emoticon, and AI-generated graphics instead of random, but real photos stolen from the internet.
* lots of AI for code review, either of changes (PRs), or just wholesale analysis of code bases to find problems and automatically create tickets for people to "fix". often , the analysis is not "wrong", and potentially very good... the problem is that it finds "problems" in utilities that don't run in production, historical code just stored for archival purposes, anything and everything... it has no concept of "this is live internet-facing code" vs "this is an ad-hoc utility that does not need to be bulletproof". the volume of work created by AI in this space is truly impressive.
* lots of AI "recipes" for things that could have/should have been check lists / processes / shell scripts / python utilities / actual software. instead of something actually fast, deterministic, and re-usable, the "recipe" now mostly works, but takes several minutes and does slightly different things each time that cannot really be predicted or reasoned about.
Going through TSA is not a condition of using a government airport, it's just what happens if you use an airline.
In any case, being "government property" doesn't mean "completely free of regulation".
It turns out there's a vast universe out there involving physical products, real estate, agriculture, plumbing, sanitation, health care...
The main thing people seem to find difficult to comprehend is that planes owned by airlines are the private property of the airline. You're pretty much welcome to buy your own plane, and use it to carry anyone and anything you want, but if you want to get on someone else's airplane, no so much.
These are all "semi-durable" items that get a lot of wear and tear and inevitably need to be replaced every year or two. There really are definite quality differences, and you don't want cheap and nasty, but there's also no point overpaying because anything you get will need replacement in the not too distant future, and it's not like any of these items are status symbols.
There are often a lot of marketing hijinks in this space, like "Ralph Lauren" bedding or "Nautica" towels or whatever, where it is clear that the brand is just licensed by some no-name bedding company for product differentiation, instead of developing their own brand known for quality.
There are (very few) brands that mostly stick to a good, pretty consistent middle-market level of quality/consistency. e.g. people have mentioned Levis for jeans, LL Bean is pretty good for bedding & clothing and basically have a modest range pretty consistent / high quality stuff for shirts, trousers, etc. Crate & Barrel, Marimekko, etc. are also good usually.
I do sometimes wonder if a website/store/brand for consistently good, go-to staples could work. Something like Muji or Uniqlo, or costco "kirkland", or "amazon basics", where the store/house brand is consistently good over time, and there are few other options. I imagine it would be hard to really offer the same consistency over time with shifting supply chains/manufacturers etc, but you could try, or where that's not possible have some "transition"/"upgrade path" like our old model A sucks are no longer available, the closest new options are B, which is slightly thicker, or C, which is slightly longer.
Alternatively, there's NYT wirecutter or Consumer Reports and such that basically just tell you the right few options and cut through all the gimicky chaff.
I guess this is basically what we lost when department stores went away - a curated, modest selection of go-to items at your price point has now been replaced with millions of options, 98% of which are awful.
Lots of criminals have been identified by reanalyzing old DNA samples using data and genealogical techniques that weren't possible at the time the samples were left.
I find the current expectations around consumer "apps" to be totally infantile in comparison, where everything is now a single-purpose "app" that does exactly one thing when you push a button, and if you want something even a tiny bit different.. you can't, and that even basic things like files and settings are no longer accessible.
re #3 - no, "jack of all trades" tends to be a career trap / dead end. companies hire for specific skill sets.
There is an enshittification cycle at work. The web used to be good, predominately text, and useful, 25 years ago. Then... slowly... we added javascript, then AJAX, CSS, flash, interstitials, popups, marketing, social media, algorithms, doomscrolling... gradually but surely turn it into the unusable cesspool that it is today.
Now we have AI! I think a big part of its utility is that it gets us back to text/information, and lets us bypass all the "beautiful" design / nonsense on the material it is trained on.
However, AI is just beginning its enshittification cycle - now that it has a critical mass of users, it is an irresistible target to start slowly adding ads, misinformation, conspiracy theories, and whatever else people can dream up, until it also becomes unusable and the cycle repeats.
A lot of people seem to think the way to make things work better and faster is to add elaborate caching layers and layers and retries and GPUs and multi threading and...
I find the opposite tends to be true. Make things fast and reliable by doing as little as possible. If an API is flakey, make it not flakey, don't cache the result and add a retry loop.
If the code is reasonable and diligently created, be it with AI or not, I will provide a diligent and timely review.
If the code is totally unreadable AI slop that does not appear to have been read by the person who created the PR, I will use AI to review the code and share the output, without reading it.
If the code is of middling quality, I will find one or two token areas that could use improvement, and suggest a better alternative like "How about doing this with 2 syscalls instead of 4?" or "How about refactoring this duplicated code into a method, and calling the method?", or whatever. If the person responds intelligently, I will proceed to review the rest of the code and work together. If the person responds by sharing their AI's justification, I will politely disengage.
Occasionally, I will share remarks like "I'm noticing a lot of churn here - if this is a bugfix/patch for a prod issue, I'd expect to see a PR with the smallest delta that fixes the problem" or "I'm not clear on whether this approach is optimized for runtime efficiency, maintainability, resilience, or something else - could you share the outcome you're looking to achieve with this change?".
Looking back, it was a bit reminiscent of the bitcoin / ai bubbles, where every company desperately rushes to jump on the bandwagon.
I've used kdevelop a bit lately, it's ok.