11 декември, 2019

DevStyler гостува на DevReach и се срещна с професионалисти от Украйна, Великобритания и България. Дали живеем в “Ерата на фреймуърците”, какво е бъдещето на PWA, за новите обновления при Angular и за работата с клиенти – това ни отговориха Наталия Теплухина от Scalac, Джо Франчети от Samsung, Денис Кяшиф от New Ventures и Светлин Николаев от Progress.

Наталия Теплухина

Върху какви проекти сте работили? Какви са разликите между разработчиците в Източна и Западна Европа? Има ли изобщо някакви разлики?

Работила съм по много различни проекти с разнообразни front-end фреймуърци. Най-малкия от тях направих с Vue.js, а зад най-големия стои екип от 18 души и той е разработен с Angular 6. Когато говорим за разликите между разработчиците в Западна и Източна Европа, наистина не мога да открия такива. Всички изпълняваме проектите си и когато преглеждаш кода на някого, наистина не можеш да кажеш откъде е човекът.

Какво е мнението ви за тенденциите при front-end фреймуърците? Живеем ли в „Ерата на фреймуърците“?

Не харесвам сегашната ситуация с front-end фреймуърците. Първо, много разработчици са склонни да научат само един фреймуърк, да не харесват останалите и да забравят за добрите JavaScript умения, които всъщност са основни за всеки добър front-end разработчик. Второ, в това състезание на фреймуърци, хората започват да се колебаят какво да изберат за своя проект и понякога вземат решения, повлияни от масовото мнение. Надявам се, че скоро ситуацията ще се стабилизира и „Ерата на фреймуърците“ ще приключи.

Джо Франчети


Може ли да ми разкажете повече за първия ден, когато започнахте да работите с виртуална реалност?

За първи път се запознах с webVR чрез един невероятен лектор – Ада Роуз Канън, с която сега сме колеги. Тя представи библиотека, наречена A-Frame, която ти позволява да пишеш VR (виртуална реалност) за уеб с декларативен език като HTML/SVG. Веднага бях заинтригувана. Библиотеката прави създаването на 3D сцени и вкарването на модели  много по-просто. Изведнъж VR, което изглеждаше невъзможно за 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 и има много голяма общност, която допринася за неговото развитие.

За разлика от други, от Angular екипа пускат нова версия два пъти в годината, но от друга страна промените не са толкова много, колкото биха били, ако се обновяваше по-рядко. Също така функционалностите достигат по-бързо до тези, които работим с Angular.Всъщност проблемите, като с всяка друга технология изникват, когато даден проект изостане твърде много с версиите. По мой опит, преминаването от предпоследна към последна версия винаги е било сравнително лесно, а и вече Angular е зряла технология и промените не са толкова драстични. Програмистите обичаме да разработваме нови функционалности без да се занимаваме с ъпдейти, или да преправяме стар, работещ код, но това все пак е част от работата и с времето тези усилия се отплащат.

Как се става консултант за дадена компания? Къде сте научил тези умения?

За консултантската работа се изискват умения на различни нива. Първо човек трябва да е запознат в дълбочина с технологията, с която работи. Към това прибавяме комуникативните умения, защото се работи с различни организации от различни държави, екипи и хора с различни роли. Някои клиенти търсят човек, който да помогне на екипа им да навлезе в дадена технология, други искат да им се положат основите на проекта, след което те да го надграждат. Трети имат нетривиални казуси и очакват да им се предложи ефективно решение. Понякога клиентите държат да се отиде на място при тях, други предпочитат онлайн. Всеки си има различен начин на работа и човек трябва умее да се адаптира бързо.

Консултантските компании се занимават и с разработка, така че човек там може да прави само това, без да се налага да навлиза в консултантската част. Аз имах привилегията да работя с опитни хора, които ми помогнаха в това отношение. Изисква се и малко смелост, за да се направят първите стъпки. Като за начало в моя случай трябваше да прекарам една седмица в офиса на наши клиенти в Щатите, където да разберем защо на някои места приложението им зарежда бавно, след което отидох отново за три седмици, за да решим проблема.

Светлин Николаев

Кое според вас е по-важно – да даватe на потребителя това, което той си мисли, че иска, или това, което на него му трябва?

Въпросът е недвусмислено да се разбере какво цели да постигне потребителят и какъв е проблемът, който решава. Следващата стъпка е да се намери оптимален път за достигане на тази цел. Борба с нагласи и предубеждения понякога съществува, но интуитивният интерфейс винаги печели.

Какви методи прилагате при работата с клиенти и колко един UX developer трябва да се интересува от психология?

Тестването, обратната връзка и итерирането са много важни при оформянето на интерфейса на услуга и продукт. UX дизайнерът трябва добре да познава своята аудитория и да може успешно да излиза от ролята на създател и да влиза в ролята на потребител. Психологията на взаимодействие и поведенчески техники са в основите на всяко потребителско изживяване. Фокус само върху потребителското изживяване в рамките на продукта също е недостатъчно. UX дизайнерът трябва да работи заедно с останалите специалисти – развойна дейност, маркетинг, продажби, поддръжка. Тази тясна връзка прави цялостното потребителско изживяване успешно. Познания в останалите сфери на бизнеса гарантират изграждане на цялостен продукт и високо ниво на потребителското удовлетворение.

Тагове: , , , , , , , , , , , ,