Archive for the 'Webmastering' Category

Web Developer: adesso si che si ragiona

Erano i primi giorni di vita di questo blog quando analizzavo per la prima volta le possibilità offerte agli sviluppatori Web dai vari browser, e sottolineando come persino io (lo sapevate che sono un fan di Opera? :P ) ancora non potessi fare a meno di Firefox e delle sue estensioni durante lo sviluppo di un sito.

Web developmentDa allora comunque le acque si son mosse parecchio ed il panorama davanti al quale ci troviamo risulta essere non solo molto più interessante, ma anche in pieno fermento.

Ovviamente mi riferisco al rilascio, da parte della società norvegese, di Opera Dragonfly, il debugger tool destinato, nelle intenzioni dei suoi creatori, a rimpiazzare totalmente Firebug nei cuori di tutti i web developer.

Nonostante alcuni problemi iniziali mi avessero impedito di provarlo (se siete nella stessa situazione postate un commento e spiegherò come risolvere), alla fine ho avuto anche io la mia occasione e nelle ultime nottate, complice il mio neonato interesse verso Ajax e MooTools, la libellula norvegese è diventata la mia più fedele compagna di lavoro. Rispetto alla precedente Developer Console (che non ho ancora abbandonato) risulta effettivamente molto più potente e versatile, per quanto manchino ancora alcune funzioni per me fondamentali, fra tutte la modifica on the fly dei CSS, e non sia certo priva di bugs. La situazione comunque non è certo statica e ad Oslo sono costantemente al lavoro per portare avanti lo sviluppo di questa prima alpha, basandosi in particolar modo sui numerosi feedback e suggerimenti della schiera di beta testers volontari. Ed ecco dunque spuntar fuori sul blog dedicato la prima di una lunga serie di weekly builds che, oltre a correggere numerosi bugs, aggiunge anche alcune funzioni essenziali come il completamento della Command Line e l' Object Inspector. Tutto questo mentre il Desktop Team si prepara a rilasciare una build capace di far girare Dragonfly anche in modalità offline, attuale problema dovuto alll'incompatibilità del protocollo HTTPS con la cache persistente.

Peccato tuttavia che una feature che avevo chiesto spesso e che ritengo assolutamente fondamentale, ovvero l'integrazione di un sistema di validazione "trasparente", come quello offerto in Firefox da HTML Validator o dalla la Web Developer Toolbar, non sarà integrato nella proposta di Opera. Personalmente non so quanto questo possa influire fra gli sviluppatori più esperti, ma onestamente l'idea di dover passare al setaccio ogni pagina usando il validatore online non è che mi solletichi molto.

Opera Dragonfly

Ma se gli sviluppatori di Opera stanno lavorando sodo per guadagnarsi il successo, chi si occupa dello sviluppo di Firebug non sta certo a guardare e giusto ieri ha rilasciato una nuova versione dell'estensione forse più popolare del web che, non solo aggiunge (finalmente) il supporto a Firefox RC1, ma offre anche nuove funzioni, una maggiore cura dei dettagli e, infine, il miglioramento complessivo delle performance (anche se questo, a mio parere, è più probabilmente dovuto al nuovo FF3 piuttosto che all'estensione in se).

Ecco dunque spiegato lo strano titolo con cui ho presentato questo post. Dopo anni di assoluta quiete e pressochè totale disinteresse verso (noi? ... esagero?)  poveri sviluppatori web, eccoci trasformati improvvisamente nelle principessine più desiderate del reame... e finchè dura chi si lamenta? :D

Nostalgia di Opera

Aprendo dopo millenni il forum italiano ufficiale di Opera, questa mattina ho trovato una discussione interessante.

Si parlava della scomparsa, nelle ultime versioni del browser, di uno dei più spettacolari e peculiari CSS personali da applicare al volo alle pagine web che stiamo visualizzando, ovvero il mitico Nostalgia.

Opera Nostalgia

Per chi non sapesse di cosa sto parlando, si tratta, come spiega più che esaurientemente il nostro Francy, della grafica ad 8 bit visualizzata dal leggendario Commodore 64.

Nonostante personalmente non lo utilizzi più da secoli, sono rimasto incredulo leggendo della sua rimozione, considerando anche il fatto che più volte sulla rete ho letto di commenti entusiasti di questa funzionalità. Per principio, o per semplice ripicca, sono andato quindi a recuperarlo ed a rimetterlo al suo posto estraendolo da una vecchia versione del browser. Per chi volesse fare altrettanto ecco la procedura da seguire.

Per prima cosa scaricate il file nostalgia.css allegato a questo post.

Adesso dovrete copiarlo nella cartella styles\user\ all'interno del vostro profilo. Se non sapete dove si trova andate su ? > Informazioni su Opera e la troverete alla voce Cartella di Opera.

A questo punto vi basterà riavviare il browser per avere, nella lista dei vostri CSS personali, anche la vecchia modalità Nostalgia. E devo dire che un giro di prova in memoria dei vecchi tempi non dispiace affatto. :P

Google User Experience: predica bene, ma…

Quante volte, girovagando di qua e di là alla ricerca di qualche utile articolo sul web-design, vi siete imbattuti in una di quelle liste di consigli da seguire durante la progettazione del vostro sito?

Personalmente non le conto nemmeno più, e gli autori sono davvero i più svariati, dall'esperto internazionale di CSS al piccolo blogger che cerca di mettere a disposizione degli altri tutta la sua esperienza.

In genere solo raramente mi soffermo in una lettura più attenta di questo genere di articoli (ipotizzando con arroganza di non aver nulla di nuovo da imparare :oops: ). Eppure questa volta non ho potuto proprio ignorare il post in questione, dopo aver appreso dal titolo che il dispensatore di consigli di turno era niente-po-po-di-meno-chè l'onnipotente Google. :eek:

Google Teacher

Ad una prima lettura, il gruppo Google User Experience è in effetti riuscito a sintetizzare in 10 semplici punti come una applicazione web degna di questo nome dovrebbe essere sviluppata. Si tratta di consigli molto generici ma di indubbio valore didattico. Del resto si tratta di quelle stesse linea guida seguite ai tempi della creazione di quell'interfaccia che ha decretato il successo di Google nella lotta dei search engine.

E allora dov'è il problema vi starete chiedendo? Semplice provate a scorrere la lista fino al sesto punto:

6. Design for the world.

... Our goal is to design products that are contextually relevant and available through the medium and methods that make sense to users...

... and Google's mission to make the world's information universally accessible, demand products that support assistive technologies and provide a useful and enjoyable experience for everyone...

Se a questo punto non siete sobbalzati dalla sedia e/o svenuti significa che non usate Opera con le web application di Google. Giusto in questi giorni sto infatti valutando seriamente l'idea di abbandonare sia GReader che Gmail in favore di alternative che non richiedano necessariamente Firefox per funzionare.

Chiunque usi il Feed Reader di Google con Opera sa bene infatti come, oltre ai mille problemi in cui si incappa ad ogni aggiornamento dell'applicazione (che vengono risolti mediamente in 10 giorni o più), attualmente la sua lettura risulti estremamente irritante, con latenze e "freeze" temporanei che metterebbero alla prova anche la pazienza di San Francesco.

Anche Gmail e le altre applicazioni poi non è che brillino sul fronte compatibilità, per quanto si riesca comunque a lavorare una mezzoretta senza farsi venire un'ulcera gastrica.

Google si era sempre difesa affermando come fosse Opera ad avere delle limitazioni intrinseche di difficile soluzione. Ma abbiamo già visto come queste affermazioni fossero del tutto prive di fondamento.

Insomma sviluppare web-application universali va bene... purchè in qualsiasi parte dell'universo ci si trovi si stia usando Firefox. :roll:

Campagna anti-google a parte, esorto comunque tutti i miei lettori a seguire alla lettera almeno i consigli dati dalla grande G... ma per l'esempio forse è meglio guardare altrove. :wink:

Opera Dragonfly si prepara per il primo vagito

Circa un mese fa scrivevo il primo post sul mistero che circondava Opera Dragonfly.

Opera DragonflyLe idee al riguardo erano molte e le più disparate ma fino alla fine nulla di certo si sapeva sulla natura di questo fantomatico progetto.

Ora finalmente quelli di Opera hanno deciso di rompere la suspance e, contestualmente al rilascio della seconda beta pubblica di Kestrel, hanno rivelato al mondo intero cosa in effetti sia questa fantomatica libellula che tanto ha fatto parlare di sè.

Come giustamente ipotizzato da molti (e da babox in particolare che ne ha fornito anche una interessante spiegazione) il progetto non era altro che i tanto attesi strumenti di sviluppo che da tempo la software house norvegese aveva promesso ai suoi utenti. Ed in effetti la loro mancanza si sentiva eccome, nonostante la pur sempre ottima Developer Console sviluppata in javascript come palliativo temporaneo.

Adesso invece il nuovo tool pare non voglia più essere considerato solo un'alternativa minore al più famoso Firebug, bensì prenderne il posto come strumento di riferimento per tutti gli sviluppatori web. (per i particolari vi rimando all'articolo su OperaZone.it)

Certo fin qui si parla di semplice campagna pubblicitaria visto che ai fatti nessuno ha ancora avuto il piacere di testarlo di persona, ma, basandomi sulla semplice esperienza personale, credo che entro poco tempo Opera Dragonfly riuscirà davvero nel suo obiettivo (con l'inevitabile "effetto collaterale" che molti più utenti useranno anche Opera browser :razz: ).

Che dire allora... appuntamento al 6 Maggio per il grande debutto e per le prime prove su strada. Io ho già prenotato i biglietti, e so che anche voi farete altrettanto visto il numero di visite che il precedente articolo ha ricevuto tramite Google. :wink:

Frameworks CSS: La moda del momento

Oggi torno finalmente a parlare un po' di webdesign. Nessun tutorial questa volta (ma ne dovrebbe arrivare qualcuno prossimamente) ma solo una riflessione.

Seguendo con interesse la parte di blogosfera che si occupa di queste tematiche, non ho potuto fare a meno di notare come ultimamente realizzare, usare e rilasciare un Framework CSS sia diventata una cosa assolutamente necessaria, pena essere uno sfigato.

Web DesignMa andiamo con ordine. Cosa è un Framework CSS? Si tratta in pratica di un "pacchetto" base già pronto con tutto un insieme di regole generali che consentono in poco tempo di realizzare layout anche piuttosto complessi. In realtà l'idea è buona e facilita molto la vita di webmasters e webdesigners che non si vedranno più costretti a ricreare tutto da zero ad ogni lavoro commisionatogli. Creando un framework generico una volta, sarà poi sufficiente riadattarlo alle necessità del nuovo sito a cui si sta lavorando.

Ma la prima pecca (sempre nella mia umilissima opinione) sta proprio in questo: un framework va bene (e comunque neanche troppo) finchè ad utilizzarlo è il suo creatore o una ristretta schiera di sviluppatori molto vicini (nella metodologia) ad esso. Il motivo è presto detto ed anche facile da capire. Per accogliere le più disparate esigenze dei suoi utilizzatori, il CSS base dovrà necessariamente includere un corposo set di regole e proprietà generiche e di reset che non avrebbero senso di esistere (e che non ne hanno in effetti) in un foglio di stile creato in proprio e costruito per adattarsi al progetto per cui è nato, proprio come un guanto in lattice farebbe con una mano. :lol:

Conseguenza di ciò sarà una inutile pesantezza e complessità del CSS finale che, tradotto in termini pratici, significa tempi maggiori per il suo download e per il rendering della pagina (ipotizzando che tutti i problemi cross-browser/platform siano stati previsti e risolti :roll: ).

Se, tuttavia, questi problemi possono essere sentiti solo marginalmente (o comunque in modo irrilevante rispetto ai benefici) usando un framework ben progettato, la follia raggiunge il suo culmine con l'uso di framework specificatamente creati per sopperire ad ogni esigenza. Tipici esempi sono Blueprint e YUI Grids, nonostante le ottime intenzioni con cui nascono.

Il secondo problema è poi proprio l'uso, spesso davvero eccessivo ed inadeguato, di regole di reset. Anzi si è oggi arrivati persino ad avere non più framework CSS bensì CSS di Reset! :shock:

Anche qui meglio dare prima una piccola spiegazione. Con regole di reset in pratica si azzerra qualsiasi "proprietà" (margini, padding e molto altro) che questo o quel browser attribuirebbe arbitrariamente agli elementi della pagina attenendosi al proprio schema (beati coloro che vedranno il giorno in cui il W3C sarà l'unico Dio riconosciuto da sviluppatori web e produttori di browsers).
Senza alcun dubbio il problema esiste ed è reale (anche se personalmente oggi non lo avverto più come in passato) e le opinioni in materia sono le più disparate. Quello che è certo però è che larga parte degli sviluppatori odierni fa un vero abuso di questa pratica anche quando sarebbe assolutamente evitabile, e vedere applicati 10 o più reset al selettore universale non è poi così raro.

Girl PC

Giusto mentre stavo scrivendo questo articolo (in stato di bozza da diverse settimane insieme ad altri che seguiranno :sad: ) ho avuto modo di leggere un'interessantissima trattazione (che vi consiglio caldissimamente) dell'argomento sulle pagine di <edit>. Ed anche lì comunque il succo è il medesimo benchè a parlare siano voci ben più autorevoli della mia.
Chiamati in causa sono stati infatti Jonathan Snook e Jens Meiert, che si sono espressi anche ben più duramente del sottoscritto ed arrivando addirittura a sostenere che l'unico reset da utilizzare debba essere il classico margin: 0; padding: 0;.

Ai più questo sembrerà forse davvero eccessivo ma personalmente, per il mio modo di sviluppare un sito, non la ritengo una regola tanto costrittiva o limitativa.

Comunque stiano le cose è chiaro che si tratta di pure opinioni personali condivisibili o meno. In attesa di dedicarmi nuovamente al sito principale (lo finirò... un giorno o l'altro lo finirò), e verificare di persona la reale necessità di questi strumenti, io la mia l'ho detta (e con la solita logorroicità che mi contraddistingue :lol: )... ora tocca a voi. :wink: