Vinyls are sometimes preferred because people like white noise, same as tube amps.
Granted some CDs are mastered like garbage, and that led to some bad press for awhile. But you can master a CD so that it sounds exactly, as in mathematically exactly, as a vinyl record, if so desired.
It is also possible to make a digital amplifier that sounds exactly identical to vacuum tubes.
Humans have well and mastered the art of shaping sound waveforms however we want.
I mean I've always thought the kinetic experience of vinyl was the point: my childhood memory is the excitement and anticipation of carefully putting the needle on the lead in and hearing the subtle pops and scratches that meant it was about to start.
The whole physical enterprise has a narrative and anticipation to it.
Not to mention the wider context of starting off by opening a beautifully designed record sleeve, and the chances people choosing to listening to vinyl are doing so on a beautifully engineered soundsystem that cost as much as a car when it was released 50 years ago, or a turntable setup that's designed for them to interact with.
You could add all of that to CD. Bigger packaging for "audiophile pressings", a play ritual, extra distortion and compression, especially in the low end, limited dynamic ranges, minimal stereo separation, even a little randomness so each listening experiences was slightly different.
This is consumer narcissism. It's the driver behind Veblen signalling - the principle that a combination of collecting physical objects. nostalgia, and the elevated taste and disposable wealth required to create a unique shrine to the superior self.
Buying houses, watches, cars, vinyl, yachts, jets, and politicians are all the same syndrome.
> carefully putting the needle on the lead in and hearing the subtle pops and scratches
Led Zeppelin III actually used that lead in as part of the music experience, and the original CD pressing didn't capture it. I've heard CD pressings (even the name remains from vinyl) that do capture it, I don't know when that started.
The name comes from the CDs being manufactured by pressing into a master mold to create the pits. Replicated (mass manufactured) audio CDs are pressed not written with a laser like duplicated ones (CD-R/RW).
> This applies to almost everyone working on SaaS;
The original idea behind SaaS is to align the incentives of the customers and the software company.
Historically software companies made money on selling upgrades. This meant bug fixes were not a priority, and security fixes were something companies got shamed into doing.
SaaS fixes that incentive problem. With reliable ongoing revenue a company can keep software patched and updated and doesn't have to cram a bunch of new shiny marketable features in just to make a huge sale every 3 or 4 years, while engineers try and add whatever bug fixes they can after the shiny new features have been polished off.
It also means software companies don't have boom or bust cycles with hiring. Funding stays consistent, and so does staffing. It makes the financials much easier to manage. Companies used to hire a bunch of temp employees in the run up to a release.
Ongoing release cycles also led to better software engineering practices. More automated tests, reproducible builds, better version control systems, and a lot more things that we take for granted now days.
There are obvious downsides to SaaS as well, but the original idea was good.
I grew up in a neighborhood that had a drug den next to the 7-11 that all the kids went to buy slurpees at.
The dealers didn't bother the kids, and the kids knew not to go into that yard.
There were plenty of street walkers on a particular stretch of streets. They weren't talking to anyone who wasn't looking to buy.
Of course I had the advantage of being a broke kid at the time, so I wasn't a mark for crime. I was just another neighborhood kid who was walking through. It was a working class neighborhood with a few sketchy parts. There was the occasional shooting or drive by, and property theft was common (every bike I had as a kid was stolen from me at some point), but it wasn't unsafe in regards to violence.
I almost impaled myself on a rebar pole while jumping my bike over hills at an abandoned construction site. That was the most dangerous thing that ever happened to me growing up there. (well aside from the time I almost died falling into a sink hole and managed to grab onto a nearby tree root and pull myself up in time, but that was in the middle of nearby woods, so not gonna blame that on societal problems!)
> Your kids are hardly free-range. Let me guess, there's no way for them to actually meaningfully leave the area (no train, bus, etc)? It's like dumping kids on a 5 acre farm and saying they can do whatever they want. hardly free-range in the way described in the article.
This depends on the area. In more urban areas exploring can be done on foot or bike. I live in Seattle, which has some fantastic bike trails that can go on and on for miles and cross into multiple adjacent cities.
In some cities parents are fighting to let their kids play in their own front yard unsupervised. Not an issue in Seattle, where kids are required to walk to and from their neighborhood school by the school district.
But denser areas also have lots of stuff to do within the neighborhood. Within 2 or so miles there is a massive shopping area, multiple bakeries, tons of restaurants, a slew of parks (Seattle has an obscene density of parks, it is one of the best aspects of living here), a lakefront beach (lots of bodies of water in Seattle), 2 swimming pools, tennis courts, and a bunch of other stuff I am probably forgetting right now.
So define free range. If a gaggle of kids travel to the local grocery store together to buy lemons and sugar, then self organize selling lemonade to people passing by on a hot day, is that free range? I'd argue yes.
Whenever these conversations come up, I've always noted that they don't really seem to apply to the PNW. My neighborhood (in Seattle proper) has lots of kids running around as well. Neighborhood kids will stop by to pickup my son and whisk him off to some adventure down the block. Getting your kid back involves listening for the correct sounding screams of joy as you walk around and figure out whose yard they are in.
Seattle also has a pretty decent policy around the radius for kids walking to school, so there are always gaggles of kids walking together to and from school for elementary and even some middle schoolers. The high schools are spaced far enough out that kids use buses at that age.
My coworkers in lower CoL areas seem mystified why I'm paying an arm and a leg to live in Seattle to raise a kid. And yeah there are some serious downsides (20-30k a year daycare, restaurants are too expensive to go out to often, even take out is insane), but there are kids playing soccer in the streets after school and kids setting up lemonade stands in the park.
That's what I'm paying for - A city that is built for people to live in, not just for cars to drive around.
That's why I'm quite happy to live in Vancouver BC as well. No kids (and I'll never own a home), but if I did, I can't think of a better place to raise them compared to other car-dependent hellscapes where nobody trusts each other.
It is a function of road design. If the neighborhood is just houses with all the places to go located on 40mph+ roads (meaning people are driving their high grill head height SUVs and pickup trucks at 50mph+ while looking at their phones), possibly without sidewalks, I’m not letting my kids go out there alone until they are teenagers.
Also, places are just too far due to the aforementioned 6 lane roads and 100ft+ wide intersections. And crossing those intersections on foot, in daytime, is daunting as an adult.
China already operates like this. Low cost specialized models are the name of the game. Cheaper to train, easy to deploy.
The US has a problem of too much money leading to wasteful spending.
If we go back to the 80s/90s, remember OS/2 vs Windows. OS/2 had more resources, more money behind it, more developers, and they built a bigger system that took more resources to run.
Mac vs Lisa. Mac team had constraints, Lisa team didn't.
Though I do agree with you, I just came back from a trip to China (Shanghai more specifically) and while attending a couple AI events, the overwhelming majority of people there were using VPNs to access Claude code and codex :-/
On the Mac vs Lisa team, I generally agree but wasn't there a strong tension on budget vs revenue on Mac vs Apple II? And that Apple II had even more constrained budget per machine sold which led to the conflict between Mac and Apple II teams. (Apple II team: "We bring in all the revenue+profit, we offer color monitors, we serve businesses and schools at scale. Meanwhile, Steve's Mac pirate ship is a money pit that also mocks us as the boring Navy establishment when we are all one company!")
By the logic of constraints (on a unit basis), Apple II should have continued to dominate Mac sales through the early 90s but the opposite happened.
You can fine-tune a model, but there are also smaller models fine-tuned for specific work like structured output and tool calling. You can build automated workflows that are largely deterministic and only slot in these models where you specifically need an LLM to do a bit of inference. If frontier models are a sledgehammer, this approach is the scalpel.
A common example would be that people are moving tasks from their OpenClaw setup off of expensive Anthropic APIs onto cheaper models for simple tasks like tagging emails, summarizing articles, etc.
Combined with memory systems, internal APIs, or just good documentation, a lot of tasks don't actually require much compute.
It has been a very bad bet that hardware will not evolve to exceed the performance requirements of today's software tomorrow, just as it is a bad bet that tomorrow someone will rewrite today's software to be slower.
Eh, but then as hardware evolves, the software will also follow suit. We’ve had an explosion of compute performance and yet software is crawling for the same tasks we did a decade ago.
Better hardware ensures that software that is “finished” today will run at acceptable levels of performance in the future, and nothing more.
I think we won’t see software performance improve until real constraints are put on the teams writing it and leaders who prioritize performance as a North Star for their product roadmap. Good luck selling that to VCs though.
Open Weight models are 6 months to a year behind SOTA. If you were building a company a year ago based on what AI could do then, you can build a company today with models that run locally on a user's computer. Yes that may mean requiring your customers to buy Macbooks or desktops with Nvidia GPUs, but if your product actually improves productivity by any reasonable amount, that purchase cost is quickly made up for.
I'll argue that for anything short of full computer control or writing code, the latest Qwen model will do fine. Heck you can get a customer service voice chat bot running in 8GB of VRAM + a couple gigs more for the ASR and TTS engine, and it'll be more powerful than the hundreds of millions spent on chat bots that were powered by GPT 4.x.
This is like arguing the age of personal computing was over because there weren't enough mainframes for people to telnet into.
It misses the point. Yes deployment and management of personal PCs was a lot harder than dumb terminal + mainframe, but the future was obvious.
I've seen this claimed, but I'm not sure it's been true for my use cases? I should try a more involved analysis but so far open models seem much less even in their skills. I think this makes sense if a lot of them are built based on distillations of larger models. It seems likely that with task specific fine tuning this is true?
> I've seen this claimed, but I'm not sure it's been true for my use cases?
I'd be surprised if it isn't true for your use cases. If you give GLM-5.1 and Optus 4.6 the same coding task, they will both produce code that passes all the tests. In both cases the code will be crap, as no model I've seen produces good code. GLM-5.1 is actually slightly better at following instructions exactly than Optus 4.6 (but maybe not 4.7 - as that's an area they addressed).
I've asked GLM-5.1 and Opus 4.6 to find a bug caused by a subtle race condition (the race condition leads to a number being 15172580 instead of 15172579 after about 3 months of CPU time). Both found it, in a similar amount of time. Several senior engineers had stared at the code for literally days and didn't find it.
There is no doubt the models do vary in performance at various tasks, but we are talking the difference between Ferrari vs Mercedes in F1. While the differences are undeniable, this isn't the F1. Things take a year to change there. The performance of the models from Anthropic and OpenAI literally change day by day, often not due to the model itself but because of the horsepower those companies choose to give them on the day, or them tweaking their own system prompts. You can find no end of posts here from people screaming in frustration the thing that worked yesterday doesn't work today, or suddenly they find themselves running out of tokens, or their favoured tool is blocked. It's not at all obvious the differences between the open-source models and the proprietary ones are worse than those day to day ones the proprietary companies inflict on us.
If you don't know C, in older versions that can be a catastrophic failure. (The issue is so serious in modern C `free(NULL)` is a no-op.) If it's difficult to get a `FOO == NULL` without extensive mocking (this is often the case) most programmers won't do it, so it won't be caught by unit tests. The LLMs almost never get unit test coverage up high enough to catch issues like this without heavy prompting.
But that's the least of it. The models (all of them) are absolutely hopeless at DRY'ing out the code, and when they do turn it into spaghetti because they seem almost oblivious to isolation boundaries, even when they are spelt out to them.
None of this is a problem if you are vibe coding, but you can only do that when you're targeting a pretty low quality level. That's entirely appropriate in some cases of course, but when it isn't you need heavy reviews from skilled programmers. No senior engineer is going to stomach the repeated stretches of almost the "same but not quite" code they churn out.
You don't have to take my word for it. Try asking Google "do llm's produce verbose code".
C is fundamentally a bad target for LLMs. Humans get C wrong all the time, so we can not hope the nascent LLM, which has been trained on 95% code that does automatic memory management, to excel here.
I always found myself writing verbose copypasta code first, then compress it down based on the emerging commonalities. I think doing it the other way around is likely to lead to a worse design. Can you not tell the LLM to do the same? Honest question.
> I always found myself writing verbose copypasta code first, then compress it down based on the emerging commonalities. I think doing it the other way around is likely to lead to a worse design.
I do pretty much the same thing, which is to say I "write code using a brain dump", "look for commonalities that tickle the neurons", then "refactor". Lather, rinse, and repeat until I'm happy.
> Can you not tell the LLM to do the same?
You can tell them until you're blue in the face. They ignore you.
I'm sure this is a temporary phase. Once they solve the problem, coding will suffer the same fate as blacksmiths making nails. [0] To solve it they need to satisfy two conflicting goals - DRY the code out, while keeping interconnections between modules to a minimum. That isn't easy. In fact it's so hard people who do it well and can do it across scales are called senior software engineers. Once models master that trick, they won't be needed any more.
By "they" I mean "me".
[0] Blacksmiths could produce 1,000 or so a day, but it must have been a mind-numbing day even if it paid the bills. Then automation came along, and produced them at over a nail per second.
a) The agent doesn't need to read the implementation of anything - you can stuff the entire projects headers into the context and the LLM can have a better birds-eye view of what is there and what is not, and what goes where, etc.
and
b) Enforcing Parse, don't Validate using opaque types - the LLM writing a function that uses a user-defined composite datatype has no knowledge of the implementation, because it read only headers.
`free(NULL)` is harmless in C89 onwards. As I said, programmers freeing NULL caused so many issues they changed the API. It doesn't help that `malloc(0)` returns NULL on some platforms.
If you are writing code for an embedded platform with some random C compiler, all bets on what `free(NULL)` does are off. That means a cautious C programmer who doesn't know who will be using their code never allows NULL to be passed to `free()`.
In general, most good C programmers are good because they suffer a sort of PTSD from the injuries the language has inflicted on them in the past. If they aren't avoiding passing NULL to `free()`, they haven't suffered long enough to be good.
> That means a cautious C programmer who doesn't know who will be using their code never allows NULL to be passed to `free()`.
If your compiler chokes on `free(NULL)` you have bigger problems that no LLM (or human) can solve for you: you are using a compiler that was last maintained in the 80s!
If your C compiler doesn't adhere to the very first C standard published, the problem is not the quality of the code that is written.
> If they aren't avoiding passing NULL to `free()`, they haven't suffered long enough to be good.
I dunno; I've "suffered" since the mid-90s, and I will free NULL, because it is legal in the standard, and because I have not come across a compiler that does the wrong thing on `free(NULL)`.
So what would be the best practice in a situation like that? I would (naively?) imagine that a null pointer would mostly result from a malloc() or some other parts of the program failing, in which case would you not expect to see errors elsewhere?
> imagine that a null pointer would mostly result from a malloc() or some other parts of the program failing, in which case would you not expect to see errors elsewhere?
Oh yes, you probably will see errors elsewhere. If you are lucky it will happen immediately. But often enough millions of executed instructions later, in some unrelated routine that had its memory smashed. It's not "fun" figuring out what happened. It could be nothing - bit flips are a thing, and once you get the error rate low enough the frequency of bit flips and bugs starts to converge. You could waste days of your time chasing an alpha particle.
I saw the author of curl post some of this code here a while back. I immediately recognised the symptoms. Things like:
if (NULL == foo) { ... }
Every 2nd line was code like that. If you are wondering, he wrote `(NULL == foo)` in case he dropped an `=`, so it became `(NULL = foo)`. The second version is a syntax error, whereas `(foo = NULL)` is a runtime disaster. Most of it was unjustified, but he could not help himself. After years of dealing with C, he wrote code defensively - even if it wasn't needed. C is so fast and the compilers so good the coding style imposes little overhead.
Rust is popular because it gives you a similar result to C, but you don't need to have been beaten by 10 years of pain in order to produce safe Rust code. Sadly, it has other issues. Despite them, it's still the best C we have right now.
Write code? No. Use frontier models. They are subsidized and amazing and they get noticably better ever few months.
Literally anything else? Smaller models are fine. Classifiers, sentiment analysis, editing blog posts, tool calling, whatever. They go can through documents and extract information, summarize, etc. When making a voice chat system awhile back I used a cheap open weight model and just asked it "is the user done speaking yet" by passing transcripts of what had been spoken so far, and this was 2 years ago and a crappy cheap low weight model. Be creative.
I wouldn't trust them to do math, but you can tool call out to a calculator for that.
They are perfectly fine at holding conversations. Their weights aren't large enough to have every book ever written contained in them, or the details of every movie ever made, but unless you need that depth and breadth of knowledge, you'll be fine.
I just mean is the claim that the open source models where the closed models were 12 to 6 months ago true? They do seem to be for some specific tasks which is cool, but they seem even more uneven in skills than the frontier model. They're definitely useful tools, but I'm not sure if they're a match for frontier models from a year ago?
Frontier models from a year ago had issues with consistent tool calling, instruction following was pretty good but could still go off the rails from time to time.
Open weight models have those same issues. They are otherwise fine.
You can hook them up to a vector DB and build a RAG system. They can answer simple questions and converse back and forth. They have thinking modes that solve more complex problems.
They aren't going to discover new math theorems but they'll control a smart home and manage your calendar.
The mainframe/PC analogy is spot on. And the hardware floor keeps dropping - you can grab a mini PC with 32-64GB RAM for a few hundred bucks and run surprisingly capable quantized models locally. Something like https://terminalbytes.com/best-mini-pcs-for-home-lab-2025/ shows the kind of hardware that's now available at consumer prices. The "scarcity" framing only makes sense if you assume everyone needs frontier-tier models for everything.
I mean table stakes stuff, why isn't an agent going through all my slack channels and giving me a morning summary of what I should be paying attention to? Why aren't all those meeting transcriptions being joined together into something actually useful? I should be given pre-meeting prep notes about what was discussed last time and who had what to do items assigned. Basic stuff that is already possible but that no one is doing.
I swear none of the AI companies have any sense of human centric design.
> pull relevant context from Slack, Notion, and your codebase, then provide you with a prioritized list of actions.
This is an improvement, but it isn't the central focus. It should be more than just on a single work item basis, more than on just code.
If we are going to be managing swarms of AI agents going forward, attention becomes our most valuable resource. AI should be laser focused on helping us decide where to be focused.
THANK YOU. I keep thinking this as well. I'm rolling my own skills to actually make my job easier, which is all about gathering, surfacing, and synthesizing information so I can make quick informed decisions. I feel like nobody is thinking this way and it's bizarre.
I am completely convinced this is because of a gap in the intersection of knowledge. Somehow the people making the best agents are focused on extending the capabilities of the models, meanwhile the people who could best make an application layer because just think of LLM's as a chat prompt.
We need a product person, maybe with a turtle neck sweater and an horrid work-life attitude, to fix this up, instead of a weirdly philosophic basilisk fearing idealist.
Disclaimer I work at Zapier, but we're doing a ton of this. I have an agent that runs every morning and creates prep documents for my calls. Then a separate one that runs at the end of every week to give me feedback
In the full blog post I actually go into more detail about automatically creating a knowledge graph of what is being worked on throughout the whole company. There are some really powerful transformative efforts that can be accomplished right now, but that no one is doing.
Basic things like detecting common pain points, to automatically figuring out who is the SME for a topic. AIs are really good at categorizations and tagging, heck even before modern LLMs this is something ML could do.
But instead we have AI driven code reviews.
Code Reviews are rarely the blocker for productivity! As an industry, we need to stop automating the easy stuff and start helping people accomplish the hard stuff!
Agreed. It is ironic that in the AI race, the real differentiation may not come from how smart the model is, but from who builds the best application layer on top of it. And that application layer is built with the same kind of software these models are supposed to commoditize.
Developers built themselves really good OSes for doing developer things. Actually using it to do things was secondary.
Want to run a web server? Awesome choice. Want to write networking code? Great. Setup a reliable DB with automated backups? Easy peasy.
Want a stable desktop environment? Well after almost 30 years we just about have one. Kind of. It isn't consistent and I need to have a post it note on my monitor with the command to restart plasma shell, but things kind of work.
Current AI tools are so damn focused on building developer experiences, everything else is secondary. I get it, developers know how to fix developer pain points, and it monitizes well.
But holy shit. Other things are possible. Someone please do them. Or hell give me a 20 or 30 million and I'll do it.
But just.... The obvious is sitting out there for anyone who has spent 10 minutes not being just a developer.
I have been annoyed for some time that there doesn't seem to be any mechanism in society by which people who cannot sing are taught en masse how to sing. We spend so much time in school music classes "singing" with no actual instructions as to how to do it correctly.
I genuinely wonder how some people are able to sing properly while others cannot. Those who can sing, where did they learn it at?
No, as the other comment mentioned. But I’ve heard of more than a few customers running their own “server excel workflow” where they have an instances of excel.exe running a VBA macro that talks to a web server (and does some processing).
While working at MS I remember someone in the office team saying that the original version of Excel online spun to the actual Excel backend and had it output HTML instead of the usual win32 UI. Was I misinformed by chance?
Excel Online was a component of WAC. It was an ASP.NET (and C++???) web application that used OAuth between SharePoint Server and Exchange Server.
So I mean yes, you viewed Excel docs through a webpage just like you do today via ODSP or OneDrive consumer. The backend is completely different in the cloud service, though.
Granted some CDs are mastered like garbage, and that led to some bad press for awhile. But you can master a CD so that it sounds exactly, as in mathematically exactly, as a vinyl record, if so desired.
It is also possible to make a digital amplifier that sounds exactly identical to vacuum tubes.
Humans have well and mastered the art of shaping sound waveforms however we want.
reply