Пару лет назад на CodeFest мы придумали экспертную зону. Ну, как придумали — наверняка подглядели на зарубежной конференции, но уже забыли на какой. Так вот, экспертная зона — то место, куда идёт спикер после своего доклада и ещё как минимум один слот (время доклада + вопросы) общается с участниками. Зачем мы так сделали? Чтобы увеличить время общения участников со спикером. Немудрено, что в кулуарах задавать вопросы проще, чем из зала.
На FrontFest мы пошли дальше и решили «разогреть» спикеров заранее — придумали шесть вопросов про технологии, будущее веба, работу и хобби. Знакомьтесь, задавайте свои вопросы в комментариях, приходите общаться лично на FrontFest!
1. Какая технология тебя удивила в последнее время?
Виктор gritzko Грищенко
Протокол ADS-B. Если вы смотрели самолёты на Flightradar, то возможно у вас возникал вопрос, откуда данные берутся. Данные приходят с самолётов по протоколу ADS-B. Там размер сообщения 120 БИТ, и в него помещаются все данные, глобально уникальные id-шники и довольно большой CRC. После этого, конечно, трудно смотреть на сайты, где пять мегабайт JavaScript рисуют пару кнопок.
Игорь iamo0 Алексеенко
Prolog. Я наткнулся на него в рамках рейда по другим языкам, которые периодически провожу. Мне очень нравится перенимать опыт программистов на других языках, это расширяет кругозор и помогает решать задачи более эффективно.
Prolog поразил меня тем, что в нем используется подход, полностью противоположный тому, к которому мы привыкли в программировании. Обычно, чтобы решить задачу, программист должен описать как решать эту задачу в деталях, чтобы компьютер дал окончательный ответ, но это сложно, мы можем многое упустить, человеческому мозгу сложно контролировать такие большие потоки данных. Именно поэтому существует тестирование, сложные IDE и прочие инструменты, которые помогают программисту лучше понять, что происходит в его же программе.
Пролог идет совершенно с другой стороны. Это декларативный язык программирования. В нем программист оперирует фактами и утверждениями. Проще говоря, описывает исходные данные и взаимосвязи между ними, а потом язык сам находит решение какой-то задачи. Например, в прологе можно описать понятие «Параллельные линии» и обращаясь к этому понятию решить разные задачи: можно узнать будет ли одна линия параллельна другой, а можно узнать как получить линию параллельную заданной. Это две совершенно непохожие задачи, но Пролог сам находит на них решения, опираясь на исходные данные, программисту остается только правильно задать вопрос.
Владимир Дашукевич
Квантовый компьютер! Мне всегда нравилась идея квантовой неопределенности и то, что эту неопределенность можно использовать для выполнения определенных вычислений. Я думаю в каждом из нас живет экспериментатор, который хочет изучать все новые и новые технологии и новые языки программирования. И вот, относительно недавно, я узнал что можно попробовать свои программы на реальном квантовом компьютере от IBM, а также о специальном языке программирования для него. И теперь эта технология занимает 50% моего свободного времени.
Сергей popovsergey Попов
CSS Grid Layout. Удивила всем. Она меняет представление о том, что такое сетки и как они строятся. Открывают дорогу к новым интерфейсам. Но даже если отвлечься от этого, то я очень удивлён тому, как быстро эта спецификация, в её новом формате была собрана и внедрена в браузеры. Это наверное эталон того, как спецификация должна развиваться.
Антон Немцев
CSS свойство contain. Возможность управлять рендерингом на уровне CSS — большая редкость.
Алексей iadramelk Иванов
Сложно сказать. Все либо не в последнее время появилось, либо пока только в спецификациях.Из интересного за последние месяцы могу вспомнить обсерверы в Chrome: MutationObserver, PerformanceObserver, IntersectionObserver, вот это все. Простая на первый взгляд идея, но её очень сильно не хватало.
2. За чем будущее веба?
Владислав 5angel Козуля
Не будет никакого веба. Веб и десктоп сольются в экстазе.
Владимир Дашукевич
Будущее за новыми протоколами передачи данных, так как текущее положение дел очень плохое. На сегодняшний день нам, как веб разработчикам, необходимо обеспечивать быстрый доступ к необходимым данным, целостность и актуальность данных, а также их шифрование и аутентификацию. И со временем веб-приложения будут становиться ещё сложнее и требовать ещё большего. Поэтому нам необходимо задуматься над изменением и/или улучшением современных протоколов.
Виктор Грищенко
Возможно, будущее веба — не за вебом? Прогнозы, в особенности про веб — дело неблагодарное. Рано или поздно нас всех заменят роботы.
Алексей Иванов
Самое интересное что я жду и на что надеюсь — это Houdini. Он наконец-то сделает доступными CSS-API на низких уровнях. А это значит полифилы для CSS, свои свойства для CSS, контроль отрисовки и перерисовки и многое другое.
Илья ilfa Таратухин
За приложениями, которые на лету адаптируются к платформе и корректно работают при потере связи. Сейчас как раз много инструментов для этого появляется, надеюсь родится новый стандарт на этот счет. В целом, у нас уже есть Service Workers и GraphQL, в качестве хорошего начала пути.
Антон Епрев
Веб по сути не меняется – мы все так же верстаем гипертекст и используем URL. Поэтому будущее веба в его настоящем.
3. За кем сейчас нужно следить в вебе, чтобы быть в тренде?
Алексей Иванов
Основной источник трендов и ссылок последние пару лет у меня рабочий слак, но на него трудно подписаться людям со стороны :) Из не совсем очевидных подписок в твиттере порекомендовал бы создателя вебпака @wSokra и создателя cycle.js @andrestaltz.
Илья Таратухин
Мне повезло и за меня это делают мои бывшие и текущие коллеги, мне остается только переходить по ссылкам из чатов и смотреть ретвиты. Сам подписан на Ситника, SPB Frontend, Брайна Эйха и кажется все. В качестве развлекательного (и чтобы всплакнуть от бессилия) можно на Козулю подписаться.
Владислав Козуля
Козулю, конечно же. Что за странный вопрос?
Владимир Дашукевич
Однозначно за разработчиками браузеров и движков браузеров (Lin Clark), их официальными аккаунтами (как V8, ChakraCore), официальными аккаунтами больших фирм (IBM, Miscrosoft, Google), популяризаторами веб технологий (Grigory Petrov, Troy Hunt, bobuk, Val Head) и так далее.
Антон Немцев
- github.com/tc39, в частности github.com/tc39/ecma262
- github.com/w3c, в частности github.com/w3c/csswg-drafts
- www.smashingmagazine.com
- alistapart.com
- lea.verou.me
- ireaderinokun.com
- css-tricks.com
- ponyfoo.com
…
а лучше просто подпишитесь на еженедельные рассылки по HTML, CSS и JS. Их множество.
4. Что мешает/помогает тебе соблюдать сроки выполнения задач?
Виктор Грищенко
Кофе — и то и другое. С одной стороны, позволяет мобилизоваться. С другой стороны, под кофеином начинаешь что-то не то выдумывать и делать лишнюю работу. Drink coffee — do stupid things faster, with more energy!
Игорь Алексеенко
Мешает желание попробовать что-нибудь новое. Любопытство. Вместо того, чтобы сделать надежно, проверенно и скучно, возникает желание попробовать что-нибудь новенькое, решить задачу как-нибудь по-другому. С другой стороны это, в какой-то степени помогает. Но больше всего помогает близость дедлайна:)
Владимир tadatuta Гриненко
Сильнее всего мешает возможность открывать несколько табов в браузере и редакторе. Еще мешают телеграмм, скайп, джаббер и почта. Впрочем, почта как раз в отдельном табике в браузере и висит. А помогает темнота за окном и то, что зима близко.
Антон Немцев
Помогает четкая их постановка и отслеживание выполнение задач с помощью мыслекарт и календаря. Мешают отвлекающие факторы, изменение скоупа задач, проблемы с оценкой времени, которое требуется на выполнение некоторых типов задач.
Алексей Иванов
Чувство вины!
5. Если не программирование, то что и почему?
Владислав Козуля
Рекрутинг. Люблю соединять сердца.
Антон Епрев
Фотография. Люблю снимки, к которым хочется возвращаться.
Антон Немцев
Стриптизер в гей-клубе. А почему бы, собственно, нет? Или, может быть, маленькой лошадкой. Я люблю животных!
Виктор Грищенко
У меня есть разные хобби — готовить, делать кожаные блокноты и всякие
такие штучки. Но превратить это в работу трудновато — экономика не сходится. Чтобы сходилось, нужно продавать дешёвую массовую китайскую продукцию, но брать при этом, как за элитную и эксклюзивную. То есть, нужен бренд, маркетинг и промывка мозгов населению. В мире блокнотов это Moleskine осуществил, например.
Аналогично с кухней. Не представляю, где можно поесть хорошей солянки — этот суп слишком дорогой для общепита. Небольшая экономия на ингредиентах и/или процессе сразу улучшает финансовые показатели настолько, что искать хорошую солянку можно разве что в мишленовских ресторанах. Впрочем, к миру технологий эти принципы тоже применимы.
Игорь Алексеенко
Я уже выбрал — преподавание.
Я до сих пор программирую, но это не моя основная профессия, теперь это умение, которое помогает мне решать задачи. Вообще, я считаю что программирование рано или поздно из основной профессии превратится во вспомогательный навык. Сейчас программисты это люди, которые знают как решить чужую задачу с помощью своих инструментов и, фактически, получают деньги за то, что знают магические заклинания, которых не знают другие. Кажется, что однажды это изменится.
Владимир Гриненко
На самом деле многие аспекты нашей жизни — это программирование в том или ином виде.
Ведь программирование — это когда берешь большую непонятную задачу, откусываешь от нее небольшой кусочек, который помещает в голову, и прикидываешь, какие нужно пройти шаги, чтобы приблизиться к общей цели.
Вот например, хочется стать хорошим человеком. Что это значит — непонятно. Но можно прикинуть, что одним из составляющих будет, скажем, хорошее образование. Как получить хорошее образование, тоже непонятно. Но точно потребуется научиться читать. И с такой задачей уже все просто:
studyAlphabet()
.then(getSomeBooks)
.then(books => Promise.all(books.map(readBook)));
6. На какой доклад из программы FrontFest пойдёшь и почему?
Илья Таратухин
Сходил бы на Владимира Гриненко, у него всегда интересные доклады, а тут горячая тема намечается. У Тима Чаптыкова огромный опыт работы с графикой, есть чему научиться. Любопытно что расскажет Владимир Дашукевич, для нас сложность алгоритмов и оптимизация хранения данных на клиенте сейчас очень актуальная тема.
Владимир Дашукевич
Закложурю ваш джаваскрипт. Функциональный подход для написания программ мне очень импонирует (он прекрасен, как математика) и мне безумно интересен опыт других людей в данной области. Как они организуют код, как строят архитектуру приложения в функциональном стиле, как преодолевают определенные сложности.
Игорь Алексеенко
Я не могу назвать одного, поэтому перечислю несколько:
- Выступление Леони Уотсон про доступность, это одна из основополагающих вещей в вебе, которой уделяется очень мало внимания.
- Интересно узнать что за формат RON, про который будет рассказывать Виктор Грищенко, кажется, что у меня есть задачи, в решении, которых этот формат может помочь.
- Очень любопытно было бы сходить на выступление Code & Art, потому что всегда интересно посмотреть на необычные способы применения программирования.
- По той же причине хотелось бы послушать доклад Лайзы Гарднер JavaScript on Things.
- И в конце, отмечу доклад Владимира Дашукевича про алгоритмы и структуры данных, потому что это тема до сих пор далека и непостижима, для многих веб-разработчиков, но совершенно напрасно.
Сергей Попов
Как устроен главред, потому что я часто им пользуюсь. Кодстайл и насилие, потому что название располагает.
Антон Немцев
Cложно сказать. У конференции подобралась отличная программа. Однозначно хотел бы услышать:
«React and data: Effective ways of storing and changing state» — в последнее время я работаю с реактом и это актуальная для меня тема;
«Progressive Image Rendering» — потому что картинки это значительная часть контента и всегда лучше подавать его наилучшим образом;
И конечно «Trends and frontends» потому, что всегда есть что то, о чем ты не подозреваешь и очень зря, и потому, что Виктор Грищенко. Виктор — это очень весомый аргумент, знаете ли.
Виктор Грищенко
Это всегда сложный вопрос. Буду слушать всё, что касается SPA.
Разогрелись? Заготавливайте вопросы и приходите общаться лично. Вот, например, полный список спикеров и их тем.