We have been trying to replace coders with some technology since at least COBOL.
https://www.commitstrip.com/en/2016/08/25/a-very-comprehensive-and-precise-spec/
We have been trying to replace coders with some technology since at least COBOL.
https://www.commitstrip.com/en/2016/08/25/a-very-comprehensive-and-precise-spec/
I think with smart contracts it's both faster and cheaper to have it evaluated for some inputs compared to have it evaluated by several rounds of judges. By a lot.
@tessarakt @hweimer @vampirdaddy @Natasha_Jay
One thing that "smart contracts" have taught us is that we, as humans, are not as good as we think at evaluating all the possible consequences of a precisely worded specification. We're easily fooled. And easily scammed. And so it turns out that we still need conventional contracts, laws, and enforcement, should we hope to achieve actual "fairness" and "justice."
There's a saying among programmers. If it can go wrong, it *will* go wrong.
It's a caution to remind you to check all the edge cases. I guess the same principle applies to law.
@hosford42 @JeffGrigg @tessarakt @hweimer @vampirdaddy @Natasha_Jay
Smart contracts & human law serve different purposes. Some smart contracts are simple If-This-Then-That, unambiguous logic, without human intervention.
Human law on the other hand, is flexible and discretionary by design, simply because all human activity, now and in the future, cannot be anticipated, regulated, and unambiguously codified. There's always a human element to take into account. Judge do misuse this discretion.
@purrperl @hosford42 @JeffGrigg @tessarakt @hweimer @Natasha_Jay
That’s the theory.
For classic legal contracts, too.
As soon as you pay the money, the stuff is yours.
Perfect plain if-then.
Works the same in cyber as IRL.
Unless hickups. Money transfer hangs, double spending on one of the sides…
API or shipping misalignments.
Malice.
Typo.
The details may differ, the basic problems ate the same.
@vampirdaddy @hosford42 @JeffGrigg @tessarakt @hweimer @Natasha_Jay
Those with malice get their comeuppance. There is Divine Justice.
There is God, and then there are humans pretending to be god. Those are the ones who really find out what's real IRL.
@hweimer @vampirdaddy @Natasha_Jay Sure, it's a lot faster and a lot cheaper!
It'll also get you a wrong answer. Because it turns out that "exact rules of operation" is not how legal systems actually work.
@ktneely
Major projects that are "on time on budget" are when the PM has a project owner wise enough they can agree to a significant (hidden) contingency in the budget to allow for scope variation and chucking in resources if time frames are truly fixed
@Natasha_Jay I love this, but I also fear that some 'vibecoders' might use this as an excuse to say the prompts they're writing is code
which, as much as I also use AI tooling from time to time, I don't think compares to writing actual deterministic code that always generates the same output. You're never going to get 'reproducible builds' from a prompt I don't think 🤔
@anthropy @Natasha_Jay I'm not sure they're wrong. Before "AI", being a "good coder" often meant knowing the right terms to find what you needed from Google!
I think some now believe we've successully outsourced the need for good search terms and actually reading/understanding the results.
But we demonstrably have not.
@Li @anthropy @Natasha_Jay I've had to do a lot of "google-fu" recently because I "went back to Linux" and I swear the search results are getting worse and worse.
The relevance is getting very questionable. I assume the lack of click throughs is killing the page rankings of "the good stuff (tm)".
NB I mostly use DDG but I fall back to Google when I can't find what I need.
@anthropy @Natasha_Jay technically, this is only because the output is randomized weights on it, added in somewhat because ai bros want to make it look more "alive" and "organic"
writing code is generally speaking, easy once you get the hang of it, its everything else thats the issue this is what vibecoders miss,
you can say somewhat that it is a sort of "english to c transpiler" (ulbeit a very shit one that makes shit up and generates invalid codehalf the time (even if you dont have rng) ..
@Natasha_Jay In fact, way before COBOL (or FORTRAN). Autocoder (IBM), Easycoder (Honeywell) and similar, systems later commonly known as Assemblers, were developed so "every user" could write whatever program is needed without having to ask a programmer to do the job. Cobol, 4GL and so on were further reiterations...
https://en.wikipedia.org/wiki/Autocoder#/media/File:IBM_1401_AUTOCODER_programm_select_and_print.jpg
Obfuscation and elitism? Please tell me more! I am genuinely curious.
Or worse yet you end up with something like the wayland-scanner. Wayland protocol extensions are created by writing the specification in XML; the wayland-scanner tool then converts this into a C module and headers.
But who in their right mind thought writing in XML was better than C?!
EDIT: Answer: the same kind of people who thought "vibe coding" would be easier than just writing the f***ing code.
@Natasha_Jay Programming languages are the solution to the problem of "how do we let people talk to machines effectively"
And we've always been dealing with people who don't want to communicate with the *necessary* precision trying to tell us ways to "do it better"
Guy: If only there was just a better way to communicate to the AI what I code want it to generate! It’s hard to describe what I want in English sometimes. Me: So you want something declarative or at least structured. Guy: Yes! And it would be able to generate a more consistent result too. Me: We already have a tool like that. It’s called a compiler.
A lot of this stuff has an odour of "what if we didn't have to have these people around at all".
@Natasha_Jay My personal favourite (came out when I was an undergraduate):