I web designer dovrebbero capire HTML e CSS di base? È una discussione stanca con due parti che si rifiutano di cedere, perché persino discuterne?
Lo scopo di questo articolo non è quello di dimostrare quale gruppo ha ragione, ma di provare a dimostrare che entrambe le parti fanno effettivamente punti validi e di vedere se analizzare questi punti ci porta ad un compromesso su cui entrambe le parti possono essere d'accordo.
Un argomento a caldo
Uno dei nostri articoli la scorsa settimana ha spinto diversi commenti riguardo le implicazioni in tutto il pezzo che i web designer dovrebbero avere una conoscenza di base del codice coinvolto nella creazione di una pagina web. Molti hanno applaudito questo suggerimento mentre un numero uguale di lettori ha trovato che fosse fuori luogo.
Questo argomento è uno che è stato discusso a lungo su quasi tutti i blog di design sul web. Ci sono due lati distinti nel dibattito, i cui membri hanno tracciato linee chiare nella sabbia che probabilmente non saranno mai attraversate.
Ho ragione e tu sei sbagliato
Chiunque creda che una comprensione del codice non sia necessaria per il design semplicemente rifiuta di intrattenere pensieri che questa visione potrebbe essere sbagliata. Allo stesso modo, i progettisti che hanno una forte conoscenza del codice non possono essere convinti di non essere designer migliori per questo.
"Entrambi i progettisti dovrebbero conoscere il codice o non dovrebbero farlo, un argomento così semplice lascia poco spazio per un compromesso."Allora, dove ci lascia? Sembra che ci troviamo in uno stato di stallo inamovibile con entrambe le parti in mano. Il problema più grande qui è che non sembra esserci una via di mezzo. Entrambi i progettisti dovrebbero conoscere il codice o non dovrebbero farlo, un argomento così semplice lascia poco spazio al compromesso.
Tuttavia, il fatto che entrambe le parti si aggrappino così strettamente alle loro opinioni indica che ognuna ha punti importanti che non dovrebbero essere guardati. Oggi tenteremo di rispettare questi punti e di trovare l'elusiva via di mezzo. Speriamo di poter indirizzare la discussione verso una conclusione che entrambe le parti possano sottoscrivere almeno in parte.
Lo stato dello sviluppo Web
Data la natura del dibattito, presumo che alcuni di noi capiscano come vengono costruiti i siti web e altri no. Con questo in mente, una semplice definizione di termini sarà molto utile per portare tutti sulla stessa pagina.
L'essenza rapida e sporca è che l'HTML è usato per i contenuti, CSS per lo styling e JavaScript per il comportamento. Quanto segue è un po 'troppo semplificato, ma riflette lo stato generale di come vengono create le pagine web di base.
? HTML è utilizzato per il contenuto, CSS per lo stile e JavaScript per il comportamento?Una pagina tipica potrebbe avere il testo, i collegamenti e persino le immagini primarie inserite tramite HTML, la cui struttura fornisce la gerarchia per l'intero progetto. HTML è lo scheletro della tua pagina.
Allo stesso modo, i CSS sono la pelle della tua pagina. Qui la maggior parte delle scelte estetiche sono fatte: colori, caratteri e persino il layout sono realizzati tramite CSS. Molto di ciò che un designer è responsabile viene eseguito con i CSS, quindi se un designer ha bisogno di capire qualcosa sul codice, questo è un buon punto di partenza.
JavaScript è il cervello opzionale per la tua pagina. Se vuoi fantasiose presentazioni o altre caratteristiche dinamiche, JavaScript è spesso il modo migliore per farlo. Ultimamente, i CSS3 si sono evoluti in un essere senziente capace di rubare alcuni dei tuoni comportamentali di JavaScript, quindi le linee non sono chiare come una volta.
Capire il tuo commercio
Indipendentemente dal tipo di designer che sei, è difficile sostenere che non è vitale per la tua carriera che cerchi di capire la natura di ciò che stai creando.
I buoni stampatori sanno tutto sulla stampa e sui processi circostanti. Comprendono le operazioni di stampa a quattro colori di base, il modo in cui la carta viene tagliata in base alla dimensione dell'annuncio e in che modo si riferisce alla configurazione del file, che tipo di inchiostro è disponibile e in che modo viene miscelato; va avanti e avanti.
Un layout di base può essere creato completamente senza questa conoscenza, ma i veri professionisti investono il tempo e lo sforzo per apprendere i processi alla base dell'implementazione di un progetto in modo che possano tenerne conto durante il processo di progettazione.
"I veri professionisti investono il tempo e lo sforzo per apprendere i processi dietro l'implementazione di un progetto."I web designer ricevono spesso un pass gratuito in quest'area. La tecnologia Web è complicata quindi non è realistico aspettarsi che un designer la capisca. Dopo tutto, che importanza ha il modo in cui viene implementato il colore di sfondo purché corrisponda alle specifiche di progettazione?
È un copout o un argomento legittimo? I web designer hanno davvero bisogno di sapere che cosa è implicato nel dare vita ai loro progetti come fanno i designer di stampa? Se conoscere la differenza tra i colori spot e di processo ti rende un designer di stampa migliore, la comprensione del ruolo, della relazione e dell'implementazione delle tre tecnologie sopra menzionate ti rende un web designer migliore?
Progettare per il Web
Il web è una forma di media davvero unica. Alcuni progetti richiedono un alto livello di interazione mentre altri sono poco più di una rappresentazione digitale di ciò che potrebbe facilmente essere contenuto stampato (questo articolo per esempio).
Come web designer, hai il compito di analizzare ogni scenario e fornire un'estetica che si adatti al meglio agli obiettivi e agli utenti del sito. Una domanda importante si pone se si può davvero realizzare questo senza una comprensione di base di come funziona il web.
Supponiamo che tu stia progettando un sito per dispositivi mobili e il tuo cliente desidera mantenere bassi i tempi di caricamento. Se sai di cosa è capace il CSS, puoi facilmente creare un design accattivante che non richiede immagini. Tuttavia, se non sei sicuro di quanto sia fattibile un gradiente compatibile con più browser, allora sei in svantaggio.
Lo stesso vale per la tipografia.Forse vuoi usare un font univoco su una porzione di testo che deve essere attiva, non aiuterebbe a capire l'implementazione di @ font-face e cosa puoi fare con esso?
Separazione dei ruoli
Un importante argomento secondario in questo dibattito nasce dal fatto se i ruoli di designer e sviluppatore debbano essere completamente separati. Questo è un settore in cui entrambe le parti hanno argomenti ugualmente legittimi.
I separatisti dicono che il web design e lo sviluppo web sono due ruoli completamente diversi che richiedono set di abilità molto diversi. È molto meglio avere creativi dedicati esclusivamente al design e ai tecnici esclusivamente per la codifica piuttosto che tentare di unire i due ruoli in un singolo individuo. Fare ciò significherebbe chiedere troppo a una persona e il progetto ne risentirebbe.
In effetti, molte grandi aziende in tutto il mondo gestiscono i loro team sul web esattamente in questo modo, con un gruppo dedicato alla creazione di progetti che vengono poi trasferiti a un reparto diverso per essere trasformati in un progetto dal vivo. Ciò è particolarmente necessario quando un progetto richiede un alto livello di esperienza nello sviluppo come con un'applicazione Ruby o PHP.
"Nessuno di noi può presumere di conoscere un singolo formato che può e deve essere applicato a tutte le società di web design in tutto il mondo."Tuttavia, le piccole imprese e le operazioni di libero professionista spesso non possono permettersi più team di esperti. In questi scenari, il superuomo solitario che può vedere un progetto dall'inizio alla fine è una risorsa inestimabile. Piaccia o no, tali individui esistono in effetti, molti dei quali sono straordinariamente bravi sia nel design che nello sviluppo.
Se affrontiamo questa sottoargomentazione con una mente aperta, penso che tutti possiamo essere d'accordo sul fatto che ci sono circostanze in cui è vantaggioso che i ruoli di designer e sviluppatore siano separati e altri scenari in cui è meglio che vengano messi insieme. Nessuno di noi può presumere di conoscere un unico formato che possa e debba essere applicato a tutte le società di web design di tutto il mondo.
Il cuore del problema
Trovare un compromesso nell'argomento sopra è un passo importante. Se siamo tutti d'accordo sul fatto che ci sono casi in cui sia la scissione che l'adesione al designer e ai ruoli di sviluppatore sono una struttura legittima, allora forse possiamo arrivare ad alcune conclusioni generali sul fatto che i progettisti in generale debbano capire il codice.
Per trovare un terreno comune, analizziamo ogni argomento. La difficile condizione del puro progettista è facile per me capire perché sono stato in questo campo per così tanto tempo. La progettazione visiva è più complicata di quanto molti credano. Ci sono troppi ragazzi HTML e CSS che presumono che, poiché sanno come costruire un sito, dovrebbero essere in grado di crearne uno. Come la programmazione, il design non è qualcosa in cui puoi avere successo senza un'educazione fondamentale e un'esplorazione su ciò che funziona e cosa no. I progettisti non sono semplicemente persone con un occhio per le combinazioni di colori, sono individui altamente qualificati che hanno lavorato sodo per costruire il set di competenze che possiedono.
Il takeaway qui è che i programmatori senza esperienza di progettazione probabilmente non hanno business fingendo di essere designer. Allo stesso modo, un designer non dovrebbe passare il suo tempo a hackerare codice scritto male.
Ma aspettate, abbiamo già discusso sopra come una comprensione di base del codice possa in effetti preparare meglio il progettista per creare qualcosa che si adatti agli obiettivi del sito. Quindi, dove ci lascia questo?
Il compromesso
La conversazione di cui sopra potrebbe sembrare un po 'prolissa e superflua, ma i passaggi della logica che abbiamo attraversato sono importanti per portarci a un punto in cui possiamo raggiungere una conclusione.
Con argomenti validi da entrambe le parti in mente, è molto più facile arrivare a un compromesso. Ora possiamo vedere che coloro che pensano che i progettisti debbano capire il codice spesso non si preoccupano davvero se il progettista è colui che in realtà codifica il sito web. Sostengono semplicemente che, armato della conoscenza di come funziona il back-end, è possibile creare un design frond-end più adatto.
? A volte l'intuizione nel lavoro di qualcun altro ti aiuta a migliorare la tua.?Il compromesso è quindi che, mentre alcuni web designer possono trarre vantaggio dalla possibilità di scrivere codice, forse questa abilità non è universalmente necessaria in tutti i web designer. Tuttavia, è molto diverso dal dire che i designer non dovrebbero capire il codice che va nei siti di stile.
C'è una distinzione importante qui. Ad esempio, capisco molto su come funziona la stampa di giornali. Comprendo la qualità della carta e dell'inchiostro e il modo in cui ciò si riferisce a concetti come l'utilizzo di nero intenso anziché nero puro nei miei progetti. Tuttavia, ciò non significa che io possa uscire e trovare un lavoro nella gestione della sala stampa! Capisco quegli aspetti della stampa necessari per farmi diventare un designer migliore. A volte la comprensione del lavoro di qualcun altro ti aiuta a migliorare la tua.
Allo stesso modo, si potrebbe dire che i web designer dovrebbero capire quegli aspetti della codifica che li rendono migliori web designer. Usando i miei esempi precedenti, si può capire la flessibilità e le restrizioni di @ font-face senza memorizzare la sintassi Bulletproof di Paul Irish. Puoi anche capire quali effetti CSS3 sono supportati in quali browser senza poter scrivere il codice necessario per tale implementazione.
Metti giù le tue armi
Non sono tanto ingenuo da immaginare che ogni lettore sia d'accordo con le mie conclusioni. Come ho detto sopra, ci sono molti che semplicemente si rifiutano di considerare la possibilità che la loro strada non sia l'unica via. Tuttavia, esorto ognuno di voi a considerare quanto più ci avviciniamo alla conclusione di questo dibattito con la logica usata sopra.
? Il tuo compito è quello di assorbire le informazioni che possono e dovrebbero influenzare le decisioni di progettazione.Alla fine, perché ti importa chi fa cosa in una società di web design a patto che il prodotto finale sia soddisfacente? Con questo obiettivo in mente, un web designer che non può scrivere CSS in cima alla sua testa non è un requisito assoluto, ma ciò non significa che è fuori dai guai per la comprensione della natura fondamentale dello sviluppo web e degli strumenti che sarà utilizzato per implementare il design che crea.
Sia che tu stia progettando interfacce applicative, cartelloni pubblicitari, siti Web o flaconi di shampoo, hai la responsabilità di capire come verrà implementato il tuo progetto. Se sei abbastanza desideroso di imparare il processo abbastanza bene da farlo da solo, fa bene a te. In caso contrario, il tuo compito è quello di assorbire le informazioni che possono e dovrebbero influenzare le tue decisioni di progettazione.
Conclusione
Per riassumere, tutti abbiamo avuto opinioni ferocemente sul fatto che tutti i web designer dovrebbero capire o no l'HTML e il CSS di base. Tuttavia, se mettiamo da parte queste opinioni abbastanza a lungo da renderci conto che entrambi i lati del dibattito sono validi, allora forse un compromesso può essere fatto.
Se incoraggiamo tutti i progettisti a capire il loro mestiere e le implicazioni nel portare a compimento le loro creazioni, allora abbiamo tutti un chiaro punto di accordo. Metti giù il tuo giudizio sul processo degli altri e raccogli un nuovo mantra: I buoni designer prendono decisioni informate. Chi può discutere con tale affermazione?
Lascia un commento qui sotto e facci sapere cosa ne pensi. È vero che i web designer, come i designer di stampa, dovrebbero almeno tentare di capire cosa succede al design dopo averlo consegnato? È importante se un designer può scrivere codice finché capisce le implicazioni di come le attuali tecnologie web dovrebbero influenzare un design?