DevStyler гостува на DevReach и се срещна с професионалисти от Украйна, Великобритания и България. Дали живеем в “Ерата на фреймуърците”, какво е бъдещето на PWA, за новите обновления при Angular и за работата с клиенти – това ни отговориха Наталия Теплухина от Scalac, Джо Франчети от Samsung, Денис Кяшиф от New Ventures и Светлин Николаев от Progress.
Наталия Теплухина
Върху какви проекти сте работили? Какви са разликите между разработчиците в Източна и Западна Европа? Има ли изобщо някакви разлики?
Работила съм по много различни проекти с разнообразни front-end фреймуърци. Най-малкия от тях направих с Vue.js, а зад най-големия стои екип от 18 души и той е разработен с Angular 6. Когато говорим за разликите между разработчиците в Западна и Източна Европа, наистина не мога да открия такива. Всички изпълняваме проектите си и когато преглеждаш кода на някого, наистина не можеш да кажеш откъде е човекът.
Какво е мнението ви за тенденциите при front-end фреймуърците? Живеем ли в „Ерата на фреймуърците“?
Не харесвам сегашната ситуация с front-end фреймуърците. Първо, много разработчици са склонни да научат само един фреймуърк, да не харесват останалите и да забравят за добрите JavaScript умения, които всъщност са основни за всеки добър front-end разработчик. Второ, в това състезание на фреймуърци, хората започват да се колебаят какво да изберат за своя проект и понякога вземат решения, повлияни от масовото мнение. Надявам се, че скоро ситуацията ще се стабилизира и „Ерата на фреймуърците“ ще приключи.
Джо Франчети
Може ли да ми разкажете повече за първия ден, когато започнахте да работите с виртуална реалност?

Първият ми проект с виртуална реалност беше за Хелоуин. Преди няколко години трябваше да сканират мозъка ми и оттам имах негов 3D модел на CD. Използвах софтуера Blender да превърна модела в .obj, който да бъде използван в webVR. Взех един буркан от Poly и създадох модел с пулсиращ мозък в буркан върху маса. Зловещо!
Мислите ли, че в бъдеще прогресивните уеб приложения (PWA) ще могат по-добре да се възползват от хардуерните характеристики на телефоните (като Bluetooth, сензори, по-сложни контроли за камерата и др.), които да ги направят надеждна алтернатива на native приложенията?
Бъдещето се случва сега! Вече можем да използваме много от устройствата и хардуера, които са налични, в native в уеба. Постоянно се пускат нови и мощни API. Имаме WebBluetooth API, WebVR, WebPayments и можем да получим достъп до местоположението на потребителите, да използваме камерата и микрофона им – с тяхно позволение, разбира се. Прогресивните уеб приложения не само улесняват създаването на приложение като преживяване, но и ни насърчават да подобряваме уебсайтовете си, да ги правим по-достъпни с по-добро представяне. И не само това. Сега, когато магазините за приложения вече приемат прогресивните уеб приложения, вече е по-лесно от всякога работата на човек да бъде открита.
Има чудесни инструменти, които са вградени в браузърите, за да помагат с поправянето на бъгове в прогресивните уеб приложения. Chrome има Audits tab, който дава инструкции как да превърнете сайта си в прогресивно уеб приложение. Firefox предлага service worker debugging tools. Имаме също PWA Builder, който може да ви помогне да създадете всички части за PWA и след това да го подготвите за пускане в магазините за приложения. Наистина няма причина да не превърнете уебсайта си в PWA.
Денис Кяшиф
Смятате ли, че твърде често излизат нови версии на Angular? Постоянно променящата се обстановка може да отблъсне нови хора. Съгласни ли сте с това твърдение?
Разработката на уеб приложения в последните години се променя постоянно. Потребителските интерфейси започнаха да стават все по-интерактивни, което породи нуждата за библиотеки, които да позволят по-ефективната им разработка. С други думи, инструментите, с които разполагахме преди, се оказаха неподходящи за решаване на проблемите на съвременните уеб приложения. Angular не прави изключение. Технологията се адаптира към изискванията и промените са нещо неизбежно и належащо. Понякога с течение на времето откриваме по-добри начини да решим даден проблем. Да не забравяме, че и Angular е open source и има много голяма общност, която допринася за неговото развитие.

Как се става консултант за дадена компания? Къде сте научил тези умения?
За консултантската работа се изискват умения на различни нива. Първо човек трябва да е запознат в дълбочина с технологията, с която работи. Към това прибавяме комуникативните умения, защото се работи с различни организации от различни държави, екипи и хора с различни роли. Някои клиенти търсят човек, който да помогне на екипа им да навлезе в дадена технология, други искат да им се положат основите на проекта, след което те да го надграждат. Трети имат нетривиални казуси и очакват да им се предложи ефективно решение. Понякога клиентите държат да се отиде на място при тях, други предпочитат онлайн. Всеки си има различен начин на работа и човек трябва умее да се адаптира бързо.
Консултантските компании се занимават и с разработка, така че човек там може да прави само това, без да се налага да навлиза в консултантската част. Аз имах привилегията да работя с опитни хора, които ми помогнаха в това отношение. Изисква се и малко смелост, за да се направят първите стъпки. Като за начало в моя случай трябваше да прекарам една седмица в офиса на наши клиенти в Щатите, където да разберем защо на някои места приложението им зарежда бавно, след което отидох отново за три седмици, за да решим проблема.
Светлин Николаев
Кое според вас е по-важно – да даватe на потребителя това, което той си мисли, че иска, или това, което на него му трябва?
Въпросът е недвусмислено да се разбере какво цели да постигне потребителят и какъв е проблемът, който решава. Следващата стъпка е да се намери оптимален път за достигане на тази цел. Борба с нагласи и предубеждения понякога съществува, но интуитивният интерфейс винаги печели.
Какви методи прилагате при работата с клиенти и колко един UX developer трябва да се интересува от психология?
Тестването, обратната връзка и итерирането са много важни при оформянето на интерфейса на услуга и продукт. UX дизайнерът трябва добре да познава своята аудитория и да може успешно да излиза от ролята на създател и да влиза в ролята на потребител. Психологията на взаимодействие и поведенчески техники са в основите на всяко потребителско изживяване. Фокус само върху потребителското изживяване в рамките на продукта също е недостатъчно. UX дизайнерът трябва да работи заедно с останалите специалисти – развойна дейност, маркетинг, продажби, поддръжка. Тази тясна връзка прави цялостното потребителско изживяване успешно. Познания в останалите сфери на бизнеса гарантират изграждане на цялостен продукт и високо ниво на потребителското удовлетворение.









