R: Re: [aha] Scioccante

DW dw at mondonerd.com
Mon Feb 18 13:14:21 CET 2008


xDxD xD wrote:
> hardware e software
>
> non ha senso attribuire all'hardware le caratteristiche del software
> che fa girare.
>
> ma il software non funziona su tutti gli hardware, indistintamente, no?
> quindi, in qualche modo, non proprio esplicito, l'hardware descrive il
> software e il software descrive l'hardware.
Questa affermazione, dal punto di vista dell'ingegneria del software, e'
secondo me falsa.

Il software e l'hardware sono mantenuti indipendenti il piu' possibile e
quando vengono in contatto dovrebbero farlo sempre per mezzo di
interfaccie generiche che permettano all'hardware di compiere piu' funzioni.

A questo servono i compilatori, gli interpreti, i server e quant'altro
per far da "tecnologia di mezzo".

Quindi se tu analizzi l'hardware al massimo puoi ricavarne un
compilatore ma non le possibili applicazioni che ci gireranno proprio
perche' queste sono potenzialmente infinite.

Se invece programmiamo a basso livello questo potrebbe essere in certi
contesti vero ma e' a un livello cosi' primitivo (porte logiche ad
esempio) che stiamo parlando di hardware e software molto basici.

Infine ci sarebbero anche hardware che funzionano senza un vero e
proprio software (ad esempio usando semplici regole fisiche implementate
come sistemi complessi) come anche software pensati per hardware che non
esistono...

Insomma secondo me hai trattato con leggerezza un tema serio.

>
> c'è comunque una zona oscura, in cui non sai cosa serva esattamente a
> far funzionare cosa, e t'accorgi che, spesso, gli errori (alcuni tipi
> di errore) son più creativi e funzionali di tanti algoritmi meditati e
> progettati.
>
> (per i programmatori: quando non v'è successo di vedere un programma
> funzionare, ma di star ore a capire quale loop creava "proprio
> quell'effetto"? stessa cosa per i circuiti ... capace che il trigger
> "giusto" lo dava proprio quel collegamento "sbagliato")
Questo puo' succedere solo se quello che cercavi di programmare era una
applicazione con un obiettivo non chiaro.

Se io volessi ottenere una perfetta traiettoria parabolica in una
animazione, qualsiasi errore nel mio codice puo' portare esclusivamente
a "quell'effetto" che pero' non e' la mia perfetta traiettoria parabolica.

Questo concetto di side effect e' insomma applicabile solo a cose
semplici (come un piccolo circuito) o ad atti volontari (come ad esempio
usare il comportamento del compilatore in particolari operazioni per
ottenerne un vantaggio non previsto).
> (...)
>
> e c'è un meccanismo che, senza che nessuno glielo dica, esprime un
> sacco di cose riguardo l'umanità, che continua incessantemente a
> ficcargli cose dentro (dai video delle vacanze, al sito preferito, al
> video snuff).
>
> esprime tante cose e descrive in maniera abbastanza precisa, tante 
> strutture...
>
Il tuo "senza che nessuno glielo dica" e' piuttosto opinabile.
> forse in un modo un po' troppo complesso per risultar "utile" o
> "comprensibile" a qualcuno.
A quelli del marketing credo risulti semplice ed utile (anzi
remunerativo) capire queste strutture da loro stessi ingegnerizzate e
diffuse...
>
> mi sa che è così.
>
> più o meno.
Secondo me no. Piu' o meno.


ciao,
dw puntiglioso


More information about the Aha mailing list