Commenti & Opinioni


Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Login/Register

ClientCosa?

Ve lo ricordate il "Client-Server"? Erano gli anni '90, io lavoravo spesso con un bel monitor MONOCROMATICO, un coso del peso approssimato di 35Kg ed un bel colorino ambra che faceva paura. Quelli che erano 'fighi' ci avevano il monitor a colori EGA. La Olivetti produceva ancora macchine da scrivere e Google non esisteva.

In effetti, Internet era ancora una cosa abbastanza "sperimentale". Negli uffici di solito si usava Novell o TokenRing (e si madonnava tanto).

E qualcuno comincio' a parlare di "client-server". E che cappero era?

La storia e' che agli inizi, i computer erano grossi e costosi. Pertanto una azienda 'seria' ne comperava UNO che doveva essere usato da tutti. Questi erano i "mainframe", che se andava bene sopportavano 4 utenti che potevano fare ben poco. Percui se si voleva fare delle cose "in collaborazione", l'unica era di avere un bel programma che lo consentiva. E fare i programmi su mainframe costava un botto. Percui ciccia, non si faceva.

Poi IBM decise che volevano vendere piu' roba ed inventarono il "PC". Il problema era che il "pc" era completamente isolato da tutto e l'unico modo di "passarsi" roba era, effettiamente, passarsi roba, cioe' dischetti in modo da poter leggere quello che c'era dentro. Il che era meno che eccezzionale. Ma IBM vendeva anche roba piu' grossa, i summenzionati Mainframe. E gli venne l'idea di poter collegare i PC con il mainframe in modo da avere piu' gente a lavorare nello stesso tempo.

Solo che... come accidenti funzionava sta cosa?

C'erano due 'scuole di pensiero', quelli che sostenevano che il Mainframe e' Dio ed il pc e' solo una finestra che puo' vederne un pezzettino, pertanto il pc altro non era che un "terminale stupido" e tutto era sul mainframe, e c'erano quelli che dicevano che, dato che in qualche modo dovresti mettere insieme il pc ed il mainframe, dovresti avere un modo di farli effettivamente collaborare.

A questo aggiungiamo che la "rete" si stava evolvendo, Internet stava uscendo dall'ombra e cominciava a prendere piede ed a sostituire le varie BBS in giro per il mondo. Ed a qualcuno venne l'idea: CLIENT-SERVER!

Si fa un programma che gira sul "server" (mainframe o quello che e') che fa' il lavoro pesante: calcoli e gestione dei dati, mentre sui pc si fa un secondo programma che comunica con il primo per inviare richieste, ricevere risposte e gestistirsi l'interazione con l'utente. In questo modo il pc fa' il lavoro di visualizzazione e di gestione dell'input mentre il mainframe fa quello che dovrebbe fare meglio: gestire grossi carichi.

Poi.... Poi che cazzo e' successo? Il "Client-Server" e' stato in giro come un'idea mancata per qualche anno e poi e' svanito nel nulla. Nessuno ne parla piu' nessuno ne sente la mancanza, un po' come il "paperless-office" o Windows Vista. Ma perche'?

Per diversi motivi. Prima di tutto, tutti quelli che usavano il "picci'" aveano deciso che il miglior modo di usarlo era fare la roba per conto loro. Ognuno aveva i suoi "fogli" di Lotus 1-2-3 (all'epoca non esisteva Excel) o i documenti di WordStar (all'epoca non esisteva Word). E quando fu introdotta la "rete", quello che tutti volevano era un "coso condiviso". Un modo per buttare tutti i "fogli" e tutti i "documenti" in un unico calderone dovo sbattere dentro tutti ed in cui ognuno pescava quello che gli faceva piu' comodo e poi ributtava dentro.

Il "server" era pertanto non una cosa che doveva "fare" delle cose. La domanda non era "cosa puo' fare" ma "quanti documenti ci possiamo mettere dentro".

Poi qualcuno se ne usci' con il UoldUaidUeb' ed un coso che era capace di mostrare foto di gatti sullo schermo.

E per concludere, il resto del pianeta si rese conto che a. scrivere programmi Server e' fottutamente difficile e b. scrivere programmi client e' una rottura pazzesca. Il che significa COSTOSO. Mentre qualunque babbuino semisenziente e' capace di scarabocchiare una pagina Ueb'.

Se voi state scrivendo un commento "ma il web e' client-server". No, fermatevi subito. Il Ueb NON E' client server. Il concetto di 'ueb' ed il concetto di 'client-server' sono MOLTO diversi.

L'idea originale era di avere la parte di data-processing ed archiviazione sul server, sostanzialmente un database con codice dedicato per fare calcoli ed estrazioni di dati specifiche. Il "client" doveva essere una applicazione relativamente leggera (notare il 'relativamente'), che si doveva occupare dell'interazione con l'utente. Quindi controllo dell'input e presentazione dei risultati. Il "server" era responsabile per fornire i dati "nudi e crudi" (o quanto di piu' simile) e doveva essere il client a "finire" il lavoro di presentazione e gestirsi e controllare l'input.

Nel caso del "ueb", il client e' una cosa stupida che si limita a prendere quello che gli da' il server e sbatterla sullo schermo nella maniera piu' simile all'originale possibile. Se c'e' dell'input, viene inviato tale e quale al server e sono cazzi suoi smazzarselo.

Quindi tutti quanti hanno pensato "client-server? bello bello, adesso, quanto cazzo e' grosso il 'disco condiviso'?".

Ed ovviamente, tutti quanti hanno seguito i soldi.

Novell, che era capacissima di fare un Application Server, ha fatto di tutto per far si che i suoi clienti se lo dimenticassero e si limitassero a sapere che "noi abbiamo i dischi di rete e le stampanti di rete", e dato che all'epoca Novell era il leader, tutti gli altri gli sono andati dietro. Fino al punto che UNIX, no dico, UNIX, un sistema operativo da SERVER, si e' piegato ed ha aggiunto quell'obbrobrio di 'NFS'.

Ricordo che anni addietro un conslutante "esperto di databases" venne a domandarmi le credenziali per fare RDP sul database server. Al che gli domandai che cazzo se ne faceva di fare rdp sul database server e lui rispose, tutto serio, "come faccio a collegarmi al database altrimenti?". Perche' era esperto di database ma ignorava il fatto che il suo CLIENT, installato sul suo PC, poteva collegarsi con il server. Il suo concetto di "usare il server" era fare RDP ed usare il client SUL SERVER.

Ed oggi? Oggi, che siamo quasi nel 2020, e sono passati 30 anni cazzo, quando parliamo di "rete" intendiamo il Ueb ed i fottuti "dischi condivisi". Ed il massimo che abbiamo saputo fare e' aggiungere una patina di "ueb" su tutto quanto. Mentro io smadonno perche' i miei utenti hanno deciso che il miglior modo di fare le loro cose, e' avere una pletora di fogli Excel con miliardi di celle dentro ed ognuno collegato con tutti gli altri, quindi quando fai una modifica passa 45 minuti a ricalcolare l'universo e poi ti dice che la risposta e' 42.

Quale e' la differenza tra oggi ed il 1990? Che non c'e' piu' Lotus 123. Tutto il resto e' come prima.

Davide Bianchi
25/10/2018 14:01

I commenti sono aggiunti quando e soprattutto se ho il tempo di guardarli e dopo aver eliminato le cagate, spam, tentativi di phishing et similia. Quindi non trattenete il respiro.

7 messaggi posta messaggio
MaxR Di MaxR - postato il 26/10/2018 09:34 - rispondi

...e la citazione alla Guida Galattica era obbligatoria :\)

Che tristezza, in effetti.

Buon WE a tutti

 

--
MaxR


Messer Franz Di Messer Franz - postato il 26/10/2018 13:00 - rispondi

OK, bell'articolo, tutto a posto, ma ti assicuro che quando ho iniziato a leggerlo mi aspettavo che finisse con una disavventura PHP.

Eviterò i commenti "no, non va come prima, adesso i programmi sono migliaia di volte più pesanti (vi ricordate che il win '95 era da 16 mega?)" ma aggiungo: non importa la tecnologia, quando l'utente non sa cos'ha davanti, il tecnico vuole spiegarglielo ed il capo dice "chissenefrega, tanto va bene anche come lo vuole usare lui" ed il tecnico passerà il resto della sua vita tormentata a rimediare agli errori dell'utente che fa cose che non dovrebbe fare e che SAPREBBE DI NON DOVER FARE SE IL TECNICO GLIELO AVESSE POTUTO SPIEGARE, le cose possono solo peggiorare.

Ma siamo noi che non capiamo di management.

Quello che gestisce le Aziende d'oggi in modo moderno ed agile, quelle che sono in crisi e che causano la recessione mondiale o almeno la peggiorano.

Sì, proprio quelle.

ps: DB, fà il partito "tecnologia, democrazia e calci in culo a chi merita" e io ti voto 3 volte per ogni elezione.

--
Messer Franz


Aleritty Di Aleritty - postato il 27/10/2018 22:24 - rispondi

Beh, per il Ueb oggi c'è Uebsockets che funziona più o meno come dici tu (o almeno può farlo).

Con Node.js e mongodb io lo uso esattamente come hai descritto tu... Client Server...

Solo che oggi i client contemporanei sono TANTI ed i server anche, ed ecco cosa è cambiato oggi rispetto a ieri

--
Aleritty


Mirko Schiavolin Di Mirko Schiavolin - postato il 29/10/2018 11:59 - rispondi

Io lavoro per un'azienda (tedesca) che sviluppa un software client-server... con application server e tutto quanto. Una mosca bianca?

--
Mirko Schiavolin


Anonymous coward Di Anonymous coward - postato il 29/10/2018 17:05 - rispondi

Io ho avuto a che fare con dei consulenti di una nota azienda mmerigana (quella che inizia con A e finisce per ccenture...) che mi hanno chiesto di installare su Red Hat "l'interfaccia grafica" e VNC server per potercisi collegare da remoto... Per fare cosa? Lanciare uno script bash. :|

--
Anonymous coward


Anonymous coward Di Anonymous coward - postato il 02/11/2018 12:35 - rispondi

<D> E per concludere, il resto del pianeta si rese conto che a. scrivere programmi Server e' fottutamente difficile e b. scrivere programmi client e' una rottura pazzesca. Il che significa COSTOSO. Mentre qualunque babbuino semisenziente e' capace di scarabocchiare una pagina Ueb'.

Secondo me anche scrivere una BUONA interfaccia web è difficile e costoso, ed infatti gli applicativi web fatti bene sono una rarità....

Se non si fosse diffuso il web, oggi avremmo programmi client-server che usano giga di ram -sia sul client che sul server- per processare "hello world"

--
Anonymous coward


Massimo M. Di Massimo M. - postato il 06/11/2018 21:18 - rispondi

Io dico spesso che siamo passati da un mainframe e terminali stupidi, a un server web con client semi-stupidi. Alla fine non tutto il concetto di "grosso sistema con tutti i dati sopra, e N terminali stupidi che vi accedono" era cosi' sballato.

--
Massimo M.


7 messaggi posta messaggio

Precedente Successivo


Il presente sito e' frutto del sudore della mia fronte (e delle mie dita), se siete interessati a ripubblicare uno degli articoli, documenti o qualunque altra cosa presente in questo sito per cortesia datemene comunicazione (o all'autore dell'articolo se non sono io), cosi' il giorno che faccio delle aggiunte potro' avvisarvi e magari mandarvi il testo aggiornato.


Questo sito era composto con VIM, ora e' composto con VIM ed il famosissimo CMS FdT.

Questo sito non e' ottimizzato per la visione con nessun browser particolare, ne' richiede l'uso di font particolari o risoluzioni speciali. Siete liberi di vederlo come vi pare e piace, o come disse qualcuno: "Finalmente uno dei POCHI siti che ancora funzionano con IE5 dentro Windows 3.1".

Web Interoperability Pleadge Support This Project
Powered By Gojira