Bør nettdesignere kjenne kode? Å finne kompromiss i en lei debatt
Bør nettdesignere forstå grunnleggende HTML og CSS? Det er et lei argument med to sider som nekter å gi seg, hvorfor til og med diskutere det?
Hensikten med denne artikkelen er ikke å bevise hvilken gruppe som har rett, men å forsøke å vise at begge sider faktisk gir gyldige poeng og å se om å analysere disse poengene bringer oss til et kompromiss som begge parter kan bli enige om.
Et hett tema
En av artiklene våre forrige uke fikk flere kommentarer om implikasjoner i hele stykket om at webdesignere skulle ha et grunnleggende grep om koden som er involvert i å lage en webside. Mange applauderte dette forslaget, mens et like stort antall lesere fant ut at det var utenfor markeringen.
Dette emnet er et som har blitt diskutert i lengden på omtrent hver designblogg på nettet. Det er to distinkte sider i debatten, hvor medlemmene har trukket klare linjer i sanden som sannsynligvis aldri vil bli krysset.
Jeg har rett, og du har feil
Alle som mener at en forståelse av kode ikke er nødvendig for design, nekter ganske enkelt å underholde tanker om at dette synet kan være galt. På samme måte kan ikke designere som har et sterkt grep om kode være overbevist om at de ikke er bedre designere for det.
Enten skal designere kjenne kode, eller så burde de ikke gjøre det, et så enkelt argument lar lite rom for kompromiss. ”Så hvor forlater det oss? Vi ser ut til å være i en uendelig stilstand med begge sider som holder fast. Det største problemet her er at det ikke ser ut til å være noe mellomgrunn. Enten skal designere kjenne kode eller så burde de ikke gjøre det, et så enkelt argument lar lite rom for kompromiss.
Det faktum at begge sider klamrer seg fast til deres synspunkter, indikerer imidlertid at hver av dem har viktige punkter som ikke bør sees på. I dag skal vi forsøke å respektere disse punktene og finne den unnvikende mellomgrunnen. Forhåpentligvis kan vi styre diskusjonen mot en konklusjon som begge sider i det minste delvis kan abonnere på.
State of Web Development
Med tanke på debattens art, vil jeg anta at noen av oss forstår hvordan nettsteder er bygget og noen ikke. Med dette i bakhodet vil en enkel definisjon av begreper gå langt for å hjelpe alle med på samme side.
Den raske og skitne essensen er at HTML brukes til innhold, CSS for styling og JavaScript for oppførsel. Følgende er litt forenklet, men det gjenspeiler den generelle tilstanden til hvordan grunnleggende websider bygges.
"HTML brukes til innhold, CSS for styling og JavaScript for atferd"En typisk side kan ha teksten, koblinger og til og med primære bilder satt inn via HTML, hvis struktur gir hierarkiet for hele designen. HTML er skjelettet til siden din.
På samme måte er CSS huden på siden din. Her er de fleste av de estetiske valgene tatt: farger, skrifter og til og med layout oppnås via CSS. Mye av det en designer er ansvarlig for blir utført med CSS, så hvis en designer trenger å forstå noe om kode, er dette et bra sted å starte.
JavaScript er den valgfrie hjernen for siden din. Hvis du vil ha lyse lysbildefremvisning eller andre dynamiske funksjoner, er JavaScript ofte den beste måten å gjøre det på. Den siste tiden har CSS3 utviklet seg til et velsmakende vesen som er i stand til å stjele noe av JavaScript-atferdsdunningen, så linjene er ikke så klare som de en gang var.
Forstå din handel
Uansett hvilken type designer du er, er det vanskelig å argumentere for at det ikke er viktig for karrieren din at du prøver å forstå naturen til hva det er du skaper.
Gode trykkdesignere vet alt om utskrift og prosessene rundt. De forstår grunnleggende fire fargepressoperasjoner, hvordan papiret kuttes til annonsestørrelsen og hvordan det forholder seg til filoppsett, hva slags blekk som er tilgjengelig og hvordan det blandes; det fortsetter og fortsetter.
En grunnleggende layout kan lages helt uten denne kunnskapen, men ekte fagfolk investerer tid og krefter på å lære prosessene bak implementeringen av et design, slik at de kan redegjøre for dem under designprosessen.
"Ekte fagfolk investerer tid og krefter på å lære prosessene bak implementeringen av et design."Nettdesignere får ofte et gratispass på dette området. Webteknologi er komplisert, så det er urealistisk å forvente at en designer skal forstå det. Tross alt, hva betyr det hvordan bakgrunnsfargen implementeres så lenge den samsvarer med designspesifikasjonene?
Er dette en kopout eller et legitimt argument? Trenger nettdesignere virkelig vite hva som er involvert i å bringe designene sine til live slik de trykte designerne gjør? Hvis å vite forskjellen mellom spot- og prosessfarger gjør deg til en bedre utskriftsdesigner, gjør det å forstå rollen, forholdet og implementeringen av de tre teknologiene som er nevnt ovenfor, deg til en bedre webdesigner?
Designing for The Web
Internett er en veldig unik form for medier. Noen prosjekter krever et høyt nivå av samhandling, mens andre er litt mer enn en digital skildring av hva som lett kan skrives ut innhold (for eksempel denne artikkelen).
Som nettdesigner har du i oppgave å analysere hvert scenario og gi en estetikk som best passer til målene og brukerne av nettstedet. Et viktig spørsmål oppstår om du virkelig kan oppnå dette uten en grunnleggende forståelse av hvordan nettet fungerer.
La oss si at du designer et mobilnettsted og at klienten din vil holde lastetidene lave. Hvis du vet hva CSS er i stand til, kan du enkelt lage et attraktivt design som ikke krever bilder. Men hvis du ikke er sikker på hvor mulig noe som en kompatibel gradient med tvers av nettlesere, er du en ulempe.
Det samme gjelder typografi. Kanskje du vil bruke en unik font på en del av teksten som trenger å være live, ville det ikke hjelpe å forstå @ font-face implementering og hva du kan gjøre med det?
Skille roller
Et stort underargument i denne debatten oppstår om rollene som designer og utvikler skal være helt separate. Dette er ett område der begge sider har like legitime argumenter.
Separatistene sier at webdesign og webutvikling er to helt forskjellige roller som krever veldig forskjellige ferdighetssett. Det er langt bedre å ha reklamer som kun er dedikert til design og teknologier kun for koding enn å forsøke å slå sammen de to rollene i ett individ. Å gjøre det ville være å kreve for mye av en person, og prosjektet vil lide.
Faktisk håndterer mange store selskaper over hele verden webteamene sine på nøyaktig denne måten, med en gruppe dedikert til å lage design som deretter blir overlevert til en annen avdeling for å bli omgjort til et live-prosjekt. Dette er spesielt nødvendig når et prosjekt krever en høy grad av utviklingskompetanse som for eksempel med en Ruby- eller PHP-applikasjon.
"Ingen av oss kan anta å kjenne et enkelt format som kan og bør brukes på alle webdesignselskaper overalt."Imidlertid har små bedrifter og frilansoperasjoner ofte ikke råd til flere team av eksperter. I disse scenariene er den ensomme supermannen som kan se et prosjekt gjennom fra start til slutt en uvurderlig ressurs. Liker det eller ikke, faktisk eksisterer slike individer, mange av dem er bemerkelsesverdig gode til både design og utvikling.
Hvis vi nærmer oss dette underargumentet med et åpent sinn, tror jeg at vi alle kan være enige om at det er omstendigheter der det er gunstig for rollene som designer og utvikler å være separate og andre scenarier der det er bedre for dem å bli rullet sammen. Ingen av oss kan anta å kjenne et enkelt format som kan og bør brukes på alle webdesignselskaper overalt.
Hjertet til problemet
Å finne et kompromiss i argumentet over er et viktig skritt. Hvis vi alle kan være enige om at det er tilfeller der både splitting og sammenføyning med designer- og utviklerrollene er en legitim struktur, kan vi kanskje komme til en helhetlig konklusjon om hvorvidt designere generelt bør forstå kode.
For å finne felles grunnlag, la oss analysere hvert argument. Situasjonen til den rene designeren er lett for meg å forstå fordi jeg var i denne leiren så lenge. Visuell design er mer komplisert enn mange mennesker gir det æren for. Det er for mange HTML- og CSS-karer som antar at fordi de vet hvordan de skal bygge et nettsted, burde de kunne designe et nettsted. Som koding er ikke design noe du kan lykkes med uten en grunnleggende utdanning og utforsking av hva som fungerer og hva som ikke fungerer. Designere er ikke bare mennesker med øye for fargeskjemaer, de er høyt trente personer som har jobbet hardt for å bygge ferdighetssettet de har.
Takeaway her er at kodere uten designerfaring sannsynligvis ikke har noen virksomhet som later til å være designere. På samme måte bør ikke en designer bruke tiden sin på å hake sammen dårlig skrevet kode.
Men vent, vi har allerede diskutert over hvordan en grunnleggende forståelse av kode faktisk kan forberede designeren til å lage noe som passer til målene for nettstedet. Så hvor forlater dette oss?
Kompromisset
Samtalen ovenfor kan virke litt langvikling og overflødig, men trinnene i logikken vi har gått gjennom er viktige for å bringe oss til et punkt der vi kan komme til en konklusjon.
Med gyldige argumenter fra begge sider i tankene, er et kompromiss mye lettere å komme til. Vi kan se nå at de som synes designere burde forstå kode ofte ikke bryr seg om designeren er den som faktisk koder nettstedet. De argumenterer ganske enkelt for at, bevæpnet med kunnskapen om hvordan backend fungerer, kan det skapes et mer passende frond-end design.
"Noen ganger hjelper innsikt i andres jobb deg til å bli bedre på din."Kompromisset er da at selv om noen nettdesignere kan og dra nytte av å kunne skrive kode, er kanskje ikke denne ferdigheten helt universell nødvendig i alle nettdesignere. Imidlertid er det veldig forskjellig fra å si at designere ikke bør forstå koden som går inn på stylingsider.
Det er et viktig skille her. For eksempel forstår jeg mye om hvordan avisutskrift fungerer. Jeg forstår kvaliteten på papiret og blekket, og hvordan det forholder seg til konsepter som å bruke rik svart i stedet for ren svart i designene mine. Det betyr imidlertid ikke at jeg kan gå ut og få en jobb som styrer presserommet! Jeg forstår de aspektene ved utskrift som er nødvendige for å gjøre meg til en bedre designer. Noen ganger hjelper innsikt i andres jobb deg med å bli bedre på din.
På samme måte kan det sies at webdesignere burde forstå de aspektene ved koding som gjør dem til bedre webdesignere. Ved å bruke mine tidligere eksempler kan man forstå fleksibiliteten og begrensningene i @ font-face uten å huske Paul Irishs skuddsikre syntaks. Du kan også forstå hvilke CSS3-effekter som støttes i hvilke nettlesere uten å kunne skrive koden som er nødvendig for en slik implementering.
Sett ned våpnene dine
Jeg er ikke naiv nok til å forestille meg at hver leser vil være enig i konklusjonene mine. Som jeg sa ovenfor, er det flere som ganske enkelt nekter å vurdere muligheten for at veien ikke er den eneste måten. Imidlertid ber jeg hver av dere om å vurdere hvor nærmere vi kommer til å avslutte denne debatten med logikken som er brukt ovenfor.
"Jobben din er å absorbere informasjonen som kan og bør påvirke designvedtakene dine."Til slutt, hvorfor bryr du deg hvem som gjør hva i et webdesignfirma så lenge sluttproduktet er tilfredsstillende? Med dette målet i bakhodet, er en nettdesigner som ikke kan skrive CSS fra toppen av hodet, ikke et absolutt krav, men det betyr ikke at han ikke har lyst på å forstå den grunnleggende karakteren av webutvikling og verktøyene som vil bli brukt til å implementere designet han lager.
Enten du designer applikasjonsgrensesnitt, reklametavler, nettsteder eller sjampoflasker, har du et ansvar for å forstå hvordan designet ditt blir implementert. Hvis du er ivrig nok til å lære prosessen godt nok til å gjøre det selv, bra for deg. Hvis ikke er jobben din å absorbere informasjonen som kan og bør påvirke designbeslutningene dine.
Konklusjon
For å oppsummere, har vi alle heftig holdt meninger om hvorvidt alle nettdesignere skal forstå grunnleggende HTML og CSS. Men hvis vi legger disse meningene til side lenge nok til å innse at begge sider av debatten gir gyldige poeng, kan det kanskje gjøres et kompromiss.
Hvis vi oppfordrer alle designere til å forstå deres handel og hva som er involvert i å bringe skapelsene deres til utførelse, så har vi alle et klart poeng om enighet. Legg ned din vurdering av andres prosess og hent en ny mantra: Gode designere tar informerte beslutninger. Hvem kan krangle med en slik påstand?
Legg igjen en kommentar nedenfor og la oss få vite hva du synes. Er det sant at nettdesignere, som trykkdesignere, i det minste bør forsøke å forstå hva som skjer med designet etter at de har gitt det ut? Gjør det noe om en designer kan skrive kode så lenge han / hun forstår implikasjonene av hvordan dagens webteknologier skal påvirke et design?