Трябва ли уеб дизайнерите да знаят кода? Намиране на компромис в уморен дебат
Трябва ли уеб дизайнерите да разбират основните HTML и CSS? Това е уморен спор с две страни, които отказват да отстъпят, защо дори да го обсъждаме?
Целта на тази статия не е да докаже коя група е правилна, а да се опита да покаже, че и двете страни наистина правят валидни точки и да види дали анализът на тези точки ни води до компромис, по който и двете страни могат да се споразумеят.
Гореща тема
Една от нашите статии миналата седмица предизвика няколко коментара по отношение на последиците от цялото парче, че уеб дизайнерите трябва да разбират кода, участващ в създаването на уеб страница. Мнозина аплодираха това предложение, докато равен брой читатели установиха, че то е извън знака.
Тази тема е дискутирана подробно в почти всеки блог за дизайн в мрежата. В дебата има две различни страни, членовете на които очертаха ясни линии в пясъка, които вероятно никога няма да бъдат пресечени.
Прав съм и грешиш
Всеки, който вярва, че разбирането на кода не е необходимо за дизайна, просто отказва да се забавлява с мисли, че това мнение може да е грешно. По същия начин, дизайнерите, които имат силно разбиране на кода, не могат да бъдат убедени, че не са по-добри дизайнери за това.
„Или дизайнерите трябва да знаят код, или не трябва, такъв прост аргумент не оставя много място за компромиси.“И така, къде ни оставя това? Изглежда сме в неподвижна ситуация, като двете страни се държат здраво. Най-големият проблем тук е, че изглежда няма средно място. Или дизайнерите трябва да знаят код, или не трябва, такъв прост аргумент не оставя много място за компромиси.
Фактът обаче, че и двете страни се придържат към своите възгледи толкова силно, показва, че всяка от тях има важни точки, които не трябва да се преглеждат. Днес ще се опитаме да спазим тези точки и да намерим неуловимата средна позиция. Да се надяваме, че можем да насочим дискусията към заключение, за което и двете страни могат поне частично да се присъединят.
Състоянието на уеб развитието
Предвид естеството на дебата, ще предположа, че някои от нас разбират как се изграждат уебсайтове, а други не. Имайки това предвид, простото дефиниране на термините ще измине дълъг път, за да помогне на всички да бъдат на една и съща страница.
Бързата и мръсна същност е, че HTML се използва за съдържание, CSS за стайлинг и JavaScript за поведение. По-долу е малко опростено, но това отразява общото състояние на това как са изградени основните уеб страници.
„HTML се използва за съдържание, CSS за стайлинг и JavaScript за поведение“В типичната страница може да има текст, връзки и дори първични изображения, вмъкнати чрез HTML, структурата на които осигурява йерархията за целия дизайн. HTML е скелетът на вашата страница.
По същия начин CSS е кожата на вашата страница. Тук са направени повечето естетически избори: цветове, шрифтове и дори оформление се осъществяват чрез CSS. Голяма част от това, за което отговаря дизайнерът, се извършва с CSS, така че ако дизайнерът трябва да разбере нещо за кода, това е доброто място за начало.
JavaScript е незадължителният мозък за вашата страница. Ако искате фантазирани слайдшоута или други динамични функции, JavaScript често е най-добрият начин да го направите. Напоследък CSS3 се превърна в жизнено същество, способно да открадне някои от поведенческите гръмотевици на JavaScript, така че линиите не са толкова ясни, както някога.
Разбиране на вашата търговия
Независимо от какъв тип дизайнер сте, трудно е да се спори, че не е жизненоважно за вашата кариера, че се опитвате да разберете същността на това, което създавате.
Добрите дизайнери на печат знаят всичко за печата и околните процеси. Те разбират основните четири цветни операции за пресоване на цветовете, как хартията се нарязва до размера на рекламата и как това е свързано с настройката на файла, какъв вид мастило е налично и как се смесва; тя продължава и продължава.
Основно оформление може да бъде създадено напълно без това знание, но истинските професионалисти инвестират време и усилия, за да научат процесите, стоящи зад реализацията на даден дизайн, така че да могат да ги отчитат по време на процеса на проектиране.
„Истинските професионалисти инвестират време и усилия, за да научат процесите, стоящи зад реализацията на дизайна.“Уеб дизайнерите често получават безплатен пропуск в тази област. Уеб технологията е сложна, така че е нереалистично да очаквате дизайнер да я разбере. В края на краищата, какво значение има как се изпълнява цветът на фона, стига да отговаря на спецификациите на дизайна?
Това копут или легитимен аргумент ли е? Трябва ли уеб дизайнерите наистина да знаят какво е свързано с оживяването на дизайна им по начина, по който правят дизайнерите за печат? Ако познаването на разликата между цветовете на петна и процес ви прави по-добър дизайнер на печат, разбирането на ролята, връзката и прилагането на трите технологии, споменати по-горе, прави ли ви по-добър уеб дизайнер?
Проектиране за мрежата
Мрежата е много уникална форма на медия. Някои проекти изискват високо ниво на взаимодействие, докато други са малко повече от цифрово изобразяване на това, което лесно би могло да бъде отпечатано съдържание (например тази статия).
Като уеб дизайнер имате задачата да анализирате всеки сценарий и да предоставите естетика, която най-добре отговаря на целите и потребителите на сайта. Възниква важен въпрос дали наистина можете да постигнете това без основно разбиране за това как работи мрежата.
Да приемем, че проектирате мобилен сайт и клиентът ви иска да поддържа ниските пъти за зареждане. Ако знаете на какво е способен CSS, лесно можете да създадете атрактивен дизайн, който не изисква изображения. Ако обаче не сте сигурни колко е възможно нещо като градиент, съвместим с крос-браузър, тогава сте в неизгодно положение.
Същото е и с типографията. Може би искате да използвате уникален шрифт за част от текста, която трябва да бъде на живо, не би ли помогнало да разберете @ font-face реализацията и какво можете да направите с нея?
Разделяне на роли
Основен под аргумент в този дебат възниква по отношение на това дали ролите на дизайнера и разработчика трябва да бъдат напълно отделни или не. Това е една област, в която и двете страни имат еднакво легитимни аргументи.
Сепаратистите казват, че уеб дизайнът и разработката на уеб са две напълно различни роли, изискващи много различни набори от умения. Далеч е по-добре да имате рекламни послания, посветени единствено на дизайн и технологии само на кодиране, отколкото да се опитвате да обедините двете роли в един индивид. За да направите това, би било да се изисква твърде много от един човек и проектът ще страда.
Всъщност много големи компании по целия свят работят с техните уеб екипи точно по този начин, като една група е посветена на създаването на дизайни, които след това се предават на различен отдел, който да бъде превърнат в проект на живо. Това е особено необходимо, когато проект изисква високо ниво на експертиза за развитие, като например с Ruby или PHP приложение.
„Никой от нас не може да приеме, че познава единен формат, който може и трябва да се прилага за всяка компания за уеб дизайн навсякъде.“Малките фирми и операциите на свободна практика обаче често не могат да си позволят множество екипи от експерти. В тези сценарии самотният супермен, който може да види проект от начало до край, е безценен ресурс. Харесва ви или не, такива личности всъщност съществуват, много от които са забележително добри както в дизайна, така и в разработката.
Ако подходим към този под-аргумент с открит ум, мисля, че всички можем да се съгласим, че има обстоятелства, при които е полезно ролите на дизайнера и разработчиците да бъдат отделни и други сценарии, при които е по-добре те да бъдат събрани заедно. Никой от нас не може да предположи, че познава единен формат, който може и трябва да се прилага във всяка компания за уеб дизайн навсякъде.
Сърцето на проблема
Намирането на компромис в спора по-горе е важна стъпка. Ако всички можем да се съгласим, че има случаи, когато разделянето и присъединяването към ролите на дизайнера и разработчиците е легитимна структура, тогава може би можем да стигнем до някакво цялостно заключение дали дизайнерите като цяло трябва да разбират кода.
За да намерим общо основание, нека анализираме всеки аргумент. Положението на чистия дизайнер ми е лесно да разбера, защото бях в този лагер толкова дълго. Визуалният дизайн е по-сложен, отколкото много хора го отдават на заслугата. Има твърде много хора с HTML и CSS, които приемат, че тъй като те знаят как да създадат сайт, те трябва да могат да проектират такъв. Подобно на кодирането, дизайнът не е нещо, в което можете да успеете без фундаментално образование и проучване на това, което работи и кое не. Дизайнерите не са просто хора, които се интересуват от цветови схеми, те са високо обучени личности, които са работили усилено, за да създадат набора от умения, които притежават.
Преимуществото тук е, че кодерите без опит в проектирането вероятно нямат бизнес, който се преструва на дизайнери. По подобен начин, дизайнер не трябва да прекарва времето си да хаква заедно лошо написан код.
Но изчакайте, вече обсъдихме по-горе как основното разбиране на кода всъщност може по-добре да подготви дизайнера да създаде нещо, което да отговаря на целите на сайта. И така, къде ни оставя това?
Компромисът
Разговорът по-горе може да изглежда малко завит и излишен, но стъпките на логиката, които сме преминали, са важни, за да ни доведат до момент, в който можем да стигнем до заключение.
Имайки предвид валидни аргументи от двете страни, компромисът е много по-лесен за постигане. Сега можем да видим, че тези, които смятат, че дизайнерите трябва да разберат код, често не се интересуват дали дизайнерът е този, който всъщност кодира уебсайта. Те просто се аргументират, че, въоръжени със знанието за това как работи бекендът, може да се създаде по-подходящ фронд дизайн.
„Понякога вникването в работата на някой друг ви помага да станете по-добри във вашата.“Тогава компромисът е, че докато някои уеб дизайнери могат и се възползват от възможността да пишат код, може би това умение не е съвсем универсално необходимо за всички уеб дизайнери. Това обаче е много различно от това да кажете, че дизайнерите не трябва да разбират кода, който влиза в сайтове за стилизиране.
Тук има важно разграничение. Например, разбирам много за това как работи печатането на вестници. Разбирам качеството на хартията и мастилото и как това е свързано с концепции като използване на богато черно вместо чисто черно в моите дизайни. Това обаче не означава, че мога да изляза и да намеря работа, ръководяща пресата! Разбирам тези аспекти на печат, необходими, за да ме направят по-добър дизайнер. Понякога вникването в работата на някой друг ви помага да станете по-добри във вашата.
По същия начин може да се каже, че уеб дизайнерите трябва да разбират онези аспекти на кодирането, които ги правят по-добри уеб дизайнери. Използвайки предишните ми примери, човек може да разбере гъвкавостта и ограниченията на @ font-face, без да запаметява Bulletproof Syntax на Paul Irish. Можете също така да разберете кои CSS3 ефекти се поддържат в кои браузъри, без да можете да напишете кода, необходим за такава реализация.
Поставете оръжията си
Не съм достатъчно наивен, за да си представя, че всеки читател ще се съгласи с моите заключения. Както казах по-горе, има няколко, които просто отказват да разгледат възможността пътят им да не е единственият начин. Въпреки това, настоятелно призовавам всеки от вас да помисли колко по-близо до приключване на този дебат с използваната по-горе логика.
„Вашата работа е да усвоите информацията, която може и трябва да повлияе на вашите дизайнерски решения.“В крайна сметка защо ви интересува кой какво прави в компания за уеб дизайн, стига крайният продукт да е задоволителен? Имайки предвид тази цел, уеб дизайнер, който не може да изпише CSS от върха на главата си, не е абсолютно изискване, но това не означава, че той е извън куката за разбиране на основния характер на уеб разработката и инструментите, които ще се използва за изпълнение на дизайна, който той създава.
Независимо дали проектирате приложни интерфейси, билбордове, уебсайтове или бутилки с шампоан, вие носите отговорност да разберете как ще бъде приложен вашият дизайн. Ако сте достатъчно нетърпеливи да научите процеса достатъчно добре, за да го направите сами, добре за вас. Ако не, вашата работа е да усвоите информацията, която може и трябва да повлияе на вашите дизайнерски решения.
заключение
В обобщение, всички ние имаме ожесточено мнения относно това дали всички уеб дизайнери трябва да разбират основните HTML и CSS или не. Ако обаче оставим тези мнения настрана достатъчно дълго, за да осъзнаем, че и двете страни на дебата правят валидни точки, тогава може да се направи компромис.
Ако насърчаваме всички дизайнери да разберат търговията им и какво е свързано с това да доведат до реализация на техните творения, тогава всички имаме ясна точка на съгласие. Поставете своята преценка за процеса на другите и вземете нова мантра: Добрите дизайнери вземат информирани решения. Кой може да спори с подобно твърдение?
Оставете коментар по-долу и ни кажете какво мислите. Вярно ли е, че уеб дизайнерите, като дизайнерите за печат, трябва поне да се опитат да разберат какво се случва с дизайна, след като го предадат? Има ли значение дали дизайнерът може да пише код, стига да разбере последиците от това как настоящите уеб технологии трябва да повлияят на дизайна?