Per ora si accede solo tramite invito, ed io sto aspettando con molta curiosità  (già  da qualche giorno) il nulla osta per poter finalmente “giocare” con il nuovo applicativo rilasciato da Google. App Inventor potrebbe in effetti decretare una svolta nell'ambito dello sviluppo mobile: sì, perchè quello che viene promesso è che con questa web application sarà  possibile sviluppare apps Android senza scrivere una solo riga di codice.... si potrà  fare tutto con l'ambiente visuale e con i blocks (utili per definire il comportamento dell'applicativo stesso). Tra le caratteristiche più interessanti spiccano la possibilità  di accedere e gestire “visualmente” anche i servizi più ostici, come ad esempio il sensore GPS, e la disponibilità  di servizi “nativi” per poter collegare l'applicazione Android ai nostri siti web. La gallery degli esempi mostra alcune delle applicazioni interamente sviluppate con questo prodotto, e il risultato è davvero interessante: sono anche disponibili diversi tutorial, divisi per difficoltà , che spiegano passo passo come utilizzare questo strumento.

Continua a leggere App Inventor: sviluppare applicativi Android senza scrivere una linea di codice

Categoria: Software e Servizi

Oggi voglio segnalarvi un libro della O'Reilly che credo presto diventerà  un classico: si tratta di "Developing Large Web Application" di Kyle Loudon, uscito di recente e al momento disponibile solo in lingua inglese. Il libro tratta un argomento molto importante, ovvero come scrivere codice modulare e riutilizzabile all'interno di un progetto web molto vasto e in continua crescita, dove giorno per giorno si aggiungono funzionalità  e utenti, dove è richiesto un uptime vicino al 100% e performance elevate e dove è necessario supportare un gran numero di ambienti, dai vecchi browser ai più moderni smartphone, con tutte le problematiche connesse. Invero, gli accorgimenti illustrati nei dieci capitoli, ciascuno dei quali approfondisce un aspetto dell'applicazione (HTML, CSS, Javascript, Ajax, JSON, SQL, XML, PHP, etc.), sono utili anche per progetti in partenza che puntano in alto, o che più semplicemente che si propongono di vivere a lungo. Perché se partire con il piede giusto è essenziale, questo libro insegna a farlo.

Continua a leggere Sviluppare applicazioni web di grandi dimensioni

Categoria: Eventi e segnalazioni

Recentemente ho avuto dei problemi di sicurezza sul mio sito. Tutto questo mi ha portato a riflettere sul processo di sviluppo di un sito web e sul perchè oggi più che mai sia necessario affiancare la figura professionale di un esperto di sicurezza informatica a quelle già  presenti all'interno di un team. Con l'evolversi delle tipologie di attacco ai siti e con il rapido affermarsi di nuovi ceppi malware e, soprattutto, con la ovvia constatazione che il tema della sicurezza è qualcosa di estremamente complesso, affidare sempre la cura della sicurezza di un sito ad uno sviluppatore web (imponendogli così un doppio lavoro) si rivela spesso controproducente. Sia chiaro: è ovvio che uno sviluppatore web debba sapere come scrivere codice sicuro, ma è altrettanto vero che il campo della sicurezza è talmente vasto che spesso non basta conoscere alcune best practices per dirsi completamente al sicuro. (more...)

Continua a leggere Esperto di sicurezza: una figura da rivalutare in un team di sviluppo

Categoria: Lavoro

Il metodo più sicuro per portare a termine una attività complessa, senza dimenticare alcun passaggio, è quello di predisporre una checklist e spuntarne uno dopo l'altro tutti gli elementi. Un tipo di verifica procedurale che si può applicare ad ogni campo, dalla preparazione di una valigia, fino alla programmazione PHP. Un interessante post su SK89Q.com propone una checklist per controllare la sicurezza degli applicativi PHP. La lista prevede diverse sezioni e prende in considerazione molti aspetti, dal controllo dell'input fino alla sicurezza degli hosting condivisi, puntando ad essere uno strumento di facile ed immediato utilizzo, anche grazie alla disponibilità  di un comodo PDF che riassume, su un solo A4, tutti i passaggi. Alla prossima occasione voglio provare ad usare questa lista. Per ora la sto sperimentando in senso opposto contro qualche vecchio applicativo. Fatemi sapere cosa ne pensate!

Continua a leggere Una checklist per rendere sicuro PHP

Categoria: PHP e Open Source

Creare un'applicazione, in fin dei conti, è una questione di scelte. Ci sono sempre svariati modi di fare le cose, diversi approcci, molte tecnologie. Scegliere le migliori componenti e far sì che funzionino insieme è uno dei compiti primari del nostro lavoro, soprattutto in realtà  dove i ruoli di analista, progettista e sviluppatore coincidono o si sovrappongono almeno in parte. Puà sembrare un discorso astratto o tautologico se si pensa alle componenti fondamentali di un sistema LAMP (Linux, Apache, MySQL, PHP), ma assume concretezza quando ci riferiamo ad elementi meno scontati, come il framework di sviluppo, le librerie Javascript, il sistema di caching o di templating, l'ambiente IDE, il sistema di deploy, ecc. Sbagliare la scelta di una di queste componenti può essere disastroso per la riuscita dell'applicazione e per la sua sopravvivenza sul lungo periodo. Mi sono chiesto dunque quali possano essere i criteri per fare delle buone scelte in questa materia e ne ho individuati sei. (more...)

Continua a leggere Come scegliere le componenti di un’applicazione

Categoria: PHP e Open Source

Chris Pederick, l'uomo che prima dell'avvento di Firebug ha regalato agli utilizzatori di Firefox la migliore estensione per sviluppatori, ha annunciato sul suo blog la disponibilità  della release 0.1 di Web Developer per Google Chrome. Trattandosi di una versione preliminare, l'estensione manca al momento di alcune importanti funzionalità : prima di tutto la possibilità  di editare i CSS, poi l'opzione per disabilitare Javascript.

Continua a leggere Web Developer per Chrome

Categoria: Software e Servizi

Tirate le orecchie a Google per il modo in cui è organizzata la galleria ufficiale delle estensioni per Chrome (a meno che non mi sia sfuggito qualcosa non esiste una suddivisione per categorie), va detto che cominciano ad emergere alcune utili opzioni per gli sviluppatori. Il browser di Google, c'è da dire, arriva fornito di uno strumento ottimo e costantemente oggetto di migliorie come il Web Inspector di WebKit, ma nonostante cià, proprio mentre scrivo questo post, svetta in cima alla lista delle estensioni più popolari la versione di Firebug Lite realizzata per Chrome: manca al momento di un tool fondamentale come il debugger Javascript, ma è un buon inizio. Paragonabile (ma molto alla lontana) alla Web Developer Toolbar per Firefox è poi questa Pendule, mentre made in Google è Speed Tracer, estensione che consente di verificare e analizzare eventuali problemi di performance nel rendering delle pagine.

Continua a leggere Google Chrome: estensioni per sviluppatori

Categoria: Software e Servizi

Ho notato con un po' di amarezza che su questo blog la stragrande maggioranza dei commenti e dei contributi è scritta da uomini. Non si tratta di vetero-femminismo di stampo post-sessantottino, ma di una semplice constatazione che porta ad una sola domanda: esistono sviluppatrici in Italia? Certamente sì. Ma allora, perché non fanno sentire la loro voce così come avviene in altri paesi? (more...)

Continua a leggere Uno sviluppo al femminile

Categoria: Contenuti e Web Writing

Credo che il post "Adopting a “Does It Really Matter?” Philosophy" tocchi punti cruciali rispetto all'approccio da adottare nella pratica quotidiana dello sviluppo per il web. L'intervento è lungo, stimolante, ma qui voglio concentrarmi su un solo aspetto: a parole si può essere perfezionisti, attenti ai minimi dettagli, adepti fedeli della Setta della Validazione, etc, ma la realtà , con i suoi tempi, le sue scadenze, ci impone spesso di prendere decisioni che sono in contraddizione con l'approccio da puristi che vorremmo sempre applicare. Puà capitare, allora, che si possa decidere, consapevolmente e razionalmente, di usare dichiarazioni CSS inline una volta stabilito che cià rappresenta un guadagno in termini di performance e mantenibilità , afferma l'autore. Il pragmatismo vince. Sulla scorta di esempi simili, lo stesso Jacobe Gube opera poi una distinzione cruciale e sulla quale mi piacerebbe sentire la vostra. C'è una categoria di sviluppatori che può permettersi certe pratiche evidentemente in contrasto con quelle ritenute ottimali. Sono gli sviluppatori esperti, in grado di assumere decisioni in maniera consapevole e di saper rendere conto in ogni momento delle loro scelte. Dall'altra parte ci sono i beginner, quelli alle prime armi: per loro seguire il modo giusto di fare le cose è una sorta di obbligo, devono imparare a fare tutto secondo le best practices affermate e solo dopo aver raggiunto un certo livello di competenza e consapevolezza potranno permettersi di deviare dalla norma. Insomma, sbaglio, ma se lo faccio sapendo di farlo e in nome del pragmatismo, può andare...

Continua a leggere Il pragmatismo nello sviluppo per il web

Categoria: Lavoro

Credo siano interessanti le considerazioni svolte da Rowan Simpson sul suo blog, anche perché vanno a toccare una situazione critica con cui chiunque sviluppi siti e applicazioni web deve confrontarsi. L'accesso paritario e universale ai contenuti e ai servizi di un sito è un obiettivo che pochi non riconoscerebbero come auspicabile, direi doveroso. Nella realtà  il massimo che si può mettere in atto è spesso un compromesso accettabile. Qualcuno alla fine rimane tagliato fuori, magari perché quella categoria di utenti rappresenta una percentuale minima di visitatori e si decide che non vale la pena investire risorse per garantire a costoro lo stesso trattamento destinato alla maggioranza. Si badi, non si parla qui solo dell'accessibilità  declinata come ausilio tecnico a favore di chi è disabile. Le minoranze sacrificate, come spiega Simpson, possono essere composte da chi usa Linux (magari Mac...), da chi naviga a 56kbps, anche da chi per necessità  o altra ragione si ostina a usare IE6, etc. Credo che tanti possano essere i modi per approcciare il problema. Voi come lo fate nello sviluppo di un progetto? Simpson, ad esempio, propone di staccarsi dai conteggi in percentuale o per categorie astratte e di pensare per numeri assoluti. Non "lo 0,7% che usa Linux" ma "100 persone in carne e ossa" che vogliono fare qualcosa sul mio sito. Immaginiamole tutte riunite davanti a noi: avremmo il coraggio di dire loro in faccia "No, tu no"?

Continua a leggere Vengo anch’io. No, tu no

Categoria: Web Design