Cerca nel blog

Loading

14 agosto 2011

Che noia le applicazioni web

E' da qualche settimana che mi sono buttato nella web-programmazione, nulla di particolarmente complicato, anzi decisamente di livello banale, ma secondo me è una leggenda metropolitana che chiunque può inventarsi programmatori 2.0.

E' cominciato tutto quando ho voluto provare ad integrare dei grafici interattivi utilizzando Google Chart Tools API. Il termine api non rappresenta il genere degli insetti sociali di cui l'ape Maia è tra i suoi più noti rappresentanti; API è un acronimo inglese utilizzato per intendere quell'insieme di procedure che un programmatore può utilizzare per integrare nella propria applicazione funzionalità esterne.

Nel giro di poche ore, ringraziando le esperienze di programmazione C++ nella mia vita precedente, ho trovato il bandolo della matassa ed avevo integrato in una paginetta web locale grafici, mappe e altri ammennicoli (1 e 2) del panorama Google. Fino a questo punto tutto girava sul mio computer locale, nel senso che la pagina web che avevo utilizzato come banco di prova era fisicamente salvata sul mio hard disk e l'unica cosa che prendevo dalla rete erano le API di google. Il passaggio logico successivo è stato quello di trasferire questa pagina sul web. Mi creo un blog di prova su Blogger - tanto è gratis! -, copio e incollo l'HTML della pagina locale e dopo cinque minuti la mia mini web-application è in linea.

E qui cominciano le sorprese. La mia paginetta semplice semplice è stata trasformata da Blogger in un qualcosa di molto più evoluto CSS di qui, altri javascript di là. Risultato l'applicazione funziona solo a metà: si vedono i grafici, ma niente mappa, o meglio la mappa appare per un secondo e poi si ricopre tutta di bianco. Combatto una mezz'ora buona, interrogo il grande oracolo, ma nulla. Apparentemente sono l'unico al mondo ad avere questo problema e la risposta non esiste ancora. E poi l'illuminazione, visto che la mappa appare per una frazione di secondo prima di sparire potrebbe essere che il CSS di blogger è un po' troppo invasivo ed è lui l'origine del guaio. Cerco un po' e trovo l'inghippo, lo stile utilizzato metteva uno sfondo bianco alle piastrelle della mappa.

Stavo già per stappare una bottiglia, in senso figurato visto che non bevo, quando mi viene un dubbio. Lasciami provare su windows... mi sposto di qualche metro, accedo al pc di mio cognato con windows 7: con Firefox è tutto come mi aspettavo, ma con IE non c'è nemmeno l'ombra di quello che mi aspettavo. Non va nulla e la cosa peggiore è che non ho messaggi di errore e nessun modo per fare un po' di debug. Questa è chiaramente una mia lacuna, ma mentre quando programmi per davvero il compilatore ti aiuta a correggere quello che non va con messaggi di errore e ci sono fior fior di programmi per il debug, qui non c'è nemmeno un piccolo suggerimento. Faccio un paio di ricerche, ma non trovo nulla di specifico. Ci sono volute parecchie ore - e non sto esagerando - per trovare che almeno uno dei problemi è una non meglio compresa incompatibilità del mio script con quello che gestisce il Google Friend Connect widget che è utilizzato anche in questo blog.

La mia avventura ancora non è finita perché, nonostante tutte queste avversità, continuo nello sviluppare la mia applicazione cercando di dargli oltre al contenuto anche una forma. Mi serve uno di quegli aggeggi calendario in cui il visitatore può scegliere la data, ce ne sono un paio, scelgo questo perché ha tutte le cose che mi servono. Lo metto sul sito di prova e funziona tutto alla grande, quando però lo passo su unico-lab, mi accorgo che qualunque data l'utente sceglie lo script vede sempre e solo la data iniziale. Sono costretto a rimuovere l'applicazione e a trovare un ripiego per il calendario.

La situazione non è andata migliorando nemmeno oggi, quando ho voluto aggiungere nuove funzionalità all'applicazione, ma il ritornello è sempre lo stesso: con Firefox funziona tutto, ma appena passo ad Internet Explorer è un vero e proprio disastro.

Non posso credere che sia così complicato, ma cosa sto sbagliando? Voi conoscete qualche modo per debuggare le web applicazioni su più browser?

Chiunque può lasciare commenti su questo blog, ammesso che vengano rispettate due regole fondamentali: la buona educazione e il rispetto per gli altri.

Per commentare potete utilizzare diversi modi di autenticazione, da Google a Facebook e Twitter se non volete farvi un account su Disqus che resta sempre la nostra scelta consigliata.

Potete utilizzare tag HTML <b>, <i> e <a> per mettere in grassetto, in corsivo il testo ed inserire link ipertestuali come spiegato in questo tutorial. Per aggiungere un'immagine potete trascinarla dal vostro pc sopra lo spazio commenti.

A questo indirizzo trovate indicazioni su come ricevere notifiche via email sui nuovi commenti pubblicati.

6 commenti:

  1. @google-881b6b3461a820e914e4b8b5a2966fbf:disqus, devo anche ammettere che molta della colpa arriva dalla mia impreparazione da un lato e dall'essere vincolati a blogspot dall'altro.

    al momento non ho a disposizione nessuna piattaforma di test "pulita" che mi permetta di mettere online una pagina così come la voglio io senza che mi aggiunga niente di suo. E peggio ancora, per esempio sono molto in difficoltà a caricare uno script o un css che sia in un file esterno... blogspot semplicemente non ti da questa possibilità e mi tocca ricorrere a google site anche se con uno spazio piuttosto limitato.

    questa mattina mi sto facendo un ripasso globale sono partito da un sito molto bello, che probabilmente tu conosci già, ma che vale la pena di ripetere per altri. W3School è fatto molto bene, spiegato in modo chiaro e offre la possibilità del try it yourself che è veramente fantastica per capire se hai assimilato i concetti che hai appena letto.

    Che framework mi consiglieresti? Restando il fatto che la mia piattaforma di elezione è FF su linux.

    Anche quando programmavo per davvero non ho mai apprezzato molto le varie IDE, per me nulla batteva emacs, la console, gdb e nei casi più disperati valgrind.

    RispondiElimina
  2. La cosa non sorprende: IE è la bestia nera di tutti i programmatori web. Comunque non ti preoccupare, perchè anche FF (firefox) quando vuole fa la sua parte.. Già che ci sei, ti consiglio di provare diverse versioni di IE, perchè tra una versione e l'altra cambiano molte cose.

    Comunque per rispondere alla tua domanda, su IE esiste un debugger che va abilitato nelle opzioni avanzate, mentre su FF esiste Firebug. Esiste anche una versione di Firebug cross-browser, che si chiama Firebug Lite: lo svantaggio di Firebug Lite è che è lento se l'applicazione è complessa.

    Buona continuazione :P

    RispondiElimina
  3. Caspita non pensavo di essere in così buona e vasta compagnia!

    Grazie per i consigli, comincio a vedere come si comporta Firebug, magari stando attento a tutti quei particolari (vedi DOCTYPE), che fino ad esso avevo erroneamente considerato marginali. Poi se la cosa funziona guardo Firebug lite...

    RispondiElimina
  4. IE, se lo conosci, lo eviti.
    Da parte mia l'ho mandato al diavolo MOLTI anni fa.
    E non invidio chi prova a fare qualcosa di compatibile con quella ciofeca!

    RispondiElimina
  5. guarda il grafico allegato... ci sono molti dei nostri visitatori che ci leggono da explorer e per loro deve essere una certa pena non poter vedere le cose come le vedono gli altri.

    messaggio subliminale: cambiate browser!

    Ciao Franco, tutto bene con i tuoi impianti?

    RispondiElimina

Chiunque può lasciare commenti su questo blog, ammesso che vengano rispettate due regole fondamentali: la buona educazione e il rispetto per gli altri.

Per commentare potete utilizzare diversi modi di autenticazione, da Google a Facebook e Twitter se non volete farvi un account su Disqus che resta sempre la nostra scelta consigliata.

Potete utilizzare tag HTML <b>, <i> e <a> per mettere in grassetto, in corsivo il testo ed inserire link ipertestuali come spiegato in questo tutorial. Per aggiungere un'immagine potete trascinarla dal vostro pc sopra lo spazio commenti.

A questo indirizzo trovate indicazioni su come ricevere notifiche via email sui nuovi commenti pubblicati.

Related Posts Plugin for WordPress, Blogger...