Guida introduttiva al mondo dello Sviluppo Web: definizioni, tipologie e problematiche comuni. Posizionamento e Web Marketing.
Sviluppare per il web è solo apparentemente un'attività semplice. La tecnologia offre oggi strumenti che permettono di realizzare un sito senza bisogno di particolari competenze; tuttavia, in uno scenario competitivo come quello attuale, per realizzare un progetto web di successo, oltre ad avere una buona idea di partenza, è necessario conoscere nel dettaglio le problematiche della materia e gli standard proposti dal mercato.
La conoscenza di questi temi può essere semplicemente vantaggiosa (e portare per esempio ad una migliore visibilità nei motori di ricerca), obbligatoria (criteri di "accessibilità" sono ad esempio richiesti nello sviluppo di siti per la Pubblica Amministrazione) o imprescindibile (sviluppare un sito di eCommerce senza seguire standard di sicurezza adeguati può comportare conseguenze spiacevoli).
Definizioni
Iniziamo ad approfondire il tema dello sviluppo web con alcune definizioni di base, utili a definire le principali tipologie di siti web e a elencare poi i principali problemi da affrontare nella loro realizzazione:
Un sito Web è un insieme di documenti ipertestuli pubblicati su server specifici detti Web Server e accessibili attraverso un browser.
Questi documenti, o pagine, sono redatti con il linguaggio HTML (Hyper Text Markup Language) e le sue evoluzioni.
I web browser sono particolari cateorie di software in grado di interpretare il codice HTML. I più conosciuti e diffusi sono Microsoft Internet Explorer, Mozilla Firefox, Google Chrome, Apple Safari e Opera.
Navigare all'interno di un sito significa quindi interrogare un Web Server e visualizzare sul proprio computer le informazioni ottenute in risposta.
Le problematiche comuni
- Compatibilità: è la capacità di un sito Web di risultare correttamente visibile con il maggior numero di browser disponibili e con il maggior numero possibile di impostazioni e risoluzioni differenti, attraverso disipositivi differenti (pc, tablet, smartphone).
- Accessibilità: è la capacità di un sito di essere acceduto in maniera facile ed efficace da qualsiasi tipologia di utente, in particolare da persone con ridotta o impedita capacità sensoriale, motoria, o psichica, che utilizzano di tecnologie assistive per le quali è necessario rispettare determinati standard.
- Usabilità: è la capacità di un sito Web di essere utilizzato con semplicità e soddisfazione dagli utenti. Per rendere un sito usabile, è necessario progettarne l'interfaccia in modo che sia semplice da navigare, esteticamente gradevole e riconoscibile e che le funzionalità disponibili siano chiare e accurate.
- Reperibilità: è il livello di esposizione e popolarità di un sito. E' possibile far acquisire visibilità ad un sito posizionandolo nei Motori di Ricerca e attuando una strategia di Promozione (Web Marketing).
Lo sviluppo di siti web evoluti, come possono essere i siti Corporate o Enterprise e quelli dedicati all'eCommerce comporta una serie di problematiche aggiuntive:
- Affidabilità: Un sito di tipo Corporate, come ad esempio il Portale Intranet di un'azienda, oppure un sito di eCommerce devono essere affidabili, ovvero devono risultare (possibilmente) sempre accessibili. L'indisponibilità di questo tipo di siti web può infatti comportare una diminuzione della produttività o la riduzione del fatturato, comportando quindi un danno economico.
- Sicurezza: Un sito di e-Commerce deve essere in grado di garantire l'identità dei soggetti che partecipano alla transazione, la riservatezza e l'inalterabilità delle informazioni trasmesse.
Tipologie di siti web
- Siti Web statici: In questa tipologia di siti gli elementi che costituiscono l'interfaccia di visualizzazione e i contenuti sono inseriti all'interno del codice delle singole pagine. In questo modo, ogni pagina visualizzabile attraverso browser è direttamente riconducibile ad un singolo documento HTML.
I siti statici possono comunque contenere animazioni (immagini, immagini vettoriali o filmati), elementi dinamici che vengono eseguiti sul browser dell'utente (ad esempio tramite JavaScript o Dynamic HTML) ed elementi interattivi di base come contatori e form per l'invio di e-mail, sviluppati ad esempio in CGI (Common Gateway Interface) ed eseguiti dal Web Server.
- Siti Web dinamici: In questa tipologia di siti, i contenuti vengono generati in base ad una serie di parametri, comandi e condizioni che il Server si preoccupa di valutare ad ogni singola richiesta, per poi produrre una pagina HTML interpretabile dal browser.
I siti dinamici vengono sviluppati con l'utilizzo di linguaggi di scripting come PHP, ASP, JSP e comportano l'impiego di speciali componenti applicativi chiamati Application Server, incaricati di interpretarne il codice e di inviare al Web Server le pagine generate in formato HTML. I contenuti possono essere salvati all'interno di semplici file, ma anche in database o Web Server remoti.
I Content Management Systems (CMS)
I CMS (acronimo di Content Management Systems) sono una tipologia di software nati per facilitare il lavoro di organizzazione e pubblicazione di contenuti editoriali. Questi prodotti sono stati impiegati in maniera diffusa nel Web per semplificare la gestione di testi ed informazioni all'interno dei siti.
I CMS sono stati quindi migliorati e sviluppati al punto da permettere la creazione e la gestione completa di un sito Web, senza avere necessariamente conoscenze di sviluppo e programmazione. Tra le caratteristiche principali più comuni ci sono la possibilità di organizzare il lavoro tra più utenti, di gestire ruoli e competenze diversificate e di supportare processi di workflow interni.
La struttura tipica di un CMS prevede la presenza di due componenti principali:
- Il Back-End: E' un pannello di amministrazione che permette di creare e modificare la struttura e l'aspetto del sito e che permette l'inserimento dei contenuti. I dati inseriti vengono storicizzati all'interno di un database, mentre i file di supporto (ad esempio immagini, script e moduli aggiuntivi) vengono salvati su File System.
- Il Front-End: E' l'interfaccia di presentazione, il sito come appare agli utenti. Molti CMS consentono di effettuare numerose operazioni - come l'inserimento di contenuti, la moderazione dei commenti, e la gestione di alcuni widget - direttamente dal Front-End, mediante autenticazione.
Nel mercato sono disponibili molti prodotti commerciali, ma i CMS più diffusi sono distribuiti con licenza Open-Source.
Molti di questi sono supportati da comunità di sviluppo vaste e vitali e da programmatori indipendenti che offrono una serie di strumenti integrativi come componenti, moduli, plug-in e template (alcuni gratuiti, altri a pagamento) che permettono di personalizzare il sistema secondo le proprie necessità e le esigenze specifiche. Tra i CMS più diffusi è possibile citare ad esempio WordPress, Joomla! e Drupal.
Sul sito BuiltWith è possibile visualizzare le statistiche sull'utilizzo e l'adozione dei CMS in rete. Il grafico proposto illustra l'utilizzo dei principali CMS rilevato il 5 aprile 2013.
Enterprise Content Management Systems
Gli Enterprise Content Management Systems (ECMS) sono piattaforme più evolute, tipicamente dedicate alle aziende, che supportano funzionalità avanzate come ad esempio:
- Identity Management: è lo strumento che permette di integrare il provisioning degli utenti e i processi di accesso ed autenticazione con le infrastrutture (ad esempio un repository LDAP) già presenti in azienda,
- Gestore Documentale: è lo strumento che permette la classificazione e la gestione della documentazione aziendale, fornendo funzionalità come versioning e audit,
- Motore di Workflow: è lo strumento che permette di strutturare in formato elettronico processi aziendali che richiedono il coinvolgimento di entità differenti, utilizzando flussi di approvazione,
- Motore di ricerca: In un ECMS il motore di ricerca interno deve poter indicizzare tutti i contenuti inseriti, visualizzandoli in maniera conforme alle autorizzazioni dei singoli utenti.
Tra le caratteristiche più diffuse, ci sono la possibilità di storicizzare dati e metadati su ambienti Database di tipo Enterprise, come Microsoft SQL o Oracle, e la possibilità di costruire infrastrutture scalabili e ad alta affidabilità, facendo uso di funzionalità di clustering e di bilanciamento dei carichi di lavoro.
I Portali Web
Un Portale Web (termine spesso utilizzato in maniera inappropriata come sinonimo di sito web) è un aggregatore di risorse, che integra attraverso un'interfaccia web unificata contenuti informativi, applicazioni e processi eterogenei.
Questo tipo di risorsa viene normalmente utilizzato dalle aziende per regolare l'accesso ad una Intranet, e nel web da alcuni provider per consentire l'accesso a servizi offerti (informazioni, mail, applicazioni).
I siti dedicati all'eBusiness sono invece siti web che permettono di svolgere transazioni (acquisto di beni e servizi, utilizzo di processi) in formato elettronico attraverso il Web
Il posizionamento nei motori di ricerca
Ottenere un buon posizionamento nei Motori di Ricerca è uno degli aspetti fondamentali per la riuscita di un progetto web.
Infatti, realizzare un sito chiaro nei contenuti ed accattivante nell'aspetto grafico risulta di scarsa utilità se questo non ottiene buona visibilità, e i Motori di Ricerca (in inglese Search Engine) sono gli strumenti che più di tutti sono in grado di generare traffico verso un sito Web.
Posizionare un sito significa farlo comparire nei risultati di ricerca organici (SERP, acronimo di Search Engine Result Pages) per le parole chiave desiderate.
Tra i Motori di ricerca, Google ha assunto una posizione dominante e veicola attualmente più dell'ottanta per cento del traffico mondiale, mentre le principali alternative, Bing di Microsoft (seppure in netta crescita) e Yahoo! sono relegati a posizioni minoritarie, con alcune - poche - eccezioni in determinati paesi esteri: ad esempio in Giappone è più utilizzato Yahoo!, mentre in Cina il Motore di Ricerca di riferimento è Baidu (ma Google è parzialmente bloccato).
Per questo motivo, si tende sempre più spesso ad identificare il "posizionamento nei Motori di Ricerca" con il "posizionamento su Google", a cui anch'io farò riferimento nel seguito di questo articolo.
Statistica elaborata da StatOwl relativa al periodo Ottobre 2012 - Marzo 2013.
Il funzionamento di Google (molto in breve)
Google alimenta i propri database utilizzando uno spider (chiamato Googlebot), ovvero un software specifico che scansiona le pagine web e le inserisce nel proprio indice. Quando un utente effettua una ricerca, Google risponde, utilizzando una serie di algoritmi complessi per calcolare dinamicamente una classifica dei siti più attinenti alla ricerca affettuata.
Questi algoritmi vengono costantemente integrati e aggiornati per migliorare i risultati ed escludere dalle SERP i siti inutili (siti malevoli o di spam).
Le tecniche di posizionamento sono una serie di accorgimenti e ottimizzazioni che portano Google a valutare più favorevolmente un sito nelle sue classifiche. La materia è complessa e richiede un aggiornamento costante: per questo motivo, negli ultimi anni si è sviluppata la figura del SEO (Search Engine Optimizer) un professionista specializzato nelle ottimizzazioni e nelle strategie che portano a migliorare il posizionamento di un sito nelle SERP.
Le attività SEO sono sostanzialmente di due tipi:
- Site optimization: Per essere favorevolmente considerato da Google un sito (ma sarebbe più correto dire ogni pagina di un sito web) deve avere determinate caratteristiche e specifiche, come ad esempio un URL coerente con i contenuti pubblicati, la corretta compilazione dei metatag (si tratta di informazioni metatestuali), una presenza ragionevole e distribuita delle parole chiave nei testi, ecc...
- Link Building: Uno degli aspetti a cui Google da grande rilevanza è la popolarità di un sito. La popolarità è misurata in base al numero e alla qualità dei link che un sito (di nuovo: sarebbe corretto parlare di ogni singola pagina di un sito) riceve, da altri siti web, dai social network, ecc...
La materia è diventata progressivamente sempre più importante, ed è ormai studiata a livello approfondito in virtù del grande impatto che comporta. In rete si sono sviluppate molte realtà professionali e numerose comunità che sviluppano l'argomento.
Il Web Marketing
Il Web Marketing è l'insieme delle attività di marketing sviluppate tramite il web, per far ottenere a un sito la maggiore visibilità possibile.
L'ottimizzazione del posizionamento nei Motori di Ricerca è solo una delle iniziative che possono essere intraprese per aumentare e migliorare il traffico di un sito web; esistono infatti molte altre possibilità, come l'acquisto di collegamenti sponsorizzati o di spazi pubblicitari che possono risultare estremamente efficaci.
Perchè una campagna promozionale abbia successo, è necessario operare per fare in modo di raggiungere gli obiettivi prefissati, come ad esempio la ricerca di potenziali nuovi clienti, l'aumento degli utenti, dei contatti o delle vendite, spingendo i visitatori a effettuare una determinata azione, come l'iscrizione ad una newsletter o ad un forum, oppure come l'acquisto di un determinato prodotto.
Il rapporto tra i visitatori ottenuti da una campagna e quelli "convinti" a effettuare l'azione proposta è detto Tasso di Conversione.
Search Engine Marketing
Quando queste attività di promozione sono sviluppate attraverso i Motori di Ricerca si parla di Search Engine Marketing (SEM). Questo tipo di promozione si è rivelata nel tempo particolarmente efficace, in quanto i Motori di Ricerca - in particolare Google, che ha sviluppato degli strumenti pubbicitari molto potenti come Adwords - sono in grado di veicolare verso un sito web traffico accuratamente selezionato, offrendo ottimi risultati in rapporto agli investimenti sostenuti (questo valore è detto ROI, Return Of Investment).
Social Media Marketing
Il grande successo riscosso dai social network ha introdotto nuovi soggetti in questo settore, come ad esempio Facebook o Pinterest, che hanno a loro volta sviluppato interessanti strumenti pubblicitari.
Le attività promozionali, a pagamento o meno, sviluppate all'interno dei Social Network sono dette attività di Social Media Marketing.
Tecnologie:
- Freshworks Freshservice
- Infor LN ERP
- Microsoft Office 365
- WebSphere Portal
- Oracle Portal
- CheckPoint Firewall
- CA Siteminder
- Sun Java Directory Server
- Opentext Livelink
- Microsoft Exchange
- Lotus Notes
- Macromedia Coldfusion
Eventi ICT:
- Salesforce Live 2022
- Workshop Infor ION
- Workshop Infor Social Enterprise
- Workshop Il futuro del Datacenter
- LinkUp Europe 2003
- Lotusphere Europe 2000: Work As One
Approfondimenti:
- Il Framework ITIL
- Guida al mondo dello Sviluppo Web
- eBusiness: definizione e problematiche
- Il mercato del lavoro ICT
- Guida agli eBook
- Le migliori App per iPhone
Dispositivi:
- Garmin Forerunner 235
- Nuovo Kindle Paperwhite
- Google Glass
- HP TouchPad
- I'm Watch, lo smartwatch vicentino
- BlackBerry Z10
- Microsoft Surface
- BlackBerry Bold 9900
- Nokia Lumia 800
- Amazon Kindle 4
- HTC Touch Dual
- Ipod Shuffle
- Sony PRS 650