L’arte di scrivere codice
Articolo di Sara Oliva
Per chi pensa che la scrittura del codice sia un’attività difficile, puramente tecnica e noiosa, sappiate invece che non lo è affatto. Per scrivere codice ci vuole infatti una buona dose di logica ma anche di creatività.
Un marketer dovrebbe saper programmare? Ne abbiamo parlato alla Digital Combat Academy durante la lezione di Coding Strategy, tenuta da Christian Kobril, un giovanissimo developer che ci ha trasmesso tutta la passione che ha per il suo lavoro, o meglio, la sua arte.
A lezione Christian ci ha citato le parole che Steve Jobs disse durante la celebre intervista conosciuta come “The Lost Interview”, fattagli da Bob Cringley nel 1995:
Tutti in questo paese dovrebbero imparare a programmare, perché ti insegna come pensare.
Se parliamo di programmazione web, non è certamente necessario che un professionista di marketing digitale sia un esperto web developer. Sappiamo infatti che, grazie ai CMS, è possibile gestire i contenuti di un blog, di un sito o di un e-commerce store senza possedere alcuna conoscenza del codice. Tuttavia, avere delle nozioni, seppur basilari, può rivelarsi senza alcun dubbio utile e vantaggioso per il raggiungimento dei nostri obiettivi.
Il codice è difficile e non è per tutti
Quando visitiamo una pagina web, abbiamo la possibilità di vedere com’è stata costruita e visualizzarne quindi il codice sorgente. Ci sono diversi modi per farlo a seconda del browser che utilizziamo. Se usiamo Chrome, ad esempio, è sufficiente selezionare la voce “Ispeziona” dal menu che ci appare cliccando, con il tasto destro del mouse, in qualsiasi punto della pagina. Ci avete provato e vi siete spaventati? Pensate che quello che vi siete trovate davanti sia assurdo, incomprensibile e ci voglia una particolare dote per essere in grado scriverlo? Non è così. Il codice è un linguaggio e, come per tutte le lingue, per poterlo scrivere dobbiamo conoscerne i termini e sapere come strutturare le frasi.
In breve, quali sono i codici usati per costruire i siti web?
Prima di tutto bisogna fare una distinzione tra le tecnologie che intervengono lato client (front-end) e quindi i linguaggi che vengono interpretati dal browser dell’utente, da quelle che operano lato server (back-end), vale a dire i linguaggi che vengono prima interpretati dal server per essere poi trasmessi al browser.
Tutto quello che noi utenti vediamo in un sito web fa dunque parte del suo front-end.
Per realizzare le pagine di un sito, il front-end developer si serve principalmente dei seguenti linguaggi:
- HTML
- CSS
- JAVASCRIPT
HTML è l’acronimo di HyperText Markup Language e si riferisce al linguaggio che definisce la struttura semantica di una pagina web.
I fogli di stile CSS (Cascading Style Sheets) permettono di formattare i documenti HTML e quindi di controllare l’aspetto e il layout delle pagine.
JavaScript è invece un linguaggio di programmazione che consente alle pagine web di diventare più interattive, interessanti e user-friendly.
Oltre a questi tre linguaggi, è possibile usare anche un altro elemento: Bootstrap. Si tratta di un framework, una raccolta di strumenti contenente modelli di progettazione HTML, CSS e JavaScript, che rende possibile la creazione di pagine responsive.
Come pensano i computer
Solo le definizioni di questi linguaggi possono sembrarci complicate ma, come abbiamo detto, imparare il codice è un po’ come studiare una lingua straniera. All’inizio ci appare incomprensibile ma, man mano che apprendiamo i suoi vocaboli e le sue regole grammaticali, riusciamo a mettere insieme fra loro le parole e a costruire delle frasi, proprio come facciamo nel momento in cui creiamo le istruzioni che vengono poi interpretate dai computer.
A differenza della mente umana, il computer è una macchina che esegue istruzioni in modo programmatico. Ecco a cosa forse si riferiva Steve Jobs dicendo che la programmazione ti insegna come pensare. Dobbiamo infatti capire come pensa un computer per arrivare a comprendere come esso risolve i problemi.
Dall’approccio programmatico all’arte di scrivere codice
Come ci ha fatto notare Christian a lezione, anche se la macchina esegue istruzioni programmaticamente, senza un pensiero creativo, scrivere codice è invece una forma d’arte. Lo sviluppatore è infatti un vero e proprio artista in grado di creare qualcosa dal nulla.
Proprio come un artista inizia a realizzare la sua opera partendo da uno schizzo e dividendo poi il suo lavoro in più fasi, lo sviluppatore front-end imposta il progetto sulla base di una bozza, quindi di un wireframe e di un mockup inviatigli dal web designer, per poi realizzarlo scomponendolo in più parti.
Con questo approccio “divide et impera”, il developer ha anche la capacità di suddividere un problema in diversi sotto-problemi in modo che, trovando una soluzione per ognuno di essi, riesce poi a risolvere il problema iniziale. Questa tecnica è interessante se pensiamo che si rispecchia in quella che è la tipica struttura di un sito web che, come sappiamo, è composto da più pagine, ognuna delle quali ha un compito ben preciso a seconda delle funzioni che andrà a svolgere.
L’arte di scrivere codice deriva anche dalla capacità creativa dello sviluppatore di trovare soluzioni per riuscire a realizzare il suo progetto. Non sempre c’è un’unica soluzione al problema e il problem-solving richiede una mente creativa. La creatività e l’ispirazione agiscono quindi insieme al ragionamento logico e hanno un ruolo fondamentale nelle scelte di codifica e nella ricerca di espedienti che permettono di arrivare alla soluzione di un compito o problema.
Perché un marketer dovrebbe conoscere il codice?
Se un sito web è uno dei principali canali di marketing, tramite cui un’azienda può farsi conoscere, pubblicare contenuti strategici, attirare clienti e addirittura condurli verso il livello finale del proprio funnel, si può arrivare alla conclusione che la conoscenza del linguaggio dello sviluppatore possa essere per il marketer un vantaggio e un’opportunità per poter raggiungere meglio e in modo più efficace il proprio scopo.
Conoscendo il codice, il marketer o un team di marketing hanno la possibilità non solo di gestire autonomamente alcune tecnologie e strumenti informatici, ma anche di comprendersi meglio con il team di sviluppo, evitando fraintendimenti e malintesi che possono inevitabilmente portare fuori strada e compromettere l’esito del progetto.
Insomma, quando si parla la stessa lingua è davvero molto più semplice collaborare e muoversi quindi verso la stessa direzione, alla conquista dell’obiettivo finale.