[MontelLUG] Ostacoli alla diffusione di LInux [was:] Vista funziona! E anche bene!

Davide Rondini davide.rondini a gmail.com
Mer 15 Ago 2007 23:58:04 CEST


Alle 17:47, mercoledì 15 agosto 2007, Samuele Zanin ha scritto:
> Adesso scateniamo un bel flame :-).

Vuoi il flame? E flame sia! :-)
Un bel flame ferragostano è il massimo per svegliare un po' la ml!

> [cut] Quello che sento che invece limita il passaggio a linux è il discorso 
della
> mancanza di software o meglio di gente che sviluppi per linux (sia closed
> che open source).

Al di la del discorso su linguaggi/compilatori che sviluppi in seguito, questa 
asserzione è IMHO proprio l'errore di fondo che commetti. Di gente che 
sviluppa software open ce n'è fin che si vuole, semmai il problema può essere 
concentrare gli sforzi su pochi programmi ben fatti invece di avere, almeno 
per certi ambiti 200 software in beta che fanno ciascuno un pezzo del lavoro. 
Però la varietà è pur sempre una ricchezza per il mondo Open Source. Semmai 
possono esserci ancora delle remore per chi sviluppa Closed source, per 
questioni di standardizzazione (troppe distro, ecc), di opportunità 
commerciale e di costi di sviluppo multiplatform.

> Per me un passo importante sarebbe quello di far entrare in modo
> considerevole linux nelle aziende, ma qui la cosa si fa complicata. Anzi,
> ho assistito al contrario. Migrazioni da linux a win.
> Attualmente linux è confinato a server web o firewall (quando non
> sostituito da firewall hardware molto più rapidi nella configurazione anche
> se non altrettanto flessibili).

Quanto scommettiano che dentro quei firewall hardware c'è un cuore Linux o 
BSD? :-)
 
> Lo sviluppo di software gestionale per le aziende lo vedo molto indietro.

Questo l'ho notato anche io, ma sarei piuttosto restio a pensare che un 
gestionale sia una killer app per Linux.

> Dal punto di vista mio di sviluppatore, a passare sotto linux, allo stato
> attuale sono abbastanza titubante.
> Ho come la senzazione che l'unico compilatore "ufficialmente supportato"
> sotto linux sia il gcc.
> Nel senso che questo è parte integrante del progetto gnu e quindi il
> supporto ci sarà.

Se si parla di C/C++ la tua sensazione corrisponde di sicuro alla verità, e 
non vedo il senso all'esistenza di progetti alternativi. gcc funziona bene, 
implementa perfettamente gli standard ANSI e POSIX, genera codice veloce.

> Il c/c++ può andare bene per sviluppare il s. o. o driver, alcuni
> applicativi che comunicano molto con l'hardware.
> Ho lavorato in una software house che sviluppava il gestionale in c sotto
> unix. In alcuni momenti veniva da lanciarsi dalla finestra alla ricerca di
> puntatori che andavano a quel paese. Questo perché una buona parte del
> lavoro in un gestionale è manipolare stringhe, inoltre se sfori una zona di
> memoria il compilatore c non ti dice niente e ti lascia andare avanti,
> quindi ti becchi poi l'eccezzione in un'altra parte del codice che magari è
> corretta.

Non ho mai sviluppato un gestionale, ma limitare l'usi del C/C++ a cose di 
basso livello è sinceramente un pregiudizio che si sente spesso, ma a mio 
parere del tutto ingiustificato. La gestione della memoria è una rogna, è 
vero, ma quando mio fratello mi ha spiegato per sommi capi come ad esempio 
Java gestisce certe cose, ti giuro che ho rimpianto i puntatori.

Ah, conosci wxWidgets? In caso negativo, preparati al mio talk per le 
conferenze autunnali :-)

> Sinceramente quando sono passato a Delphi sotto win, mi è sembrato di
> andare in paradiso. Raggiungevo lo stesso livello di flessibilità del
> C/C++, ma allo stesso tempo la "sicurezza del codice" nella manipolazione
> dei dati. Ha una tipizzazione forte e i  puntatori li usi solo quando sono
> effettivamente necessari e in parti limitate del codice.
> A suo tempo quando Borland aveva annunciato Kilix più di qualcuno aveva
> fatto il pensierino di passare a linux. Poi però le cose sono andate
> diversamente.
> Attualmente c'è Lazarus e Free Pascal, ma ho provato ad installarlo un paio
> di volte e ho dovuto rinunciare difronte a problemi di conflitti di
> librerie, inoltre ha alcune differenze rispetto al cugino sotto windows e
> non tutti i componenti che si hanno in win sono portabili sotto linux o
> esistono le alternative.

La portabilità è una bella gatta da pelare: in pratica si hanno poche 
alternative se si vuole mantenerla:
1. bisogna limitarsi a usare funzioni di basso livello, definite dagli 
standard (tipo ANSI C/C++), ma si è davvero limitati perché Windows non 
supporta nemmeno POSIX e non si ha la GUI.
2. Si usa un linguaggio interpretato
3. Si usa un toolkit C++ di alto livello e ben fatto: Qt e wxWidgets a mio 
avviso sono i migliori.
 
>
> Si potrbbe pensare a Mono, ma è sempre un passo o due più indietro del
> corrispettivo NET sotto win.
> Java in campo gestionale è già stato scartato.
> Python ci ho dato un'occhiata ma è interpretato e non gode di tipizzazione
> forte, cosa che non mi convince.
> Il COBOL l'ho usato a suo tempo e lasciamolo perdere.
> Ogni tanto si sente nominare qualche altro linguaggio, ma si ha sempre
> l'impressione che siano esperimenti.
> Qundi, in fin dei conti, manca un'attrattiva che dica allo sviluppatore
> sotto linux hai più vantaggi che sotto win.

Questa poi io la trovo una affermazione arbitraria: io da sviluppatore devo 
ancora trovare una attrattiva che mi induca a sviluppare _anche_ per Windows.
Visual Studio è brutto, sporco e cattivo, soprattutto se tenti di lavorare con 
cose portabili o quasi. Ci sono 853 modelli di programmazione, linguaggi, 
estensioni M$ agli standard incompatibili tra loro. E la cosa più fastidiosa 
è che è tutto documentato con i piedi, non si reperisce un'info neanche a 
pagarla oro.
 
>
> Un ultimo appunto lo faccio sui db. Qui dalle esperienze che ho si vada da
> Oracle e in alcuni casi a  DB2 (sul quale però non ho mai messo le mani).
> Postgres ho usato una versione sotto win della 8.qualcosa. Per ripristinare
> un database fatto tramite il pg_dump ci ho messo 3/4 di giornata con una
> serie di casini che non sto a dirvi (quando fai il backup, non ti fa una
> copia fisica dei dati, ma ti genera lo script del tutto il db e le insert
> per tutti i record).
> Durante l'uso poi faceva schizzare l'uso della cpu al 100% in maniera
> considerevole. Un backup mentre il db è in uso è praticamente impossibile.
> MySql non ho provato la 5 che dovrebbe avere risolto le limitazioni della 4
> che invece avevo provato (mancavano trigger e sottoquery, che nel mio caso
> sono fondamentali).

Di database non so un'acca, quindi soprassiedo.
>
> Sinceramente, sotto linux che ci sia il desktop con il cubo oppure che le
> finestre abbiano le trasparenze per me lascia il tempo che trova.

Invece conta, anche l'occhio vuole la sua parte e non tutti gli utenti sono 
sviuppatori o sysadmin.

> Quello di 
> cui sento la necessità è un ambiente di sviluppo al passo con i tempi, che
> mi metta a disposizione una serie di librerie/componenti che mi permettono
> di fare quanto faccio sotto win e soprattutto che se oggi ho un supporto
> possa averlo anche tra qualche anno.

Per il supporto mi viene in mente una cosa: a partire da Vista le MFC non sono 
più ufficialmente supportate, come una serie di altre cose, tipo OpenGL, ecc.

Non so quale sia la tua esperienza, ma per me è accaduto l'esatto contrario di 
quello che dici: abituato a sviluppare per Linux, dove tutto è standard, 
compatibile e ben documentato, mi sono trovato in Windows a patire le pene 
dell'inferno.

>
> Buone ferie a tutti.
>
Too late, già fatte. :-(

Ciao
CD




More information about the montellug mailing list