Especially since, as that article describes, the "firmware" has a much more limited scope that it used to, now being mostly a loader for app rather that providing user functions.
Worrying about firmware development resources for a Flipper Zero seems a bit like concentrating on your bios instead of ongoing updates to Linux and the applications you use. Yeah, it's important, but it's probably exceedingly rare for the firmware here to need to change much.
> We need to normalize declaring software as finished. Not everything needs continuous updates to function. In fact, a minority of software needs this. Most software works as it is written. The code does not run out of date. I want more projects that are actually just finished, without the need to be continuously mutated and complexified ad infinitum.
To be fair, some software does rot. But when you have control of the hardware and the software, rot is pretty uncommon.
Honestly, I thought the whole point was to make a popular unified platform where the community could come together and expand on it. I really can't imagine a centralized player can predict nor create all features that users might want. But it seems like Flipper did the right thing: make the software flexible and easy to expand upon.
I'm curious if the agentic-based code flows will start to optimize higher-order programming goals in future evolutions.
1. Code works
2. Code works in all situations
3. Code uses defensive practices for unanticipated situations
4. Code is maintainable
5. Code is well architected
6. Code minimizes impact of rot
Right now, it feels like AI coding is ~2.5, if left to its own devices without human guidance.
I think you're over generalizing. Software rot happens for a multitude of reasons
- hardware changes
- firmware changes
- operating system changes
- dependencies change
- bits flip, thanks cosmic rays!
> Right now, it feels like AI coding is ~2.5
A lot of people would argue that it's not even 1. I'd argue it sits between 0.7 and 1.2 given the task.
I don't think it's close to 2. It's hyper fixated on task implementation. It's really bad at abstractions, even when requested. You have to be pretty precise over these instructions. I've only seen it develop well, even with explicit instructions, a handful of times. But hey, that's true about a lot of people too. Though people will not claim to have solved the proper generalization, people will just say "I just care that it works", which is kinda why AI is trained that way. It's not being programmed by your Knuths, it's being programmed by your Zuckerbergs.
In the case of Flipper, we're talking about fixed hardware (granted, eventually parts may need to be substituted) and firmware as the rotting target, so no OS level above that.
Which makes it a simpler problem.
I'd say SOTA AI coding systems are better than 1 and still improving. They often build better code than junior engineers. And with prompting and feedback harnesses, they're starting to grok architectural alignment.
> I'd say SOTA AI coding systems are better than 1 and still improving.
I'm including Fable. I use agents every day. They still are very sloppy and hyper fixated on tasks and are poor at making code flexible and maintainable in the long run.
But again, I'm not surprised because that is the modus operandi of the typical Silicon Valley programmer (irrespective of seniority). They leave in their wake bugs that are avoidable and unnecessary and significant amounts of tech debt.
But then again, no one ever gets credit for squashing bugs before they exist. The agents are just as myopic as we are
That's because we haven't yet started to laugh people out of the room that get uneasy and complain when the rate of updates of something starts slowing down.
I heard a graybeard story about a manager who walked into a new ~90s sysadmin shop and was immediately horrified that everyone was calmly and slowly working.
At his old company, the sysadmins had been constantly putting out emergency fires!
... seeing how the "used to infinitely patched software" generation is unable to parse "done" is interesting.