Первое из серии интервью с нашими приглашенными докладчиками в преддверии CityJSConf, которая пройдет онлайн 14–18 сентября 2020 г.

В этом году конференция CityJS2020 будет проходить только в виртуальном мире, перенесенном еще в марте из-за коронавируса (COVID-19). Но это не помешало нам пригласить для вас лучших спикеров со всего мира — на самом деле наш состав более разнообразен, чем когда-либо, от спикеров из Австралии до Аргентины, из таких стран, как Бразилия, Индия, Италия. , Литва, Нигерия, Сингапур и Испания между ними. И Корнуолл.

Мы очень благодарны всем, кто внес свой вклад в конференцию в ее измененной виртуальной форме. Темы, выстроенные в очередь, разнообразны и интригуют, а также посвящены последним передовым практикам в мире JavaScript.

Мы поговорили с нашими приглашенными спикерами, чтобы узнать, что они думают о JavaScript, и узнать немного больше о них и о том, как они справляются с текущей ситуацией.

Первым идет Китсон Келли, американец, в настоящее время живущий и работающий в Мельбурне, Австралия.

Консультант по информационным технологиям днем ​​и многолетний сотрудник Deno ночью, Китсон сейчас работает в Мельбурне, Австралия, в качестве главного технолога в ThoughtWorks, которая занимается разработкой и поставкой программного обеспечения, а также инструментами и консультационными услугами. До работы в ThoughtWorks Китсон был техническим директором в SitePen, руководил технологиями в NOW TV, несколько лет работал в Sky, а также в других ИТ-консалтинговых фирмах.

Все наши спикеры разбросаны по всему миру — как вам там, где вы находитесь?

У меня есть 2-х летний малыш. У меня нет жизни! У меня была очень привилегированная жизнь, я родился в США, переехал в Великобританию на 11 лет и теперь живу в «самом пригодном для жизни» городе в мире, Мельбурне.

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

У меня нет хобби, особенно во время COVID-19, если только вы не считаете хобби «отвести малыша на вокзал, чтобы посмотреть, как проходят поезда, поскольку все детские площадки закрыты». Мое непандемическое хобби — ходить в кино с партнером.

Чего вам больше всего не хватает во время пандемии?

Идем в кино с моим партнером. Возможность посидеть в кафе и выпить кофе (это очень важно для жителей Мельбурна).

Кем вы хотели быть, когда были молоды?

Менеджер ресторана быстрого питания. 🤦‍♂️

Каким был ваш первый опыт выступления на конференции?

Вау, я не совсем уверен, что помню, так как презентации и выступления на конференциях случались на протяжении всей моей карьеры. Моя самая неловкая история заключалась в том, что я выступал с важным докладом на внутренней рабочей конференции в команде тегов с коллегой, и один из моих старых боссов поймал меня до того, как я заговорил, и напомнил мне о некоторых моих «галочках». Когда я поднялся на сцену, я вдруг настолько осознал себя, что стоял там, как олень в свете фар. К счастью, мой коллега понял, что произошло, взял мою начальную часть, пока я не выздоровел.

Что заставило вас начать и что удерживает вас от выступлений на конференциях?

Что заставило меня начать? Задача и желание расширить свой опыт и поделиться своими знаниями. Что заставляет меня выступать на конференциях, так это желание делиться знаниями, надеясь, что это даст кому-то достаточно информации, чтобы предпринять действия, которые помогут им. Они могут быть небольшой формой оплаты вперед.

Каким и когда был ваш первый проект на JavaScript?

Если не считать некоторого синтаксического сахара, создающего прокручиваемый текст, в 2008 году он взорвался для меня сложным веб-приложением с богатым пользовательским интерфейсом, основанным на Dojo Toolkit.

Если бы вы могли переписать JavaScript с нуля, что бы вы изменили?

Когда начать! Избавьтесь от null, избавьтесь от неявного принуждения, избавьтесь от синтаксического сахара `class`, это ложь, которая никому не выгодна, избавьтесь от `__proto__`, внедрите `console`, `setTimeout`, `setInterval` в язык, только модули, придумайте `Temporal` перед `Date` и назовите его `Date`.

В этом году JavaScript исполняется 25 лет. Что превратило его из кусочка синтаксического сахара, посыпанного HTML, в его нынешнюю форму?

Браузерная платформа, продвигаемая как общая платформа почти для каждого пользовательского интерфейса, потребовала взросления JavaScript. Соедините это со взлетом серверного JavaScript, и вы получите язык, который был вынужден стать зрелым. Я думаю, что TC39 подал пример того, как сообщество стандартов может добиваться консенсуса и при этом оставаться продуктивным.

Любимая библиотека или фреймворк JavaScript — почему?

Внешний интерфейс? Много моего кровавого пота и слез все еще в Додзё, но я не знаю, есть ли у меня фаворит на данный момент, у меня их много, которые мне не нравятся. Бэкэнд? Ну, опять же, я предвзят, но я думаю, что Oak — довольно приличная среда промежуточного программного обеспечения для Deno.

Как вы выбираете фреймворки, которые используете?

Для серверной части, потому что я написал это? Но, честно говоря, паттерн промежуточного программного обеспечения Express/Koa является хорошим паттерном для написания кода серверного типа, поэтому мне показалось логичным, что Oak должен следовать этому паттерну. Для front-end фреймворков стараюсь больше не выбирать.

Как вы (и ваша компания) адаптируетесь к нынешней пандемии коронавируса?

Я работал в полностью распределенной моде два года назад, вернуться к этой модели для меня удобно. Я думаю, что многим организациям приходится быстро адаптироваться к этому. В каком-то смысле это хорошо, но и тяжело. Я рад, что это дало возможность CityJS выйти на глобальный охват, и это здорово. Надеюсь, это поможет всем нам понять важность того, что разные ораторы и точки зрения могут принести сообществу.

Каково будущее JavaScript?

Больше хороших приложений со слабо типизированным языком сценариев и больше плохих приложений со слабо типизированным языком сценариев. Это здесь, чтобы остаться, наверняка. Я действительно думаю, что TC39 делает хорошую работу по развитию языка и никого не оставляет позади, так что процесс работает, и это здорово.

Что вы думаете о PHP? Действительно ли это работа дьявола?

Языки программирования — это абстракции, все абстракции раздражают. Хорошие абстракции повышают производительность, уменьшают количество нанесенных себе ран и не слишком раздражают. На мой взгляд, PHP не является хорошей абстракцией.

TypeScript: да или нет? И почему?

да. Глупый вопрос! :-) TypeScript имеет свое место, как и JavaScript. Многие люди судят о нем по его безопасности типов во время разработки, но его реальная полезность заключается в «масштабировании» JavaScript, упрощающем совместное использование и использование кода. JavaScript сам по себе недостаточен для выражения цели кода, который вы пишете, что становится препятствием для использования этого кода. На мой взгляд, тип безопасности времени разработки является «дополнительным преимуществом».

И как лучше всего изучить JavaScript?

Пишите JavaScript!

И, наконец, бонусный вопрос, который я каждый год задаю техническим специалистам: как квантовые вычисления повлияют на мир? (вспомните разработчиков на Netflix)

Это меняет некоторые из самых фундаментальных примитивных способов, которыми мы думаем о «вычислительной логике», и я не думаю, что большая часть мира программирования уже сдвинулась, чтобы иметь возможность использовать потенциальную мощь и эффективность квантовых вычислений. Для некоторых рабочих нагрузок будет быстрее, проще и безопаснее использовать квантовые вычисления, и я не знаю, знаем ли мы еще лучшие варианты использования. Нам потребовалось 50–60 лет, чтобы несколько эффективно использовать бинарную логику, и мы все еще учимся.