VB OR NET VB

Mauro VB Homepage - Articoli di Mauro Rossi e Claudio Gucchierato

Stimolati da alcuni recenti articoli apparsi in rete su VBtips&tricks, ci permettiamo di scrivere alcune considerazioni personali sulla questione del passaggio voluto da Microsoft da VB6 a VB.NET.

Come è noto Microsoft ha deciso di non supportare più VB6 e di far "migrare" tutti gli utenti verso la nuova piattaforma .NET. Ovviamente l'azienda di Redmond è liberissima di fare le proprie scelte in merito alle strategie di mercato o alle proprie considerazioni sullo sviluppo di software senza minimamente tener conto del parere degli utenti ma, in questo caso, crediamo che questi ultimi (ovvero noi utilizzatori) abbiano almeno il diritto di replica.

Ieri...

VB è stato per anni un prodotto trainante per Microsoft, non solo in termini di vendite del singolo prodotto, ma soprattutto, grazie all'enorme diffusione, un veicolo attraverso il quale si è andata creando una infinità di piccoli programmatori, amatoriali, professionisti privati o a livello aziendale, che hanno permesso la diffusione del sistema operativo Microsoft e dei suoi principali prodotti, Office (ma non solo) in primo piano. La facilità d'uso e l'immediatezza, peculiarità molto apprezzate di VB, sono state le armi vincenti di un prodotto che si è andato via via consolidando negli anni anche nelle piccole e medie aziende, permettendo la nascita di programmi che hanno senza dubbio contribuito in modo consistente alla diffusione dei computer e del sistema operativo Windows. Non per nulla si trattava di un'applicazione RAD (Rapid Application Development). Questo tipo di politica ha creato una miriade di programmatori (diciamo pseudo programmatori per non far innervosire quelli con la P maiuscola) che, grazie alle nuove scelte, sembrano (ma noi ci auguriamo che non sia così) destinati a sparire o, quanto meno, ridursi in modo molto consistente.

Oggi...

Innanzitutto chiariamo subito un equivoco (voluto?) di fondo: VB e VB.NET sono due linguaggi completamente differenti. Lo sono a tal punto che neppure gli strumenti di migrazione ideati da Microsoft riescono a convertire i vecchi progetti VB nel nuovo .NET. In pratica si è voluto mantenere (almeno così sembra) la sigla VB solo per una questione di mercato, per cercare di recuperare buona parte dei vecchi programmatori VB e convertirli al nuovo programma. Questo da un lato ha creato aspettative e dall'altro fortissime delusioni. Moltissimi, e non a torto, cercano su VB.NET le vecchie funzioni che sapevano esistere su VB6 ma, ahimè, non le trovano e non le potranno mai trovare perché sono state sostituite da altre.

Abbiamo letto molto sulla nuova piattaforma VB.NET (anche se tra i siti italiani non si parla molto della cosa) e sui grandi vantaggi che comporta (o sembrerebbe comportare) in termini di programmazione, gestione della memoria eccetera. Molti sono i commenti entusiastici su come finalmente si persegua una vera programmazione ad oggetti e a classi. Tutte dissertazioni validissime ma, dal nostro modesto punto di vista, poco significative. La programmazione ad oggetti esiste da decenni e non è certo nata col NET. Il C++, Java e altri linguaggi ne sono stati e ne sono tuttora indiscutibili portabandiera. E allora la domanda nasce spontanea: c'era proprio bisogno di un altro programma di quel tipo? Non era sufficiente segnalare agli utenti la potenza di quegli strumenti di programmazione lasciando al contempo sopravvivere chi della programmazione aveva fatto un proprio passatempo o il sistema per ovviare in modo veloce a piccoli (ma a volte grandi) problemi quotidiani?

E' questo quello che davvero non si riesce a comprendere nella strategia della casa di Redmond.

I veri Programmatori (quelli di cui sopra, con la P maiuscola) hanno sempre strizzato il naso ogni qualvolta gli si parlava di Visual Basic, e non avevano certo bisogno di una piattaforma come il NET per differenziarsi dalla massa dei pseudo programmatori.

Probabilmente si segue, volontariamente o meno, una politica incomprensibile (e antieconomica) di scrematura e discriminazione. Sino a che si è dovuto allargare il mercato, conquistare postazioni, la tendenza era quella di coinvolgere il maggior numero di persone nei propri progetti. Oggi, col mercato saldamente in mano, al limite del monopolio, vanno probabilmente ristabilite le "caste": programmatori da un lato e utenti dall'altro, senza compromessi pericolosi. Compromessi che comporterebbero soprattutto concorrenze a basso costo e mancato controllo del mercato della programmazione.

Ci sono poi dei dati di fatto (leggi più sotto) che alimentano i dubbi (e i sospetti) sul fatto che la strategia Microsoft sia di natura "politica" ancor prima che economica.

La piattaforma NET è stata lanciata ormai da oltre quattro anni con grande spolvero di fanfare e, in questo lungo periodo, sono uscite diverse versioni (i progetti realizzati con le quali erano incompatibili l'uno con l'altro....). Da allora non sembra che ci sia stata grande rispondenza da parte della stragrande maggioranza degli utenti VB. Ancora oggi sono relativamente pochi i siti dedicati al NET e pochissime le applicazioni realizzate con tale tecnologia. Molte aziende, che hanno comunque dovuto sostenere i costi per preparare i propri programmatori alla migrazione, hanno poi scelto di non migrare le applicazioni e le migliaia di righe di codice accumulate negli anni precedenti. Inoltre, le stesse voci di chi, a spada tratta, sostiene la nuova tecnologia, sono perlomeno sospette. "Casualmente" si tratta per lo più di conferenzieri Microsoft o persone che stanno dedicandosi alla stesura di manuali (che verranno poi venduti sul mercato) sull'argomento. Con questo non si vuol certo dire che il loro entusiasmo non sia sincero e le loro argomentazioni non siano efficaci, ma certo è che, come detto sopra, chi lo fa per mestiere ha orizzonti e punti di vista ben diversi da chi opera per diletto.

La decisione, infine, di Microsoft di rilasciare una nuova versione (Visual Basic .NET 2005 Express) con minori funzionalità e, a loro dire, di più semplice approccio, dimostra, a nostro avviso, le palesi difficoltà incontrate dalle precedenti versioni in fase di diffusione. Come se non bastasse tale versione è stata distribuita gratuitamente sul sito della società: promozione dirà qualcuno, ma è pur vero che i prezzi per nulla popolari a cui viene venduta la versione "completa" sono di per sé un elemento frenante alla diffusione.

Piccola digressione...

Ad ottobre siamo stati allo SMAU ed abbiamo visto da un lato le conferenze quotidiane Microsoft sul NET e dall'altra gli scaffali di alcune grosse case editrici: su questi ultimi, ristampati in modo massiccio, spiccavano le guide su VB6 e in qualche angolo si vedevano manuali sul NET. Segno questo dell'interesse ancora molto alto per il VB. Tra l'altro, lo stesso manuale sul VB6 (gratuito) che viene distribuito sul "nostro" sito, ha avuto, inaspettatamente, da settembre ad oggi, migliaia (senza esagerazioni) di download: saranno solo collezionisti di antichità? La cosa strana (o interessante) è che il trend dei download rimane pressoché costante ad ogni mese.

Accanto a questo, inoltre, esiste una petizione internazionale ( http://www.classicvb.org/petition/?lang=it) dei programmatori VB che chiede alla Microsoft, in modo più che ragionevole, di continuare il supporto della versione 6 e di proseguire ed estendere l'utilizzo del linguaggio classico. Firmata già da oltre 10.000 programmatori di tutto il mondo, tra cui alcune centinaia di MVPs (programmatori certificati Microsoft), questa petizione ha già ottenuto un buon risultato, facendo slittare il supporto di VB6 da parte di Microsoft da marzo 2005 a marzo 2008. Segno comunque palese del malumore forte da parte di molti utenti.

Domani...

Noi crediamo che i piccoli programmatori (con la p minuscola) meritino innanzitutto rispetto per quanto hanno contribuito nel corso degli anni alle fortune di Microsoft. Si dica, quindi, chiaramente che il NET ha poco a che vedere con VB! Si dica che si tratta di una piattaforma nuova e diversa, rivolta soprattutto ad un pubblico professionale, con caratteristiche innovative ma diverse dal linguaggio tradizionale. Si dica che chi ha intenzione di passare al VB.NET dovrà, praticamente, buttare alle ortiche quasi tutte le proprie conoscenze e iniziare, praticamente da zero, lo studio del nuovo linguaggio.

Concludendo...

Questo nostro intervento, come si può capire facilmente, non vuole essere assolutamente un commento tecnico e nemmeno polemico, ma solo un democratico contributo ad una discussione che pare pochi siano disposti a fare. Si tratta solo di alcune considerazioni fatte da chi ama VB e vorrebbe solo che si facesse chiarezza in piena onestà e obiettività.

Chiudiamo, adesso, con una proposta: Microsoft, visto che ha deciso che VB6 non venga più distribuito, potrebbe rendere pubblici i sorgenti e rendere VB6 open source. Ovviamente si tratta di una proposta provocatoria, sapendo in anticipo che non lo farà mai, perché questo comporterebbe l'affossamento della sua strategia. Ma se Microsoft è così convinta dell'efficacia del NET e della sua filosofia vincente, perché non provare?

Provocazioni a parte… Noi (e siamo davvero tanti!) speriamo che Microsoft voglia rivedere i propri progetti e decida di continuare a supportare il VB, pur continuando a sviluppare la neo (quasi) piattaforma NET. Senza scendere a compromessi, ma ragionevolmente, il VB potrebbe diventare (diciamo arretrare?) un linguaggio dedicato a programmatori "entry-level", il che permetterebbe di soddisfare le esigenze dei diversi livelli di utenza.

Ringraziando tutti quelli che hanno avuto la pazienza di leggerci fino a qua, auspichiamo che Microsoft riveda, almeno in parte, le proprie strategie e continui a supportare (con il giusto tornaconto economico) il VB, nella forma tradizionale che tutti conosciamo, ancora per molti anni.


Riferimenti

Copyright © 2006

In merito a questo articolo, potete scrivere agli autori Mauro Rossi e Claudio Gucchierato

Sito Internet: www.maurorossi.net