Нравится вам это или нет, но JavaScript никуда не денется и неизбежен. Он превращается в самый популярный межплатформенный язык. Это откроет вам новые возможности для изобретения новых вещей и их эффективного развития. Пришло время освоить это.

Показательный пример

Моя главная мотивация для SpendSimple — сделать управление расходами по кредитным картам менее болезненным, чтобы люди не боялись этого процесса. SpendSimple должен быть игривым и нетрадиционным.

Что касается пользовательского интерфейса, я начал с рассмотрения методов/инструментов, которые разработчики игр используют для развлечения: Unity, взаимодействия на основе физики, спрайты, таблицы лидеров и т. д. К моему удивлению, JavaScript доминирует в эта арена. Библиотеки богаты функциональностью, достаточно быстры для большинства случаев использования, и сообщества активны. Однажды написать, запускать везде важно, потому что при написании пользовательского интерфейса приходится МНОГО итерировать. Итерация поверх двух нативных кодовых баз просто неэффективна и не доставляет удовольствия.

На стороне сервера приложений JavaScript/NodeJS/Express не самый лучший вариант (все равно очень легко выстрелить себе в ногу). Но для небольших проектов отлично подходит отсутствие необходимости переключаться на другую среду (например, Java/Spring Boot.) В этом году облачные функции AWS Lambda и GCP значительно повзрослели. Преимущество выполнения всего на JavaScript перевешивает его недостатки.

На уровне базы данных, особенно если вы используете более новые базы данных, такие как MongoDB, Firestore или Redis, клиенты JavaScript на самом деле являются гражданами первого класса. Для людей постарше, таких как я, может показаться странным писать логику базы данных и триггеры на JavaScript, но это происходит.

Что касается ИИ, у TensorFlow теперь есть реализация JavaScript как для обучения модели, так и для логического вывода.

Многие библиотеки JavaScript работают везде. Moment для обработки даты/времени, Mocha для тестирования, Socket.io для связи, Passport для аутентификации и т. д. Очень приятно иметь возможность повторно использовать или сворачивать собственные библиотеки и использовать их везде: на на веб-страницах, в мобильных приложениях, на серверах, в базах данных и даже в модулях машинного обучения.

Да, JavaScript не сексуален. Но, как и в случае с Visual Basic, этого достаточно для того, чтобы что-то делать.