TL; DR; версия - JS никуда не денется, поэтому наймите JS-разработчиков, склонных к обучению, чтобы они могли переходить от фреймворка к фреймворку через ваш стек. Как руководитель, ориентированный на бизнес, задавайте вопросы, которые переводят выбранные технологии в бизнес-риски и могут быть сопоставимы количественно (в долларах США) вашему финансовому директору.

1. Это версия 1?

Останавливаться. Никогда и никогда не используйте версию 1.0 какой-либо платформы. Имхо, единственная цель версии 1.0 - определить, в каком направлении полная версия 2.0 полностью переписывает структуру, чтобы решить проблемы масштабирования и архитектурных шаблонов. которые лучше подходят для использования в реальном мире.

2. Кто стоит за технологией?

Давайте посмотрим на exec и сравним AngularJS, ReactJS и Sencha. Здесь есть много вариантов, но они, кажется, появлялись в моих обсуждениях совсем недавно.

AngularJS? Тогда это Google и Microsoft.

Думайте об этом выборе как о сосредоточении на продвижении уровня вашего приложения в JavaScript для подключения пользовательских интерфейсов к службам, а не для создания потрясающих пользовательских интерфейсов. Angular дополнен фреймворком с открытым исходным кодом для виджетов пользовательского интерфейса Ionic (от Ionic).

ReactJS / ReactNative? Тогда вы говорите о Facebook.

Думайте об этом выборе как о том, что Facebook делает упор на высокоэффективное взаимодействие с пользователем и неспособность HTML5 конкурировать с собственными мобильными приложениями. Учитывая огромный пример использования Facebook в первую очередь для мобильных устройств, а также их стремление превратить страницы Facebook в рынок электронной коммерции для малого бизнеса, за этой структурой стоит наблюдать.

Sencha? Тогда вы говорите о Sencha, Inc. *.

Думайте об этом выборе как о соответствии бизнес-кейсу для: 1) поддержки устаревших браузеров на настольных компьютерах, 2) внутренних приложений с большим количеством сеток (табличные данные) и 3) корпоративных мобильных приложений, ориентированных на сотрудников и деловых партнеров. Если ваша компания уже вложила много средств в приложения EXT-JS, она может захотеть использовать кривую обучения разработчиков для существующих приложений и оценить все фреймворки для проектов B2C. С новым руководящим составом бизнес-модель, похоже, эволюционирует в платформу для сквозной разработки, тестирования и развертывания в дополнение к фреймворкам пользовательского интерфейса и приложений.
* полное раскрытие - Modus Create - это Премьер-партнер Sencha.

3. Насколько велико сообщество разработчиков?

В конце концов, вам нужно будет нанимать людей. Легкий способ взломать этот ответ - поискать вакансии и опубликовать тенденции на Indeed или Dice (см. Диаграммы ниже). Фреймворки уровня презентаций всегда будут развиваться быстрее, чем код на стороне сервера, поэтому наем фронтенд-разработчиков, которые постоянно учатся, - единственный выход. Насколько посещаемы мероприятия для разработчиков? Сколько существует встреч?

4. Какова общая стоимость владения?

На этот вопрос сложно ответить, но давайте попробуем. Короткий ответ всегда «это зависит», но от чего? Что ж, это просто, ответьте на эти три вопроса:

  1. Стоимость разработчика (специалист). исходя из вопросов 1–3, сколько почасовая оплата у фрилансеров? каковы диапазоны заработной платы для местных талантов среднего и высшего звена? насколько желательны разработчики (повышение зарплаты)? Определите кривую обучения разработчиков как функцию ((зарплата / 365) * дней для повышения квалификации * количество разработчиков), используйте эту функцию, чтобы оправдать нового найма, который может уменьшить любую из переменных. Теперь скорректируйте переменные на рабочем месте - будьте честны и ответьте за себя: «Какую надбавку должна платить наша компания, если мы не считаемся привлекательным местом для работы, если нам требуется работа на месте и т. Д.?»
  2. Стоимость качества - насколько хорошо платформа поддерживает автоматизацию тестирования? Сколько «вещей» я могу достать из коробки? Сколько усилий потребуется от разработчиков, чтобы расширить и настроить фреймворк?

5. Сколько стоит изменение?

Это просто, если вы (генеральный директор / главный операционный директор) на самом деле не проблема. « Я? Как так? », Ну да, с точки зрения эмоциональной предвзятости к устаревшей кодовой базе при сравнении затрат на поддержание кода« как есть », чреватого техническим долгом, с затратами на улучшение или восстановление (всегда дороже). Все мы знаем тип «коды работали нормально 10 лет» «Джо написал старый интерфейс за 10 дней». Если вы его, перестаньте читать. В отставку, проблема в тебе. Если вы не он / она, а я надеюсь, что это так, примите во внимание следующее:

  1. Избегайте затрат на раннее внедрение. Спросите своего технического директора: «Сейчас самое время изменить нашу кодовую базу?» «Неужели слишком раннее внедрение фреймворка повлечет за собой дополнительные расходы, когда нам придется переписать его через год?
  2. Избегайте заблуждения о невозвратных затратах. Противоположность раннему переходу - это слишком поздно. Спросите своего технического директора: Не переплачиваем ли мы нашим существующим разработчикам, потому что наш существующий код настолько хрупок, что мы не можем позволить себе потерять их? Страдает ли наш клиентский опыт из-за того, что нам не хватает технологии пользовательского интерфейса?

Если вам понравилась эта статья, нажмите значок рекомендации (❤) ниже. Хотите еще такого? Следуйте Modus Create: Product Management. Я хотел бы услышать ваши мысли: оставьте комментарий ниже или напишите мне в Twitter!