[Linuxtrent] Re: [OT] Utente o programmatore?

  • From: Marco Ciampa <ciampix@xxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Sun, 12 Oct 2014 16:44:47 +0200

On Sun, Oct 12, 2014 at 02:43:32AM +0200, Flavio Visentin wrote:
> On 10/11/2014 12:00 PM, Marco Ciampa wrote:
> >>Si può scrivere un buon software solo se si conosce bene il problema,
> >>oppure serve essere dei bravi programmatori?
> >>
> >>La risposta sembra scontata: entrambe le cose sono indispensabili.
> >
> >A me la tua domanda per esempio (per come è posta) ne fa sorgere
> >un'altra: tra le due, è meglio conoscere bene il problema o saper
> >programmare bene? Per me questa è scontata: la prima.
> 
> Non dovrebbe essere scontata, perché salvo generalizzazioni, la
> conoscenza del problema non è elemento né necessario né sufficiente
> per la scrittura di un buon programma, mentre l'essere buoni
> sviluppatori è un elemento necessario per scrivere codice
> funzionante correttamente.

No scusa mi sono espresso male e quindi hai risposto in base ad una
comunicazione che era, ancora una volta, equivoca, anche se pensavo di
aver chiarito, pensa un po'...

ehhhh quanto è difficile spiegarsi...

Volevo dire:

Tra le due, è meglio conoscere bene il problema o saper programmare bene?

Ovvero: se non conosco il problema, non perché non ne sono esperto
-il programmatore di lavoro fa altro- ma perché non ho modo di venire in
relazione con esso, tramite persone direttamente o indirettamente
connesse con esso, siano analisti o consulenti, come faccio a sviluppare
il programma su questo?
In poche parole, se _non conosco_ il problema, a prescindere dalla
"filosofia" come faccio a risolverlo? Non ditemi che basta chiedere
a chi lo conosce perché ho detto chiaramente che _non_ conosco il problema.

Per me, anzi per tutti, per definizione, è scontata la prima.

Se non so programmare bene il mio programma potrà bloccarsi ogni tanto,
potrà essere lento a partire, le ricerche saranno lente perché gli
algoritmi di ricerca saranno banali o scorretti, l'interfaccia potrà
essere primitiva o scomoda, ma potrò fare il mio lavoro.

Perché il programma farà (magari male) ma quello che serve a me utente, e
non quello che il programmatore si è "inventato", dato che non conosce il
problema, quello che è il mio lavoro di utente.

Tra l'altro, dato che i computer sono sempre più veloci e il lavoro di
segreteria è grossomodo sempre lo stesso, parte dei problemi legati alla
cattiva programmazione spariscono come per magia all'aumentare della
performance.

Se conosco bene il problema sono in grado per esempio di organizzare bene
la base dei dati che è il vero nodo di tutti i problemi.

La programmazione orientata agli oggetti è un esempio del fatto che sono
i dati e le relazioni tra essi il fulcro. Gli algoritmi escono
"naturalmente" da queste relazioni. Se so programmare bene o meno, se i
dati sono impostati correttamente, diventa poco influente nel bilancio
generale. Il programmatore è un mero esecutore se l'analisi è stata fatta
bene. I problemi di cui stiamo parlando, senza capirci, riguardano
principalmente analisi fatta male o non fatta del tutto.

Insomma bisogna conoscere il problema, saper programmare bene è opzionale.

bye

-- 


Marco Ciampa

I know a joke about UDP, but you might not get it.

+--------------------+
| Linux User  #78271 |
| FSFE fellow   #364 |
+--------------------+

-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con OGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: