# Понедельник 35 твитов
Привет, народ! Меня зовут Богдан. Я front-end разработчик из Питера. Работаю в SlonWorks/Siemens.
0:04По образованию самоучка. Верстал себе дома, фрилансил, с год назад первый раз попал в офис.
0:05Заниматься опен сорсом начал полтора года назад. Тогда же присоединился к команде postcss. Так же разработал postcss-inline-svg.
0:07Мой профиль на github
github.com/trysound
Так же участвую в разработке rollup, buble и только что присоединился к сборщику gobble.
В сименс мы делаем интерфейсы с окошечками и кнопочками. Показываем всякие стрим данные с разных датчиком и того подобного. Внедрил redux.
0:10На сегодня хватит. Всем спасибо, пойду менять вотчер в gobble и к морфею в карты.
0:16@cssunderhood Чем привлёк gobble? Конфиг у него симпатичный, конечно, но всё ещё впереди.
Простотой. Как в API конфига, так и в плагинах. Никаких понятий стримов и прочего + папочка для дебага. twitter.com/mrmlnc/status/…
7:47@mrmlnc @cssunderhood нравится. Думаю валить с @gulpjs куда-нибудь, где всё очевидней. Нужны Browsersync, @PostHTML, @PostCSS
Согласен, gulp изжил себя и возрождать своими силами не хочется. Сервер в комплекте есть, не BS. Сделаем лучше. twitter.com/GrawlCore/stat…
7:50@cssunderhood круто. но чем плох BS вообще?
Тяжел, грузит проц. На работе после удаления все вздохнули с облегчением. А трюки с сокетами легко делать. twitter.com/GrawlCore/stat…
8:07@cssunderhood насколько быстро он компилирует стили/js относительно gulp?
gobble не компилирует, gulp тоже. Этим занимаются процессоры css/js. twitter.com/akrekotun/stat…
9:18@cssunderhood @GrawlCore Товарищи позвольте вопрос, для вас gulpjs плох тем что там все неочевидно и сложно или я что то не так понял ?
Его проблема - остановка развития экосистемы. Все из-за низкоуровневости концепции стримов. Новички ее не понимают. twitter.com/petrozavodsky/…
9:22@cssunderhood я знаю, но галп быстрее гранта за счет того, что не записывает промежуточные файлы на диск
А gobble пишет каждый шаг на диск, но может быть быстрее (пока не запускал) не рекомпиля все снова и снова. twitter.com/akrekotun/stat…
9:55@cssunderhood странно что ангуляр новичков не пугает @petrozavodsky @GrawlCore
Я на нем уже три месяца плотно сижу, все равно пугает. Слишком много на себя берет. И эти дайджесты, ох... twitter.com/denysdovhan/st…
9:58@cssunderhood что скажешь о flyjs?
Был я в команде, обсуждал API. Но зависимость от babel с генераторами оттолкнула. Гены не плохи, но нужно проще. twitter.com/denysdovhan/st…
9:59@cssunderhood @petrozavodsky вот да, за каждой строчкой там какие-то непонятные механизмы, вкуривать которые надо академически. это минус.
Не столько академически, сколько идейно. Нужно проникнуться духом nodejs. twitter.com/GrawlCore/stat…
10:00@cssunderhood надо протестировать, галп за счет такого подхода выигрывает.
По мне он пока сыроват, хоть и готов к проду. К концу лета выведем на большую арену. twitter.com/akrekotun/stat…
10:02@cssunderhood что оооочень важно для такого маленького инструмента, ага
Верно. Сборщик должен быть прост. А стримы пусть на backend'e пишут. twitter.com/GrawlCore/stat…
10:04Кому интересно, вот запись доклада Рича Харриса о gobble, предпосылках и целях.
youtube.com/watch?v=9NttxO…
@cssunderhood как сборщик, который постоянно дергает диск может быть быстрее?
Постоянно дергать процессор тоже долго. Лучше установить баланс. Немного записывать, реже читать, меньше компилить. twitter.com/v_twibli/statu…
10:32@GrawlCore @cssunderhood ну можно чисто неформально конечно example посмотреть,никто не заставляет чисто академический ... ну вы поняли :)
И все равно новички умудряются все сломать. Для многих возвращение стрима не очевидно, хотя в example оно есть. twitter.com/petrozavodsky/…
10:38@eightalex @cssunderhood @GrawlCore @gulpjs @PostHTML @PostCSS он ни в коем случае не устарел. В использовании довольно прост.
Не устарел, а изжил, отказавшись двигаться дальше в пользу простого UX. twitter.com/mrmlnc/status/…
11:32@cssunderhood в современных системах как раз с процессором проблем нет, а диск — узкое место.
Можно писать не на каждый чих, а только в конце итерации сбрасывать все шаги. Записывается много, не чаще галпа. twitter.com/v_twibli/statu…
11:59@cssunderhood а ssd не жалко такими вот дёрганьями?
Не жалко. Хром чаще дергает, чем даже грант. Не всегда нужно оптимизировать каждый бит. Optimize developer sanity. twitter.com/gladkih_m/stat…
12:01@GrawlCore @mrmlnc @gulpjs @cssunderhood @eightalex Так может, людям которые пишут JS *впервые*, не стоит писать плагин *сейчас*?
А теперь заметьте. Спор появился. Значит проблема есть, хотя кому-то что-то и очевидно. Это проблема UX. twitter.com/c01nd01r/statu…
12:04@cssunderhood То есть получается, что проблема UX в наличии require и команды установки зависимости? Ладно, всё равно все будут при своём :)
Для верстаков, которые js в глаза не видели, устройство ноды становится тьмой тараканьей. Абстракция им полезна. twitter.com/mrmlnc/status/…
12:31@cssunderhood ну чтобы пользоваться инструментами, которые работают на ноде, нет никакой необходимости понимать как она устроена
Но приходится понимать, потому что устроены они не прозрачно. Говорю из опыта общения с бегиннерами. twitter.com/Sigiller/statu…
12:38@cssunderhood в моём опыте даже с Grunt’ом бегиннерам не пришлось ничего понимать из ноды: «запускай вот эту команду и можешь верстать».
Тут речь о написании своего конфига, а не наследовании чужого. twitter.com/soulmusic/stat…
13:03А в какой момент различий между @jsunderhood и @cssunderhood не стало ?
Тут не столько про JS, сколько про сборку, а она имеет прямое отношение к оптимизации верстки. twitter.com/talgautb/statu…
13:41Поговорим об опен сорсе. С чем его едят, с кем нужно переспать и зачем вообще спать, когда есть интернет.
21:23Опенсорс - это место, где, если вас что-то не устраивает, вы это исправляете. Не уходите на более стремный инструмент, а хотя б пишите ишью.
21:32Тогда всем светит прогресс и процветание. А дальше ишью за ишью, пр за пр, вам дают доступ, ну или просите дать доступ. В итоге есть доступ.
21:34Доступ - это хорошо. Это власть, это возможности. Вам начинают доверять. Вы приходите и говорите: "эй чувак, хочу присоединиться". И вуаля.
21:36В общем вы получаете опыт, славу. Деньги.. не дадут. Но ценить вас будут больше, раз вы можете что-то пофиксить в ацком инструментарии.
21:38@cssunderhood Вспомнились записки из жвачек «Love is» :)
Вот именно, опенсорс - это когда ты решаешь свои проблемы, а не бежишь от них. Опенсорс это когда тебя ценят и ув... twitter.com/mrmlnc/status/…
21:46Крч, делайте для себя. Исправляйте баги, добавляйте фичи, чтобы улучшить свой workflow. Каждый внесет лепту и получится отличный инструмент.
21:54# Вторник 20 твитов
Кто линтит стили и какие именно стили, ну и чем?
9:21@cssunderhood stylelint как плагин postcss
Работаете со сменными парсерами вроде scss. Пробовали новый less или sugarss? twitter.com/d_markovskiy/s…
9:41@cssunderhood sass уже не используем,поддержка синтаксиса sass через плагин postcss -precss.Больше не вижу смысла использовать препроцессоры
То есть от scss остались только однострочные комментарии? twitter.com/d_markovskiy/s…
9:46Как в IDE синтаксис подсвечиваете?@d_markovskiy @cssunderhood
У меня sublime test. У нас и postcss и scss и less подсветки есть. twitter.com/moskwin/status…
10:01@cssunderhood мне кажется, этот вопрос настолько же актуальный, как и спросить, чем префиксы расставляют.
Встречал я типов, который компас с этой целью используют. Думаю и любители prefixfree найдутся :) twitter.com/GrawlCore/stat…
10:15@cssunderhood что за "новый less"?
postcss-less, экспериментальный синтаксис, чтобы линтить less. Пока сыроват, но в проде на больших проектах юзают. twitter.com/dersmoll/statu…
10:31@cssunderhood пробовал sugarss, как замену stylus, но необходимость ставить двоеточия мешала. Сейчас перехожу на precss
precss это обработчик, sugarss это парсер. Одно другому не замена. И как по мне без двоеточий совсем не читабельно. twitter.com/Di_Ed_Seagull/…
10:42@cssunderhood как понять, что ты уже достаточно "не-нуб" для того, чтобы выгрузить свою поделку в опенсорс?
А никак. Выкладывай и развивай (для себя). Потом этот вопрос не будет волновать. Даже провальные по своему хороши. twitter.com/Di_Ed_Seagull/…
10:45@cssunderhood я и не говорю, что это одно и то же) Просто привычка писать в стайлусе мешает при переходе на sugarss. Вроде то, да не то
Плюс опенсорса и опыта в командах. Уже не волнует инструмент, код стайл и прочее. Сразу подстраиваешься под все. twitter.com/Di_Ed_Seagull/…
10:47@cssunderhood ...и зачем
А затем, что у каждого свои привычки и код стайл, как и с js. Можно запретить и функциональные штуки, вроде id. twitter.com/twenty/status/…
10:50@cssunderhood пару раз по щам дал, в целях стандартизации, и норм.
К сожалению, разовое давание по щам не работает. И процесс приходится автоматизировать. twitter.com/twenty/status/…
10:55@cssunderhood А ещё мы используем конфиг для Стайллинта stylelint-config-standard: github.com/stylelint/styl…
Кстати, да. Если в команде нет четко сформировавшегося код стайла, удобнее использовать один из готовых пресетов. twitter.com/sapegin/status…
10:57@cssunderhood засматриваюсь на #radium, не было ли опыта использования?
Я предпочитаю писать стили в css. json стили смотрятся как-то неаккуратно ИМХО. Хотя inline стили и быстрее. twitter.com/Blackrabbit99/…
11:16@cssunderhood мне перекашивает в сторону css в JS, опять же язык программирования мощнее языка разметки
Конечно, мощнее, но нужна ли эта мощь для описания стилей? css - декларативный язык не просто так. twitter.com/Blackrabbit99/…
11:21@cssunderhood решаю задачу построения ширококастомизируемого sdk, очень нужна гибкость ЯП
Это случай супер динамических стилей. Вот и применение. А когда у тебя лендос со статикой, то смысла особого нет. twitter.com/Blackrabbit99/…
11:25Кто-нибудь юзает css-modules и в каком контексте?
11:27@cssunderhood посоветуй красивые решения создания темизаций, я все ещё не нашёл то, что мне понравится
Про темы не ко мне. Я даже переменные не юзаю.
А так будет поддержка custom-properties. Вот там темизируй, не хочу. twitter.com/Blackrabbit99/…
@cssunderhood Мы, в приложении на Реакте. Очень нравится.
Я собираюсь попробовать с angular. Уже убедил всех фигачить разметку в js функции возвращающие template литералы. twitter.com/sapegin/status…
12:29@cssunderhood а почему не юзаешь? postcss-custom-properties не пробовал тоже?
(Психо)логический барьер. Не давал мне юзать препроцы до postcss. А custom-properies круты будут в браузере. twitter.com/meuwka/status/…
12:52@moskwin @cssunderhood @d_markovskiy хороший пример, почему закрытое ПО — это плохо
Sublime тоже закрыт. Тут скорее проблема в модульности. twitter.com/andrey_sitnik/…
12:59# Среда 28 твитов
@cssunderhood @jsunderhood кто-нибудь прикручивал postcss-sorting к webpack? для исходных файлов. ретвит, плиз
Понятия не имею как работает вебпак, там разве нельзя сунуть dest в pipe?:) twitter.com/d_markovskiy/s…
12:21@d_markovskiy @cssunderhood @jsunderhood wp сборщик, gulp таск раннер, можно для wp готовить файлы через таски в gulp, wp не перочинный нож
Формально gulp - сборщик+раннер, но его сборка ограничивается композицией стримов. А grunt - только таски запускает. twitter.com/JiLiZART/statu…
12:58Какие мысли о разметке в js без jsx?
16:28@cssunderhood А зачем без JSX?
Мне в ангуляре он не к месту. Фигачу все в template literals. А недавно стал классы в css хэш выносить. twitter.com/sapegin/status…
16:32@cssunderhood ребята, что делать если я боюсь jsx и мне кажется идея смешать вёрстку и код не очень? как это побороть?
Как по мне разметка - это тоже логика, но структурная. Мапы и тернары там очень кстати. И синтаксис приятный, js. twitter.com/notarseniy/sta…
16:34@cssunderhood Ну тогда никаких, мне Ангуляр не к месту, а JSX использую везде сейчас, и не только с Реактом.
Альтернативные либы для рендера или как-то совсем низкоуровнево? twitter.com/sapegin/status…
16:35@notarseniy Начать использовать JSX, и скоро придёт понимание, что идея разделять HTML и JS для вёрстки — бред ;-) @cssunderhood
Под js обычно понимают логику приложения. Вот тогда шаблон надо в отдельный модуль как логику разметки. twitter.com/sapegin/status…
16:38@cssunderhood Да, но каким-то образом логика вёрстки тоже туда попала и все стали думать, что и её мешать с HTML плохо.
Глухой телефон и преданность традициям. twitter.com/sapegin/status…
16:41Рассыпчатый вопрос: кто и почему до сих пор сидит на es5, а не транспилит es6?
22:54@cssunderhood встречный вопрос: почему стоит перейти к использованию es2016? Который не работает в браузерах без дополнительной обработки …
Я ничего и не говорю, про es2016, кажется еще и спека не закончена. А вот es2015 хорош и почти поддерживается. twitter.com/SilentImp/stat…
22:59@cssunderhood … и чертовой дюжины полифилов?
Никто не заставляет юзать полифилы. Для меня спасение - новый синтаксис. Кода меньше, читаемость лучше. twitter.com/SilentImp/stat…
23:00@cssunderhood закончена, закончена. Но на вопрос вы не ответили. Зачем?
Меньше кода, больше кайфа. Хороший язык делает человека счастливым.:) twitter.com/SilentImp/stat…
23:02@cssunderhood строго говоря если переходить от jQ, например, к dom api и es2015 кода станет больше. А то что выдает транспиллер — вовсе ужас
Ну тут еще можно поспорить, что больше jq или vanilla. А правильный транспиллер выдает красоту. twitter.com/SilentImp/stat…
23:03@cssunderhood бабель правильный?
Мне не очень, хотя мощный.
Тут на выходе чистенький код получается. buble.surge.sh twitter.com/SilentImp/stat…
@cssunderhood ути-пути, а к gulp и webpack оно прикручивается?
Канеш, для галпа я делал обертку. По ключевым словам найдется. twitter.com/SilentImp/stat…
23:09@cssunderhood сравним работу с классами, атрибутами и выборкой.
jsfiddle.net/pgmms2na/
Пожалуй частный случай. И нативы быстрее. classList.add оптимизирован, а jq с className пересчитывает все. twitter.com/SilentImp/stat…
23:10@cssunderhood да не особо частный, почти со всем так, если присмотреться. В плане оптимизированы — надо не забыть полифил для classList ;)
К полифилу я тоже руку приложил github.com/jwilsson/domto…
Но он не нужен. Ниже ie11 даже в siemens не просят. twitter.com/SilentImp/stat…
@cssunderhood приходят какие то ещё аргументы в голову, кроме лаконичности?
Я говорил только про стандарт языка, а не про браузерные спеки. twitter.com/SilentImp/stat…
23:15@cssunderhood а о чем речь если не о применении его в скриптах в браузере? node.js что ли?
И там и там. Но jq и vanillajs тут вообще не причем, они просто API. twitter.com/SilentImp/stat…
23:18@cssunderhood язык используется для решения конкретных задач. Можно конечно применять es2015 с jQ но это мягко говоря бессмысленно, так как…
Почему же? Не обязательно юзать весь стандарт. Те же arrow functions очень хороши в цепочке итераций. twitter.com/SilentImp/stat…
23:25@cssunderhood стандартный jq-JavaScript vs es2015+dom api решение
Да не решал jq синтаксических задач, а es2015 не дает более лаконичный API. Огонь и вода все таки. twitter.com/SilentImp/stat…
23:27@cssunderhood «цепочке итераций»?
each, map, filter и т. д. То же самое и с нативными методами. Объекты раскурочивать удобнее. jq никак не прячет их. twitter.com/SilentImp/stat…
23:28@cssunderhood jQ решал и решает две основные задачи: кроссбраузерность и удобный синтаксис.
jQuery на синтаксис никак не влияет. Это БИБЛИОТЕКА, не язык. Просто код. twitter.com/SilentImp/stat…
23:29@cssunderhood И, впоследствии, часть решений, использованных в jQ и других библиотеках стали частью стандарта.
Это никак не синтаксис. И до jq люди писали функции обертки. Библиотеку JS расширили, чтобы убрать повторяющийся код twitter.com/SilentImp/stat…
23:35@cssunderhood если ты действительно отрицаешь заимоствование языком решений из фреймворков, то это очень странно.
Вот это синтаксис goo.gl/J66oW1. Встроенное API - это не то, что транспилят, а то, что полифилят. twitter.com/SilentImp/stat…
23:45@cssunderhood к тому же мы очень далеко отклонились от изначального вопроса: зачем переходить на es2016. Скорость — нет. Лаконичность — тоже
Компактный код проще поддерживать. Меньше отвлекаясь на конструкции, больше думаешь о реализации. twitter.com/SilentImp/stat…
23:48@cssunderhood each/foreach?
Изначально вопрос задан о транспиле. Никакие API не подразумевались. Что вы привязались со своим jQ. R.I.P. twitter.com/SilentImp/stat…
23:50@cssunderhood … то же и короче. Вот почему я привязался к jQ. es2016 это не сферическая лошадь в вакууме. Это инструмент решения задач.
Ох, да причем тут jQ все-таки? Это инструменты для решения разных задач. Не замена они друг другу. twitter.com/SilentImp/stat…
23:55# Четверг 1 твит
@cssunderhood @SilentImp это не Бабель, а баблё
У вас баблё, а ведь это Майкл Бубле. twitter.com/iamstarkov/sta…
8:10# Пятница 2 твита
Интересное поведение блоков. Может кто подскажет?jsfiddle.net/denisz/67hn5gk… Почему child центрируется по высоте? @cssunderhood0:26
@cssunderhood Как грамотно SVG спрайт сделать?
Я предпочитаю инлайнить svg в css с кастомизацией. Синтаксис работает в препроцессорах github.com/TrySound/postc… twitter.com/koloskof/statu…
17:00# Суббота 2 твита
@cssunderhood @koloskof и потом гигантский CSS пользователю выкачивать с каждым обновлением
gzip и никаких проблем. twitter.com/operatino/stat…
11:40@cssunderhood @koloskof имхо вот самый лучший подход m.habrahabr.ru/post/272505/ инлайн в HTML с кешированием в LS
Я использовал его долгое время, но отказался из-за флеша при первой загрузке. Особенно не круто с логотипами. twitter.com/operatino/stat…
11:44# Воскресенье 2 твита
Babel? Buble? They're all open source projects maintained by awesome people. pic.twitter.com/Odp6nW8BG22:25
Спасибо за внимание. Не застревайте на привычках. Всем peace pipe.
23:30