The problem is, most of us are not psychologists and don't know enough to accurately diagnose somebody. But we can definitely see when someone is acting crazy.
I used to have a job that involved swinging a hammer over and over again. I got pretty good at it.
Then the boss-man bought a minty-new Senco 650 air nailer for me to use.
At first, I could take it or leave it. After all, I was proud at the skill I gained in driving nails with a hammer, and the ways my muscles seemed to automatically steer the nail straight into a board without missing a beat even if things started going sideways.
But the air nailer sure was faster. And it only had one job, but it did that job fantastically. I started using it more and more.
Things very quickly got to the point where I was organizing my work to maximize my use of that new tool, which is to say: The tool began to have a role in controlling my actions.
It even began to control my emotions; I felt better and more accomplished after a day of using that tool than I did when I couldn't.
And this control accelerated: When the tool didn't work today or we ran out of the special coils of nails it used, then my focus didn't shift back to swinging a hammer. It instead shifted towards fixing the tool or finding more nails to feed into it.
The more I used it, the more powerless I was to avoid it. As time moved on, I got worse at swinging a hammer and increasingly dependent upon that air nailer.
(That's a true story. If I understand what addiction is, then I think I just described an addiction to an air nailer.)
I'm gonna disagree, but before I do: love this story, thanks for typing it up.
I guess my point is: tools are like this. A moldboard plow was better than a straight plow, and therefore...what, people became addicted to them? I'm addicted to grocery stores and dollars as a means to acquire the food I need to survive? Hey, even your hand nailing pushed out the mortise-and-tenon people! Talk about sacrificing craft for convenience...
I don't think "addiction" is the right word to try and describe what's going on there.
Any new tech that ends up "winning" (being adopted by the masses) is going to do so because it becomes indispensable, and when it wins it usually displaces some sort of craft that required skills that were cultivated through struggle, and will be missed by those who have those skills and are no longer differentiated by them.
Thinking out loud: when is the description of "addiction" more accurate? It's when the thing is a vice: it doesn't provide enough value to justify its costs. We tolerate caffeine addictions because caffeine is cheap, doesn't have a ton of health drawbacks, stuff like coffee and pop taste good, and we get productivity gains. Cigarettes are less tolerated because the health drawbacks are more pronounced and the smoke gets everywhere. Social media gets called an addiction because people see the hours lost to doomscrolling as worse than the human connections that are made. And so on.
So, back to LLMs, I guess the question is more about how the thing is being used! I wouldn't apologize for feeling addicted to a machine that writes my unit tests for me; but I'd feel bad if I started having an emotional affair with one...
There's definitely some form of addictive behaviour going on in a similar vein to poker/slot machines. There are studies and anecdotes that I've heard where the most thrill and reward comes not from the wins at gambling but from the near-wins, those close calls and near misses. It seems very similar to the kind of output that an LLM generates where it looks like what you want but is not quite there so you try to fix it by going again.
There's lots of very healthy addictions. There are also lots of very unhealthy addictions. Dental hygiene addiction? Good -- if kept in check (it can go too far). Heroin addiction? Bad -- always bad!
These things are all included under the addiction umbrella.
I was addicted to using that air nailer. The boss might tell me to use my hammer instead when it was out of service and to just get the work done, but when that happened I'd start fixing it anyway as soon as he wasn't looking... like a drug addict who is working towards getting his next hit at every opportunity.
I'm not compelled to feel bad about having been addicted to using that tool. I did a lot of good work with it. It was a good addiction to have. I fed this addiction 5 days a week for years.
Anyway, yes: LLMs. I use the shit out of LLM tools. I understand what they are, and what they are not -- I'm not psychotic in this way at all. I spend a lot of time correcting their errors so whatever I'm working on can move forward.
And after several decades of trying, LLMs allow me to finally accept that I'm just terrible at writing code. I used to feel inferior about this. Every little project would get completely hung up on something that many, many other folks would have no trouble overcoming.
Like: Somewhere in a box in my basement I even have the original TI MSP430 LaunchPad kit that I bought at launch 16 years ago with focused intention to get a very specific thing done with it. I never got it done. As time moved on, I bought ESP dev boards and Pi Picos hoping that things would finally let me finish my one simple little project, but I always got hung up whether in C or C++ or uPython or whatever. Different IDEs, no IDEs, different build processes, whatever. The process always stalled and died. Every. Single. Time.
Again, I suck at code. Being able to finally accept this has been richly rewarding.
With an ESP32 board, Codex, a clear vision of what I wanted, and a fragile dysfunctional draft written in uPython that didn't come close to actually working (despite years of effort), I got that thing working properly and cleanly in one single evening -- in C++.
16 years of effort resolved all at once, just like that. With guidance, the bot even wrote its own tests that worked with real-world feedback from the hardware the ESP32 was driving.
That all felt great. It was a tremendous relief.
I spent part of another evening making it fancy with a web interface for tuning and monitoring. I transferred the circuit over to perfboard and installed it in the place I've wanted it for 16 years. It's now a completely functional prototype. I want to rejigger it a bit with a custom PCB and a different MCU, but with LLMs I find that all very practical and approachable without fear.
This tool lets me work with things that I am otherwise incapable of working with. It lets me do things I was always ultimately incapable of doing.
Am I addicted to it? Yes. I'm completely finished with trying to write code the old-fashioned way, and LLMs make me feel good about finally accomplishing some good stuff. Like the air nailer in construction, I use LLMs compulsively in these tasks.
For programming, the bot is the first thing I reach for; in fact, it's the only thing I reach for.
If the bot is unreachable today and I have programming to do, then I seek to restore my use of the the bot just like I sought to fix the air nailer back when I had nailing to do.
And like any other addict of any other thing: I don't care if this causes harm to me, or to others, or the world itself. Maybe it's turning a part of my brain into mush; I don't care (the coding part was apparently mush to begin with). I enjoy using it enough that I'm just going to keep doing it no matter what. I've got more programming to do now than I ever have before, and so my use is accelerating: This is the feedback cycle typical of addiction.
The comment wasn't about CC specifically. If you rely (like, can't ship without it) on any model that you don't control, it's not really your product. If Dario decides to increase pricing 500% because it's Tuesday, and you can't work without CC, you really have no choice but to open your wallet.
Surely a company as large as Microsoft is actively attempting to build their own models. They couldn't possibly have expected to stake the future of their software development on the conditions of a third party company?
Okay, but what if you're not Microsofts size and don't have and R&D budget large enough to fund development of your own models and tools?
This is a warning to any company, not building their own AI, that AI assisted development could become really expensive really fast and most likely won't pay off. What Microsoft is suggesting is that the current price is to high, but it's still not high enough for e.g. Anthropic to be profitable, or AI coding tools are only as good as the developers using them. So you can't meaningfully do layoffs by replacing the developers with AIs, because the cost is to high.
How does Microsoft plan to fix CoPilot, so that the cost will be so much lower than Claude, that budget overruns won't be a problem for their own customer?
I expect in the next year or so, we'll stop seeing headlines like "Anthropic buys $15b of compute from SpaceX" and we'll start seeing headlines like "Uber's AI department licenses GPT 6.2 as the foundation for their internal model," or something like that.
Smaller companies will have departments that distill larger models into something more specifically manageable and useful for them. At least, that's my personal prediction :)
> Smaller companies will have departments that distill larger models into something more specifically manageable and useful for them.
In order to do that they'd have to make a concrete business case to justify the headcount and compute costs. They'd be facing the same fundamental economic problems Anthropic, OpenAI, MSFT, etc are facing just at a department level instead of a megacorp level. I hope they try it, sunlight is the best disinfectant.
However, when the pressure is turned up and people have to actually show results--and, like, be accountable--instead of just buying a subscription and externalizing the accountability, I don't think we'll see so much enthusiasm about AI coding. Whether or not an engineer is actually more or less productive with AI (not merely whether they feel more productive) will begin to matter a lot more. I don't see how people continue using AI in this hypothetical small company under those adverse conditions.
How would that help with pricing? The cost of hardware is already subsidized to hell and back by investors and that's not dropping costs enough. I'm not concerned about Uber, they are way to big. I'm thinking sub 1000 employees in total and maybe 50 - 100 people in the IT department. Are they just going to be cut off from AI tools, because the cost of running them would ruin the company?
I do think your prediction makes sense, because the AI really isn't the product, it needs to be baked into something and licensing the models saves you the R&D and cost of implementing your own.
The frontier model space costs 1000x as much to develop as the small language models, and is only 1.5 years ahead.
Factually, the frontier models have not paid for themselves. So, if you're MSFT and Apple, you don't need to run in a race where even the winner loses massively.
You can try to train models 1.5 years behind that are highly likely to be profitable, given your market position.
The average person is lagging behind what AI is capable of by 3+ years anyway...
So you can save 1000x on training and 10x on inference and just use SOTA small models.
Why spend $5B training a model that's for sure not going to make $5B (after inference costs) when you can spend $5M building one that WILL make far more than that after inference costs?
At one point there were rumours that they'd do that. They also have the rigts to oAI models for a few more years still, so they could always use that but apparently they're also compute starved (like anyone else).
MSFT does have a frontier AI Lab. My friend works there. I don’t know what they’re doing. But MSFT is one of like 5 entities that actually have the talent and physical infrastructure to compete in model-building.
It's sustainable in the literal sense, I.E. a tailor can simply tailor forever without needing to constantly worry about keeping up with new tools or technologies, or needing to upgrade or change their methodology constantly.
The tech world is obsessed with moving fast and breaking things, and you can't just do the same thing forever and expect it to always work.
Think about how much food we throw away in the developed and developing worlds. How often we buy new clothing when we could mend old clothing. How often we ask for more when we could do with less. How often we want to eat at a restaurant when we could make leftovers. How often we want something sweet when we could just eat something bland. How often we heat and cool our homes when we could wear more or less clothing.
It turns out that while these are all truisms, nobody wants to fix them. Developed countries are okay passing pigovian taxes, to a limited extent, to help fix these problems. Developing countries are even less interested in fixing these problems. It turns out that austerity is incredibly unpopular. Everyone wants to tell other people not to do the things they don't like but nobody wants to listen to what other people tell them not to do.
Just a reminder that Europe colonized Asia, Africa, and the Americas in the search for spices. Later on the interest changed to tea. Literally the only thing that Europe wanted was better tasting food and drink (initially at least.) By the time the potato had become widespread, they could have had enough calories to feed the continent, and yet the desire for flavor is what lead to untold misery for hundreds of years for millions of people.
We need to be realistic about what works and what doesn't. Austerity never wins.
A little suggestion in case you decide to try again, just don't worry about constraints. If you're making one-off parts for yourself, just sketch what you need and don't worry about trying to make it parametric. Get the part done and move on.
That's what I've done. It's just such a chore. I see what my ME counterparts can do in an hour and it takes me days. I could likely get myself to be a better MCAD designer with discipline, but there's little guarantee it would make me enjoy it. I enjoy ECAD and I'm good at it, so it will always be a fine hobby for me.
MEs take at least a course in it, and its a great course to take. you could probably audit it
across MEs, its also the most fun couple classes of the degree, since they build a skill other tha math - visuallizing objects in 2d and 3d at the same time, and guessing whats on the back side of drawings.
it will also inprove your sketches on paper, so they
a different option would be that if you know what you want, but cant be bothered to draw it beyond a sketch, you might actually want a small mill instead of a 3d printer.
If you use something like OnShape or Fusion, you could easily get comfortable enough to model those parts in about a day. Once get the hang of it, you'll be amazed how fast you can work.
It will take much longer than a day for AI to get to this level, so there's not much to lose by just learning how to use the software now :)
I genuinely think any ML approach to detecting ML will always be unreliable. Models can be intentionally poisoned or tricked, and there is a lot of incentive from AI users to do so. It will always be a losing battle against a moving target.
I think in the long run, deterministic algorithmic approaches with complex pipelines will be needed.
1. Constructing a "deterministic algorithmic approaches with complex pipelines" is an ML approach. You're simply changing how you optimize (e.g. gradient descent with human constructed rules) and what you are optimizing (i.e. the model from a statistical one to a set of rules similar to a decision tree)
2. "Models can be intentionally poisoned or tricked" this is adversarial examples. Your deterministic and complex pipeline will have attack vectors, but just of a different distribution compared to an LLM (or neural net in general). Adversarial examples are likely unavoidable, you will always have a set of inputs that will cause your model to mis-classify examples. You can aim to minimize the size of this distribution/set, but for language: the set of possible inputs is so large that you will never fully be able to train or test on them all, and thus you will always have a back & forth between finding new attack vectors vs. defending against them: "deterministic" or not.
To expand on 1:
How do you construct a complex pipeline? Hopefully, by following roughly standard ML principles.
That is, you have a train set that you observe and find patterns/rules in. Then you iteratively construct your complex pipeline until you've minimized the error for a train set. Hopefully after this initial version is constructed you evaluate it on your (independent) val set. Then you iteratively improve your complex pipeline until your validation numbers improve. In the end, since you've optimized a val set, you need to use a third independent test set to ensure that you haven't overfit to your val&train sets. This is standard ML practice.
In other words, this process is what an "ML approach" is, just manually performed by a human possibly using some data analysis. Again, you've just replaced the optimization process (e.g. from gradient descent) and the underlying ML model (e.g. an LLM with differentiable parameters) with a more "deterministic approach" similar to a decision tree.
Yes you could automate this process to construct the rules and chain them, in which case your process and your complex pipeline will likely look similar to a decision tree (e.g. xgboost), but you're simply closer to the thing you think you are trying to avoid.
The $0.03 LED, $0.04 diffuser panel and the extra 3 cents for manufacturing keys with transparency will eat into their 93% profit margin. Can't have that. The children will just have to use a desk light.
reply