I have been thinking about this for years, probably two decades. The answer to your question or the definition, I am sure you know, is rather difficult. I don't think it is impossible, but there's a risk of diving into a deep dark pit of philosophical thought going back to at least the ancient Greeks.
And, if we did go through that exercise, I doubt we can come out of it with a canonical definition of understanding.
I was really excited about LLM's as they surfaced and developed. I fully embraced the technology and have been using it extensively with full top-tier subscriptions to most services. My conclusion so far: If you want to destroy your business, adopt LLM's with gusto.
I know that's a statement that goes way against the train ride we are on this very moment. That's not to say LLM's are not useful. They are. Very much so. The problem is...well...they don't understand. And here I am, back in a circular argument.
I can define understanding with the "I know it when I see it" meme. And, frankly, it does apply. Yet, that's not a definition. We've all experienced that stare when talking to someone who does not have sufficient depth of understanding in a topic. Some of us have experienced people running teams who should not be in that position because they don't have a clue, they don't understand enough of it to be effective at what they do.
And yet, I still have not defined "understanding".
Well, it's hard. And I am not a philosopher, I am an engineer working in robotics, AI and applications to real time video processing.
I have written about my experiments using LLM coding tools (I refuse to call them AI, they are NOT intelligent; yes, need to define that as well).
In that context, lack of understanding is clearly evident when an LLM utterly destroys your codebase by adding dozens of irrelevant and unnecessary tests, randomly changes variable names as you navigate the development workflow, adds modules like a drunken high school coder and takes you down tangents that would make for great comedy if I were a tech comedian.
LLMs do not understand. They are fancy --and quite useful-- auto-complete engines and that's about it. Other than that, buyer beware.
The experiments I ran, some of them spanning three months of LLM-collaborative coding at various levels --from very hands-on to "let Jesus drive the car"-- conclusively demonstrated (at least to me) that:
1- No company should allow anyone to use LLMs unless they have enough domain expertise to be able to fully evaluate the output. And you should require that they fully evaluate and verify the work product before using it for anything; email, code, marketing, etc.
2- No company should trust anything coming out of an LLM, not one bit. Because, well, they don't understand. I recently tried to use the United Airlines LLM agent to change a flight. It was a combination of tragic and hilarious. Now, I know what's going on. I cannot possibly imagine the wild rides this thing is taking non-techies on every day. It's shit. It does not understand. It' isn't isolated to United Airlines, it's everywhere LLMs are being used. The potential for great damage is always there.
3- They can be great for summarization tasks. For example, you have have them help you dive deep into 300 page AMD/Xilinx FPGA datasheet or application note and help you get mentally situated. They can be great at helping you find prior art for patents. Yet, still, because they are mindless parrots, you should not trust any of it.
4- Nobody should give LLMs great access to a non-trivial codebase. This is almost guaranteed to cause destruction and hidden future effects. In my experiments I have experienced an LLM breaking unrelated code that worked just fine --in some cases fully erasing the code without telling you. Ten commits later you discover that your network stack doesn't work or isn't even there. Or, you might discover that the stack is there but the LLM changed class, variable or method names, maybe even data structures. It's a mindless parrot.
I could go on.
One response to this could be "Well, idiot, you need better prompts!". That, of course, assumes that part of my experimentation did not include testing prompts of varying complexity and length. I found that for some tasks, you get better results by explaining what you want and then asking the LLM to write a prompt to get that result. You check that prompt, modify if necessary and, from my experience, you are likely to get better results.
Of course, the reply to "you need better prompts" is easy: If the LLM understood, prompt quality would not be a problem at all and pages-long prompts would not be necessary. I should not have to specify that existing class, variable and method names should not be modified. Or that interfaces should be protected. Or that data structures need not be modified without reason and unless approved by me. Etc.
It reminds me of a project I was given when I was a young engineer barely out of university. My boss, the VP of Engineering where I worked, needed me to design a custom device. Think of it as a specialized high speed data router with multiple sources, destinations and a software layer to control it all. I had to design the electronics, circuit boards, mechanical and write all the software. The project had a budget of nearly a million dollars.
He brought me into his office and handed me a single sheet of paper with a top-level functional diagram. Inputs, outputs, interfaces. We had a half hour discussion about objectives and required timeline. He asked me if I could get it done. I said yet.
He checked in with me every three months or so. I never needed anything more than that single piece of paper and the short initial conversation because I understood what we needed, what he wanted, how that related to our other systems, available technology, my own capabilities and failings, available tools, etc. It took me a year to deliver. It worked out of the box.
You cannot do that with LLMs because they don't understand anything at all. They mimic what some might confuse for understanding, but they do not.
And, yet, once again, I have not defined the term. I think everyone reading this who has used LLMs to a non-trivial depth...well...understands what I mean.
> We've all experienced that stare when talking to someone who does not have sufficient depth of understanding in a topic.
I think you're really putting your finger on something here. LLMs have blown us away because they can interact with language in a very similar way to humans, and in fact it approximates how humans operate in many contexts when they lack a depth of understanding. Computers never could do this before, so it's impressive and novel. But despite how impressive it is, humans who were operating this way were never actually generating significant value. We may have pretended they were for social reasons, and there may even have been some real value associated with the human camaraderie and connections they were a part of, but certainly it is not of value when automated.
Prior to LLMs just being able to read and write code at a pretty basic level was deemed an employable skill, but because it was not a natural skill for lots of human, it was also a market for lemons and just the basic coding was overvalued by those who did not actually understand it. But of course the real value of coding has always been to create systems that serve human outcomes, and the outcomes that are desired are always driven by human concerns that are probably inscrutable to something without the same wetware as us. Hell, it's hard enough for humans to understand each other half the time, but even when we don't fully understand each other, the information conferred through non-verbal cue, and familiarity with the personalities and connotations that we only learn through extended interaction has a robust baseline which text alone can never capture.
When I think about strategic technology decisions I've been involved with in large tech companies, things are often shaped by high level choices that come from 5 or 6 different teams, each of which can not be effectively distilled without deep domain expertise, and which ultimately can only be translated to a working system by expert engineers and analysts who are able to communicate in an extremely high bandwidth fashion relying on mutual trust and applying a robust theory of the mind every step along the way. Such collaborators can not only understand distilled expert statements of which they don't have direct detailed knowledge, but also, they can make such distilled expert statements and confirm sufficient understanding from a cross-domain peer.
I still think there's a ton of utility to be squeezed out of LLMs as we learn how to harness and feed them context most effectively, and they are likely to revolutionize the way programming is done day-to-day, but I don't believe we are anywhere near AGI or anything else that will replace the value of what a solid senior engineer brings to the table.
I am not liking the term "AGI". I think intelligence and understanding are very different things and they are both required to build a useful tool that we can trust.
To use an image that might be familiar to lots of people reading this, the Sheldon character in Big Bang Theory is very intelligent about lots of fields of study and yet lacks tons of understanding about many things, particularly social interaction, the human impact of decisions, etc. Intelligence alone (AGI) isn't the solution we should be after. Nice buzz word, but not the solution we need. This should not be the objective at the top of the hill.
I've always distinguished knowledge, intelligence, and wisdom. Knowledge is knowing a chair is a seat. Intelligence is being able to use a log as a chair. Wisdom is knowing the log chair will be more comfortable if I turn it around and that sometimes it's more comfortable to sit on the ground and use the log as fuel for the fire.
But I'm not going to say I was the first to distinguish those word. That'd be silly. They're 3 different words and we use them differently. We all know Sheldon is smart but he isn't very wise.
As for AGI, I'm not so sure my issue is with the label but more with the insistence that it is so easy and straight forward to understand. It isn't very wise to think the answer is trivial to a question which people have pondered for millennia. That just seems egotistical. Especially when thinking your answer is so obviously correct that you needn't bother trying to see if they were wrong. Even though Don Quixote didn't test his armor a second time, he had the foresight to test it once.
I am going to declare my wife to be the authority on this topic.
We were well on a path to purchase a couple of EV's (Teslas, new) and even installed a large solar array to support them.
A couple of years later she learned about the cost of replacing the battery. And, just like that, the dream was over. No interest whatsoever.
Anyone who is married fully understands you cannot argue with wife logic. She has no interest in having to spend $20K to $30K ever on any vehicle, of any type, electric or not, a few years after you paid off the loan.
She would not even touch a used EV if it was almost free. In that case you are almost guaranteed to have to spend tens of thousands of dollars for a new battery at a random moment in time in the future. No deal.
Her logic is cemented in a reality of life that we have lived: There are good times and bad times. And, as things go sometimes, you often find yourself in bad times with no money. Vehicles being necessary for mobility and work, if you have an EV, hit bad times and need to spend tens of thousands of dollars to swap the battery, you are absolutely screwed.
So, I asked her: What would make you change your mind?
The answer: A battery swap should be $5,000 or less.
>Anyone who is married fully understands you cannot argue with wife logic.
This is the job the 4dr Wrangler was built to solve.
"see honey, it's got a back seat for the kids".
"don't worry, we can get a hard top if it's too loud."
"there's a hybrid option available"
It's the world's worst 4dr SUV for kids and car seats and the like and it's still loud with a hard top and gets shit milage for a hybrid but you'll never figure it out until after you've bought the thing and the honeymoon period is over.
It's an absolutely brilliant exercise in checkbox engineering (and preventing couples from arguing in the dealership).
In 15 years / 300,000 miles when the battery might need replacement, the pack (not cell) price for batteries will probably be around $50/kWh, or $5,000 for 100 kWh.
You must not be married. That argument would last approximately two city blocks and then I'd have to shut up. She is not unintelligent, BTW, she is a doctor, not an engineer. The EV car industry has probably done a horrible job in mitigating this fear.
I get the "batteries will get cheaper" argument. If you read my comment, I said that that a guaranteed $5K battery replacement would likely convince loads of people, including my wife. Today, nobody will issue that guarantee. Today it is a lottery with a $25K hit if you have a losing ticket.
Nobody wants to buy a vehicle for tens of thousands of dollars and have a $25K surprise a couple of years later. With an conventional vehicle you would have to to launch it off a cliff to have to spend $25K in repairs. That's the problem.
I have been married for more than 20 year, have 4 children (3 teen-aged drivers), and two electric vehicles. I paid less than $25,000 out-the-door (including sales tax, etc.) for my brand new 2025 SV+ Nissan Leaf. Where I live in Washington state, gas is >$4/gal and electricity is less than $0.08/kWh. I get better than 4 miles/kWh. After 250,000 miles, a vehicle averaging 40 miles/gallon will have spent $25,000 in gasoline (at $4/gal). With my electric rates, electric "fuel" costs for the same 250,000 miles will be $5,000. So a $20,000 difference in fuel costs.
Looks like it is ~$8k for a 62 kWh Nissan Leaf battery:
Every EV sold in the U.S. gets a federally mandated transferable battery warranty of 8 years/100,000 miles. Buying new or very lightly used and getting rid of it before the warranty expires is an option for those with infant-mortality battery anxiety. We are not in the early adopter phase with EVs anymore, so it is less of risky-new-thing-that-doesn't-pan-out. It is OK to be a late adopter. But it is a much nicer of an experience. And no oil-changes or going to the gas station (I wouldn't recommend getting an EV if you can't charge overnight at home). Have you ever test driven an EV? EVs pretty much sell themselves, once you get behind the wheel.
Good news is you stumbled on first Leaf model with actually actively thermally managed battery so at least in theory if Nissan didnt screw anything your battery wont degrade like older 1 and 2 gens.
The 2026 model year (which is available now) is the Gen 3. Nissan isn't any different from most automobile manufacturers in releasing the new model years in the fall.
It’s not a random moment, they degrade predictably over time and at a very slow rate. They have less “random” big expensive failures than ice cars. How much is an ice whole engine replacement in a semi modern car? Not cheap and happens more often than an ev battery dropping dead.
So I mean I’m sorry your wife is irrational about it, but I don’t think that’s indicative of the market as a whole.
> It’s not a random moment, they degrade predictably over time and at a very slow rate.
So do traditional vehicles. You need to have them serviced regularly, but otherwise they work fine for literally decades. My uncle has a Volvo 240 GL that car is 50+ year old.
> How much is an ice whole engine replacement in a semi modern car? Not cheap and happens more often than an ev battery dropping dead.
Engine failure is extremely rare. My 1997 Landrover Defender 300TDI is getting upto 300,000 miles and lets just say it hasn't had the easiest life (it was on a farm before I got it). Landrover's aren't known for their reliability.
My old Astra is still on the road (according to the DVLA) and that had well over 150,000 on the clock when I sold it.
> So I mean I’m sorry your wife is irrational about it, but I don’t think that’s indicative of the market as a whole.
His wife isn't irrational. I can get a mid-2000s Diesel that will have decent mileage for less than £4000 in the UK. I see people saying "I only paid $30,000 for this EV". I have never paid more than £10,000 for a car and they last for years and years as long as I get them serviced
His whole point was that the battery pack would randomly completely fail and they’d be unpredictably out a bunch of money. That doesn’t happen. Or at least, doesn’t happen more than ICE engines randomly die.
No his point was that there could be a cost to replacement that would be extremely expensive and that put his wife off. It would puts most people off.
It doesn't matter what the rates are compared to Petrol/Diesel cars, it is an unknown and large potential cost with an expensive initial purchase especially compared to a second hand vehicle that would fulfil the exact same function.
My ice car _could_ spontaneously catch fire and be totaled, that would be an unknown large expense. But people (rightfully) don’t factor that into buying cars because it’s an infrequent fault. Same with this fear of spontaneous battery failure.
Saying that actually makes me wonder - surely insurance would cover a random battery failure fault, in the same way as an engine fire? I dont know if it does but it feels intuitively like it should.
You example wasn't really what is being discussed. The person was talking about potential cost of replacing the battery that would need to happen sometime in the future. This would most likely be uneconomical.
It is something that I do not need to worry about with my current vehicle, in fact most Petrol/Diesel vehicles will last a very long time with basic servicing.
I don't understand why people on have such a hard time understanding potentially expensive unknowns are not an attractive proposition.
> Most EVs batteries will outlast the lifetime of the car, with some acceptable loss of capacity. Some small number won’t, and that will be expensive
As far as most people are concerned that is just a claim that is made as they have no idea whether it is true. I am specifically talking about what is the perception.
Therefore it is seen as risky and for something like a car which most people see as a way to get from A to B, they don't want potential headaches.
> It’s the same thing.
No because one is already known and the other isn't as far as most people are concerned.
They also talk about whether these things are any good. They normally talk about the issues that other people have had. Any issue that seems like a PITA, will put them off when the existing vehicles typically don't have many of these issues.
I think we are still in the Early Adopter Stage for EVs and I don't know whether we will get out of it.
So, it is the same thing… but people have vibes and perception that it’s not? Data says otherwise, but people have feelings? I don’t really know what to do with that argument.
Even if it’s true that people have a “perception”, it won’t matter in the medium term, these folk are going to learn pretty quick that EVs are more reliable than ice cars. Much simpler, much less to go wrong. And soon cheaper, at least everywhere but the US. We’ll be into majority EV soon enough (not in the US, for reasons)
> So, it is the same thing… but people have vibes and perception that it’s not? Data says otherwise, but people have feelings? I don’t really know what to do with that argument.
The original poster does a much better job than I explaining the issue.
> Even if it’s true that people have a “perception”, it won’t matter in the medium term, these folk are going to learn pretty quick that EVs are more reliable than ice cars. Much simpler, much less to go wrong.
When people make this claim I know they have never had to work on a vehicle. What you think is simpler (which I suspect is less moving parts) actually isn't. Mechanical systems can be diagnosed by simply prodding / wiggling them much of the time or a visual inspection.
EVs for the most part have a huge amount of electronics and computer software. Computer software is incredibly complex in its own right and I shouldn't need to spell that here.
Electronics can fail with moisture and dirt. Electronics are the most difficult thing to solve when repairing a vehicle and this includes working on older vehicles. Issues are difficult to diagnose and intermittent.
So while is mechanically it is simpler, that is dwarfed complex electronics and computer software which is many of orders of magnitude more complex.
Almost all ICE cars sold in the last 5+ years have as much or more electronics and software, including massively complex software engine control. For better or worse, that’s all cars now. The days of simple engines you can fix with a wrench are in the past.
> Almost all ICE cars sold in the last 5+ years have as much or more electronics and software, including massively complex software engine control.
It massively depends on the manufacturer, model and country. So it not entirely true.
Even if it was true it doesn't make EV simple or simpler which was your claim as they are completely reliant on a huge amount of electronics.
There is no such requirement really for Petrol/Diesel vehicles as I drive a vehicle with no ECU and no digital electronics.
> For better or worse, that’s all cars now.
It is obviously worse. Things are less reliable, less repairable and more proprietary.
> The days of simple engines you can fix with a wrench are in the past.
No quite true either.
You can still do a huge number of jobs with basic tools. You may need some sort of code reader to help diagnose. You can still physically inspect things, and prod things etc. The fundamentals of how the vehicle works hasn't changed.
I don’t think there is a single new car for sale in the US that doesn’t have an ECU, and a huge amount of digital electronics. Hell, my friends petrol jeep was bricked a few years ago by an overnight software update and had to be towed to a dealership. If they are available without this, new, where you live, feels like that’s on borrowed time. This is the world we live in now
And in that world, where every car is software. EVs are fundamentally simpler, they have less moving parts and no complicated things like engines or transmissions. Less parts, less complexity, less to go wrong.
For the benefit of others still arguing one the basis of specs, checkboxes, links to technical data, etc., here's my response in another branch that addresses the fact that some commenters are completely missing the point:
> So I mean I’m sorry your wife is irrational about it
No, quite to the contrary. She is being far more rational than most fan boys.
I have driven IC cars 300K miles. The cost of maintenance over that period of time was in the <$5K range. Modern vehicles last a very long time without problems with very moderate maintenance. I can also swap out an entire engine and transmission for a few thousand dollars if necessary (which is never). I have personally rebuilt engines, transmissions, clutches and brakes for very little money.
She manages the family finances, and has exactly zero interest in taking a risk that nobody on this thread making an argument for EV's is willing to underwrite for my family. And that extends to the manufacturer as well.
So, while it might feel right to call someone irrational for not aligning with what I consider your fantasy, unless you are willing to issue my family a guarantee that the battery swap will not cost us more than $5K per vehicle you are taking advantage of being able to criticize someone while not putting your money where your mouth is going.
Yet another take: $50K invested in a good ETF (like VGT) will probably double in five years to $100K and over $200K in ten years. That's a shitload of money to waste on batteries. No, I think she is very far from being irrational.
Full battery random failures aren’t a thing that happen at any regularity that you should be rationally worried about. Neither are battery replacements common at all. You can of course make your own risk decisions on your own criteria, just don’t expect them to generalize. By the choice of your language it sounds like you have an axe to grind.
What's being missed here --likely from the context of technical people who have never had a sales position-- is that whatever you might want to say about the technical realities of batteries is utterly irrelevant.
I know batteries degrade over time. I know random failures do not happen unless, well, something random happens, which is generally rare.
As an engineer who has designed and manufactured dozens of products and then had to go sell them, what I am telling you is that the EV industry has done a shit job selling risk mitigation.
There are virtually no stories of IC cars requiring $25K repairs after N years. Nobody buying a new or used IC vehicle ever thinks about having to spend at those levels, because is just does not happen except for really freak circumstances (your engine and transmission commit suicide).
In the EV world the case is different. Someone (my wife and others) don't go from "Let's install a large solar array to get ready to buy a couple of Teslas" to "I am not touching an EV if it was free" out of nowhere.
That happened because the fear of the $25K expense per vehicle got planted into her head when reports of this happening surfaced. You never hear from happy customers who put 200K miles on an EV. You definitely do hear from cases where the manufacturer charged someone $25K or more for a battery replacement.
This is called "Positioning" and there's a very famous marketing book on the subject. Once your product or a concept owns a certain position in someone's mind it is incredibly difficult to change it.
You know exactly how positioning works. If I were to ask you who you'd call to fix your plumbing; where to go to get the best coffee, burger, steak, etc. You will typically answer that question instantly using whatever brand or company owns that positioning in your brain. That's how it works.
Well, the EV companies have managed to own the "$25K battery replacement" position. They should have come out of the gate with an aggressively low replacement cost, the kind that nobody would every object paying. In my post I proposed that this number is $5K. Why? Because I know that, if this guarantee existed, this would be the number that would put two Teslas on our driveway right now.
Don't send links about battery longevity and your personal anecdotal data. They are irrelevant. This is the equivalent of "Sell me this pen" for the EV question about batteries.
Maybe this example can drive the point further: I have a fear of going up on a tall ladder, you know, the kind you might use to get up on a roof. I get up past a certain point and my brain says "Hard stop! No f-ing way". Now, intellectually, I know that millions of people go up and down these things every day without a problem. I also know that, as long as I secure the bottom very well and make sure the top can't slide around, I'll be safe. I further understand that I have to keep the vertical projection of the center of gravity within the base of the triangle formed by the ladder against the house. I know these things. And I know that I will be perfectly safe. And yet, in my brain, the "tall ladders are unsafe" positioning has taken hold and that's that. I know I can fix it. And it will take a lot of work.
I understand the argument now thank you. And I guess that makes sense for people stuck in that positioning, they would have to be marketed to with guarantees to change their mind.
Or, what I suspect but have nothing but anecdotal data - the “25k replacement” positioned group is not that big, or not big enough for manufacturers to care. I’ve certainly never heard that as a fear or even mentioned from anyone I know. Manufacturers can probably just ignore these folk, sell to the rest of the market, and over time they’ll change their mind “for free” anyway as more mass market evidence comes in of it not being a real problem. Or not, and they never sell to those particular folk, but oh well, it’s still not worth it, it’s incredibly expensive to change a skeptics mind. These companies aren’t idiots, they do all kind of market positioning research. The fact that there’s no product/guarentee for your particular concern probably means it isn’t worth it to them. They’ll never get your $ but they don’t care.
I do idly wonder if there’s a market here for a specific insurance product for ev batteries, and then those that have the fear can buy it.
Same issue with people who fear moving to Florida due to hurricanes or California due to earthquakes. There's nothing anyone can do about that. No amount of marketing can fix fear in these cases.
In the case of EV's, the first company that comes out with a no-brainer battery replacement guarantee wins. In the case of Tesla, I think the number would have to be no more than $5K. If they got behind their packs with a $5K guaranteed replacement, the market would instantly turn and resale values would increase. The math is super simple:
What I am willing to pay <= Perceived value - Estimated repair costs
On an EV, the battery is the greatest potential repair item. If they apply a guaranteed upper bound to that, they change the market.
I see many comments that express the same level of disgust I have for modern TV's, of nearly every brand, having mutated into intrusive digital signage with integrated behavioral tracking in my home.
The question is: Would you pay $1000 to $3000 more (depending on size, etc.) for a TV with none of that. Zero.
How much is your time worth? Apple TV is the best experience (not even close to FireTV) for the cost of it. There are ways to get completely ad free if you have time. I've been using a HTPC for close to 20 years for example.
I think that if you want a modern 70+ inch screen I am not sure that plugging anything into and HDMI input will do it. You need to lobotomize the TV. I could be wrong. I am probably going to explore this to some depth next year.
Depends on the TV brand. I use an LG OLED TV and it’s 100% fine being used as a “dumb” TV. I keep it disconnected and use an AppleTV. I never see the TV’s operating system unless I want to adjust picture settings.
"Good" TVs are so cheap these days, that premium wouldn't be acceptable in my mind. The fix the other posters mention about banning it from the internet and just using HDMI works well enough for me.
This goes into my "Top 100 really dumb things I've seen this year" list. Not sure if it makes top ten. It's definitely in the top 25%.
OK. Why?
Let's forget then "Let's strap model airplane jet engines to the robot and make it fly." part.
For this dumb mechanical albatross to be anywhere close to useful in ANY scenario, even without flying...it has to be useful as a humanoid robot. It isn't. iCub was a cool concept, but it is so far behind the current state of the art I am not sure why they are trying to make it fly.
And, flying?
You can hang a humanoid from any of the already available mega quadcopters and drop it off anywhere within the flight range.
You can probably stick a parachute on an already available humanoid and drop dozens of them from an airplane.
Flying is a solved problem. A humanoid useful in the real world --particularly in disaster areas-- is not. At all.
@Prusa. I want your company to survive. We have Prusa printers and our own self-made high-speed printers.
I use the Prusa's all the time. They just work. Not the fastest, but that's not a problem. When we need fast we use our own brushless servo-driven stationary table beast.
Build a good MK3/4 style 350 x 350 x 350~500 printer and I will likely buy it. Not interested in the other stuff. Don't even care about multi-material. We use 3D printers for design validation and to explore concepts. Don't need the complexity at all. Don't need crazy speed. Just a good solid printer that works reliably and I don't have to think about. This isn't a hobby, it's a tool. I want it on the network and don't need (can't have) external connectivity (ITAR).
I decided to jump into the deep end of the pool and complete two projects using Cursor with it's default AI setup.
The first project is a C++ embedded device. The second is a sophisticated Django-based UI front end for a hardware device (so, python interacting with hardware and various JS libraries handling most of the front end).
So far I am deeper into the Django project than the C++ embedded project.
It's interesting.
I had already hand-coded a conceptual version of the UI just to play with UI and interaction ideas. I handed this to Cursor as well as a very detailed specification for the entire project, including directory structure, libraries, where to use what and why, etc. In other words, exactly what I would provide a contractor or company if I were to outsource this project. I also told it to take a first stab at the front end based on the hand-coded version I plopped into a temporary project directory.
And then I channeled Jean-Luc Picard and said "Engage!".
The first iteration took a few minutes. It was surprisingly functional and complete. Yet, of course, it had problems. For example, it failed to separate various screens into separate independent Django apps. It failed to separate the one big beautiful CSS and JS files into independent app-specific CSS and JS files. In general, it ignored separation of concerns and just made it all work. This is the kind of thing you might expect from a junior programmer/fresh grad.
Achieving separation of concerns and other undesirable cross-pollination of code took some effort. LLM's don't really understand. They simulate understanding very well, but, at the end of the day, I don't think we are there. They tend to get stuck and make dumb mistakes.
The process to get to something that is now close to a release candidate entailed an interesting combination of manual editing and "molding" of the code base with short, precise and scope-limited instructions for Cursor. For my workflow I am finding that limiting what I ask AI to do delivers better results. Go too wide and it can be in a range between unpredictable and frustrating.
Speaking of frustrations, one of the most mind-numbing things it does every so often is also in a range, between completely destroying prior work or selectively eliminating or modifying functionality that used to work. This is why limiting the scope, for me, has been a much better path. If I tell it to do something in app A, there's a reasonable probability that it isn't going to mess with and damage the work done in app B.
This issue means that testing become far more important in this workflow, because, on every iteration, you have no idea what functionality may have been altered or damaged. It will also go nuts and do things you never asked it to do. For example, I was in the process of redoing the UI for one of the apps. For some reason it decided it was a good idea to change the UI for one of the other apps, remove all controls and replace them with controls it thought were appropriate or relevant (which wasn't even remotely the case). And, no, I did not ask it to touch anything other than the app we were working on.
Note: For those not familiar with Django, think of an app as a page with mostly self-contained functionality. Apps (pages) can share data with each other through various means, but, for the most part, the idea is that they are designed as independent units that can be plucked out of a project and plugged into another (in theory).
The other thing I've been doing is using ChatGPT and Cursor simultaneously. While Cursor is working I work with ChatGPT on the browser to plan the next steps, evaluate options (libraries, implementation, etc.) and even create quick stand-alone single file HTML tests I can run without having to plug into the Django project to test ideas. I like this very much. It works well for me. It allows me to explore ideas and options in the context of an OpenAI project and test things without the potential to confuse Cursor. I have been trying to limit Cursor to being a programmer, rather than having long exploratory conversations.
Based on this experience, one thing is very clear to me: If you don't know what you are doing, you are screwed. While the OpenAI demo where they have v5 develop a French language teaching app is cool and great, I cannot see people who don't know how to code producing anything that would be safe to bet the farm on. The code can be great and it can also be horrific. It can be well designed and it can be something that would cause you to fail your final exams in a software engineering course. There's great variability and you have to get your hands in there, understand and edit code by hand as part of the process.
Overall, I do like what I am seeing. Anyone who has done non-trivial projects in Django knows that there's a lot of busy boilerplate typing that is just a pain in the ass. With Cursor, that evaporates and you can focus on where the real value lies: The problem you are trying to solve.
I jump into the embedded C++ project next week. I've already done some of it, but I'm in that mental space 100% next week. Looking forward to new discoveries.
The other reality is simple: This is the worse this will ever be. And it is already pretty good.
Interesting project. I am sure it was a lot of work (and fun as well).
I was introduced to the general concept when the Shaper Origin came out a while back. Here's my problem with the idea:
What's the use case?
Any xyz gantry router will run circles around this approach, by far. They will be much faster, more accurate and, more importantly, hands off. There's a lot to say for clamping the material and mashing the "go" button. The pattern shown in the video on the YT channel literally takes three seconds to cut on a gantry router. And you can swap material and push go again, very quickly (or cut as many as possible out of one piece of material.
For around $1K you can have a much more capable machine. Unless the use case is cutting/engraving on items that cannot be cut on a traditional router, I am not sure what these would be used for. Then the question becomes: How many of those projects do DIY hobbyists have?
The other question is one of accuracy and repeatability. Having done loads of CNC metal machining, CNC and manual wood routing, I can tell you that nothing beats a rigid xyz machine.
So, if someone has just one or a few odd parts that cannot be cut on an xyz router, well, maybe that's a use case. Other than that, why would anyone guild one of these rather than a gantry?
The workflow on the shaper origin is extremely nice, --- apply tape, swing it around to capture the environment, load svg and position. If you need a regular spacing grid, you just press a few buttons and ram the tool into three non-colinear points on the edge of your object.
You can cut objects in place, including irregularly shaped stuff you'd need to disassemble to put on your gantry. That comes up frequently for engraving but it's not exclusive to it.
The whole device is basically the size of a sewing machine. Yet it can cut parts that won't fit on an gantry you're able to fit in your garage.
It's quite tedious for repeated work. So I think it's really more in the class of manual power tools than in the same class as a CNC setup.
As far as accuracy goes, the tracking tape eliminates some source of errors. Say your clamping is not 100% and the part shifts slightly while being worked-- tape the part moves with it and all is still happy. Of course, it introduces some of its own problems too.
So in summary:
1. Very small device, yet can work with arbitrarily large pieces.
2. Good workflow means very fast setup suitable for one offs.
3. Works in situ, especially useful for engraving things in place.
I imagine that if it weren't a bit pricey that many people who do CNC woodworking would also have a shaper origin like device-- much like you probably have a skillsaw in spite of owning a CNC router.
Plus the simplicity of setup and the size makes it attractive to anyone who only wants a tiny amount of CNC for precision engraving, hole positioning, or cutting an inset for a hinge... and would never own a CNC gantry.
That's just-about the only real use case I can see.
And then, again, is the question: How much engraving in place does anyone really have to do?
What are you engraving? Doors? Signs? Trophies? Well, if it is a one-off occasional thing...is the cost justified? If it is done as a business, chances are you are not going on-site to someone's home to engrave stuff. If it a rare once-in a couple of years thing, there are services that will do that for you for very little money...etc.
Forget CNC, I am comparing this to a $50 router and some jigs, off-the-shelf and self made. Even as a robotics guy, I just don't see it. And I have a shop full of robots and CNC machines.
To me this falls under the category of "just because you can, it doesn't mean you should".
FWIW, I use a Shaper and I think there are four areas where it is better than a gantry. If I was just blasting out flat parts, I'd go for a typical gantry setup. But I very rarely do that.
1.) Cuts that are not easy on a gantry. It would be very difficult to do a tenon on a gantry. You could do one side and then flip the piece. Or maybe you could have a special bed with a void for putting stock in that direction. Either way would be difficult to get just right. With the Shaper and their workstation this is a 60 second operation.
2.) Cuts in the real world. If your stock fits into a gantry, great. But if it doesn't then you're going to have to dismantle the thing to get it into your CNC. With the Shaper I've done inlays on-site, in hardwood floors, kitchen counters, on walls, and on a rough surface picnic table.
3.) Sneaking up on tolerances. Again, if you're batching out a ton of stuff you'll get your tolerances once and everything will be set. But when I use a gantry getting the tolerances just right takes a ton of time. On the Shaper you cut a pocket, test fit, bump the tolerance by a thou or two, recut, and re-fit. This is fast on the Shaper.
4.) Storage space. I don't have a ton of space. I have a small CNC (~15" x 15") for small stuff that I want to batch out, but I work out of my garage. I'd love to drop a 4' x 8' CNC in there, but it isn't going to happen. With the Shaper it all goes into a systainer box and sits on a shelf. When I want to do something big I lay some foam down on the driveway to use as a backer, drop the wood, lay out the tape, and go.
It's crazy pricey. But that's more because it's owned by Festool than any inherent reason. If you're the kind of prosumer who goes for Festool-grade tools then it's probably a decent fit.
Size I assume - this should be able to handle massive projects at the same price, while a gantry router would be much more expensive. Or so I would assume, I didn't dig into this to see how large it can go.
> It automatically adjusts the cutting tool to stay on the programmed design path, enabling a significantly smaller device footprint while still handling large-scale cuts.
I don't know how many people it concerns but the use case is very clear
Not really. I have done tons of manual wood working. I have 8 or 9 manual routers and a couple of CNC machines (real industrial ones, metal and wood). I have done just-about every type of intricate joinery using manual tools and inexpensive jigs. If you have metal CNC it's great because you can really get creative with jigs.
My comment wasn't intended to denigrate the tool or the approach. I am trying to understand the use case at scale.
Why?
Because if you are going to use this type of a tool onece or twice a year for an odd job, you don't need it. A $50 router will do just-about anything if you take the time to make a jig or jigs for the job. Again, if it is an one-in-a-while job, the time taken to build jigs is not important.
If you are making dozens or hundreds of something, forget it. Not the right use case. A CNC router or, again, a set of jigs or fixtures is the ticket.
Oddly shaped material might be a use case, however, I cannot see this working on concave or convex material with any degree of precision. This, once again, depending on the nature of the work, falls under the realm of CNC (possibly 4 or 5 axis) or specialized jigs.
Having done so much work, I just can't see dropping that kind of money for something that isn't likely to give me any real advantages. It will get used a few times due to the cool factor and then just sit on a shelf while I get real work done using manual or gantry CNC tools.
I've probably built hundreds of custom workstations using 100% manual tools, jigs and fixtures. It works, you can get amazing precision and repeatability and there's no limit to what you can make. Best of all, if you need five people working on a project, making extra jibs and fixtures is easy and cheap.
There's a reality to content with here. We all know that software developers have been coming out of school with decidedly substandard skills (and I am being very kind). In that context, the value they might add to an organization has almost always been negative. Meaning that, without substantial training and coaching --which costs time, money and market opportunity-- they can be detrimental to a business.
Before LLM's you had no options available. With the advent of capable AI coding tools, the contrast between hiring an person who needs hand-holding and significant training and just using AI is significant and will be nothing less than massive with the passage of time.
Simply put, software development teams who do not embrace a workflow that integrates AI will not be able to compete with those who do. This is a business forcing function. It has nothing to do with not being able to or not wanting to train newcomers (or not seeing value in their training).
People wanting to enter the software development field in the future (which is here now), will likely have to demonstrate a solid software development baseline and equally solid AI-co-working capabilities. In other words, everyone will need to be a 5x or 10x developer. AI alone cannot make you that today. You have to know what you are doing.
I mean, I have seen fresh university CS graduates who cannot design a class hierarchy if their life depended on it. One candidate told me that the only data structure he learned in school was linked lists (don't know how that's possible). Pointers? In a world dominated by Python and the like, newbies have no clue what's going on in the machine. Etc.
My conclusion is that schools are finally going to be forced to do a better job. It is amazing to see just how many CS programs are just horrible. Sure, the modules/classes they take have the correct titles. What and how they teach is a different matter.
Here's an example:
I'll omit the school name because I just don't want to be the source of (well-deserved, I might add) hatred. When I interviewed someone who graduated from this school, I came to learn that a massive portion of their curriculum is taught using Javascript and the P5js library. This guy had ZERO Linux skills --never saw it school. His OOP class devoted the entire semester to learning the JUCE library...and nobody walked out of that class knowing how to design object hierarchies, inheritance, polymorphism, etc.
Again, in the context of what education produces as computer scientists, yes, without a doubt, AI will replace them in a microsecond. No doubt about it at all.
Going back to the business argument. There is a parallel:
Companies A, B and C were manufacturing products in, say, Europe. Company A, a long time ago, decides they are brilliant and moves production to China. They can lower their list price, make more money and grab market share from their competitors.
Company B, a year later, having lost 25% of their market share to company A due to pricing pressure, decides to move production to China. To gain market share, they undercut Company A. They have no choice on the matter; they are not competitive.
A year later A and B, having engaged in a price war for market share, are now selling their products at half the original list price (before A went to China). They are also making far less money per unit sold.
Company C now has a decision to make. They lost a significant portion of market share to A and B. Either they exit the market and close the company or follow suit and move production to China.
At this point the only company one could suggest acted based on greed was A during the initial outsourcing push. All decisions after that moment in time were about market survival in an environment caused by the original move.
Company C decides to move production to China. And, of course, wanting to regain market share, they drop their prices. Now A, B and C are in a price war until some form of equilibrium is reached. The market price for the products they sell are now one quarter what they were before A moved to China. They are making money, but it is a lot tighter than it used to be. All three organizations had serious reorganization and reductions in the labor force.
The AI transition will follow exactly this mechanism. Some companies will be first movers and reap short-term benefits of using AI to various extents. Others will be forced into adoption just to remain competitive. At the limit, companies will integrate AI into every segment of the organization. It will be a do or die scenario.
Universities will have to graduate candidates who will be able to add value in this reality.
Job seekers will have to be excellent candidates in this context, not the status quo ante context.
> A study from 2019 showed that a moderate amount of language learning in adults does not boost things like executive function.
I guess these days a few paragraphs qualifies for an "in depth" article. No links to any of the sources referenced, except to one of their own pages. Not very useful.
That said, sure, as someone who speaks several languages and can mostly understand a few more, I think there are interesting insights gained by having this ability. For me, a lot of it has to do with, perhaps, less-than-verbal communication. Each culture has a certain way to communicate in person during conversations. Spanish spoken in Spain, Mexico, Peru, Ecuador and Argentina, while different, also drag along non-verbal cues that are distinct in each culture. Same with English in various parts of the UK, US and other anglo-speaking countries. As much as some Canadians think themselves to be French, there are differences there as well with France. Non-verbal cues in the Arab world (and Middle East in general) are different as well. How you sit, move, pace, use your hands and gesticulate during in-person conversations are linked to both language and culture. Etc.
Who remembers the bar scene in Inglorious Basterds? Yup, very true. Instant communication.
Oh, I am sure. And yet, I have also seen evidence to the contrary from some. People can be weird.
The argument goes something like: We are direct descendants of French immigrants ("pure blood" argument). It's along similar lines as descendants of Italian immigrants in New York calling themselves "Italian"...not realizing how far they are from that being remotely real.
Is there not a big difference between Canadiens living in a Francophone province (one that they founded hundreds of years ago), speaking French as a first language and practicing French culture, and Italian-Americans speaking English and living in English speaking states that they have no historical association with?
Manufacturing engineering is just as important as the design and engineering of the product itself. While one can --and many do-- design products away from where they will be manufactured, for anything that isn't trivial there's a need to make a serious investment of time and resources at the factory. Quality, durability and reliability derive from the entire process, not just design.
And, if we did go through that exercise, I doubt we can come out of it with a canonical definition of understanding.
I was really excited about LLM's as they surfaced and developed. I fully embraced the technology and have been using it extensively with full top-tier subscriptions to most services. My conclusion so far: If you want to destroy your business, adopt LLM's with gusto.
I know that's a statement that goes way against the train ride we are on this very moment. That's not to say LLM's are not useful. They are. Very much so. The problem is...well...they don't understand. And here I am, back in a circular argument.
I can define understanding with the "I know it when I see it" meme. And, frankly, it does apply. Yet, that's not a definition. We've all experienced that stare when talking to someone who does not have sufficient depth of understanding in a topic. Some of us have experienced people running teams who should not be in that position because they don't have a clue, they don't understand enough of it to be effective at what they do.
And yet, I still have not defined "understanding".
Well, it's hard. And I am not a philosopher, I am an engineer working in robotics, AI and applications to real time video processing.
I have written about my experiments using LLM coding tools (I refuse to call them AI, they are NOT intelligent; yes, need to define that as well).
In that context, lack of understanding is clearly evident when an LLM utterly destroys your codebase by adding dozens of irrelevant and unnecessary tests, randomly changes variable names as you navigate the development workflow, adds modules like a drunken high school coder and takes you down tangents that would make for great comedy if I were a tech comedian.
LLMs do not understand. They are fancy --and quite useful-- auto-complete engines and that's about it. Other than that, buyer beware.
The experiments I ran, some of them spanning three months of LLM-collaborative coding at various levels --from very hands-on to "let Jesus drive the car"-- conclusively demonstrated (at least to me) that:
1- No company should allow anyone to use LLMs unless they have enough domain expertise to be able to fully evaluate the output. And you should require that they fully evaluate and verify the work product before using it for anything; email, code, marketing, etc.
2- No company should trust anything coming out of an LLM, not one bit. Because, well, they don't understand. I recently tried to use the United Airlines LLM agent to change a flight. It was a combination of tragic and hilarious. Now, I know what's going on. I cannot possibly imagine the wild rides this thing is taking non-techies on every day. It's shit. It does not understand. It' isn't isolated to United Airlines, it's everywhere LLMs are being used. The potential for great damage is always there.
3- They can be great for summarization tasks. For example, you have have them help you dive deep into 300 page AMD/Xilinx FPGA datasheet or application note and help you get mentally situated. They can be great at helping you find prior art for patents. Yet, still, because they are mindless parrots, you should not trust any of it.
4- Nobody should give LLMs great access to a non-trivial codebase. This is almost guaranteed to cause destruction and hidden future effects. In my experiments I have experienced an LLM breaking unrelated code that worked just fine --in some cases fully erasing the code without telling you. Ten commits later you discover that your network stack doesn't work or isn't even there. Or, you might discover that the stack is there but the LLM changed class, variable or method names, maybe even data structures. It's a mindless parrot.
I could go on.
One response to this could be "Well, idiot, you need better prompts!". That, of course, assumes that part of my experimentation did not include testing prompts of varying complexity and length. I found that for some tasks, you get better results by explaining what you want and then asking the LLM to write a prompt to get that result. You check that prompt, modify if necessary and, from my experience, you are likely to get better results.
Of course, the reply to "you need better prompts" is easy: If the LLM understood, prompt quality would not be a problem at all and pages-long prompts would not be necessary. I should not have to specify that existing class, variable and method names should not be modified. Or that interfaces should be protected. Or that data structures need not be modified without reason and unless approved by me. Etc.
It reminds me of a project I was given when I was a young engineer barely out of university. My boss, the VP of Engineering where I worked, needed me to design a custom device. Think of it as a specialized high speed data router with multiple sources, destinations and a software layer to control it all. I had to design the electronics, circuit boards, mechanical and write all the software. The project had a budget of nearly a million dollars.
He brought me into his office and handed me a single sheet of paper with a top-level functional diagram. Inputs, outputs, interfaces. We had a half hour discussion about objectives and required timeline. He asked me if I could get it done. I said yet.
He checked in with me every three months or so. I never needed anything more than that single piece of paper and the short initial conversation because I understood what we needed, what he wanted, how that related to our other systems, available technology, my own capabilities and failings, available tools, etc. It took me a year to deliver. It worked out of the box.
You cannot do that with LLMs because they don't understand anything at all. They mimic what some might confuse for understanding, but they do not.
And, yet, once again, I have not defined the term. I think everyone reading this who has used LLMs to a non-trivial depth...well...understands what I mean.