Odnoszę wrażenie, że w tej dyskusji ścierają się dwa skrajne fronty – żarliwych zwolenników, którzy nie wyobrażają sobie pracy bez wiedzy o kodowaniu i przeciwników, którzy uważają, że jakiekolwiek programowanie należy pozostawić specjalistom. Prawda, moim zdaniem, leży pośrodku. To oczywiste, że projektant jest projektantem, a nie programistą, ale jeśli ma dodatkową wiedzę dotyczącą kodowania stron internetowych, to może skutecznie wykorzystać ją do swoich celów.

Kodowanie, czyli… o czym rozmawiamy?

Przez kodowanie rozumiem oczywiście front-end, czyli to, jak strona prezentuje się użytkownikowi na ekranie monitora. To tym zajmujemy się jako projektanci, a podział obowiązków między UX designerem a front-end developerem można w skrócie przedstawić jako: „ja projektuję – ty robisz tak, żeby działało”. Wiedza o kodowaniu pozwala dodać też: „i wiem, jak to działa”. Back-end, czyli cały szkielet strony, bazy danych, serwery, oprogramowanie itp. zostawiam programistom i informatykom – z tym zazwyczaj projektanci UX nie mają dużo wspólnego.

Mój subiektywny punkt widzenia wywodzi się oczywiście z mojego własnego doświadczenia. W moim przypadku zaczęło się to dawno temu od pisania prostych stron i mimo, że nigdy formalnie nie byłam developerką ani programistką, nie miałam też w planach szukania takiej pracy, kodowanie zawsze sprawiało mi frajdę, a strony robiłam na freelansie. Dopiero potem w moim życiu pojawił się termin User Experience i okazało się, że to projektowanie doświadczeń jest tematem, który najbardziej mnie interesuje i któremu chcę się poświęcić zawodowo.

Więc do czego to może się przydać?

Od samego początku miałam poczucie, że umiejętność kodowania pomaga mi przede wszystkim w dogadywaniu się z programistami, a przecież współpraca z działem IT nie zawsze należy do łatwych. Myślę, że projektant UX może traktować naukę kodowania jako inwestycję w lepszą współpracę z developerami. Nie chodzi o to, żeby wyręczać programistów i samemu stawiać zaprojektowane przez siebie serwisy, ale o umiejętność posługiwania się wspólnym językiem, co na pewno będzie miało dobry skutek dla projektu. Sądzę, że projektant powinien dążyć do jak najlepszego poziomu w zakresie swojej specjalizacji, a programista w swojej, ale praca nad tym, żeby powstał wspólny teren, na którym będziemy się dobrze dogadywać, nie zaszkodzi, tylko pomoże.

It’s great for a developer and designer to share skills because then they can use the same vocabulary. Anything that improves communication is, clearly, going to be a good idea.
Danilo Campos

Z praktycznego punktu widzenia

Innym praktycznym sposobem wykorzystania umiejętności kodowania jest podejście designing with code – w skrócie, projektowanie „poprzez” tworzenie HTML-owych prototypów. Jak argumentuje w swoim artykule dla UX Booth Andy Fitzgerald – samo pisanie kodu strony, nawet jeśli ograniczymy się do naprawdę najprostszych HTML-owych tagów, pozwoli nam uporządkować sobie hierarchię strony i przemyśleć, w jaki sposób jej poszczególne obszary są ze sobą logicznie powiązane. Tworzenie HTML-owych prototypów pomoże nam też przetestować na wczesnym etapie architekturę informacji.

Wiedza o kodowaniu, nawet niezaawansowana, pomaga też zdobyć wyobrażenie na temat rozwiązań i technologii, które możemy wykorzystać w naszych projektach. Może warto pozostać przy zwykłym CSSie, a może lepiej pójść krok dalej i do animacji na stronie wykorzystać WebGL? Wiedząc, jaki jest przewidziany budżet i czas trwania projektu, a przede wszystkim, jaki efekt chcemy osiągnąć, możemy zaproponować technologię, która lepiej sprawdzi się w akcji, ze świadomością jej zalet i ograniczeń.

Czy to wszystko znaczy, że czas się wziąć do nauki?

Oczywiście, najwięcej zależy od środowiska pracy. Być może Ciebie, czytelniku, nie dotyczy żaden ze wspomnianych przeze mnie przypadków – nie masz wcale styczności z programistami, nie musisz myśleć o technologiach, za to często prowadzisz szkolenia i warsztaty i kodowanie jest Ci naprawdę niepotrzebne? Wcale nie uważam, że każdy projektant bez wyjątku powinien umieć kodować i że należy wpisać tą umiejętność do checklisty przyszłego UXa. Jasne, że możesz być (i pewnie jesteś:)) świetnym projektantem z innym zestawem umiejętności – takim, który odpowiada specyfice Twojej pracy.

Nie zapominajmy, że kodowanie w pracy projektanta to wyłącznie narzędzie. Nie zgadzam się z osobami, które przestrzegają, że nie można być specjalistą w różnych dziedzinach, więc lepiej kodowanie z góry pozostawić specjalistom. Jeśli poświęcisz trochę czasu na nauczenie się solidnych podstaw – nie będzie to znaczyło, że nagle przestaniesz nadążać za trendami w UX i spadniesz na boczny tor. Nie będziesz być może wybitnym programistą, ale zyskasz umiejętności, które mogą zaprocentować w określonych sytuacjach. Kodowanie przydaje się już architektom, artystom, a nawet filmowcom i nikt nie przestrzega ich przed porzucaniem swojej branży. Jeśli czujesz, że mogłoby się przydać też Tobie – czemu nie spróbować?

Jaki z tego wniosek?

Podsumowując, wydaje mi się, że należy zmienić postawione pytanie. Nie chodzi o to, czy projektant UX powinien umieć kodować, co ograniczałoby dyskusję do prostej odpowiedzi tak/nie. Właściwe pytanie jest dużo bardziej ogólne i mniej wygodne, a jednocześnie ważniejsze – w którym kierunku chcesz się teraz rozwijać?

Celem nie jest bycie unicornem, ale świadome poszerzanie swoich kompetencji, dlatego też tym wpisem rozpoczynamy nowy cykl pt. Warsztat projektanta UX, w którym zastanowimy się nad dodatkowymi umiejętnościami, które mogą przydać się projektantowi na różnych etapach pracy.

Einstein programistą

Nie dajmy się zwariować ;) fot. Pedro Vera / Flickr (CC BY 2.0)

PS. Tym, którzy czują, że temat nie jest wyczerpany i chcieliby jeszcze się nad nim zastanowić, polecam długą i owocną dyskusję na Quoraartykuł Marcina Tredera o korzyściach płynących ze znajomości kodowania oraz tekst o wiele mówiącym tytule „Last Post You’ll Read On Whether UX Designers Need to Learn Code”.

PS2. A tym, którzy chcieliby spróbować kodowania i zobaczyć, dokąd ich to zaprowadzi, polecam:
– po polsku: świetny kurs HTML5 i CSS3 na stronie kursownik.pl stworzony przez Daniela Mizielińskiego ze studia Hipopotam (projektanta i grafika),
– po angielsku: fantastyczną stronę codecademy.com, dzięki której sami odkryjecie, że kodowanie daje frajdę, a do tego naprawdę dużo się nauczycie.