Buonasera,

chiedo scusa se ritorno dopo tanto tempo su questo messaggio (e
articolo) che avevo in coda

Lorenzo via nexa <nexa@server-nexa.polito.it> writes:

> Segnalo questa opinione:

articolo molto ben fatto, grazie della segnalazione!

> https://ben11kehoe.medium.com/the-end-of-programming-will-look-a-lot-like-programming-8b877c8efef8

Mi permetto di riportare un estratto che a mio avviso è necessario e
sufficiente a spiegare il nocciolo della questione dell'impossibilità
_ontologica_ del "end of programming":

--8<---------------cut here---------------start------------->8---

If you’ve worked as a software developer, you know that business
requirements often come as vague, ill-defined, even contradictory ideas
written down in ambiguous language. The primary question about this
AI-only software development is, how will it make software that
implements what the product manager intends the software to do?

I think there are two general directions, which are not mutually
exclusive.

The first is that the AI has to ask the product manager about every
individual choice and ambiguity. [...] Over time, the AI’s designers
will start offering shortcuts that allow the input requirements to mean
specific things when framed a certain way, so the product manager can
make their choice clear from the outset.  So we’ve got a method for
expressing system behavior with formal guarantees.  That is, we’ve
invented a new programming language.  At this point, the product manager
is now a software developer.

The other is that the AI is good enough to consistently correctly guess
the right answer to choices and ambiguity in the requirements and good
enough to know when it doesn’t have confidence it can guess
correctly. To do this requires an enormous amount of human cultural
knowledge and probably a high degree of knowledge of the specific person
acting as the product manager. The AI is doing the work of translating
the business requirements into formal system behavior requirements, as
well as implementing them. At this point, the AI is now a software
developer.

[...]

I think the second direction, AI-as-software-developer, is quite a ways
off, specifically because cultural context and self-awareness are hard
things. I doubt you need AGI to get it, but it seems like it would be a
good chunk of the way there. So if you’re bullish on AGI, you can hope
we’ll get it sooner rather than later.

--8<---------------cut here---------------end--------------->8---

[...]

Quindi, in attesa dell'avvento di una AGI: tocca _programmare_.

Lo ripeto: programmare significa esprimere come deve funzionare (quali
output fornire) un calcolatore in base agli "input" e questa
_espressione_ non può che essere in un linguaggio sorgente che dia delle
garanzie formali di poter essere "tradotto" [1] in codice macchina che
rispetti (o cerchi di rispettare) l'espressione formale, codice macchina
che è l'unica cosa che i calcolatori sono in grado di eseguire.

Esprimersi in un linguaggio sorgente che abbia quelle caratteristiche
significa programmare.

Non ci sono scorciatoie.

Semmai, si può discutere su quale sia il lingiaggio formalmente
garantito più adatto al dominio del problema da risolvere... ma questo
nulla c'entra con la fine della programmazione.

Saluti, 380°


[1] attraverso un _complesso_ sistema di build del software.

-- 
380° (Giovanni Biscuolo public alter ego)

«Noi, incompetenti come siamo,
 non abbiamo alcun titolo per suggerire alcunché»

Disinformation flourishes because many people care deeply about injustice
but very few check the facts.  Ask me about <https://stallmansupport.org>.

Attachment: signature.asc
Description: PGP signature

_______________________________________________
nexa mailing list
nexa@server-nexa.polito.it
https://server-nexa.polito.it/cgi-bin/mailman/listinfo/nexa

Reply via email to