@ericschutte why do you think that there will always be flaws in software?
TeX showed that zero flaws approach pi.
But that means minimizing software and hardening it, and most definitely not expanding it with generated code.
@hembrow
@ericschutte why do you think that there will always be flaws in software?
TeX showed that zero flaws approach pi.
But that means minimizing software and hardening it, and most definitely not expanding it with generated code.
@hembrow
@ArneBab @hembrow
I think there will always be flaws in software because there never has been software without flaws. Also, something becomes a flaw when people see ways to misuse a piece of software.
IF this leads to more and more lines of software to close the gaps then in my opinion this will lead to more situations where the software can become flaws.
I do not know what you mean by TeX.
So I agree that expanding the code is NOT what must be done.
So I agree with the conclusion that this means minimizing software.
But minimal software is not possible looking at what we do with software.
The digital world will keep getting more and more complex which means more and more possible flaws to attack.
So if people keep attacking software with AI this will lead to the death of the digital world.
But I’m no expert, it is a thought.
@ericschutte @ArneBab Software is math, and we can prove things about it. One of the best-known examples of this is seL4, an operating system kernel. It matches its specification exactly, with no missing behaviors and no undefined behaviors. There’s mathematical proof it has zero implementation bugs.
The specification can still have limitations and issues, but they’re generally easier to find and reason about. The specification is simpler than the implementation, after all.
Writing software that rigorously correct is difficult, but well-understood at this point.
@bob_zim @ericschutte @ArneBab
And it runs on hardware which may also have exploitable bugs. I think your dream of provably correct software is further in the future than Eric’s nightmare of multiplying bugs, and therein lies the danger that the Internet becomes unusable.
@ericschutte @ArneBab @hembrow
Why has there never been software without potentially harmful flaws baked in?
@ericschutte it’s the wrong question.
The question would have to be "has there actually never been software without potentially harmful flaws baked in?".
Because that such software does not exist is a huge claim.
@ArneBab @ericschutte @hembrow @bob_zim Probably a fair point. If it's hard to think of some, or one, it's a similar question.
@fembot but it’s not.
@ArneBab @ericschutte @hembrow @bob_zim
Well that's good then, if it's still possible.
@ericschutte @ArneBab @hembrow I don't have a link, but I think that TeX's version numbering involves adding more digits of Pi? Knuth has had a bug bounty for ages, I think, but fewer and fewer major bugs have been found over time.
This seems related:
https://en.wikipedia.org/wiki/Knuth_reward_check
and
@muddle yes: zero flaws approach pi is a joke on the numbering scheme of TeX ☺
(I guess I expected far to much knowledge of nerdy delights in a discussion that claims that flaws in software are unavoidable)
@muddle
fewer bugs found is not necessarily an indication of software not having flaws.
@hajovonta @ericschutte @ArneBab @hembrow I don't see anyone claiming that. Quite the opposite.
@hajovonta that’s sophistry to move the goalpost.
If you continuously redefine what is meant by flaw, you can always find flaws.
But then saying "it has flaws" becomes meaningless.
@muddle @ericschutte @hembrow
@ArneBab
yeah if you define a software without flaws means fewer bugs are found, then you are right.
@hajovonta Doubling down on the sophistry doesn’t make that less meaningless.
@ArneBab
You are steering the conversation.
Saying software always had and will have flaws is the same as admitting no perfect software exist.
And saying it is not true is delusional.
@hajovonta it isn’t, and that’s the point.
You need to use either specific definitions of software or very broad definitions of "flaw" to claim that no software without flaws exists.
@ArneBab @hajovonta @muddle @hembrow
Again, I’m no software developer, just someone looking at the world, recently PHP and the shutdown.
I’m under the impression AI can act as some “super detective” in finding flaws and exploiting them (and thus leading to the crash of the digital world as I stated in my first post that started this all).
For me a flaw is some imperfection that can cause something to crash, OR an imperfection that can be misused for personal gain (money, power etc etc) as simple as that.
IMHO AI can combine things faster than a human being. So 2 seemingly (to a human) unrelated items/software lines can become a flaw the moment AI connects the dots.
And maybe that makes “it has flaws” meaningless indeed.
@ericschutte In the case of PHP AI did not connect the dots, as far as I understand the notes by those who found them: humans knew where to look and used AI as a kind of search engine that can run code to verify their assumptions.
AI did make them faster (like most other tools do), but didn’t find the flaws by itself.
And those flaws are fixed now.
And if no one had broken the responsible disclosure procedure, this would have gone off without a hitch.
@ArneBab @hajovonta @muddle @hembrow
Yes, PHP could have been avoided. It just was an added boost for my “thoughts” about AI.
@ericschutte (also my point isn’t that there’s no problem, but rather that the problems that exist aren’t inevitable and that there are examples of software that avoided them, though not many).
@ArneBab @hajovonta @muddle @hembrow
I had to look it up, responsible disclosure procedure.
Thanx, again, I’m learning every day 😁
@ArneBab In my experience, there are several reasons that there will always be flaws in software.
1. People make mistakes
2. Environments change out from under the software
3. Users' needs change
and the biggie
4. Business/“the market" does prioritize working software, just the new shiny.
Pushing new code out faster just guarantees that mistakes will happen, and no one will prioritize a fix unless their job/bonus is on the line.
@gwadej that calls for a classical quote:
We live in capitalism. Its power seems inescapable. So did the divine right of kings. Any human power can be resisted and changed by human beings. Resistance and change often begin in art, and very often in our art, the art of words.
— Ursula K. Le Guin, upon receiving
the national book award
https://www.draketo.de/zitate#power
⇒ not all software development is like that and it doesn’t have to be the leading paradigm of dev for a living..
@ericschutte @hembrow
@npub1sr92xvmaxdmqac64d9exptc2qw9wd2pwd593jhrak0raqt4njnhq50l2qw I don’t think so.
Except that she really was good with words.
And her words changed parts of the world.
@gwadej @ericschutte @hembrow
@ArneBab Understood, but as a resident curmudgeon, I don't expect that to change in my lifetime. :GlassesSmirk:
The only mostly bug-free code I've heard of is written by a small number of technical people who ignore arbitrary deadlines. It would be nice.
@gwadej That’s also what I see, though I think that it can change much faster than my lifetime.
Looking back in history there were crafter’s associations who ensured a minimum of quality. A leftover of this is that architects in Germany are required by law to report it when they spot serious security risks in buildings. They are liable if they are found to having seen but not reported a problem.
Concepts like the Cyber Resilience Act (CRA) could cause something similar.
@ericschutte @hembrow
@gwadej @ArneBab @ericschutte @hembrow Sqlite *should* have 100% test coverage, including of compiled code. Their testing code is 10x that of primary function code.
@ArneBab @ericschutte @hembrow Exactly. As a university student in 1990 we were required to use LaTeX for our assignment reports, even at that point our lecturers used TeX as an example of extremely clean, almost-no-bugs software.
I'm pretty confident Knuth very rarely needed to pay out his bug bounty - a quick skim over the notes suggests most reported bugs have been typos in the written documentation, not in the code itself.
@Standard_Phil @ArneBab @ericschutte @hembrow Even if he did have to pay out, you'd be an idiot for cashing the check - a Knuth check has to be worth more than face value! The money would never leave his account!
@geospacedman @ArneBab @ericschutte @hembrow Yeah definitely, I've found bugs but I'm not smart enough to find one by Knuth.
If I did, the cheque would be going straight to the pool room (reference: the legendary Australian movie The Castle).