Интервью с автором Vue.js: «Важно понимать, что хотят пользователи»
Эван Ю — независимый разработчик и автор Vue.js, JavaScript фреймворка с открытым исходным кодом. Мы организовали интервью, в котором Эван рассказал про третью версию Vue.js,
Интервью
Evrone: Приветствуем, Эван, и добро пожаловать на интервью! Давай начнём с твоей
Эван: Работая из дома над собственным проектом, я стараюсь каждый день придерживаться чёткого графика. Как ни странно, этому способствуют семья и дети: фиксированный график работы позволяет проводить с ними всё то время, когда я не пишу код. Когда чувствую необходимость сделать перерыв, то беру большой «отпуск» на несколько недель, что тяжелее сделать, если работаешь в офисе
Evrone: Звучит как хороший план! Кстати, а какие у тебя планы после релиза Vue 3? Возьмешь отпуск или займёшься системой сборки Vite?
Эван: У меня всегда длинный список задач в бэклоге. Что касается Vite, я для начала хочу стабилизировать эту систему: она новая, и разработчики пытаются использовать её неожиданными для меня способами. Дадим Vite время и посмотрим, в какую сторону её нужно развивать. И конечно, у меня уже есть планы на Vue 3.1, но перед этим — отпуск!
Evrone: Когда ты работал в Google Creative Lab, у тебя был диплом по истории искусств и должность «creative technologist». Чувствовал ли ты нехватку фундаментальных знаний по математике, алгоритмам и структурам данных, когда начал создавать Vue? Как ты считаешь, нужно ли разработчикам хорошо знать теорию информационных технологий и математику, или же нам нужно быть «писателями программ»?
Эван: Честно говоря, особой нехватки я не ощущал. Думаю, что Vue, или же фронтенд фреймворки в целом — это не та область программирования, где нужно много математики и алгоритмов. В сравнении, например, с базами данных.
Алгоритмы и структуры данных до сих пор не моя сильная сторона. Такие знания полезны, но, на мой взгляд, для разработки популярных фреймворков гораздо полезнее другие навыки: понимание пользователей, вменяемый дизайн API, создание сообществ и поддержка своего кода долгое время.
Я не считаю, что «писатель программ» и «настоящий
Evrone: Разумный подход. Наш следующий вопрос про такие технологии как Nuxt.js и JAMstack. С их помощью разработчики могут фокусироваться на фронтенде приложения, используя минимальный бэкенд — Node.js или Backend-
Эван: Полагаю, здесь мы наблюдаем рост популярности продуктов, которые могут быть созданы таким образом. Разработчики становятся «fullstack» или используют минимальные бэкенды не потому, что это самый лучший способ разработки, а потому, что могут таким образом решать определенный класс бизнес задач. Это не волшебная палочка, но хорошо подходит для проектов со сложным фронтендом и относительно простым бэкендом.
Evrone: Vue переписывался несколько раз. Если бы ты мог вернуться в прошлое, какой технический совет ты дал бы себе самому?
Эван: Я рассказал бы себе, как лучше разделять и отделять друг от друга внутренние модули проекта.
Evrone: Последние несколько лет мы видим параллельную эволюцию JavaScript и TypeScript. Как думаешь, что произойдет раньше: в JavaScript
Эван: Добавление типов в JavaScript это очень, очень, очень долгая история. Мое личное мнение — это вообще не случится, так как создание системы типов комитетом (а мы знаем, как работает TC39)… не очень практично. С другой стороны, TypeScript вряд ли заменит JavaScript, потому что является надстройкой над ним. Думаю, в обозримом будущем мы будем использовать оба языка и они будут развиваться параллельно.
Evrone: Твой фреймворк уже использует более миллиона разработчиков. Как их правильно посчитать? Вопросы на Stack Overflow и звёзды на GitHub показывают публичную активность, но ведь многие разработчики внутри корпораций работают в «закрытом периметре», редко задают вопросы и «просто используют технологию». Можем ли мы их тоже посчитать?
Эван: Именно для
Evrone: Для третьей версии Vue было проделано много работы над
Эван: Механика работы
Evrone: Предложение «
Эван: Сопротивление было вызвано страхом, что текущее API версии 2.x будет заменено новым. Следовательно, с нашей стороны было ошибкой высказывать такое предположение, предлагая новое API. Как авторы и мейнтейнеры, мы в основном общаемся с ранними последователями, которые, в отличие от большинства обычных пользователей, более заинтересованы в новых фичах. Это привело к тому, что мы неправильно оценили важность обратной совместимости. Пользователям не нравится, когда у них
Нам нужно понимать, что они хотят. Это не всегда просто. Иногда такое понимание приходит не самым приятным способом, и важно сохранять в себе желание получать даже неприятную обратную связь.
Evrone: Vue используют многие компании, от самых маленьких до огромных корпораций. Louis Vuitton и NASA работают с Vue. Какие примеры использования Vue ты можешь рекомендовать как образец действительно сложного фронтенда?
Эван: Большинство действительно сложных фронтендов не являются
В завершение интервью
Наша беседа с Эваном позволила узнать чуть больше о подходах лучших разработчиков как к созданию своих решений, так и к организации рабочего времени. Мы в Evrone часто используем Vue.js, чтобы создать индивидуальные решения для наших клиентов. И мы всегда стараемся узнать больше у авторов популярных технологий и решений, чтобы самим научиться лучше создавать софт для наших клиентов. Если у вас есть задачи, которые вы хотите решить с помощью Vue.js — напишите нам, и мы расскажем, что можем сделать для вашего бизнеса.