# Понедельник 179 твитов
Hello world! На этой неделе с вами Егор Яковишен, @yaplusplus
7:32В Москве как обычно все залило, через полчаса буду выбираться в офис, а пока давайте познакомимся. Расскажу пару слов о себе.
7:33@jsunderhood @cssunderhood @abroadunderhood Поделитесь пожалуйста новостью о запуске нового англ андеграунда. RT ⬇️ twitter.com/operatino/stat…
Тем временем просят передать, что появился новый локальный аккаунт (eng), объединяющий разработчиков из Нидерландов
@jsunderhood @cssunderhood @abroadunderhood Поделитесь пожалуйста новостью о запуске нового англ андеграунда. RT ⬇️ twitter.com/operatino/stat…
7:36
Я работаю в компании Setka (setka.io), также известной как Grid. Это технологический стартап, выросший в стенах Look At Media
7:37(Look At Media — это медиа-компания, которую вы знаете по сайтам The Village, Look At Me, Hopes and Fears, Wonderzine, FurFur)
7:39В Сетке я работаю фронтенд-тимлидом и занимаюсь разработкой одного из наших продуктов для медиа — визуального редактора для крутой верстки
7:39Параллельно по выходным веду курс «JavaScript человеческим языком» в Moscow Coding School: moscoding.ru/humanjs/
7:41Вот как раз на этих выходных стартовал уже пятый набор студентов. Про обучение JS и вообще программированию мы еще поговорим.
7:41До этого у меня был очень разный опыт, так или иначе связанный с IT. Первое рабочее место — HTML-верстальщик в маленькой студии в 2006 году
7:45Затем в 2008-2012 годах я делал свою веб-студию, как и многие тогда. Были успехи, были провалы, но в целом время было интересное.
7:46В 2012-2014 я переключился на тревел-стартап, где был кофаундером и отвечал за весь фронтенд и интерфейс.
7:48Стартап был настоящий, с инвесторами, акселераторами и пивотами. Мы побывали во ФРИИ, выучили много новых слов, но...
7:48...но превратить это в бизнес все же не удалось по многим причинам, о которых тоже можно будет поговорить.
7:49В последние пару лет я занимался управлением проектами и развитием бизнеса в агентстве Stars Interactive (диджитал, бренды, ROI, ...)
7:51Также делал первую версию сайта «Медиазоны» (zona.media) — первый опыт поднятия большого онлайн-СМИ
7:52И в заключение отмечу проект «Цифровой словарь» (digitalvocabulary.ru) вместе с @alexdrozdovsky, за который мы получили Webby Honoree
7:53В итоге в какой-то момент я понял, что занимаюсь очень многими вещами, и пора сфокусироваться на чем-то одном, что у меня получается лучше
7:54Как можно догадаться, этим одним стала фронтенд-разработка
7:55Таким образом, опыт у меня набрался весьма разносторонний. Буду рад поделиться им за эту неделю! А сейчас пора ехать на работу :)
7:55Пишите вопросы, фолловьте @yaplusplus или френдите fb.com/yaplusplus. Продолжим совсем скоро.
7:56Я добрался до офиса, хоть это и было чертовски мокро. Продолжаем.
9:27@jsunderhood какое название было у "стартапа"?
Стартап назывался «Флайс» и был сервисом по поиску и онлайн-бронированию туров, проще говоря, агрегатором
@jsunderhood какое название было у "стартапа"?
9:32
@jsunderhood какие браузеры поддерживаете? pic.twitter.com/8d2a2HWEwK
По самому редактору мы изначально заняли позицию, что ориентируемся на современные браузеры. IE 11+ и прочие
@jsunderhood какие браузеры поддерживаете? pic.twitter.com/8d2a2HWEwK
9:34
Но помимо редактора есть еще верстка, которую он генерирует. Тут мы изначально ориентировались на свои издания. У нас мало IE и ~50% mobile
9:35Поэтому мы имели возможность использовать современные технологии. Например, у нас модульная сетка сделана при помощи flexbox
9:37@jsunderhood редактор вживую когда-нибудь покажете?
Да, скоро будет публичный релиз новой версии, которая работает на наших изданиях, а также нескольких партнерских
@jsunderhood редактор вживую когда-нибудь покажете?
9:38
@jsunderhood условия распространения?
SaaS. Про стоимость и другие подробности пока не могу говорить, скоро все будет опубликовано. Stay tuned.
@jsunderhood условия распространения?
9:40
Перед тем, как перейти к большим темам, интересно мнение комьюнити по простому вопросу, который недавно поднимался в Фейсбуке:
9:42«Кто еще остался в русском Твиттере?» По моим наблюдениям: айтишники, журналисты, некоторые политики и просто тролли.
9:43@jsunderhood ещё рядовые шутники и любители игр.9:45
Я помню кипящий Твиттер 2010-2011 годов. Сейчас все как-то приуныло, многие интересные люди с концами ушли в FB и/или Telegram
9:48@jsunderhood ура, не одному мне так кажется. Около года назад почти перестал юзать твиттер, сейчас стараюсь фолловить англоязычное комьюнити
Поддерживаю. Я планирую в один из дней поговорит про источники информации для программиста — это один из них
@jsunderhood ура, не одному мне так кажется. Около года назад почти перестал юзать твиттер, сейчас стараюсь фолловить англоязычное комьюнити
9:51
@jsunderhood раньше кипело, теперь пригорает.9:51
Все работают работу, хороший признак. Хотя бы фреймворков новых будет меньше...
@jsunderhood зачем человеку в 2016 г. С нуля учить яваскрипт например? Если сейчас конструкторы сайтов/лендов в ходу.
Если он хочет стать веб-разработчиком?
@jsunderhood зачем человеку в 2016 г. С нуля учить яваскрипт например? Если сейчас конструкторы сайтов/лендов в ходу.
9:53
@jsunderhood для чего может яваскрипт сейчас бытьполезен
К счастью/сожалению, практически для всего. У меня каждый курс в MCS начинается со слайда «JavaScript теперь везде»
@jsunderhood для чего может яваскрипт сейчас бытьполезен
9:54
@jsunderhood Как будто что-то с твитером что-то случилось или вдруг появилась хотя бы одна альтернатива.
Смотря чему альтернатива. Общению на профессиональные темы? Перепискам с друзьями? Шуткам в стиле «Усов Пескова»?
@jsunderhood Как будто что-то с твитером что-то случилось или вдруг появилась хотя бы одна альтернатива.
9:57
@jsunderhood а подскажите как пользоваться ФБ? Кого читать, как подписываться?
Если про фронтенд, то в FB как минимум есть группа MoscowJS: facebook.com/groups/moscowj….
@jsunderhood а подскажите как пользоваться ФБ? Кого читать, как подписываться?
9:59
@jsunderhood Твиттер 5 лет назад? Он тогда уже был? 👻
Да, конечно. У себя в профиле вижу: Joined January 2008
@jsunderhood Твиттер 5 лет назад? Он тогда уже был? 👻
10:30
@jsunderhood @sapegin альтернатива кратким сообщениям которые можно почитать в транспорте ли - короче, - почитать на бегу?
Телеграм-каналы. Например, мне очень ноавится канал Сергея Сурганова, арт-директора Медузы telegram.me/surganov_public
@jsunderhood @sapegin альтернатива кратким сообщениям которые можно почитать в транспорте ли - короче, - почитать на бегу?
10:32
Тем временем у нас тут прошел традиционный митинг по понедельникам. Обсуждали статус по проектам и планы на неделю. pic.twitter.com/pPtxcSFB8S
10:36Сегодня буду потихоньку рассказывать о том, чем мы занимаемся в Сетке, какой у нас фронтенд с бэкендом, и почему у нас интересно
10:38(да, мы ищем фронтенд-разработчиков, в том числе в мою команду редактора, поэтому я время от времени буду ненавязчиво приглашать к нам)
10:39Вот объясните мне, что за Телеграм-каналы, и для чего это нужно? twitter.com/jsunderhood/st…
Отличный вопрос. Я сам им задался в начале года, когда пошел бум на Телеграм-каналы, и все начали их создавать
Вот объясните мне, что за Телеграм-каналы, и для чего это нужно? twitter.com/jsunderhood/st…
10:40
Телеграм-канал очень похож на твиттер-аккаунт, только вы не можете реагировать на сообщения автора. Только читать или пересылать друзьям
10:42Сначала это кажется непривычным, но со временем начинаешь воспринимать именно как канал. Автор общается с аудиторией.
10:43(не путать с Телеграм-чатами, там флуд и раздрай почище твиттера)
10:43@jsunderhood Любопытно. А какая-то вообще есть обратная связь? Как понять, что читателям интересно? Может они и не заглядывают в канал.
Как правильно подсказывают, отображается кол-во просмотров каждого сообщения + часто автор предлагает писать в личку
@jsunderhood Любопытно. А какая-то вообще есть обратная связь? Как понять, что читателям интересно? Может они и не заглядывают в канал.
11:11
@jsunderhood но каждого автора нельзя читать в одной ленте и получается какой-то степбэк в технологиях
Помню, лет 5 назад я спросил одного умного человека, почему он ушел из Тви. Он ответил: «Разорванное общение»
@jsunderhood но каждого автора нельзя читать в одной ленте и получается какой-то степбэк в технологиях
11:12
@jsunderhood а где найти инфу по Телеграм-каналам? Какие они есть и тематически какие.
Например: tlgrm.ru/channels
@jsunderhood а где найти инфу по Телеграм-каналам? Какие они есть и тематически какие.
11:15
Кстати, кто любит текстовые квесты, рекомендую попробовать storebot.me/bot/questgameb…. Это чат-игра в Телеграме.
11:16Сейчас расскажу кое-что про Setka, затем возьму небольшую паузу на кодинг, надо закрыть одну тасочку
11:17В основе всех наших сайтов лежит собственная платформа (CMS) под названием Grid (да, с сетками у нас перебор, знаю)
11:17Платформа написана на Ruby on Rails. Насколько я помню, ребята-бэкендеры в начале года как раз окончательно переехали на 4-е рельсы
11:19В какой-то момент мы даже считались самым большим RoR-проектом в Восточной Европе (не знаю, актуально ли это на сегодняшний день)
11:20На один только Вилладж ходит 3+ млн уникальных пользователей в месяц. Хостимся, в основном, на Амазоне, тут всё довольно стандартно.
11:22У платформы есть админка, которая умеет проводить А/Б-тесты, следить за комментариями, управлять пользователями, постами... словом, CMS
11:23На платформе работают все наши сайты + еще несколько сторонних проектов, которые захотели её использовать (в том числе два зарубежных СМИ)
11:24Следующий большой продукт — это Workflow, сервис для управления редакционным процессом. Про него мы писали здесь: medium.com/look-at-media/…
11:27С тех пор Workflow поменял интерфейс, получил кучу новых функций, обзавелся рядом сторонних клиентов и тоже скоро будет открыт для всех
11:28Под капотом у Workflow все тот же RoR, а на фронте смесь Backbone + React (и идет планомерный переход с первого на второй)
11:29Workflow помогает десяткам редакторов, корректоров, дизайнеров и менеджеров работать слаженно и выпускать посты в срок
11:31Следующий продукт называется Waterfall, и многие из вас его видели воочию. Это сервис онлайн-трансляций, которым пользуется Meduza, VC, TJ
11:32Вот, например, трансляция июньского Apple-эвента на VC через Waterfall: vc.ru/p/wwdc-2016-li…
11:33Доступ к Waterfall раздается пока что по инвайтам здесь: wtrfall.com
11:34И вишенка на торте — WYSIWYG-редактор, в котором выпускающие дизайнеры могут быстро верстать красивые посты. Это, собственно, мое детище
11:36Предыдущая версия редактора, в которой наши редакторы работали последние 4 года, была сильно кастомизированным TinyMCE
11:38@jsunderhood походу, все, кто работал в сми, когда-нибудь делали такую штуку
Практически так и есть :) Но далеко не у всех получалось сделать хорошо. У нас вроде получается.
@jsunderhood походу, все, кто работал в сми, когда-нибудь делали такую штуку
11:39
Новая версия, которая начала была запущена в тестирование в этом году — практически полностью разработка с нуля
11:39На этом моменте я возьму паузу немного покодить, а затем вернусь и расскажу, зачем мы решили делать еще один WYSIWYG-редактор
11:40Тем не менее постараюсь далеко не пропадать и отвечать на ваши вопросы, а также ретвитить полезные сообщения и новости
11:40@jsunderhood какие языки программирования сейчас есть смысл начинать учить?
Если есть цель найти нормальную среднюю (не rocket science) работу, то JavaScript отлично подойдет
@jsunderhood какие языки программирования сейчас есть смысл начинать учить?
11:42
@jsunderhood а какие з/п реальные на вакансиях JavaScript?с начальными знаниями.
Если Москва и Junior Frontend Developer, то от 50000 руб., на мой взгляд (но в студиях бывает меньше)
@jsunderhood а какие з/п реальные на вакансиях JavaScript?с начальными знаниями.
11:46
@jsunderhood Расскажите тогда вкратце о технологиях - фронтенд, редактор, в чём и как храните документы
Ок, сегодня чуть позже с этого и начну
@jsunderhood Расскажите тогда вкратце о технологиях - фронтенд, редактор, в чём и как храните документы
11:47
@jsunderhood а он разве WYSIWYG? какие концепции у вас учитывались при разработке редактора?
Да, это и есть основная концепция. Вы получаете на выходе в точности такую же картинку, как в редакторе.
@jsunderhood а он разве WYSIWYG? какие концепции у вас учитывались при разработке редактора?
11:49
@jsunderhood можно ли это гарантировать в современном адаптивном медиа?
Можно. В редакторе обычно верстается десктопная версия, которая затем сама адаптируется под mobile и tablet
@jsunderhood можно ли это гарантировать в современном адаптивном медиа?
11:54
Но но при этом в редакторе есть инструменты, которые позволяет настраивать отображение конкретных элементов на мобилке
11:55Например, есть настройка «Порядок колонок на мобильных» для сеток. Можно их располагать друг за другом, в обратном порядке или матрицей.
11:56Я снова здесь. У меня хорошие новости: после обсуждения с продуктовой командой мы решили, что можем показать ряд скринов нового редактора
14:29Так что я сегодня выложу некоторые примеры и может быть небольшие видео. А пока отвечу на накопившиеся вопросы
14:31@jsunderhood т.е. вы ограничены до 1000px или что там у вас на десктопе, а остальные версии по компромисам?
У нас существует понятие «лэйаут». Он может быть фиксированным или резиновым и настраивается для каждого сайта
@jsunderhood т.е. вы ограничены до 1000px или что там у вас на десктопе, а остальные версии по компромисам?
14:38
В редакторе ты работаешь с контент-областью поста, у нее определенная ширина. Например у Вилладжа: 620px (4 cols), 940px (6 cols)
14:40Пост выстраивается в десктопной версии, а дальше по брейкпоинтам трансформируется под девайсы. Брейкпоинты тоже настраиваются под сайт.
14:42@jsunderhood а с резиновыми макетами как дела обстоят?
У нас есть как фиксированные сетки, так и резиновые. Помогают flexbox и calc.
@jsunderhood а с резиновыми макетами как дела обстоят?
14:43
@jsunderhood Мне как раз нужно заменить на проекте редактор, какой посоветуешь? Думаю Summernote or TinyMCE, подскажи толковое что то?
Многое зависит от того, какая у тебя задача. Кто будет пользоваться редактором? Вообще TinyMCE неплохой вариант.
@jsunderhood Мне как раз нужно заменить на проекте редактор, какой посоветуешь? Думаю Summernote or TinyMCE, подскажи толковое что то?
14:43
@jsunderhood можешь больше рассказать про миграцию? Особенно о местах, где нужно реакту общаться с бекбоном и обратно.
К сожалению, Workflow — не мой проект, я лишь со стороны наблюдаю за процессом, поэтому подробности не расскажу
@jsunderhood можешь больше рассказать про миграцию? Особенно о местах, где нужно реакту общаться с бекбоном и обратно.
14:44
Про переезд с Backbone на React кратко скажу, что обычно нужно выстроить реакцию рендеринга компонентов на уже имеющийся application state
14:45@jsunderhood т.е. вы не используете ничего стороннего? (имею ввиду связанное с редактированием/отображением текста, конечно)
Кое-что используем, сейчас напишу об этом
@jsunderhood т.е. вы не используете ничего стороннего? (имею ввиду связанное с редактированием/отображением текста, конечно)
14:47
@jsunderhood пользоваться будут юзеры которые знают что такое висивуг и как он работает.
А верстка насколько сложная? Пример есть?
@jsunderhood пользоваться будут юзеры которые знают что такое висивуг и как он работает.
14:48
В конце 2015 года мы пришли к решению, что больше не имеет смысла развивать предыдущую версию редактора, основанную на TinyMCE
14:48За время своего существования она обросла массой костылей и решений, которые работали только потому, что все знают, как они работают
14:49Была поставлена цель спроектировать новую версию редактора, которая бы решала основную задачу: создавать контент быстрее и дешевле
14:50Для начала был собран фидбэк с нескольких наших редакций: какими инструментами пользуются, что неудобно, какой процесс создания поста и т.д.
14:51При этом не забываем, что редактором пользуются разные люди: автор, корректор, фоторедактор, выпускающий дизайнер, арт-директор
14:52У всех свои задачи. Самые разнообразные — у дизайнера. Ему нужно быстро и красиво превратить текст в красивый пост...
14:53...не будучи при этом знатоком HTML и CSS (хотя у нас многие выпускающие дизайнеры знают CSS и умеют его применять)
14:53Также помимо интервью была собрана статистика по использованию инструментов редактора при помощи Google Analytics.
14:54Мы увидели, какими функциями пользуются чаще, что занимает больше всего времени, что давно пора выпилить или улучшить
14:55Далее нашим продакт-дизайнером (честь и хвала ему) был создан прототип нового редактора на jQuery.
14:56От себя тут добавлю, что на моей памяти это первый дизайнер, который сам смог накодить прототип такого сложного продукта
14:57Прототип был нужен для того, чтобы продуктовая команда могла понять, что всё задуманное в принципе реализуемо, и пора начать разработку
14:57(с точки зрения кода прототип был ужасен — inline CSS и JS, названия функций вроде click1 и click2, но свою задачу решал великолепно)
14:58Следующим этапом нужно было выбрать платформу, на которой будет основана новая версия редактора. Это была целиком моя зона ответственности.
15:00Я просмотрел на GitHub примерно 30 визивигов и отсортировал по критериям: активность контрибьюторов, зависимости, документация, лицензия
15:02Также обращал внимание на диалект JS (ES5, ES6, CoffeeScript и т.д.) и технологию редактирования (iframe, contenteditable)
15:03В итоге в финал вышло три проекта: Quill от SalesForce, ProseMirror от Marijn Haverbeke и ContentTools родом из UK
15:05Quill был интересен тем, что за ним стоит SalesForce. Но после дня погружения в код стало ясно, что текущая версия мало что умеет...
15:06...а новую версию автор пилит уже давно и не знает, когда допилит (он так и написал в ответном письме).
15:07Получалось, что использовать текущую версию не имело смысла, а новая непонятно когда появится.
15:08Следующий вариант — ProseMirror (prosemirror.net). Разработчик Marijn Haverbeke — автор книги Eloquent JavaScript
15:09Этот проект выглядел более стабильно, неплохое API и дока, но смутило следующее: автор собирал деньги на разработку краудфандингом...
15:11Собрал 50000 евро (indiegogo.com/projects/prose…) и сделал редактор. Но было ощущение, что в любой момент он может его бросить и заняться другим.
15:12(и он же являлся его ключевым контрибьютором: github.com/ProseMirror/pr…)
15:13В итоге мой выбор пал на проект ContentTools: getcontenttools.com
15:13Он был маленький, с четким разбиением на модули и подбиблиотеки (ContentEdit, ContentSelect), хорошей докой
15:14Разрабатывается и поддерживается небольшой британской компанией GetMe. По их словам, на нем работает более 50 клиентских сайтов.
15:15Я списался с GetMe, получил ответы на основные волнующие вопросы, почитал доку, посмотрел код, и решил, что пора двигаться дальше.
15:16Забегая вперед — выбор оказался правильный, новую версию редактора удалось написать примерно за 4 месяца и передать в тестирование редакции
15:17На текущий момент от ContentTools осталось уже процентов 30. Все остальное было либо выкинуто, либо переписано под себя.
15:18@jsunderhood ИМХО, если чётко понимать что это throwaway prototype — качество кода не важно, всё равно переписывать с нуля.
Абсолютно согласен
@jsunderhood ИМХО, если чётко понимать что это throwaway prototype — качество кода не важно, всё равно переписывать с нуля.
15:20
Про технологии. Большая часть кода редактора пока еще написана на CoffeeScript — это наследие ContentTools, но последние пару месяцев...
15:22...весь новый код пишется на ES6 (когда уже четко стало понятно, что мы оставляем, а что пишем сами).
15:22Редактор не живет внутри <iframe>, как многие другие. Он получает на вход <div> с контентом и превращает его в contenteditable
15:23Здесь есть статья автора редактора Quill, который объясняет свой отказ от iframe: jasonchen.me/editors-and-if…
15:24К слову, еще одним интересным проектом по пути был Trix — визуальный редактор от создателей Basecamp github.com/basecamp/trix
15:25...но полное отсутствие документации, комментариев к коду и выбор Web Components в качестве основы остановили от использования
15:26@jsunderhood интересно, а что в этом не так? у него хороший track record при этом
См. следующий твит. На тот момент не очень ясна была дальнейшая судьба проекта с одним основным контрибьютором.
@jsunderhood интересно, а что в этом не так? у него хороший track record при этом
15:27
@jsunderhood про ваш крутой редактор разговоры давно идут. а где-нибудь можно его посмотреть пощупать без трудоустройства редактором? :)
Да, публичный релиз планируется через месяц-полтора
@jsunderhood про ваш крутой редактор разговоры давно идут. а где-нибудь можно его посмотреть пощупать без трудоустройства редактором? :)
15:29
Почему в качестве основы не были выбраны CKEditor или TinyMCE? Одна из причин — лицензия GPL, которая нам не подходила.
15:30Почему не написали все-все самостоятельно? Ответ, наверное, очевиден. Нашей задачей было быстро запустить работающий продукт, а не...
15:32...а не с нуля решать множество инфраструктурных вопросов визуального редактора, в том числе кроссбраузерность
15:32@jsunderhood просто не понятно обоснование — человек собирает деньги на проект -> что может быть плохого?
Это не плохо. Я очень рад, что он собрал деньги и сделал продукт. Опасно то, что он в любой момент может «соскочить»
@jsunderhood просто не понятно обоснование — человек собирает деньги на проект -> что может быть плохого?
15:34
Т.е. бросить поддержку проекта и заняться новым краудфандингом. А нам останется имеющийся проект как есть.
15:34@jsunderhood вчера наткнулся на этот проект
github.com/ianstormtaylor…
что скажете?
Посмотрю чуть позже и отвечу. Вообще сходу напоминает фейсбуковский Draft.js, он там даже упоминается.
@jsunderhood вчера наткнулся на этот проект
15:36
github.com/ianstormtaylor…
что скажете?
На этом я снова возьму небольшую паузу, а вам оставлю посмотреть несколько скриншотов реальных постов из нового редактора
15:47Здесь можно увидеть работу с сетками, стили текста, эмбеды и всякое другое pic.twitter.com/TsiOdAobQ5
15:49Здесь можно увидеть работу с сетками, стили текста, эмбеды и всякое другое pic.twitter.com/TsiOdAobQ5
Думаю, так оно и произойдет рано или поздно. Надо запланировать на какой-нибудь спринт :)
Здесь можно увидеть работу с сетками, стили текста, эмбеды и всякое другое pic.twitter.com/TsiOdAobQ5
16:05
Stack Overflow переполнен призывами авторов CKEditor и TinyMCE не пытаться писать свой собственный редактор: stackoverflow.com/a/11290082
16:07Анатолий Буров ищет фронтендера-универсала для Главреда: facebook.com/anatoly.rr/pos…
18:27@jsunderhood у меня алгоритмическая лента и это невозможно читать, але это твиттер че ты тут за истории строчиш
Наверное, это и есть ответ на вопрос, для чего нужны Телеграм-каналы
@jsunderhood у меня алгоритмическая лента и это невозможно читать, але это твиттер че ты тут за истории строчиш
18:46
@jsunderhood а ты пишешь тредами?
Нет :-( Ок, я постараюсь укладывать мысли в меньшее количество твитов, а длинные объединять в треды.
@jsunderhood а ты пишешь тредами?
18:49
@jsunderhood неужели так много людей такого уровня, чтобы столько требований и "код под микроскопом"? Неужели выбор настолько большой?
Таких людей достаточно, все перечисленные технологии по факту уже стандарт, кроме Mercurial.
@jsunderhood неужели так много людей такого уровня, чтобы столько требований и "код под микроскопом"? Неужели выбор настолько большой?
18:53
Другое дело, что у Бюро и иже с ним требования к людям всегда особые. Думаю, им нужны не просто исполнители, а соратники по духу.
18:54@Seleckis @jsunderhood Это как бы обычно даже не обсуждается. Нормальный код предполагает логичное именование.
Соглашусь. На мой взгляд, грамотное именование переменных, функций, классов — базовый скилл хорошего разработчика.
@Seleckis @jsunderhood Это как бы обычно даже не обсуждается. Нормальный код предполагает логичное именование.
18:56
«There are only two hard things in Computer Science: cache invalidation and naming things» — это ведь уже классика.
18:57@yustovskiy @jsunderhood мне кажется, важны алгоритмы и правильное применение возможностей языка, а правильно называть можно быстро научить
У меня когда-то давно был разработчик, который все классы и функции начинал со слова Daniil (его так звали).
@yustovskiy @jsunderhood мне кажется, важны алгоритмы и правильное применение возможностей языка, а правильно называть можно быстро научить
18:58
@jsunderhood вот это самое интересное чем руководствовался продакт дизайнер, какие принципы лежали в основе продукта
Соглашусь, но это уже тема отдельной большой истории, и она совсем не про JS :-)
@jsunderhood вот это самое интересное чем руководствовался продакт дизайнер, какие принципы лежали в основе продукта
19:00
В завершение сегодняшнего дня расскажу о том, какие фронтенд-задачи пришлось решать при разработке редактора
19:04Кроссбраузерный и единообразный HTML-код. Как известно, contenteditable в разных браузерах может производить разный HTML.
19:09Более того, часто это зависит не только от браузера, а от положения курсора внутри блока. Есть статья на эту тему: medium.engineering/why-contentedi…
19:10Авторы trix-editor.org тоже пишут об этом же самом. Наше решение: Virtual DOM + генерация из него корректного единообразного HTML
19:13@jsunderhood Веб-версия — ад, а в Твитботе всё по порядку, как и было. @i_told_ya
Всем спасибо, что указали на это, учту на будущее. Хотя у меня в веб-версии все ок. Видимо, обычный порядок ленты.
@jsunderhood Веб-версия — ад, а в Твитботе всё по порядку, как и было. @i_told_ya
19:14
@jsunderhood there are only two hard things in CS: cache invalidation, naming things and off-by-one-error жэ19:14
@jsunderhood Меня смущает соседство реакта и джейквери вот.
Как правило, это следствие того, что более старая часть проекта на jQuery, а более новая — на React. Обычное дело.
@jsunderhood Меня смущает соседство реакта и джейквери вот.
19:15
Т.е. каждый HTML-элемент парсится и попадает в специальную обертку, а она уже умеет генерить тот HTML, который нужен нам.
19:16А только у меня не открывается jsunderhood.ru ? /cc @iamstarkov
19:18Таким образом, мы всегда имеем в наличии полное дерево элементов поста, из которого можно сгенерировать как HTML, так и что угодно другое
19:21@jsunderhood починю на этой неделе19:24
В принципе, виртуальным DOM'ом сейчас уже никого не удивишь. Отмечу лишь, что он и здесь нашел себе применение.
19:27Следующая большая тема — очистка (санитайзинг) HTML и copy&paste.
19:27В наших изданиях посты часто пишутся в Google Docs или в Word, а затем вставляются в редактор. Иногда куски текста берутся с веб-страниц.
19:29Разумеется, всё это нужно чистить перед тем, как оно попадает в editable-область. Пока что мы используем для этого npmjs.com/package/saniti…
19:32Он хорошо работает и имеет много настроек, но сильно утяжеляет редактор. Поэтому в дальнейшем скорее всего заменим на более легкую версию.
19:33Copy&paste — отдельная история. Т.к. мы стараемся дать пользователям максимум удобства, наш редактор позволяет копировать целые блоки.
19:34Т.е. можно зажать Cmd/Ctrl, выделить несколько блоков (сеток, картинок), и затем их скопировать при помощи Cmd + C
19:35Чтобы реализовать это, пришлось воспользоваться способом, который описал разработчик Trello: stackoverflow.com/a/17528590
19:37Вкратце: при нажатии на Cmd они открывают невидимую textarea, заполняют ее контентом и ставят туда курсор...
19:38И когда пользователь нажимает C, то у него копируется содержимое этой textarea. Так Trello копирует карточки целиком.
19:39У нас способ более умный, с использованием событий вроде onBeforeCopy, но в целом без хаков тоже не обошлось.
19:40Кроссбраузерная работа с буфером обмена пока что еще остается нетривиальной задачей.
19:41Помимо хоткеев у нас еще свое контекстное меню по правой кнопке. Тут же не обойтись без document.execCommand pic.twitter.com/NLCvvTKAJA
19:46Записал короткое видео о том, как в нашем редакторе работают модульные сетки: dropbox.com/s/xt28fdbzpruw…
19:59Вообще сетки у нас — это один из самых больших кусков кода в проекте
20:00@jsunderhood я тогда не очень понимаю, какие могут быть гарантии “не-соскока”. У меня была такая же ситуация, и тоже с WYSIWYG.
Нанять разработчика в штат или привязать к батарее :-) А если серьезно, то 100% гарантий нет, интуиция + опыт
@jsunderhood я тогда не очень понимаю, какие могут быть гарантии “не-соскока”. У меня была такая же ситуация, и тоже с WYSIWYG.
20:07
На сегодня буду заканчивать. Если есть вопросы по редактору и не только, буду рад ответить. Завтра поговорим об образовании в IT.
20:12@jsunderhood и меня тимлид тоже спрашивал, мол где гарантии что мейнтейнер не сольётся?20:13
@jsunderhood слился product owner, кстати, а не мейнтейнер моего компонента
Это жизнь
@jsunderhood слился product owner, кстати, а не мейнтейнер моего компонента
20:14
Пишут, что Google ведет разработку новой ОС Fuchsia, основным языком разработки под которую будет Dart nplus1.ru/news/2016/08/1…
20:28# Вторник 144 твита
@iamale_ru @jsunderhood у нас бэкбон с бутстрапом рядом с реактом и редаксом. не каждую неделю же фронтенд переписывать.
Истина!
@iamale_ru @jsunderhood у нас бэкбон с бутстрапом рядом с реактом и редаксом. не каждую неделю же фронтенд переписывать.
6:19
@jsunderhood а что с Web Components не так?
Всё так, просто ИМХО нативная поддержка браузеров пока недостаточна для того, чтобы делать на них ставку.
@jsunderhood а что с Web Components не так?
6:21
Например, меня очень привлекает Shadow DOM, но поддержка пока слабовата caniuse.com/#feat=shadowdom
6:23Всем привет! А Москве доброе солнечное утро. Сегодня поговорим об образовании в ИТ и про изучение JS в частности.
6:25Так случилось, что у меня высшего образования нет. Я проучился 3 курса в МАИ, после чего бросил институт ради своего дела.
6:27Все знания, которые у меня есть, приобрел самостоятельно: самообучение и много практики. Те самые 10 000 часов, о которых часто говорят.
6:30Чему реально научиться в институте? Матану, алгоритмам, терверу. Это знания, которые дают возможность выйти на следующий уровень.
6:35Кроссбраузерной верстке и Реакту в институте вряд ли научат. У института другая задача — давать фундаментальные знания.
6:36Возможно, у вас другой опыт? Если есть люди из крутых ВУЗов вроде МГУ, МФТИ или других не-московских — расскажите.
6:37У меня в институте большинство занятий проходило примерно так: youtube.com/watch?v=g7MDEq…
6:38@jsunderhood а как понять когда стоит все бросать и реально заниматься своим делом? Или это придет само ?
О, тут много что можно рассказать. Я думаю завтрашний день посвятить стартапам и своему делу.
@jsunderhood а как понять когда стоит все бросать и реально заниматься своим делом? Или это придет само ?
6:39
Далеко не факт, что нужно все бросать. Иногда гораздо правильнее последовательно идти в одном направлении, главное не ошибиться.
6:40With my previous team, we've been trying to build an articles hub with people ranking on materials per topic - devshelf.us.
Чтение полезных статей — часть сегодняшней темы
With my previous team, we've been trying to build an articles hub with people ranking on materials per topic - devshelf.us.
6:57
@jsunderhood учусь в РЭУ на прикладной информатике. Знаний профильных мало дают, 1с всякий. JS'у надо учиться самому7:42
@jsunderhood Polymer shady dom поддерживается очень хорошо, можно юзать 😉
Спасибо, посмотрю!
@jsunderhood Polymer shady dom поддерживается очень хорошо, можно юзать 😉
7:49
Уже многим очевидно, что классический подход к образованию в IT работает не слишком хорошо.
7:50В институтах обычно учат либо фундаментальным вещам, либо устаревшим. А новой информации вокруг так много, что трудно сориентироваться.
7:51Как уже упоминал вчера, я веду курс «JavaScript человеческим языком» в Moscow Coding School. Расскажу про свой опыт.
7:51Курс длится 6 дней, проходит по выходным, с 15:00 до 20:00. Группы обычно состоят из 8-10 человек. Люди приходят разные:
7:52Есть несколько четко прослеживающихся групп студентов, которые хотят получить конкретные знания.
7:521. Дизайнеры, которые рисуют статичные макеты в Photoshop или Sketch, и хотят научиться делать их интерактивными, живыми.
7:54Особенно часто спрашивают про Framer и другие средства прототипирования, в которых можно использовать JS или CoffeeScript
7:542. Руководители разного уровня, которым надоело, что разработчики вешают им лапшу на уши по поводу сроков, сложности и стоимости.
7:553. Школьники и студенты, которые учатся на программистов или дизайнеров, и хотят прокачаться в реальной среде
7:564. Люди, которые хотят сменить профессию.
7:56Все в один голос рассказывают, что они слышали про JS: популярный язык, он сейчас повсюду, хочу научиться. Много вопросов по Angular и React
7:57Вот промо-ролик курса с отзывами студентов и моими скромными комментариями: vimeo.com/165477490
7:59Один из выпускников последнего набора — @rockbee, дизайн-директор Альфа-Банка. Вроде остался доволен, да, Иван? :)
8:00Программа курса следующая. День 1: переменные, массивы, математические операторы, if - while - for.
8:04День 2: функции, объекты, свойства и методы стандартных объектов JS: Array, String, Math, Date.
8:04День 3: знакомство с DOM, селекторы, обработчики событий. Я собрал учебный прототип главной страницы Яндекса, мы на занятии пишем к ней JS.
8:05День 4: работа с формами, клиент-сервер при помощи AJAX. Тренируемся на учебных страницах Google Sign Up и Google Sign In.
8:06День 5: jQuery. $, когда и зачем можно использовать, анимация, easing, $.get и $.post.
8:07День 6: либо практическая самостоятельная работа, либо мой длинный рассказ о том, что может JS: canvas, contenteditable, Web Sockets и т.д.
8:08Для самостоятельного чтения всегда всех отправляю на learn.javascript.ru. Пока что на русском языке аналогов нет.
8:09@jsunderhood ну а если с полифилами?
Можно, конечно. Просто, на мой взгляд, использование фича-полифиллов должно быть оправдано реальной необходимостью.
@jsunderhood ну а если с полифилами?
8:10
@jsunderhood JS за шесть дней?
Самый частый вопрос от разработчиков :) Не весь JS, разумеется. Это интенсив. Толчок в правильном направлении.
@jsunderhood JS за шесть дней?
8:16
@jsunderhood и как это помогает руководителям понять работу фронтэндеров?
Они начинают мыслить, как разработчики. И пробуют общаться с ними на одном языке: абстракции, алгоритмы и т.д.
@jsunderhood и как это помогает руководителям понять работу фронтэндеров?
8:19
@jsunderhood за шесть-то дней? мне кажется, это наоборот, мешает и наполняет их ложной уверенностью в том, что они "разбираются".
Ложной уверенности обычно нет. С курса все уходят с чувством, что они сделали первый шаг, но впереди еще много.
@jsunderhood за шесть-то дней? мне кажется, это наоборот, мешает и наполняет их ложной уверенностью в том, что они "разбираются".
8:22
@jsunderhood любые знания - это стратегическая инвестиция времени. Выстрелит в будущем, если грамотно инвестировать
Так и есть. Правда, в школе и институте это не всегда понимаешь.
@jsunderhood любые знания - это стратегическая инвестиция времени. Выстрелит в будущем, если грамотно инвестировать
9:23
@jsunderhood курсы - тема редко полезная. Надо до всего доходить самому. Довольствоваться тем, что там дают - пустая трата времени и денег
Насчет доходить самому — согласен, но иногда начинающим просто трудно понять, с чего начать.
@jsunderhood курсы - тема редко полезная. Надо до всего доходить самому. Довольствоваться тем, что там дают - пустая трата времени и денег
9:24
@jsunderhood меня физфак научил инженерному подходу, критическому мышлению и синтезу.9:24
Скиллов в ВУЗах нет, конечно.
@jsunderhood9:32[Перевод] Я заглянул в папку node_modules, и вы не поверите, что произошло - ift.tt/2buPZXD
Markdown comes to Facebook! pic.twitter.com/UiQzHdAv2S
Теперь можно будет писать в FB не просто plain text?
Markdown comes to Facebook! pic.twitter.com/UiQzHdAv2S
10:21
@jsunderhood для этого нужен ментор. Причем, ментором может быть каждый. Мы просто об этом не знаем :\
Да, ментор — правильное слово.
@jsunderhood для этого нужен ментор. Причем, ментором может быть каждый. Мы просто об этом не знаем :\
10:22
@jsunderhood pic.twitter.com/0Vmk9xUWEj
Ура, сниппеты кода в FB!
@jsunderhood pic.twitter.com/0Vmk9xUWEj
10:25
@jsunderhood разработчик, нужна перемога! Хочу пойти падаваном к фронтенд-разработчику в Питере. Могу в верстку и a little bit в js.
Падаван ищет джедая на севере галактики
@jsunderhood разработчик, нужна перемога! Хочу пойти падаваном к фронтенд-разработчику в Питере. Могу в верстку и a little bit в js.
12:21
@jsunderhood Я тоже разрабатываю свой редактор vimeo.com/115951444
Интересно, посмотрел. А можно отредактировать код эмбеда после вставки? Или только удалить и вставить снова?
@jsunderhood Я тоже разрабатываю свой редактор vimeo.com/115951444
12:26
@tonymadbrain @jsunderhood да перестаньте вы вестись на эту дешёвую жёлтую прессу. не было там никогда этого мужика github.com/babel/babel/co…12:26
Скоро вернусь и поговорим про то, как продолжать учиться, если ты уже опытный разработчик. А пока вопрос по терминологии:
12:28Есть ли четкое отличие между Junior, Middle и Senior Front-end Developer? Особенно Senior — мне кажется, это очень широкое понятие.
12:28@jsunderhood посоветуйте что-нибудь для построения графиков и что бы не очень сложное было, так как я джуниор...
d3js.org
Комьюнити, что еще удобное и мощное?
@jsunderhood посоветуйте что-нибудь для построения графиков и что бы не очень сложное было, так как я джуниор...
12:30
А вот фоточки с WordCamp, где мы представили Wordpress-плагин для нашего редактора. Релиз в сентябре. facebook.com/setka.io/posts…
12:34@jsunderhood chart.js12:34
@jsunderhood отличие как и везде без приставки frontend, junior - требует помощи в решении, senior - сам его умеет найти15:45
@way2bariton @jsunderhood джуниору счастье : javascripting.com (выбирай раздел data)15:48
@2j2e @jsunderhood а middle тогда получается сомневающийся. Еще не до конца осознавший, что может найти и сам решение:)17:36
After months of testing and tuning, npmcdn.com really is ready for prime time. Please help spread the word! And enjoy using it!17:37
Скоро вернусь и поговорим про то, как продолжать учиться, если ты уже опытный разработчик. А пока вопрос по терминологии:
Так вот. В современной веб-разработке достаточно уйти в сторону на 2-3 года, и половина слов уже станет незнакомой.
Скоро вернусь и поговорим про то, как продолжать учиться, если ты уже опытный разработчик. А пока вопрос по терминологии:
18:42
Так вот. В современной веб-разработке достаточно уйти в сторону на 2-3 года, и половина слов уже станет незнакомой. twitter.com/jsunderhood/st…
Очевидные примеры — React и Redux, за пару лет ставшие фактически стандартными инструментами фронтендеров
Так вот. В современной веб-разработке достаточно уйти в сторону на 2-3 года, и половина слов уже станет незнакомой. twitter.com/jsunderhood/st…
18:44
В следующем году этот пример станет неактуальным, но я его люблю: еще не прошло 10 лет с появления первого айфона. Мы видели революцию.
18:45И вот обычная ситуация. Вы — уже опытный разработчик, работаете над интересными проектами в большой компании. Задач всегда хоть отбавляй.
18:46При этом каждый день вокруг появляются новые библиотеки и фреймворки, сопровождающиеся громким хайпом.
18:47Раз в месяц появляется штука, которая называет себя киллером всех остальных. И вот уже все в тусовочке обсуждают, хвалят и ругают её.
18:49Возникают вопросы: как успевать следить за новой инфой? как не утонуть в ней? как отделить знаковые вещи от проходных?
18:51Сколько у вас непрочитанных статей в Pocket? Я в какой-то момент перевалил за 1000. Сейчас, наверное, около 2000. И продолжаю добавлять.
18:53@jsunderhood я один такой киллер пишу прямо сейчас18:53
Меня давно волнуют вопросы продуктивности и непрерывного обучения. Недавно попробовал составить список источников информации по фронтенду.
18:54@jsunderhood как читатель покета из топ 10% за какой-то там год скажу тебе - это все тлен. Покет не нужен.
Принято. А как решаешь вопрос «вижу интересную статью, надо будет почитать»?
@jsunderhood как читатель покета из топ 10% за какой-то там год скажу тебе - это все тлен. Покет не нужен.
18:55
Как онлайн-источников, так и оффлайн. Цифровых и аналоговых. Короче, всех, с которыми сталкиваюсь. Поехали:
18:57@jsunderhood откровенно говоря я думал опытные разработчики не страдают манией «пытаться уследить за всем и сразу»
Совершенно верно. Тут скорее вопрос в том, как выставить приоритеты в употреблении внешней информации.
@jsunderhood откровенно говоря я думал опытные разработчики не страдают манией «пытаться уследить за всем и сразу»
18:58
Есть такое понятие FOMO (аббревиатура fear of missing out) — страх упустить события, происходящие в жизни знакомых или незнакомых людей.
18:59Примером проявления FOMO может быть знакомая всем привычка без конца проверять обновления в Twitter, Инстаграм и Facebook.
18:59Нечто подобное с «интересной инфой про разработку». Порой видишь статью с громким заголовком и становится сложно просто пройти мимо неё.
19:01@jsunderhood открываю в новой табе. Уже нет места под фавиконоки, но зато больше мотивация прочитать. Такая же ситуация и в телефоне :D
Ага, я тоже последнее время этим пользуюсь. Пока работает :)
@jsunderhood открываю в новой табе. Уже нет места под фавиконоки, но зато больше мотивация прочитать. Такая же ситуация и в телефоне :D
19:01
@jsunderhood во front-end JS ничего интересного с появлением React не случалось, и почему реакт переломный момент - идеология19:02
Так вот, источники. 1 — RSS. Когда зачитывался, но после смерти Google Reader лично для меня отошел на второй план. Как у вас? Feedly?
19:032 — Твиттер. Здесь много крутых разработчиков, особенно зарубежных. Главное не подписываться на троллей и спамеров.
19:05Особенно после запуска рекомендаций по аккаунтам стало удобно подписываться на интересных людей.
19:05Лично меня в твиттере смущает: а) масса нерелевантной инфы б) формат твитов не всегда дает развернуться. Но зато всё очень быстро.
19:06@jsunderhood 2/2 «если технологии меньше 5 лет, не стоит инвестировать в нее свое время»
Тогда надо подождать еще 2-3 года, прежде чем писать на том же Реакте? A Redux вообще году к 2020 открывать?
@jsunderhood 2/2 «если технологии меньше 5 лет, не стоит инвестировать в нее свое время»
19:07
3 — Medium. Один из самых умных каналов на текущий момент. Крутые читабельные лонгриды, толковые авторы. Только кириллица страшная.
19:094 — Рассылки вроде DailyJS, JavaScriptKicks, NodeWeeky и т.д. Формат хорош тем, что туда попадают подобранные материалы, и это раз в неделю.
19:10У меня в почте они все падают сразу в отдельную папку JS, которую я просматриваю по вечерам пару раз в неделю.
19:125 — агрегаторы статей по предпочтениям. Недавно открыл для себя приложение MyBridge. Оно в раз неделю присылает топ-10 статей по фронтенду.
19:13Разработчики пишут, что у них собственный AI-алгоритм, который выбирает только лучшее под твои предпочтения. itunes.apple.com/ru/app/mybridg…
19:14По похожему пути идет Pocket со своими Recommended Articles, но лично мне от них постоянно приходят тексты про экологию и выборы в США.
19:146 — чатики в Telegram, в частности, те, которые продвигает @DenisIzmaylov. Там много крутых людей, но лично мне формат не подходит :(
19:15Примерно по той же причине, что не нравится в Твиттере: очень много оффтопа. Постоянно нужно разгребать кучу флуда, чтобы увидеть полезное.
19:16Тем не менее приведу пару ссылок: telegram.me/react_js, telegram.me/nodejs_ru
19:187 — GitHub. Один из самых полезных источников, но требующих мозговых усилий. Возможность почитать код, написанный в Google/Facebook — кайф.
19:218 — Slack, Gitter и другие «технические» чатики. Опять же, на мой взгляд, КПД таких тусовок слишком мал, чтобы постоянно там находиться.
19:23@jsunderhood нужна помощь сообщества. Как обойти TypeError при оборачивании DOM ноды в Proxy объект. Не выходит каменный цветок(
Призываю опыт комьюнити
@jsunderhood нужна помощь сообщества. Как обойти TypeError при оборачивании DOM ноды в Proxy объект. Не выходит каменный цветок(
19:23
9 — Google Plus. Неоднократно слышал, что там сидят гики. Сам не пробовал :) У кого-нибудь есть положительный/отрицательный опыт?
19:2510 — Quora, StackOverflow и другие QA-проекты. И тот, и другой — отличные сайты, но кроме как из Гугла туда редко попадаешь.
19:26Мне очень нравится Quora, но недавно читал, что они до сих пор не нашли путь монетизации. Так что будущее неясно.
19:27@jsunderhood А можно посмотреть код самого гитхаба, если постараться и распотрошить enterprise.github.com19:27
11 — сайты/блоги вроде SitePoint, Smashing Magazine, PonyFoo и др. Материалы обычно начально-среднего уровня, зато очень хорошо поданные.
19:2812 — видео-курсы. Udemy, Egghead, да и весь YouTube. На мой взгляд, очень эффективное средство, если нужно быстро в чем-то разобраться.
19:30Видишь живой код, параллельно слушаешь автора и заодно прокачиваешь английский на слух. Лично для меня работает на ура.
19:30Правда, на видео редко записывают решение каких-то нестандартных задач. Зато есть отличные туториалы от А до Я.
19:3113 — подкасты. Из русскоязычных: RadioJS, Веб-стандарты. Удобный формат, чтобы слушать по пути куда-то, когда не получается читать.
19:3314 — книги. Хорошая книга стоит десяти блогов. Пользу Флэнагана и Кроуфорда переоценить сложно.
19:36Мне нравится то, что появляется на leanpub.com
19:3615 — спецификации W3 и WHATWG. Это не для всех :) Требуют недюжинной усидчивости и времени, хотя написаны проще, чем многие думают.
19:37Зато прочитав разок спеку какого-нибудь DOM Node можно открыть для себя много фундаментальных деталей
19:3716 — конференции и митапы. Я лично призываю выбираться на мероприятия. Это полезно как с точки зрения «людей посмотреть», так и знакомствами
19:39Кто знает, может сегодняшний докладчик станет вашим завтрашним работодателем? Комьюнити — важная вещь, и отдельное спасибо @jsunderhood
19:40Митапы мне еще нравятся тем, что можно посмотреть на разные офисы :) Кстати, через 10 дней лечу в Вильнюс на @frontend_union
19:4217 — отдельным пунктом Хабр, т.к. у сообщества к нему полярное отношение. Встречаются неплохие туториалы для начинающих, но...
19:45...но в целом не вижу особого смысла его читать сейчас. Переводы иностранных статей и блоги компаний — что там еще осталось?
19:4618 — малопопулярные в России сообщества вроде LinkedIn Groups, Reddit, HackerNews. Какое-то время следил за JS-группой в LinkedIn, отписался
19:4719 и последнее — Facebook. Удобен тем, кто там проводит много времени. Много лишнего и неочевидного, но зато это сеть живых людей.
19:48Итог. Я последнее время крайне проникся идеями фокусировки и less is more. Затачивайте пилу в чем-то одном, но не забывайте смотреть вокруг.
19:50Не стоит фолловить 1000 человек, подписываться на 20 рассылок и 50 RSS. Ничего, кроме фрустрации и шума, не получите.
19:50Кстати, если кто не знает — есть отличная рассылка Umar Hansa про использование Chrome Developer Tools
19:57Там всякие хоткеи и трики. Показываются гифками прямо в письме.
19:57Если чувствуете, что взяли на себя больше информации, чем можете переваривать, смело убирайте все лишнее. Unsubscribe, unfollow — это просто
19:59@jsunderhood @_sashashakun GTD и прочее управление временем и проектами вам в помощь
Ага. GTD пользуюсь последние года полтора. В качестве софта использую Omnifocus. Он дорогой, но функциональный.
@jsunderhood @_sashashakun GTD и прочее управление временем и проектами вам в помощь
20:00
@jsunderhood Единственный стоящий источник информации - это спеки20:04
@jsunderhood вопрос не по теме - а как настроить попадание рассылки в конкретную папку?
Правилами в настройках почтового интерфейса Gmail или какая у тебя почта. У меня iCloud, например.
@jsunderhood вопрос не по теме - а как настроить попадание рассылки в конкретную папку?
20:06
@jsunderhood да, я всегда с видео-курсов начинаю все новое. udemy нравится )20:06
@jsunderhood тут надо дежурно пошутить про отписку от всех групповых твиттеров20:11
@jsunderhood Вилейдж в твиттере часто репостит древние посты. Это тоже какая-то автоматика и самописная тулза, или редакторы ручками?
Хороший вопрос. Завтра спрошу у ребят. Вообще у нас соцсетями занимаются комьюнити-менеджеры.
@jsunderhood Вилейдж в твиттере часто репостит древние посты. Это тоже какая-то автоматика и самописная тулза, или редакторы ручками?
20:14
Кстати, если кто не знает — есть отличная рассылка Umar Hansa про использование Chrome Developer Tools
Вот он в тви: @umaar
Кстати, если кто не знает — есть отличная рассылка Umar Hansa про использование Chrome Developer Tools
20:19
@jsunderhood про кпд - скажу обратное.
Интересно. Давай подробнее!
@jsunderhood про кпд - скажу обратное.
20:23
@gearmobile @jsunderhood у гмейла есть килер-фича: знак + в адресе.
Pupkin+js@gmail.com будет получить письма на pupkin@gmail.com в тег js
Класс!
@gearmobile @jsunderhood у гмейла есть килер-фича: знак + в адресе.
20:27
Pupkin+js@gmail.com будет получить письма на pupkin@gmail.com в тег js
@mr_mig_by @gearmobile @jsunderhood у меня QA так на 1 ящик тьму учёток регают,типа user+test1@company.com и т.п.
Про тьму учеток через плюс давно знаю, а вот про автоматическое попадание писем в тег — не знал.
@mr_mig_by @gearmobile @jsunderhood у меня QA так на 1 ящик тьму учёток регают,типа user+test1@company.com и т.п.
20:47
@mr_mig_by @gearmobile @jsunderhood НО! некоторые почтовики не соответствуют RFC.И некот.системы не валидируют + в мылах и логинах - уроды!20:49
@jsunderhood можно почитать код реакта и - не кайф становится. Видна большая система с кучей технического долга.
Технический долг — это хорошо! :) Часто это неотъемлемая составляющая успешного продукта.
@jsunderhood можно почитать код реакта и - не кайф становится. Видна большая система с кучей технического долга.
21:05
Я недавно общался с ребятами из российского Uber. В плане IT много неразберихи, куча сайтов, систем... зато самый дорогой стартап в мире.
21:06Это мы потихоньку подходим к теме завтрашней беседы — свой бизнес и стартапы.
21:07@jsunderhood Если кто-то получает мало рассылок: blog.sapegin.me/all/frontend-m…
С языка снял: someone is working hard so you have to choose one or two best articles out of just 20 instead of 100.
@jsunderhood Если кто-то получает мало рассылок: blog.sapegin.me/all/frontend-m…
21:21
@jsunderhood Фидли + Риидер.
Reeder хорош, но в какой-то момент пожалел денег на него.
@jsunderhood Фидли + Риидер.
21:22
@jsunderhood У меня в RSS человек 200—300, в день редко больше 30 записей бывает.
Это всё айтишники или не только?
@jsunderhood У меня в RSS человек 200—300, в день редко больше 30 записей бывает.
21:23
@jsunderhood в gitter очень классное сообщество dev-ua. Очень прокачивает активное участие в беседах. Уверен, что многие читатели подтвердят
Читатели, подтверждайте!
@jsunderhood в gitter очень классное сообщество dev-ua. Очень прокачивает активное участие в беседах. Уверен, что многие читатели подтвердят
21:31
@jsunderhood confirmed21:48
@jsunderhood confirmed21:48
@jsunderhood есть два хороших доклада на эту тему: youtube.com/watch?v=xPFRUM… и youtube.com/watch?v=p5g4gi…. Коротко говоря - надо расслабиться.21:53
@jsunderhood gtd для статей. Очень помогает читать планомерно и постоянно. Моя норма - 5 статей за завтраком.21:58
@jsunderhood взять тот же React: я держу руку на пульсе, понимаю в чём смысл, но кода на нём не писал.21:59
Introducing a React animations library by @asktwi — rotation, slideDown, elastic container22:02
amp.gs/8Ufa pic.twitter.com/TDowWeewYU
# Среда 199 твитов
@_sashashakun @jsunderhood @blia для android есть мой на RN github.com/terrysahaidak/…6:27
@jsunderhood стоит отдавать приоритет фундаментальным вещам, а не сиюминутным библиотекам. И разбавлять смежными дисциплинами для кругозора.6:28
Вдогонку к вчерашней теме приведу уже классические выступления на тему анти-хайпа и гонки за новыми технологиями
6:33Андрей Листочкин, «Анти-хайп. Как не гнаться за технологиями и начать жить» youtube.com/watch?v=xPFRUM…
6:34Алексей Симоненко из HTML Academy, «Как я перестал верить технологиям» youtube.com/watch?v=p5g4gi…
6:35За ссылки спасибо @alexey_m_ukolov
6:35Привет всем! Среда — это маленькая пятница. Сегодня поговорим про свой бизнес и IT-стартапы.
6:36(кстати, многие читатели подтвердили, что dev-ua в gitter — хороший, годный канал)
6:38Мой предпринимательский опыт состоит из трех частей: веб-студия, digital-агентство и travel-стартап.
6:38Веб-студия была в далеких 2008-2011 гг. Это был классический микробизнес: мы сидели в маленьком офисе и делали маленькие сайты.
6:40@jsunderhood по очереди или паралельно стартовали?
По очереди. Каждый планомерно перетекал в следующий.
@jsunderhood по очереди или паралельно стартовали?
6:40
Параллельно я пытался учиться в МАИ, но в какой-то момент нужно было принимать решение, и я выбрал свое дело (и ушел из института)
6:41@jsunderhood в dev-ua много каналов на самом деле6:41
Сайты делались сначала на MODx, потом на Битриксе. Бюджет проектов варьировался в пределах 10-100 тысяч рублей.
6:42Разумеется, были допущены все возможные ошибки начинающих предпрнимателей, которые были возможны.
6:44Во-первых, отсутствовало какое-либо понимание о ценообразовании, конкурентном преимуществе, своей нише. Мы хватались за любых клиентов.
6:45Бюджеты проекта определялись с потолка, просто на интуиции. Называешь сумму, смотришь на реакцию заказчика. Если он просит скидку — даешь её
6:46Хорошо помню парня, который несколько часов мне рассказывал про свой миллиардный бизнес, а в конце попросил быстро сделать сайт за 7000 р.
6:47Продаж и маркетинга практически не существовало. Основными каналами было сарафанное радио, холодные звонки и письма, ...
6:49...а также раздел «Для партнеров» на сайте Битрикса, куда сыпались клиентские заявки, и их нужно было успеть ухватить.
6:49Надо отметить, что время от времени удавалось случайно продать большие проекты: 700 тыс. и даже 1 млн руб.
6:51Но из-за отсутствия внутренних процессов даже такие проекты становились убыточными, т.к. поступлениями денег закрывались старые долги.
6:52@jsunderhood а в тендерах участвовали?
Да, бывало, но основным нашим аргументом в тендерах была цена. Один раз удалось выиграть тендер на интранет банка.
@jsunderhood а в тендерах участвовали?
6:53
Еще одна большая ошибка — сотрудники. Во-первых, мы постоянно пытались нанять кого-то в штат. Это несло за собой доп. затраты: офис, налоги
6:54С фрилансерами тоже не получалось по-нормальному работать: они срывали сроки работы, мы срывали сроки оплаты. Классика!
6:55Денег на квалифицированных программистов у нас не было, поэтому мы брали дешевых, которые мало что умели.
6:56В итоге мы (два фаундера компании) постоянно были заняты текучкой и в том числе кодом вместо стратегических вопросов.
6:56В какой-то момент наш главный клиент предложил стать нашим партнером, войти в долю и отдать нам все свои проекты. Мы радостно согласились,
6:57...сняли большой офис, посадили туда 10 человек, большая часть из которых были наши знакомые и друзья.
6:58Но очень скоро выяснилось, что новый партнер хочет всё делать очень дешево и при этом участвовать во всех процессах.
6:59В итоге через полгода мы окончательно потеряли с ним взаимопонимание, и решили расстаться. Вместе с партнером пришлось покинуть и офис.
7:00По прошествии времени основные ошибки того времени я для себя записал так:
7:011. Отсутствие выстроенного процесса продаж, маркетинга, рекламы, планирования. Деньги — кровеносная система бизнеса.
7:012. Лишние постоянные затраты (большой офис, юрист в штате, дорогой интернет для юр. лиц)
7:023. Оформление людей в штат, лишние налоги, превратившиеся в задолженность. Сложность вывода денег со счета ООО.
7:024. Нехватка квалифицированных сотрудников, попытка делать всё самостоятельно.
7:025. Нечеткая формулировка задач в ТЗ
7:036. Как следствие, отрицательный cash flow и постоянный стресс.
7:03Нужна платная консультация по react native по скайпу, к кому можно обратиться? @jsunderhood
Кто готов поговорить про React Native?
Нужна платная консультация по react native по скайпу, к кому можно обратиться? @jsunderhood
7:04
Тем не менее, было приобретено очень много полезного опыта, как отрицательного, так и положительного, который пригодился позже.
7:05На тему рынка веб-разработки недавно вышло хорошее исследование CMS Magazine с красноречивым названием: research.cmsmagazine.ru/web-developmen…
7:07Если вкратце, то сегодня это сверхконкурентный рынок с крайне низким порогом входа (выучил HTML, сделал сайт, назвался студией)
7:08Стартовать компанию, которая будет заниматься «веб-разработкой вообще» сегодня нет никакого смысла. Особенно если вы разработчик.
7:09Во-первых, это плохо масштабируется, т.к. основной ресурс — это программисты и дизайнеры. Их мало, и у вас нет для них хорошей зарплаты.
7:10Во-вторых, вы не предлагаете ничего уникального. Сайты сейчас делают все подряд. А с появлением конструкторов вроде WIX — тем более.
7:12Рынок проектов до 100 тыс. руб. стремительно уходит в автоматику (конструкторы, агрегаторы), т.к. там почти всё можно поставить на поток.
7:14В-третьих, вы скорее всего окажетесь в ловушке оборотных средств, которые постоянно расходуются для того, чтобы покрыть расходы.
7:15@jsunderhood буквально 2 мес назад эпически слился на этом) понял, что разрабом больше заработаю +перспективы.Повезло,что вовремя подсказали7:16
@jsunderhood кстати, подсказали участники рынка. Надо не бояться спрашивать крутых чуваков, в общем)7:16
Путь, который может работать — четкая фокусировка, серьезная компетенция и высокие цены. Примеры: @datalaboratory @evilmartians
7:17Выбираете что-то одно, что вы делаете круто. Повышаете цены, ищете «своих» клиентов. Делаете это реально круто и всем об этом рассказываете.
7:18И, наверное, главное правило малого бизнеса: имеет смысл им заниматься, если он приносит денег значительно больше, чем зарплата.
7:19Т.е. если вы получаете 100 000, а малый бизнес В ТЕОРИИ может приносить 150 — не надо. Просто найдите время на фриланс или смените работу.
7:20А вот если есть четкая уверенность, что свое дело принесет кратно больше денег, например, 500к/месяц — можно подумать.
7:21@jsunderhood недавно @op писала про ФОТ medium.com/@op/it-%D0%BA%…7:32
Не стоит рассматривать малый бизнес как способ ухода от начальника. Как правило, быть хорошим начальником сложнее, чем подчиняться плохому.
7:37@jsunderhood лучше планировать на три года, в первый год многие работают в ноль или даже в убыток. Ждать космические прибыли в первый же
На мой взгляд, в малом бизнесе невозможно планировать на три года вперед. В лучшем случае на год, и то много.
@jsunderhood лучше планировать на три года, в первый год многие работают в ноль или даже в убыток. Ждать космические прибыли в первый же
7:38
Будьте готовы к тому, что уйдя в бизнес вам придется перестать программировать. Вы будете продавать, управлять, считать, но не кодить.
7:39Другой путь: найти партнера, который будет делать это за вас. Но тогда всегда есть риск, что вы останетесь за бортом. Деньгам нужен контроль
7:40@jsunderhood интервал - не очень предусмотрительно. Фирму не знают, она не заняла свое место, с нуля делать кратные прибыли - фантастика.
Большинство компаний умирают в первые 2 года жизни. Если фирма за год не вырастет в несколько раз, ее ждет смерть.
@jsunderhood интервал - не очень предусмотрительно. Фирму не знают, она не заняла свое место, с нуля делать кратные прибыли - фантастика.
7:42
К слову, моей первой попыткой предпринимательства в 16 лет была продуктовая палатка в колледже МГКИТ (кажется, там учился @iamsapegin)
7:43Она просуществовала 10 дней :—) Вот здесь я писал ностальгический пост с фотками про это: facebook.com/yaplusplus/pos…
7:44@jsunderhood если изначально план - говно, то можно даже не начинать.
Изначально все планы кажутся гениальными и прорывными. Проверить это можно только об рынок.
@jsunderhood если изначально план - говно, то можно даже не начинать.
7:46
Отдельно выскажусь про такую бизнес-модель, как работа на субподряде у больших агентств. Мне до сих пор еженедельно приходят письма от...
7:49...маленьких компаний или фрилансеров, которые предлагают свои услуги по верстке и программированию на подряде. Это путь в никуда.
7:50Может сгодиться, как инструмент самозанятости, но в перспективно бессмысленно. Вас постоянно давят по ценам, торопят по срокам, а также...
7:51...никак не развивается ваш собственный бренд. В итоге в какой-то момент вы ломаетесь, и вас меняют на другую такую же компанию из очереди.
7:52@jsunderhood вот я не соглашусь. Это апгрейд скиллов для маленьких компаний и их разработчиков, плюс хорошая база для старта
Как правило, это скиллы по сдаче проектов в кратчайшие сроки :) База — не факт, т.к. NDA не развивает портфолио
@jsunderhood вот я не соглашусь. Это апгрейд скиллов для маленьких компаний и их разработчиков, плюс хорошая база для старта
7:56
В районе обеда расскажу про рынок digital-агентств. Там похожая ситуация, только больше бюджеты и жирнее клиенты.
7:57А вечером поговорим про стартапы, инвестиции, акселераторы и технологии.
7:58@SheVasya Зачем вообще идти в бизнес без перспективы найти клиентов? Это не бизнес, а прокрастинация. @jsunderhood8:07
@jsunderhood кстати, как себя можно было бы зарекомендовать, если почти все под nda или на подряде(сделал, а на какой домен залили - неизв)?
Многие талантливые люди работают анонимно. Не только программисты, в том числе дизайнеры, копирайтеры и т.д.
@jsunderhood кстати, как себя можно было бы зарекомендовать, если почти все под nda или на подряде(сделал, а на какой домен залили - неизв)?
8:08
Наверное, лучший путь — рассказывать о себе людям. Писать в блог, выступать на митапах, коммитить в опенсорс. Демонстрировать скиллы.
8:09@SheVasya Я не уверен что автор говорил про не-IT бизнес. Идти новым бизнесом в место с заполненым рынком - глупо. @jsunderhood
Скажем так: делать yet another business на заполненном конкурентном рынке — глупо.
@SheVasya Я не уверен что автор говорил про не-IT бизнес. Идти новым бизнесом в место с заполненым рынком - глупо. @jsunderhood
8:10
Про стартапы есть интересный телеграм-канал Аркадия Морейниса: telegram.me/temno (да и много других источников, об этом позже)
8:11@jsunderhood а почему нет, если именно твой подход на голову выше и выгоднее, чем у других? Потом если что можно поглотить конкурентов.
«Поглотить если что» — это классно :)) А вот про подход на голову выше — это правильно. Но это уже не yet another
@jsunderhood а почему нет, если именно твой подход на голову выше и выгоднее, чем у других? Потом если что можно поглотить конкурентов.
8:15
И еще. Уходя в бизнес, вы скорее всего перестанете кодить и начнете заниматься десятками разных других дел.
8:16Маркетинг, бухгалтерия, управления проектами и людьми, продажи, переговоры, офисное хозяйство, налоги...
8:17Пока у вас маленькая команда, вам придется участвовать во всех этих процессах. Это дает массу нового и интересного опыта, но это расфокус
8:17В какой-то момент вы начнете ловить себя на том, что забываете названия CSS-свойств и методов стандартной библиотеки
8:18Ситуация простая: вы перестаете быть программистом и становитесь предпринимателем. А предприниматель — это в первую очередь деньги.
8:18Есть путь управленца и есть путь эксперта. Перед тем, как открывать компанию, задумайтесь: какой ваш путь?
8:19И последнее на этот час: лично я ни разу за свой предпринимательский опыт (~7 лет) не сталкивался с давлением госорганов.
8:22Более того, в начале пути ГБУ МБМ даже выдал нам субсидию на развитие бизнеса (300 000 рублей, кажется).
8:23Минутка хантинга: мы все еще ищем фронтендеров в Setka и Look At Media, а также Ruby-бэкендеров. Пишите на yakovishen@setka.io
8:25@listochkin @boriscoder @jsunderhood я бы даже вот этот линк приложил gist.github.com/listochkin/c81…10:01
@jsunderhood Я вообще сейчас делаю отдельный "движок" для редактора github.com/easywyg/mekong - это слой "Модель"
Ага, вот автор QuillJS тем же самым занимается: github.com/quilljs/parchm…
@jsunderhood Я вообще сейчас делаю отдельный "движок" для редактора github.com/easywyg/mekong - это слой "Модель"
10:26
Недели три назад пересел на работе на iMac 27''. Наслаждаюсь режимом Split View: pic.twitter.com/vngBHXNzLo
10:33@jsunderhood Split View курильщика: pic.twitter.com/B2SvQ06PZv11:50
Комьюнити, кто-нибудь сталкивался с проблемами производительности CSS-calc() на мобильных устройствах? Они есть?
11:51@jsunderhood а я использую i3 под *unix на двух мониторах и наслаждаюсь жизней больше вашего)11:51
@jsunderhood а я купил в DNS noname-монитор на 27" за 15k и уже 3 года наслаждаюсь этим режимом :)11:51
25 августа на MoscowJS 33 в Рамблере расскажу про наш опыт создания WYSIWYG-редактора: moscowjs.timepad.ru/event/363568/
12:28@mr_mig_by @stewardtz у меня обратная система - ноут без внешних экранов, шрифт 24 пункта. На экране 22 строки кода и все. @jsunderhood
Антихайп!
@mr_mig_by @stewardtz у меня обратная система - ноут без внешних экранов, шрифт 24 пункта. На экране 22 строки кода и все. @jsunderhood
13:21
@dshster А я не понимаю, зачем вообще нужно 27". Был на прошлой работе — 24" удобнее. @jsunderhood
Удобно держать редактор и браузер side by side. До этого сидел на 21'', там так не получалось.
@dshster А я не понимаю, зачем вообще нужно 27". Был на прошлой работе — 24" удобнее. @jsunderhood
13:33
Пока есть пару минут, расскажу про наш стек разработки — беспроигрышная тема в любом dev-сообществе.
14:57Как я уже говорил, бэкенд на всех проектах написан на Ruby on Rails. На фронте есть исторические Backbone и jQuery, на новых проектах React
14:58Код держим во внутреннем репозитории в GitLab, проекты ведем в Asana (а отдел спецпроектов — в Basecamp)
14:59Но сейчас серьезно подумываем о переезде на YouTrack. Код пишем в Sublime и Atom.
15:00Работают все на Маках, наверное, кроме бухгалтерии. Недавно дизайнеру купили iMac 27'' retina, любовались на него часа два
15:01@jsunderhood А что такое спец-проекты? Чем они отличаются от обычных?
Спецпроекты — это посты, которые спонсируют рекламодатели. Ими занимается отдельная команда, независимая от редакции
@jsunderhood А что такое спец-проекты? Чем они отличаются от обычных?
15:02
Все такие посты помечены. Вот, например: the-village.ru/village/city/s…
15:03@jsunderhood YouTrack какой-то деревяный в плане UI/UX :(
Да, он не очень sexy, зато мощный в плане выборок и фильтров. И вроде подешевле, чем Jira.
@jsunderhood YouTrack какой-то деревяный в плане UI/UX :(
15:04
Почему программирование — это долго и сложно quora.com/How-do-I-expla…
15:54@jsunderhood и у него все через шорткаты на клавиатуре. И крутая интеграция со всеми продуктами JetBrains. Мне лично нравится.15:54
That's a nice one. List of companies using @polymer twitter.com/ebidel/status/…
Google много где использует Polymer
That's a nice one. List of companies using @polymer twitter.com/ebidel/status/…
17:24
Here are the release notes for today’s Safari Technology Preview release 11. webkit.org/blog/6883/rele… pic.twitter.com/cKoIq2GmK6
Fixed performance issues with <marquee> with truespeed attribute. Включай бегущую строку, она больше не тормозит!
Here are the release notes for today’s Safari Technology Preview release 11. webkit.org/blog/6883/rele… pic.twitter.com/cKoIq2GmK6
17:29
Итак, про стартапы. В 2012 году мы с коллегой решили оставить заказную разработку и сделать свой стартап.
19:25Мотивация была довольно стандартная: хотелось делать свой продукт, не завися от постоянно меняющихся хотелок клиентов.
19:28Во ФРИИ говорят, что у стартапов бывает две проблемы: когда нет денег и когда они есть. Мы попали во вторую категорию.
19:28Практически сразу мы нашли знакомых инвесторов, весьма далеких от интернета, но имеющих желание в него вложиться.
19:29Конкретной идеи проекта у нас не было, и нам предложили её придумать. Сначала мы стали думать в сторону платформы для лидогенерации.
19:30Но инвесторам, у которых основным бизнесом были грузоперевозки, она не очень понравилась. Зато им очень нравились продажи авиабилетов онлайн
19:31Каждый из них был заядлым путешественником и имел массу идей о том, каким должен быть сайт по продаже билетов.
19:33В итоге после 5-10 встреч-переговоров мы пришли к следующему решению: будем делать систему планирования путешествий.
19:34Агрегатор, который собирал бы воедино авиаперелеты, отели, бронирование авто, страховки и т.д, и помогал бы все выбрать и оплатить разом.
19:34Мы быстро хлопнули по рукам и воодушевленно начали делать то, что мы умели лучше всего — делать сайт. Нам был предоставлен офис и зарплаты.
19:36Доли в проекте были поделены между нами и инвесторами пополам.
19:36Непосредственной движущей силой проекта были я и мой коллега. На его стороне был бэкенд и общий vision, на моей — фронтенд и интерфейс.
19:37Через 3 месяца погружения в тревел-индустрию стало ясно, что мы выбрали себе весьма амбициозную задачу.
19:38Мы узнали, что такое системы бронирования, GDS, депозиты, билетные кассы, субагенты, агентские комиссии, метапоиск, ваучеры и т.д.
19:39Оказалось, что сделать глобальную систему планирования весьма сложно — нужно агрегировать данные из десятков и сотен источников
19:40...вносить депозитные средства к разным партнерам, выполнять требования IATA и много что еще. Надо было сужать фокус.
19:41Мы посмотрели на всё это и решили начать с одной простой и популярной ниши — бронирование туров. Комиссия от операторов составляла 10-15%.
19:41При средней стоимости тура от 50 000 руб. и выше. По первым прикидкам даже с конверсией 1% можно было заработать много денег.
19:42У инвесторов было понимание, что мы не сможем перебить крупных конкурентов бюджетом, и поэтому нужно было сосредоточиться на продукте.
19:43Мы решили, что нашей фишкой будет крутой интерфейс и возможность онлайн-бронирования с моментальным подтверждением.
19:43И, разумеется, это должно было быть Single Page Application. Правда, тогда мы не знали такого слова и говорили просто «как во ВКонтакте»
19:44Мы заключили партнерский договор с компанией «САМО-софт», которая уже агрегировала туры у многих операторов.
19:45Она открыла нам шлюз для поисковых запросов на туры, а также для отправки броней прямо в систему туроператоров.
19:46Мой коллега сел писать бэкенд на Yii framework. На его долю выпало решать сложные задачи по кэшированию, обработке отказов, парсингу
19:47Я же довольно быстро уперся в потолок jQuery и решил выбрать подходящий инструмент для SPA. В итоге выбор пал на YUI3, библиотеку от Yahoo
19:48YUI3 во многом очень напоминала Backbone, только была гораздо больше и включала очень много чего (что меня и привлекло)
19:49У неё были свои методы для работы с DOM, AJAX, роутинг, MVC, анимации, утилиты... можно было практически не брать ничего другого.
19:50Я специально поднял несколько макетов интерфейса. Поиск туров: pic.twitter.com/lgZxvooy0j
19:56Страница отеля: pic.twitter.com/sbfZFFVGav
19:57Бронирование: pic.twitter.com/YHMOKcYvqw
19:57Проблем по ходу возникало много. Шлюз для поиска и бронирования постоянно давал сбои. Постоянно не хватало фоток и описаний отелей.
19:58Приходилось отлаживать IE8 и старую Оперу. Но мы не сдавались и продолжали пилить, будучи уверены в том, что наш интерфейс всех покорит.
19:59Я тогда сполна пережил все прелести разработки SPA: обработка роутов, куча отдельных View и десятки перекрестных событий, общий app state
20:00В самом начале проекта мы планировали за 3 месяца запустить прототип, еще за 3 месяца доработать его, и через полгода уже начать продажи
20:01Как вы думаете, сколько времени на самом деле заняла разработка?
20:02Два года.
20:05Два года мы пилили, допиливали и перепиливали систему. Постоянно возникали новые баги, идеи для улучшения, новые пожелания инвесторов.
20:05Бюджет проекта продолжал расти. Когда он достиг 5 млн рублей, инвесторы сказали «Стоп». Жаль, что это не произошло годом раньше.
20:06В итоге за два года у нас получился худо-бедно работающий сервис, где можно было найти тур и забронировать его, оплатив картой.
20:08При этом ни одной продажи сделано не было. Инвесторы устали и потеряли интерес к проекту.
20:09На собрании учредителей было принято решение: финансирование проекта приостановлено, чтобы понять, нужен ли он кому-нибудь на рынке.
20:09К тому времени уже наступил 2014 год, грянул новый кризис, полопались десятки туроператоров, упал рубль и появились санкции.
20:10Словом, отличное время для туристического бизнеса :)
20:10К этому моменту мы уже начали подозревать, что делаем что-то неправильно :) И решили походить с нашим детищем по рынку и послушать реакцию.
20:12Сначала дело шло вяло. Мы отправили заявку в пару стартап-акселераторов, нам прислали кучу вопросов про нишу и конкурентное преимущество
20:14Правильных ответов на тот момент у нас не было. Мы продолжали верить, что система бронирования с красивым интерфейсом — это нужно всем
20:14Зато в 2015 году дела пошли на подъём. Мы пропитчили наш проект на конференции TravelUP, которую устраивала QIWI, и попали в пятерку лидеров
20:16...с которыми QIWI была готова делать совместный пилотный проект в тревел-области. Это нас воодушевило — проект был кому-то интересен!
20:16@webholt @jsunderhood т.к. твой твит раньше, то ты «накаркал», и поэтому несёшь всю ответственность за задержку проекта.20:17
Вот пост на VC про это мероприятие: vc.ru/n/qiwi-travel-…
20:18Далее случилось совсем невероятное. Мы попали в Альфакэмп, совместный стартап-акселератор Альфа-Банка и ФРИИ.
20:19В акселератор было подано около 800 заявок, из них около 1000 выступили на демо-дне, и только 30 прошли в акселератор. И мы в том числе!
20:20Это придало сил и энергии. Мы были готовы предложить Альфа-Банку свою платформу в обмен на их трафик.
20:21В какой-то момент мы даже стали думать, что можно вообще забыть о привлечении клиентов своими силами, достаточно иметь крутого партнера
20:21Акселератор стартовал в июне 2015 года и длился два месяца. Это, наверное, были самые полезные два месяца для нашего проекта.
20:22За эти два месяца мы успели познакомиться с массой умных людей, экспертов ФРИИ и Альфы, а также посмотреть на другие проекты.
20:24Очень коротко перескажу основные идеи, которые пытаются донести до начинающих стартаперов.
20:241. То, что вы думаете о своем проекте, сидя в офисе — ваши галлюцинации. Нужно выйти из офиса, подойти к людям и заговорить.
20:25@webholt @jsunderhood 5 лямов / 24 мес = 208 333 руб/мес. И это без налогов! Вы там за Доширак работали что ли?
Не стоит забывать, что мы были не наемными работниками, а кофаундерами проекта.
@webholt @jsunderhood 5 лямов / 24 мес = 208 333 руб/мес. И это без налогов! Вы там за Доширак работали что ли?
20:26
2. Большинство проектов умирают потому, что они оказались никому не нужны, и у них закончились деньги.
20:27Если стартап не начинает зарабатывать в первые месяцы своего существования, он почти наверняка умрет. В лучшем случае через год.
20:283. Стартап должен решать реальную проблему реальных людей. Только тогда они будут готовы отдать вам свои деньги.
20:284. Далеко не каждый бизнес является венчурным. Магазин «Продукты» неинтересен инвестору, т.к. не вырастет в 10 и более раз.
20:295. Инвестиции имеет смысл брать не на создание бизнеса, а на его рост. Когда вы уже проверили ключевые гипотезы и знаете, куда двигаться.
20:306. У стартапа должен быть рынок. Для ФРИИ объем рынка должен быть от 300 млн рублей в год и более.
20:317. Стартап, застрявший на обороте в 1 млн рублей, скорее всего банкрот. Конкуренция задавит. Нужен постоянный рост.
20:328. Задача стартапа на начальной стадии — как можно больше, быстрее и дешевле ошибаться. Сконцентрироваться и проверить максимум гипотез.
20:329. Ко всем своим и чужим идеям следует относиться как к гипотезам, пока они не подтверждены метриками. Не надо работать по интуиции.
20:3310. В первую очередь надо продавать новаторам, тем самым early adopters, но основные деньги — у большинства.
20:34Акселератор — крайне полезная среда, ставящая мозги на место и приучающая мыслить как product owner.
20:34В заключение скажу, что мы сделали мощный пивот, сфокусировались, и ФРИИ пригласили нас очный акселератор, ...
20:36...предложив 2,1 млн рублей за 7% компании. Но мы к тому моменту уже порядком устали и решили сделать паузу.
20:36В настоящий момент проект заморожен, но не брошен. Мы провели более 100 интервью с клиентами, выявили боль и придумали решение.
20:38@webholt @jsunderhood я с тремя недопэхапэшниками делал поиск отелей. Сделали за 5 месяцев и даже были продажи...20:38
@webholt @jsunderhood потом директор фирмы спиздила все деньги и съебалась из страны
Classics!
@webholt @jsunderhood потом директор фирмы спиздила все деньги и съебалась из страны
20:38
У Setka в этом плане есть серьезное конкурентное преимущество: рядом с нами сидит 3 редакции реальных больших проектов.
20:41И все свои продуктовые гипотезы мы очень быстро можем проверить на реальных людях. Это очень ценно.
20:42@webholt @jsunderhood делали 11 месяцев, все сто раз было готово но директор и инвесторы хотели больше, а в конце у них кончились деньги20:43
А библиотека YUI, кстати, была похоронена самим Yahoo в конце 2014 года.
20:46Что бы я изменил сейчас, окажись в начале этой истории? 1) Не лез бы в туризм 2) Нашел бы нишу и сфокусировался 3) Выявил реальные проблемы
20:474) Сразу бы начинал продажи, а продукт адаптировал под изменяющуюся реальность
20:48Как сказал один из экспертов ФРИИ, есть два типа стартаперов: одни быстро релизят говно и начинают продавать, вторые вечно пилят продукт
20:48Говно = максимальная простая версия продукта, решающая реальные проблемы пользователей. Minimal Viable Product.
20:49Еще одной большой ошибкой было то, что мы плохо посчитали стоимость привлечения покупателей.
20:51В таком бизнесе, как онлайн-тревел (да и вообще e-commerce) это ключевой показатель. На нашем рынке CAC составлял 4000-8000 руб.
20:52(CAC = customer acquisition cost)
20:52Т.е. сначала нужно было потратить 4-8 тыс. руб. на рекламу, затем продать юзеру тур за 50-80 тыс. руб., получить свои 10% комиссии, ...
20:53...отдать процент платежному шлюзу, заплатить налоги... Таким образом прибыльной обычно становится только вторая покупка этого юзера.
20:54И что самое интересное — это проблема всех игроков на рынке, включая гигантов. Поэтому все пытаются вас удержать и не отдать.
20:54Нашел дешевый источник качественного трафика — ты король. И при этом абсолютно неважно, на Реакте твой сайт или на YUI :)
20:55@jsunderhood екоммерс живет исключительно на повторных продажах, и 2я + покупка—это очень хорошо. учитывая сегмент, имо вы тут тоже ошиблись20:59
Про важность Developer Experience: medium.com/@girlie_mac/de…
21:33# Четверг 110 твитов
@jsunderhood а на что жили во время работы над проектом? Инвесторские деньги = зарплата, или как-то сложнее?
@jsunderhood золотая пословица software индустрии5:24
If you use npm and want a cdn, check out npmcdn: a cdn so easy to use, you're already using it.5:48Served 500M+ reqs from npmcdn.com over the past month, over 97% from the cache. So crazy! 😆 pic.twitter.com/82FGuwiwlM
Сегодня поговорим о работе программистом. Вакансии, зарплаты, умения, продуктивность, инструменты, языки, вот это всё.
5:52Я почти ни дня не работал в области, не связанной с IT. В 17 лет полдня проработал курьером, а на след. день устроился HTML-верстальщиком
5:53До сих пор даже существует сайт маленькой студии, где я верстал шаблонные сайты на таблицах и самописной CMS: webmedia.ru
5:54@jsunderhood тему высшего образования затронем?
Уже затрагивали во вторник утром. Но можно еще потрогать :) Что думаете на этот счет?
@jsunderhood тему высшего образования затронем?
6:31
Languages you should be learning: Erlang/Elixir, Elm, OCaml, Haskell, Racket/Lisp, Go, Rust
Кто что изучает? Или уже использует в продакшне? Go так наверняка.
Languages you should be learning: Erlang/Elixir, Elm, OCaml, Haskell, Racket/Lisp, Go, Rust
6:43
@jsunderhood @octowed сложно трудоустроиться. У нас все сеньоры -- ПТУшники, а джуниоры и начальник -- с вышкой. ПТУ -- знак качества!
Раз зашла речь про трудоустройство, скажу свое мнение. По моим наблюдением, у фронтендеров сейчас золотой век.
@jsunderhood @octowed сложно трудоустроиться. У нас все сеньоры -- ПТУшники, а джуниоры и начальник -- с вышкой. ПТУ -- знак качества!
6:44
Людей мало, толковых еще меньше, но при этом они нужны всем, т.к. все современные web apps напичканы фронтендом по самое-самое
6:45В конце прошлого года я решил устроиться на работу. В резюме последние 7 лет: своя студия, агентство, стартап. В/о нет, в Яндексе не работал
6:47Примерно за 2-3 недели я обошел 10 собеседований (Москва), получил 5 офферов. Мог продолжать, но пора было определяться.
6:48В итоге выбирал между ТуТу.ру, Parallels, Mail.ru, Setka и еще парой компаний. Выбрал Сетку из-за интересных задач и драйвового духа
6:50@jsunderhood остравок Go разрабов набирал недавно6:50
Ну и по сей день хантеры продолжают писать, звонить и напоминать о себе еженедельно. А у вас какая история последнего трудоустройства?
6:51@jsunderhood я не думаю, я страдаю от его отсутствия. Если нет вышки, твой потолок студии и фриланс? Раз затрагивали, найду и ознакомлюсь.
Совсем не факт. Я почти год проработал в гос. учреждении, не имея вышки. Мне кажется, скиллы все же на первом месте.
@jsunderhood я не думаю, я страдаю от его отсутствия. Если нет вышки, твой потолок студии и фриланс? Раз затрагивали, найду и ознакомлюсь.
6:52
Где может реально потребоваться вышка — это при трудоустройстве на сильные технические должности или за границу. Кто работает там — напишите
6:53@jsunderhood @octowed это не только фронта касается, но и ИТ в целом.
Соглашусь. Разработчиков заманивают, как принцесс — печеньками, соцпакетом, спортзалом и курсами английского :)
@jsunderhood @octowed это не только фронта касается, но и ИТ в целом.
6:55
@jsunderhood Elixir в проде, как дополнительная API надстройка над Elasticsearch. Посматриваю в сторону Elm/Haskell.6:58
@jsunderhood меня интересует всего лишь должность javascript-разработчика ;) Но хочется ведь быть хорошим разработчиком.
Как правило, понимание того, что такое хороший разработчик, приходит уже после получения диплома :)
@jsunderhood меня интересует всего лишь должность javascript-разработчика ;) Но хочется ведь быть хорошим разработчиком.
7:01
Тебе предлагают "ненадолго" перейти на frontend pic.twitter.com/8bMLJ5wz9V7:05
@jsunderhood наличие диплома ещё никого не сделало хорошим разработчиком (ах если бы всё так просто было)
Мне на одном собеседовании задали вопрос: что такое «плохой разработчик»? Вы как думаете?
@jsunderhood наличие диплома ещё никого не сделало хорошим разработчиком (ах если бы всё так просто было)
7:10
@jsunderhood абсолютно то же самое, куча предложений при опыте в год. Забавно, что тоже выбрал сетку, но в последний момент они дали заднюю.
Эх :(
@jsunderhood абсолютно то же самое, куча предложений при опыте в год. Забавно, что тоже выбрал сетку, но в последний момент они дали заднюю.
7:11
@Sigiller @jsunderhood обучение в ВУЗ'е может дать хорошую базу: алгоритмы, математика. И плюс в карму при трудоустройстве.
Про алгоритмы и математику согласен. Самому это труднее освоить (и заставить себя освоить).
@Sigiller @jsunderhood обучение в ВУЗ'е может дать хорошую базу: алгоритмы, математика. И плюс в карму при трудоустройстве.
7:23
@jsunderhood defile "плохой"7:23
Помни, программист! Ты не средний класс, ты — киберпролетарий.7:23
@jsunderhood чем больше ответственности у спеца, тем больший вес имеет доверие. На регалии, статус и резюме там уже пофиг. Отзывы важнее
Поэтому находите время на публичную активность и пишите в опенсорс
@jsunderhood чем больше ответственности у спеца, тем больший вес имеет доверие. На регалии, статус и резюме там уже пофиг. Отзывы важнее
7:25
@jsunderhood в Польшу, где я сейчас, это вообще первый вопрос был. И говорят все зарубежом его просят. Только если ты бог делают исключение.
Ага
@jsunderhood в Польшу, где я сейчас, это вообще первый вопрос был. И говорят все зарубежом его просят. Только если ты бог делают исключение.
7:31
@jsunderhood это все не нужно. Комфортное помещение, пара мониторов, возможность работы из дома - вот что нужно.
Не соглашусь. Когда долго сидишь дома тихо сам с собой, начинаешь терять ощущение реальности. Команда — это круто.
@jsunderhood это все не нужно. Комфортное помещение, пара мониторов, возможность работы из дома - вот что нужно.
7:37
@jsunderhood коллега переехал в штаты без профильной вышки7:37
@jsunderhood @RIP212 в Германию вроде можно попасть и без диплома. Были уже разговоры на эту тему. В NL тоже иногда просят, иногда нет7:37
@jsunderhood не понял, разве мои слова противоречат наличию команды?
Я про физическое нахождение в команде. К слову, лучший офис IT-компании, в котором я бывал в Москве — Avito.
@jsunderhood не понял, разве мои слова противоречат наличию команды?
7:40
@jsunderhood ну, «возможность работать из дома» !== «всегда работать из дома»🙂
А, это да. У нас в Сетке нормально относятся к тому, если кто-то временами работает из дома.
@jsunderhood ну, «возможность работать из дома» !== «всегда работать из дома»🙂
7:43
Несколько прошлогодних фотографий из офиса Авито. Очень уютно =^..^= pic.twitter.com/82s5EiZP8H
7:45А вот команда Сетки полугодичной давности. Сейчас уже в два раза больше людей. (я в качестве background-image) pic.twitter.com/FPDWhARRLp
7:47Она же, откластеризованная по признаку наличия бороды pic.twitter.com/RZcqGVX4Fg
7:48@jsunderhood опенспейс? Шумно же?
Это самый тихий офис, в котором я был. Там даже разговаривают вполголоса.
@jsunderhood опенспейс? Шумно же?
7:49
И вот еще несколько фоток из нашего офиса. Делаем вид, что сосредоточены на работе (позируем фотографу): pic.twitter.com/Zxy1uNoNDc
7:53Верстальщик от бога Саня рубится на PS4 в игру про кусочек мяса: pic.twitter.com/VmW8IN4e9a
7:54Всеобщий любимец, тайский ориентал Старки, терпит дозу любви и нежности: pic.twitter.com/Twrptyja3H
7:55А наш проджект-менеджер Лена выращивает перчики, и недавно мы делали из них перцовку: pic.twitter.com/aBAcnqDCQA
7:56Тут шутка про бэкенд-разработчика на заднем плане pic.twitter.com/NFFJ8Pnwup
7:57На самом деле это продакт-директор Сетки — Роман Худоногов. А пустующий компьютер недавно перешел ко мне.
7:58Кстати, стену на заднем плане мы месяц назад передвинули метров на 5 вглубь, т.к. перестали помещаться. Редакции пришлось потесниться :)
8:00Раз уж заговорили про офисы, пару слов про фриланс. Далее личный опыт: долгое время работать дома — плохо.
8:03Теряется грань между работой и отдыхом, ты постоянно в рабочем состоянии. Отличное решение этого вопроса — коворкинг.
8:04Это новые знакомства, и (часто) интересный локейшн, мероприятия, новые заказы. Я прошлое лето провел в DI Telegraph, и это окупилось стократ
8:04Я познакомился с ребятами из Moscow Coding School и стал преподавателем. Пообщался с разработчиками Bookmate и Zvooq.
8:06Выступил с большим докладом про фронтенд на Moscow Tech Meetup: youtube.com/watch?v=H3CtzN…
8:07Записался в группу занятий английским с крутым 68-летним нейтив-спикером. Ну и еще много чего. Главное — встать и выйти из дома.
8:08@jsunderhood как думаешь, вам может сразу надо было взять маркетолога? или может сконцентрироваться на очень минимальной версии продукта?
Маркетолога — нет. Найти человека, который знает инсайты индустрии — да. Ну и не факт, что нужно было лезть в тревел
@jsunderhood как думаешь, вам может сразу надо было взять маркетолога? или может сконцентрироваться на очень минимальной версии продукта?
8:13
@darkilfa @jsunderhood для бесед и жарких дискуссий есть переговорки. В опенспейсе увлеченно работают, стараясь не мешать другим8:23
@octowed @jsunderhood об ужасах зарплаты в маленьких городах)
Давай! Мне, к сожалению, тут нечего сказать, всю жизнь живу в Москве.
@octowed @jsunderhood об ужасах зарплаты в маленьких городах)
8:26
@jsunderhood куда пойти работать если кайф хайпить в 2к16?
Хороший вопрос. У кого какие мысли?
@jsunderhood куда пойти работать если кайф хайпить в 2к16?
8:28
Я общался с одним стартапом год назад, они говорили так: React — это мода, она скоро уйдет, мы сразу все делаем на Polymer
8:29@jsunderhood я ни цента до текущего места не заработал кодингом, зато активно писал в блог + делал oss на тему react + rails = isomorphic 💖8:29
@jsunderhood хм, на моей первой работе без опыта, лишь после месяца курсов платили 20к, а за декабрь получил в январе. Москва
А что за работа была?
@jsunderhood хм, на моей первой работе без опыта, лишь после месяца курсов платили 20к, а за декабрь получил в январе. Москва
8:29
Недавно в Телеграм-чатике про JS-вакансии @chicoxyzzy, кажется, звал писать внутренний апп на ES6 без babel
8:31(ES6 без babel звучит как секс без презерватива...)
8:32@biercoff_enn можно, но очень тяжело. Обычно отказывают @jsunderhood @RIP2128:33
@jsunderhood у меня было 30к до вычета налогов, тоже после курсов8:37
@_sashashakun @jsunderhood год назад 25к получал, но не в москве и на эти деньги можно было даже нормально жить8:39
@jsunderhood лол, пока полимерибо учатся делать компоненты, деревня реактобаджо уже решает проблемы фетча данных8:56
Гайз, посоветуйте какие-нибудь толковые и интересные программерские твиттеры. Ток чтоб не смехуечки и "орнул в голосину", а норм контент.8:58
@goodhoopoe из тех, что я читаю (а ты нет): @nikitonsky, @afiskon, @zenwalker, @xufocoder, @SBozhko, @dshevchenko_biz. Но нужна новая кровь!8:58
Удобно, когда сайт можно скачать с гитхаба и запустить локально. Это я про jsunderhood.ru, который у меня не открывается из-за происков РКН
9:00@biercoff_enn @jsunderhood @RIP212 в Германию без диплома очень сложно, а вот в Финку - вообще без проблем.9:01
@jsunderhood для разработки в современных браузерах норм, перед релизом билдить с babeljs
Кстати, а кто-нибудь уже задумывается о том, чтобы совсем исключить транспиляцию ES6 из pipeline сборки?
@jsunderhood для разработки в современных браузерах норм, перед релизом билдить с babeljs
9:03
(я сейчас не про закрытые проекты, где все сидят на последнем Chrome, а публичные)
9:03@smashercosmo и в Швецию без проблем ;) @biercoff_enn @jsunderhood @RIP2129:06
@jsunderhood у #nodejs разрабов тоже золотой век, мало толковых, а спрос со стороны компаний растёт)9:11
А у фуллстэков вообще век платиновый)
В тему транспайлинга: кто-то нибудь использует альтернативы babel, например, traceur? Если да, то почему?
9:19@jsunderhood а разве traceur c es5to6 не объединялись в babel еще год назад?
Признаться, не слежу внимательно за traceur. Насчет es6to5 — да, помню, было дело.
@jsunderhood а разве traceur c es5to6 не объединялись в babel еще год назад?
10:02
@jsunderhood есть ещё buble и closure compiler10:02
@jsunderhood неа, а про rollup уже обсуждали?
Давайте обсудим
@jsunderhood неа, а про rollup уже обсуждали?
10:02
Сорри за оффтоп, но пришел эпический спам только что. Вдруг кому нужны контакты Джона? :) pic.twitter.com/EFFR7PczRr
10:04@koluch_ru @jsunderhood никто не отказывается от современного синтаксиса, он работает в браузерах, поэтому можно отказаться от транспайлинга10:11
@jsunderhood еще есть вот такой странный проект github.com/yoshuawuyts/es…10:12
@jsunderhood Traceur я пробовал, когда Бабеля ещё не было, и он был говном. А сейчас в нём ещё меньше смысла.10:16
@Sigiller @jsunderhood подробностей не знаю. Но месяц назад в этой же Твиттер-ленте парень из Финляндии говорил об этом. Он думает о вышке.10:33
@jsunderhood разработчики Bookmate ищут фронта, нет желающих?10:34
Dev Tips: #DevTools: Automatically open DevTools in each new tab: umaar.com/dev-tips/111-a… (Works in Chrome stable) pic.twitter.com/lrgnDIronR10:35
@jsunderhood то есть 50% собеседований было вами провалено? twitter.com/jsunderhood/st…
Одно я действительно завалил. Еще в одном дали тестовое, которое не стал делать, т.к. устроился в Сетку. И т.д.
@jsunderhood то есть 50% собеседований было вами провалено? twitter.com/jsunderhood/st…
10:37
@jsunderhood устраивался в большую компанию (300+чел), позвонили, пришел. Оказалось, сетевые маркетологи перехватили мой телефон и врали...
!!!
@jsunderhood устраивался в большую компанию (300+чел), позвонили, пришел. Оказалось, сетевые маркетологи перехватили мой телефон и врали...
10:46
@marinintim @jsunderhood rollup - bundler, buble - transpiller. Оба Рич Харрис из Гардиан сделал.10:46
А вот описание наших фронтенд-вакансий. Разработчик в Сетку: specials.lookatme.ru/workwithus/job…
10:48И в спецпроекты (там больше верстки, анимаций и т.д.): specials.lookatme.ru/workwithus/job…
10:48@jsunderhood А какая у сетки вилка? :P
Сетка-вилка :) Это к HR: asya.solntseva@lookatme.ru
@jsunderhood А какая у сетки вилка? :P
10:49
@jsunderhood То есть все так плохо, что не озвучишь? :)
Нет, наоборот, всё очень неплохо. Правда. Просто это не моя зона ответственности.
@jsunderhood То есть все так плохо, что не озвучишь? :)
10:51
@jsunderhood Так почему не опубликовать туда или сюда?)
Формулировка стандартная: зарплаты рыночные по итогам собеседования. Повышение за упорство довольно быстро.
@jsunderhood Так почему не опубликовать туда или сюда?)
10:57
HolyJS в Москве 11 декабря: первые доклады и приём заявок — habr.ru/p/307972/ pic.twitter.com/1CV3ynHsiS11:01
@_sashashakun @jsunderhood недавно знакомый iOS-программист завалил 70% (не дали оффер Uber и Facebook) , дал оффер только Google. 👻14:09
@freiksenet_ru @jsunderhood нет вилки — нет вакансии? Или настолько всё, что даже примерно назвать стыдно?
Странные догадки. Если бы вакансии не было, зачем я четвертый день о ней упоминаю?
@freiksenet_ru @jsunderhood нет вилки — нет вакансии? Или настолько всё, что даже примерно назвать стыдно?
14:14
Кто заинтересован в работе, а не в троллинге — знает что делать.
14:15@jsunderhood Как быть, если Москва не влечет, а в своем городе караул в плане работы и зарплат?
Удаленная фултайм работа?
@jsunderhood Как быть, если Москва не влечет, а в своем городе караул в плане работы и зарплат?
14:15
@jsunderhood Почему не выключить компьютер по окончании рабочего времени и не пойти на стадион?
У пространств для работы и для отдыха разная конфигурация. Объединить их сложно и обычно незачем.
@jsunderhood Почему не выключить компьютер по окончании рабочего времени и не пойти на стадион?
14:16
Фронтендеры, у кого-нибудь есть опыт переезда с Mac OS на Linux? Яблочные устройства в России стали стоить непомерных денег.
14:18@jsunderhood Давно пользуюсь и тем, и тем. Отлично себя чувствую. Какие вопросы?
Пишешь JS или верстаешь тоже? Есть проблемы с рендерингом страниц, шрифтов и т.д.?
@jsunderhood Давно пользуюсь и тем, и тем. Отлично себя чувствую. Какие вопросы?
14:22
@jsunderhood Вы же говорите, что работа дома долгое время - это плохо. А какие тогда варианты? Удаленная фултайм - это же тоже дома.
Я считаю, что плохо, да. Но вариантов-то в целом немного: офис, удаленка, переезд, свое дело.
@jsunderhood Вы же говорите, что работа дома долгое время - это плохо. А какие тогда варианты? Удаленная фултайм - это же тоже дома.
14:23
@jsunderhood паралельно сижу на обоих. проблема - фотошоп
Последнее время очень редко запускаю, но вообще да, что Фотошоп, что Скетч — под Linux это проблема.
@jsunderhood паралельно сижу на обоих. проблема - фотошоп
14:30
@jsunderhood для верстки каким-то выходом из ситуации может послужить avocode \ zeplin ?
Я ими немного интересовался. Насколько понимаю, интерфейс должен быть в них сделан. Или они читают PSD/Sketch?
@jsunderhood для верстки каким-то выходом из ситуации может послужить avocode \ zeplin ?
14:34
Ага, вижу, в них можно экспортнуть файлы. А ничего не теряется при экспорте?
14:35Другое дело, что ноутбук, на который можно поставить Linux и нормально работать, стоит как MacBook 15'' года 2012-2013 (~70-80к)
14:44@jsunderhood но ретина же! Без нее уже страшно на монитор смотреть.
Согласен. После ретины переходить на безретинье туго. Но есть нормальные мониторы и не эппловские. Правда, дорогие
@jsunderhood но ретина же! Без нее уже страшно на монитор смотреть.
14:55
@jsunderhood а зачем их постоянно обновлять?
У меня MacBook Pro 13'' mid-2009. Так что я бы не назвал это «постоянно» :)
@jsunderhood а зачем их постоянно обновлять?
19:46
Только что закончился первый скайп-прогон моего доклада про WYSIWYG для MoscowJS 33. Получил много полезных комментариев. Увидимся 25.08.16
20:06@jsunderhood Хакинтош. 3 года, никаких проблем.
Это не наш метод
@jsunderhood Хакинтош. 3 года, никаких проблем.
20:07
@jsunderhood смотри чтобы глаза не кровоточили от линукса :)
Вот я и опасаюсь. После 7 лет на Маке... к хорошему привыкаешь.
@jsunderhood смотри чтобы глаза не кровоточили от линукса :)
20:07
# Пятница 76 твитов
@jsunderhood есть опыт переезда с Linux на Mac, потому что там Adobe не было. Остальной набор инструментов, в принципе, есть.7:37
@virocracy @jsunderhood у меня хромбук на целероне. И с ssd там вполне себе жизнь. Кор, канешн, Староватый, но тянет.7:37
@jsunderhood все-таки лучше разориться на 90т.р и купить MacBook Pro 13. Также лет 5-7 отработает, оно того стоит7:37
@jsunderhood 6 лет на линуксе, с каждым годом все лучшее и лучшее. уже даже фотошоп не проблема (если не дизайнер)7:38
@jsunderhood Неистово нравится этот ноут на Убунте - system76.com/laptops/gazelle Подкупает, что контора именно на этом специализируется.
Честно говоря, после Макбука ощущение как от куска пластика с кучей портов :-( IMHO.
@jsunderhood Неистово нравится этот ноут на Убунте - system76.com/laptops/gazelle Подкупает, что контора именно на этом специализируется.
7:39
И дисководом!
7:40Всем привет. Сегодня пятница — день искрометного юмора и тонкой иронии.
7:41Хочу с вами поделиться своим фаворитом — сайтом, которые я наблюдаю года с 2008, хотя существует он раньше: web-league.ru
7:42По всей видимости, в этом году они сделали редизайн, но все ключевые моменты остались: цитата из Евангелия, цены от 3000 руб. и пАртфолио
7:43@jsunderhood мне кажется яблоководам да и всем остальным стоит посмотреть на Xiaomi Mi Notebook Air
Да!
@jsunderhood мне кажется яблоководам да и всем остальным стоит посмотреть на Xiaomi Mi Notebook Air
7:44
Буквально несколько месяцев назад сайт выглядел вот так: web.archive.org/web/2016030617… Люблю их!
7:44Есть странная история про мой никнейм: @yaplusplus. Я придумал лет 15 назад по первой букве фамилии и первому языку программирования.
7:47И долгое время хотел зарегистрировать домен yaplusplus.ru, но почему-то этого не делал (студенческие годы...)
7:48А потом ВНЕЗАПНО его зарегистрировал думаете кто? YANDEX, LLC: nic.ru/whois/?domain=…
7:48И держит за собой до сих пор. Кто знает, может быть, мы когда-нибудь будем писать на языке Я++? Или даже Йа++ :)
7:49@jsunderhood как ни крути а они застряли где-то в 90-х :)
Судя по всему, они уверенно в них существуют!
@jsunderhood как ни крути а они застряли где-то в 90-х :)
7:50
@jsunderhood и у меня такой сайт есть bel-design.ru с 2006 посматриваю.
Флэш! Музыка! Анимированный «мокрый пол»! Птицы, рыбы! Да это же услада для взора.
@jsunderhood и у меня такой сайт есть bel-design.ru с 2006 посматриваю.
7:51
@jsunderhood art73.ru местное творчество8:47
@jsunderhood тогда надо вспомнить ставший уже классическим durgasoft.com8:51
@jsunderhood lingscars.com ребята скинули сейчас
Сразу настроение поднимается!
@jsunderhood lingscars.com ребята скинули сейчас
9:27
@jsunderhood @yaplusplus есть хорошая книга на эту тему store.artlebedev.ru/book/urban-pla…
О, класс, не знал. Спасибо!
@jsunderhood @yaplusplus есть хорошая книга на эту тему store.artlebedev.ru/book/urban-pla…
9:28
А вы как придумали свой никнейм? Один на всю жизнь или менялся со временем? Или вообще используете несколько?
9:30Кстати, про редакторы. Ребята из W-O-S недавно зарелизили свой почти что фотошоп в браузере: verstka.io
9:31Похоже на то, что делают Tilda и Readymag
9:32@jsunderhood В паспорте прочитал. В конце 1990-х у меня был ник Виртуальный вампир, но потом отпустило.
Ага, я когда-то в компьютерных клубах тоже был orka (потому что любил Warcraft)
@jsunderhood В паспорте прочитал. В конце 1990-х у меня был ник Виртуальный вампир, но потом отпустило.
9:34
Как у многих, мое погружение в IT началось с компьютерных игр. Мы с другом прогуливали школу и копались в консоли Counter-Strike.
9:38Нашли много чего интересного, в том числе способ подвесить любой сервер одной командой из консоли клиента (CS 1.4-1.5)
9:38Закончилось это тем, что мы сделали свой первый сайт в Microsoft FrontPage на narod.ru, на который выложили все свои познания.
9:41И он даже неплохо неплохо сохранился в веб-архиве: web.archive.org/web/2003090521…
9:42@jsunderhood на самом деле мне не хватает фантазии на что-то одиозно выдающееся, типа vaginaQueen или DarkPenetrator666, поэтому свое имя :С9:42
@jsunderhood У меня в каком-то смысле тоже: у меня был Спектрум, и игры с кассет загружались так долго, что я стал изучать Бейсик ;-)9:42
@jsunderhood Я ещё писал его вот так вот: ViRTUAL VAMPiRE — полный конец обеда :-/
museum.sapegin.ru/tsott/index1.h…
«Феньки на JavaScript»! Да, долгое время JS воспринимался исключительно как «скрипты для сайта»
@jsunderhood Я ещё писал его вот так вот: ViRTUAL VAMPiRE — полный конец обеда :-/
9:43
museum.sapegin.ru/tsott/index1.h…
.@jsunderhood провел сложное исследование с привлечением филологов разных стран.10:36
@jsunderhood Используемых четыре. Один отошёл в прошлое, один основной, но его не везде пропускают (4 символа нельзя, суки).10:36
@jsunderhood у меня был Бультерьер, которого звали Баритон, он уже давно в раю, а никнейм это как бы дорога к нему туда.
Оригинально
@jsunderhood у меня был Бультерьер, которого звали Баритон, он уже давно в раю, а никнейм это как бы дорога к нему туда.
10:36
@jsunderhood Толкина перечитал.10:37
@jsunderhood Лет в 13 нужен был никнейм для "первой русской ММОРПГ" Сфера. Взял персонажа из Сапковского.
Сфера, БК... были времена.
@jsunderhood Лет в 13 нужен был никнейм для "первой русской ММОРПГ" Сфера. Взял персонажа из Сапковского.
10:39
@jsunderhood у меня был другой ник, который я придумал на волне любви к Космическим Рейнджерам. Сейчас решил строить личный брэнд - поменял.11:33
@jsunderhood щас проверим какие были времена - кто такая Крошка Зёма? :) и кто такие PPP from PNG?
Кто знает? :)
@jsunderhood щас проверим какие были времена - кто такая Крошка Зёма? :) и кто такие PPP from PNG?
11:33
@ostelaymetaule @jsunderhood папа в детстве называл Матисом. Потом начал играть в WoW, Матисов было куча, добавил Great. Один на всю жизнь.11:42
Загрузчик модулей, работает. Какие подводные камни? Что не учел? Может не безопасно? Подскажите.
gist.github.com/ymatuhin/28bb5…
@jsunderhood
Комьюнити, нужно code review
Загрузчик модулей, работает. Какие подводные камни? Что не учел? Может не безопасно? Подскажите.
13:44
gist.github.com/ymatuhin/28bb5…
@jsunderhood
@jsunderhood следующему поколению будет очень сложно с никами, предсказываю многословные, как у индейцев Америки.13:46
Мы недавно придумывали кодовые названия для этапов работы по редактору. Сначала был этап 1 и этап 2. Потом все стали путаться.
13:47@dshster @jsunderhood Они будут по наследству передаваться.
Вписываться в завещание вместе с паролем к твиттеру?
@dshster @jsunderhood Они будут по наследству передаваться.
13:47
Завязалась дискуссия в Slack, продолжавшаяся около часа. В итоге у нас теперь фаза «Геннадий» и фаза «Педро». По Геннадию уже скоро дедлайн.
13:48И мы с абсолютно серьезными рожами сидим в переговорках и обсуждаем, какие фичи у нас в Геннадии, а какие уходят в Педро.
13:49А у вас в компании какие есть свои локальные словечки, мемы?
13:49Пруф скриншот: pic.twitter.com/8lei6FdjOg
13:52@jsunderhood Называю очень честно и многословно. Делаю из этого аббревиатуру. Перевожу на латиницу. Отлично выходит.13:52
А еще с недавних пор в редакционном чатике локальный мем:
«Автопрефиксер перестал дописывать вендорные префиксы для старых вебкитов»
(ответ отдела разработки на вопрос, почему верстка поехала)
14:04(для редакции звучит примерно как заклинание)
14:04При входе в офис у нас сидит самый настоящий Упоротый Лис pic.twitter.com/RxVdxeTgG5
14:07@jsunderhood один единственный. По молодости написал неправильно, а вышло фичей.14:47
@jsunderhood аутентичный или реплика?
Скорее реплика, но выглядит весьма реалистично.
@jsunderhood аутентичный или реплика?
14:49
В первый рабочий день каждому сотруднику дают прочитать «курс молодого бойца». Там есть фраза: «Если работа сделана, можно и угореть».
14:55А теперь минутка холивара, т.е. я хотел сказать, плюрализма мнений. Для JS: TDD или BDD?
14:57@jsunderhood Странный холивар, второе подразумевает как минимум первое и невозможно без него. Проще говоря BDD развитие TDD.15:00
@jsunderhood ASAPDD15:01
У нас, как вы понимаете, Gennady Driven Development
15:01@twenty @jsunderhood ¯\_(ツ)_/¯ Driven Development15:07
Поговорим немного об еще одной прекрасной пятничной теме — рабочих эпик фейлах. Расскажите о своём опыте :—)
15:15У меня в 2009 году была история, когда я вечером перед сдачей проекта клиенту убил сервер с релизной версией проекта.
15:16Сервер был большой и железный, и лежал передо мной. А клиент был в городе Сыктывкар, и туда нужно было лететь утром вместе с сервером.
15:16В итоге пришлось слетать два раза :-) Проект в конце концов успешно сдали, так что история со счастливым концом.
15:17Но до сих пор помню, как включаем сервер перед приемочной комиссией, а там kernel panic и всё такое
15:18@jsunderhood меняли систему скидок в розн. продажах на проде. За 20 минут - минус около 1,5к баксов. Директор попросил больше так не делать15:30
@jsunderhood случайно сделала chmod 777 /15:30
@webholt @webholt-junior @jsunderhood
От senior'а к junior'у!
@webholt @webholt-junior @jsunderhood
15:46
Пятница! Давайте конкурс? Разыгрываем бесплатный билет на #FrontTalks (events.yandex.ru/events/yagosti…) нужно просто ретвитнуть этот твит ;)16:06
У нас в гостях была самая красивая Планета галактики, а теперь, дорогие, перейдем к дискуссии. Как спасти наши задницы от гнева Матери?
Тем временем в дружественном коллективном твиттере происходит нечто прекрасное
У нас в гостях была самая красивая Планета галактики, а теперь, дорогие, перейдем к дискуссии. Как спасти наши задницы от гнева Матери?
16:08
Знакомый из Питера рассказывал мне, что состояться в Питере === открыть свой бар. Такая система ценностей. @spbunderhood
16:08@jsunderhood лучше бы вопрос аля: tdd(bdd, atdd) или "о да боже мой, у нас qa есть"16:27
@jsunderhood сказали очистить таблицу (TRUNCATE) ну я и очистил (DROP)19:08
@AlehKashnikau @jsunderhood кстати, да. Интересно, а насколько распространены QA-отделы, и показывает ли это престижность компании?)19:08
Офисный кот Старки погребен под шевронами Сетки pic.twitter.com/Rws7EjgdWZ
19:18# Суббота 1 твит
@tishkova @abroadunderhood @jsunderhood @backendsecret а много уже таких коллективных лент есть?
Вот, например: github.com/iamstarkov/awe…
@tishkova @abroadunderhood @jsunderhood @backendsecret а много уже таких коллективных лент есть?
7:06
# Воскресенье 7 твитов
Вот и подошла к концу моя неделя в андехуде. К сожалению, на выходных почти не удалось ничего писать из-за курсов в Москодинге.
19:11Зато я с удивлением обнаружил, что установил рекорд по количество самостоятельно написанных твитов: jsunderhood.ru/stats/
19:12Надеюсь, вам было интересно их читать. Делайте стартапы, занимайтесь бизнесом, любите JS
19:13Увидимся 25 августа в Рамблере на MoscowJS 33. И если кто-то едет в Вильнюс на Frontend Union — напишите, увидимся
19:14Спасибо @iamstarkov и @shuvalov_anton за любезное разрешение занять этот эфир на неделю
19:17Не забывайте про наши фронтенд-вакансии в Setka. Фолловьте @yaplusplus, френдите fb.com/yaplusplus. П А К А ! pic.twitter.com/QY5jp32o8z
19:17@jsunderhood @yaplusplus архив недели jsunderhood.ru/yaplusplus/19:53
# Ссылки
github.com
- https://github.com/ProseMirror/prosemirror/graphs/contributors
- https://github.com/basecamp/trix
- https://github.com/iamstarkov/jsunderhood/issues/93
- https://github.com/babel/babel/commits/master/packages/babel-core/src/api/node.js
- https://github.com/terrysahaidak/GitterMobile
- https://github.com/quilljs/parchment
- https://github.com/yoshuawuyts/es2020
- https://github.com/iamstarkov/awesome-collective-twitters
other
- http://setka.io/
- http://moscoding.ru/humanjs/
- http://zona.media/
- http://digitalvocabulary.ru/
- http://fb.com/yaplusplus
- https://www.facebook.com/groups/moscowjs/
- https://www.facebook.com/anatoly.rr/posts/10210481352054283
- https://www.facebook.com/setka.io/posts/1568148890160585
- https://www.facebook.com/yaplusplus/posts/10207395949231148
- https://telegram.me/surganov_public
- https://telegram.me/react_js
- https://telegram.me/nodejs_ru
- https://telegram.me/temno
- https://tlgrm.ru/channels
- https://storebot.me/bot/questgamebot
- https://medium.com/look-at-media/look-at-media-b58e82c006af
- https://medium.com/@op/it-%D0%BA%D0%BE%D0%BC%D0%BF%D0%B0%D0%BD%D0%B8%D0%B8-%D0%BD%D0%B5-%D0%BA%D0%BB%D0%B8%D0%B5%D0%BD%D1%82%D1%8B-%D1%81%D0%B5%D0%B1%D0%B5-f838a2f741b6#.66i1ox5sp
- https://medium.com/@girlie_mac/developer-experience-matters-8c4dcb8cc80
- https://vc.ru/p/wwdc-2016-live
- https://vc.ru/n/qiwi-travel-finish
- http://wtrfall.com/
- http://prosemirror.net/
- http://codemirror.net/
- https://www.indiegogo.com/projects/prosemirror#/
- http://getcontenttools.com/
- http://www.jasonchen.me/editors-and-iframes/
- http://stackoverflow.com/a/11290082
- http://stackoverflow.com/a/17528590
- https://medium.engineering/why-contenteditable-is-terrible-122d8a40e480
- https://trix-editor.org/
- http://jsunderhood.ru/
- http://jsunderhood.ru/stats/
- https://jsunderhood.ru/yaplusplus/
- https://www.npmjs.com/package/sanitize-html
- https://www.dropbox.com/s/xt28fdbzpruwkzt/setka-editor-grids.mov?dl=0
- https://nplus1.ru/news/2016/08/15/fuchsia
- http://caniuse.com/#feat=shadowdom
- https://www.youtube.com/watch?v=g7MDEqLvdOI
- https://www.youtube.com/watch?v=xPFRUM_oDKA
- https://www.youtube.com/watch?v=p5g4giWmcvE
- https://www.youtube.com/watch?v=H3CtzNwxmYU
- https://vimeo.com/165477490
- http://learn.javascript.ru/
- https://d3js.org/
- https://www.javascripting.com/
- http://npmcdn.com/
- https://itunes.apple.com/ru/app/mybridge-read-top-articles/id1055459116?mt=8
- https://enterprise.github.com/
- https://leanpub.com/
- http://amp.gs/8Ufa
- http://research.cmsmagazine.ru/web-development-business-2016/
- https://gist.github.com/listochkin/c81c198a2b7b044a0dc5
- https://moscowjs.timepad.ru/event/363568/
- http://www.the-village.ru/village/city/specials-city/242927-future
- https://www.quora.com/How-do-I-explain-to-non-programmers-how-complex-time-consuming-and-error-prone-software-development-is/answer/Channing-Walton-1
- http://webmedia.ru/
- http://level.travel/
- https://umaar.com/dev-tips/111-auto-open-devtools/
- http://specials.lookatme.ru/workwithus/jobs/front-end-grid
- http://specials.lookatme.ru/workwithus/jobs/front-end-developer
- https://habr.ru/p/307972/
- http://web-league.ru/
- http://web.archive.org/web/20160306174645/http://web-league.ru/
- http://web.archive.org/web/20030905213133/http://www.cs-inform.narod.ru/
- https://www.nic.ru/whois/?domain=yaplusplus.ru
- http://art73.ru/
- http://durgasoft.com/
- http://verstka.io/
- https://events.yandex.ru/events/yagosti/17-18-september-2016/