Эльдар Джафаров

Эльдар Джафаров

Темы
Неделя
Sep 28, 2015 → Oct 4, 2015

Архив недели @edjafarov

Понедельник


Привет, этой неделе с вами будет @edjafarov, меня зовут Эльдар и я люблю Javascript

Я один из создателей kievjs и cityjs движения в Украине

Я nodejs и react евангелист, могу рассказать о том какими я вижу тренды в жс и куда стоит вкладывать свое время

гдето полгода назад, я делал доклад для IForum, Фронтенд, экосистема и будущее slideshare.net/eldardjafarov

в рамках доклада - сделал небольшое исследование того как развивались парадигмы основных ЖС библиотек

следим за тенденцией 2005 jQuery, YUI, Mootools, Dojo, Prototype

2008 - the winner is jQuery 2010 - backbone, knockout, angular 1, ember 2013 - the winner is angular 1 2015 - Angular 2, Ember 2, React ...

ага, еще темы которые хочу на неделе затронуть: тренды, говнокод, замечательные люди вокруд, феминизм, БЕМпичалька, Ангуляр наш враг...

... с версткой все ясно, что такое писать код, как стать отличным программистом, что такое PromisePipe, как любить клиента и не дать в глаз.

...где найти место семье в нашей работе, как совместить все, как работать удаленно и не разучиться говорить и еще многое интересное

@jsunderhood или через 10к часов ты будешь знать все внутренности и даже код не надо будет писать! так что или - или
Неписать код - это высшее мастерство, для этого нужно написать много кода twitter.com/mpak999/status…

@jsunderhood @poltavajs Даже методология такая есть. programming-motherfucker.com И на русском macode.ru
ага, оно, но "блять!" можно опустить почти всегда twitter.com/ostelaymetaule…

@errorent @jsunderhood двигатся надо в этом направлении pic.twitter.com/HtsWq8eJPM
нет, нет и нет. Это не то куда нужно стремиться, имхо twitter.com/poltavajs/stat…

@errorent @jsunderhood кажется, надо попробовать связку в духе @nikitonsky — clojurescript, om вот это всё
кстати это вариант - но я пока всеравно не верю в кложу, но согласен с @nikitonsky что пофигу на чем писать twitter.com/Devgru/status/…

главное как писать, и мне кажется что из кложи мы можем много чего утащить себе

@jsunderhood @poltavajs Нагло стащу у вас тег #juniorjs - буду под ним писать свои мысли о преподавании. Куча мыслей о познании дао JS
всем рекомендую Илью, он не только неимоверно харизматичный спикер, но и реально лучший жс коуч Украины twitter.com/xanf_ua/status…

приглашаю тех кто еще не в наши dev-ua чатики, нас уже 1200+ тут классное коммюнити и positive attitude frontendua.im
notion image

возможно вас это удивит, но я хочу встать на защиту говнокода говнокод это весело! если вы практикуете "тактику контролируемого говнокода"

тактика контролируемого говнокода говорит: написаный говнокод лучше ненаписанного "идеального кода" ...

любой "идеальный код" со временем становится говнокодом говнокод не должен быть проникающим, основная задача - его замыкание на себе

замкнутый говнокод с хорошим апи - хороший код говнокод покрытый тестами лучше "идеального кода" непокрытого тестами

основная задача хорошего говнокодера изолировать говнокод с помошью хорошего апи и покрыть его тестами

@jsunderhood может "работающий говнокод покрытый тестами" — это совсем не говнокод? :-)
это философский вопрос, думаю многие не согласятся с вами twitter.com/andreypopp/sta…

Замечали ли вы что плохие практики в коде это плохо, но если эту практику вынести в Фреймворк с хорошим АПИ и покрытием тестами то ок?

чуваки, никто не хочет забрать овнершип github.com/edjafarov/node… ? я уже нодвебкитой не занимаюсь, а штука полезная

жрать мясо, говнокодить лучше в трусах twitter.com/life_maniac/st…

На качество вашего кода всем насрать, если он не воняет! Воняет он если вам всевремя приходится к нему возвращаться

@jsunderhood небольшое уточнение — на качество вашего кода всем насрать, если вы делаете не тестовое задание на приём работы ;-)

Отписался от андерхуда, надо не забыть через недельку подписаться обратно.
воу-воу, веслье же только начинается, я еще даже до феминизма не дошел! twitter.com/marinintim/sta…

фак, чтоэтобыло?
notion image

@xgrommx @jsunderhood @jsunderhood не нужна
Ели Розовые трусы неудач говорят что Рамда не нужна, я бы не спорил twitter.com/blia/status/64…

@jsunderhood @iSnifer @xgrommx @yustovskiy сколько стоит в баксах срыв сроков, eсли твой новый код отказываeтся работать с говнокодом?
это тоже вопрос который надо задавать,все меряется баблом и цифры нужно сравнивать,а не слепо следовать порывам души twitter.com/rubynovich/sta…

@mpak999 @jsunderhood мне нравится: сразу пишешь код @ что-то начинаешь понимать @ по-хардкору читаешь книги @ лучше понимаешь инфу
именно оно! twitter.com/shuvalov_anton…

кстати, лучшие свои предложения о работе я получал через linkedin ua.linkedin.com/in/edjafarov так что очень рекомендую развивать нетворк

только что перевел на Майкл Роджерса овнершип g+ страницы nodejs с 20к+ подписчиками plus.google.com/10059816081721…

@jsunderhood @DaryaChu @ALF_er гады API закрыли ещё:(
это вообще возмутимо! twitter.com/defly_self/sta…

завтра будет хороший день, я буду рассказывать о хороших и малоизвестных библиотеках, о ситижс конфах и о жс коммьюнити Украины

О, напишу как я вошел в айти youtube.com/watch?v=evE4Sp…

вообще-то я физик, и занимался в институте металлофизики компьютерным моделированием аморфных сплавов - оч кстати прикольная тема была

а еще паралельно на массспектрометре исследовал результаты управляемго термоядерного синтеза такой себе конторы Протон21

там была прикольная тема - фокусировали солитон металлической решетки и в фокусе проискодил нано термоядерный взрыв

пока я тусил в институте, мои коллеги аспиранты подсели на travian.com онлайн игрушку

со временем оказалось что им нужна логовница и меня надоумили ее сделать,я ее сделал на пхп, потом улучшил,потом куча народу ее начало юзать

за 2 года логовница заработала мне 20k евро на рекламе адсенс на пике ежедневно мой пхп скриптик обрабатывал 50к чел и 300к показов

потом я понял что все тлен и надо идти работать бо кодить это фан, я очень вовремя успел - май 2008 ого года, за 15 мин после опубликования>

>резюме я получил 3 предложения о работе, и одно из них закончилось наймом на синеор фронтенд девелопера

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

кто что хорошего скажет про ottoproject.io? вроде запилил тотже чувак что и vagrant пилил

Вторник


Доброго ранку, заварюємо каву і починаємо новий файний день з кльової музички: youtube.com/watch?v=GpQOzF…

с вами все еще @edjafarov, я верю в Жаваскрипт, ноду и Реакт. Верю в людей и в то что нужно пахать и делать жизнь лучше.

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

я пока я расскажу свой путь уже в айти (спасибо Гражданину Топинамбуру за отличный саундтрек youtube.com/watch?v=evE4Sp…)

с 2008 года я начал работать в проекте Hotwire от бодишопа Luxoft. Hotwire был клев, там был свой велосипед с компонентной архитектурой >>

>> до того как это стало модно.

там я себе кодил потихоньку в полной уверености что жаваскрипт это не настоящий язык

пока этот симатичный мущина не ворвался в мою жизнь ретвит тому кто узнает его по фотографии :))
notion image

@jsunderhood Это же Крокфорд!

Дуглас Крокфорд и его ютуб ролики JS the good parts реально изменили мою жизнь и отношение к Жаваскрипт

после, я уже не мог остановиться и как губка впитывал информацию о том чно происходит в мире Жаваскрипт из разных источников

впечатление того времени о рунете - полная пустыня и задворки цивилизации, прошло много времени - ничего не изменилось

поэтому я влез в твиттер, и подписался на кучу блогов всяких тру жаваскриптеров

на тот момент я понял что жизнь не мила и ЖС без сервера это как машина без колес, и надо что-то делать, и я залез в жаву и немного в эрланг

но тут, внезапно, второй ютуб ролик изменивший мою жизнь youtube.com/watch?v=ztspvP… ретвит если он тоже повлиял на вас

ноу лак, смотри след твит, но эрланг мне много дал, а жаву я ненавижу и по сей день twitter.com/iamale_ru/stat…

и так, второй мущина который изменил мою жизнь роликом на ютубе ретвит угадавшему по фото
notion image

я хочу как на эрланг, только на жаваскрипт...дал бы мне кто лайтвейт процессы и яб перевернул землю,кстати есть идеи twitter.com/iamale_ru/stat…

когда я увидел ноду впервые - я понял что это полнейшая бомба и это реально будущее и изменит мир разработки

я создал гугль плюс страничку plus.google.com/10059816081721… и 24/7 в течение года наполнял инфой втечении года,следил за все что происходит в ноде

мозг кипел,я был в полнейшем восторге,много экспериментировал с нодой и даже запилил МВЦ с аннотациями github.com/edjafarov/aries как в спринге

@jsunderhood какие гайды по ноде порекомендуешь для изучения?
официальную доукментацию, а потом пойти работать в компанию где ее юзают, и ппц много кодить twitter.com/Sigiller/statu…

@jsunderhood Вот это ты монстр !) Жму тебе руку :-)
спасибо, сейчас я ее передаю @mikeal и скоро она станет официальным порталом ноды в Г+ twitter.com/CreWarior/stat…

в начале 2013 года в Украине еще небыло комьюнити и небыло конференций и было ощущение полного одиночества и нескем было поговорить о ЖС

итак, официальным началом фронтенд коммюнити в Украине в том виде в котором оно сейчас существует можно считать 18 февраля 2012 JsGroup conf

ошибся с годом в твите про начало 2013:(

jsGroup был организован разаботчиком @Juriy и нас собралось 80 человек, я был докладчиком и рассказывал о ноде

тогда я понял что хочу кодить на ноде и ниипёт!!!

первая вакансия nodejs разарботчика открывшаяся в Киеве была моей, разрыв с Hotwire был тяжел, мне предлагали кучу бабла и архитекта но...

...но я хотел ноду, и не потом а тут и теперь так я попал в проект e-conomic в Ciklum-и до сих пор считаю их самыми крутыми в Киеве нодерами

гдето в то же время @paulmillr сделал скайпчатик по следам JS Group и понеслось...

многие не верили в наш фронтенд чатик, говорили что будет флейм и голые тетки, если участников станет много, я взялся модерировать

Ну вот, теперь в @jsunderhood боготворят Крокфорда. Скажу за одну из часто форсируемых его книг «JS Сильные стороны». Книга неясно для кого.
кто боготворит? он изменил изменил мое впечатление своим роликом, а книжку я не читал, яжнекажучтоонбох twitter.com/webholt/status…

в чатике было 3 правила и полный авторитаризм, и все получилось, теперь - чатики это точка сбора Украинского коммунити

@jsunderhood github.com/clojure/core.a…
давно присматриваюсь к кложе, единственное что смущало - жава для компайла, но вроде они запилили жс рантайм twitter.com/lambdadmitry/s…

летом 2012 @maxmaxmaxmax в скайпчатике предложил сделать @KyivJS потомукак JsGroup это было совсем не то

так @maxmaxmaxmax @kira__kit и я @edjafarov запряглись сделать конференцию невиданных масштабов на 100, а может даже на 150 человек

мы 2 раза закрывали регистрацию и переносили место проведения ивента, в итоге помоему зарегано было 600+ человек, а пришло около 360

это была бомба! это было неимоверно круто, вдохновляло и поражало. Оказывается нас много и у нас есть тусовка и люди которым интересно тоже

затем пронеслась череда конференций по всей Украине, @KharkivJS, @LvivJS, @OdessaJS все неимоверно крутые

потом я ушел из e-conomic потомучто на рынок зашел Universal Mind и нанял половину спикеров наших ЖС конф включая меня

мне пощастливилось работать рядом с такими чуваками как @dotcypress@lvivski@kira__kit@RReverser@mourner@2j2e и другими не менее крутыми

UM в итоге просрали такую команду, увы, но это другая история

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

@jsunderhood @dotcypress @lvivski @kira__kit @RReverser @mourner @2j2e а я с ними тока бухал:(
бухать всегда веселее, чесно;) twitter.com/dimko1/status/…

Вчера обсудили тренды,говнокод,и как стать отличным разработчиком сегодня разбирем прикольные и малоизвестные библиотеки,кидайте есл есть чо

@jsunderhood долгий старт? Жаба тут не при чём, это CLJ рантайм. Но его не надо перезапускать, есть boot-clj.com
я давно пробовал, тогда еще boot-clj.com небыло, но все течет, все меняется - потому и надо смотреть twitter.com/lambdadmitry/s…

@jsunderhood эта когда-то очень понравилась. Была в свое время очень клевой github.com/voloko/ukijs.o…
ты ба, похоже на Реакт:) только стейт наверное не реактивный github.com/voloko/uki еще пару шажков и былбы вин twitter.com/blia/status/64…

кстати рекомендую посмотреть youtube.com/watch?v=JxAXlJ… и остальные части, для понимания появления Javascript и др в историческом контексте

меня запинали по cljs, так что на всякий случай - у меня есть крыша - я знаю Сашу чик-чик youtube.com/watch?v=LcQXXh… @asolovyov

у нас еще точно есть классное Питоновское, про остальные - незнаю twitter.com/rusgautama/sta…

@jsunderhood в каком году ты стал работать nodejs разработчиком?
Апрель 2012ого twitter.com/errorent/statu…

из малоизвестных но крутых библиотек начну с чувака @substack -он реально крутой. мультисерверный процесс деплоймент github.com/substack/fleet

если fleet объединить с github.com/substack/seapo… (semver service registry for clusters) вообще мимими получается

а еще RPC для ноды с (dnode) github.com/substack/dnode (upnode) github.com/substack/upnode и (airport) github.com/substack/airpo…

рекомендую фавнуть след библиотеку Если вам когда нибудь нужно будет сгенерировать пдф или img лучшее что найдете- github.com/e-conomic/phan…

трушный модуль для работы с монгожс github.com/mafintosh/mong… и делает его крутой чувак @mafintosh единственное чего не хватает это промисов

github.com/mafintosh/ssh-… - крутая штука, потомучто можно запускать чтохочешь по ssh, тоесть можно писать няшные умные скрипты для скейлинга

рекомендую пробовать hook.io - очень прикольная тема для написания микросервисов, причем не только на JS

@jsunderhood also webtask.io

офигенная штука github.com/dominictarr/cr… очень минималистичные Commutative Replicated Data Types оч полезно если писать что то collaborative

а еще я очень люблю superagent github.com/visionmedia/su… изоморфный риквест с хорошим АПИ
notion image

скидывайте свои непопулярные но любимые библиотеки и модули, я буду ретвитить давайте чтото интересное

@jsunderhood не совсем библиотека, но инструмент с заявкой на некоторую универсальность :) github.com/lahmatiy/compo…
красивая штука, в закладки! twitter.com/rdvornov/statu…

@jsunderhood if и for для jsx, babel плагин github.com/valtech-au/jsx…
но этоже ангулярщина какаято! twitter.com/i_told_ya/stat…

А еще раз пошла такая пьянка - самый лайтвейт вариант запускать тесты в похожей на браузер среде zombie.js.org

@jsunderhood @rdvornov кажется все кто пишут тесты приходят к кавериджу
когда доходят до стабилизации кода twitter.com/iamstarkov/sta…

@RReverser @iamstarkov @jsunderhood @rdvornov pic.twitter.com/v3W4zuQeVq

@jsunderhood ретвить мою реактивную страницу xgrommx.github.io/rx-book/conten… :D
воу-воу но тут же зарыться можно, что из этого тебе действительно нравится? twitter.com/xgrommx/status…

github.com/mafintosh/peer… торрент клиент на ноде:)

мне часто бывает нужен EventEmitter на клиенте, а что используете вы?

очень секси twitter.com/iamale_ru/stat…

спасибо всем за сегодня,судя по статистике @jsunderhood я хорошо распугал народ:) сегодня был экскурс в историю Укр жс тусовки моими глазами

И вытащили на свет божий много прикольных и интересных библиотек и модулей

завтра я расскажу о PromisePipes зачем они нужны и что это такое, у вас будет прекрасный шанс попинать меня за дело:)

Среда


Доброе утро, с вами еще @edjafarov и сегодня я хочу пошатнуть привычную вам картину мира и хорошо растормошить
notion image

ниже, то что мы делаем при простом вызове серверного API вопрос - какие шаги лишние с точки зрения вменяемой логики?
notion image

только "общая теория всего" решает все задачи, но пока можно решить хотябы те которые харять больше всего twitter.com/reklatsmasters…

главный вопрос жизни, вселенной и всего такого не может быть грубым, я же няшка:) twitter.com/programulya/st…

теперь про #PromisePipes все началось с того что я решил сделать свой Флакс:) только проще чем все что есть

мне очень понравилась концепция однонаправленного потока данных но стоял главный вопрос - а че с данными?

@jsunderhood можешь рассказать больше о том, как происходит общение с сервером?
все попорядку, сейчас будет twitter.com/alexeyraspopov…

за основу я взял кусочек кода в html5rocks!
notion image

с этой штукой любой массив функций можно превратить в цепочку промисов, тоесть можно типа сделать конструктор и сторить реюзабельные цепочки

тоесть
notion image

@jsunderhood GraphQL же!
очевидный ответ сейчас, может быть, а может и нет:) а может частично да twitter.com/freiksenet_ru/…

я запилил первые прототипы такого конструктора и они выглядели примерно так
notion image

так как у меня есть бекенд бекграунд, и я много писал миддлвере, мне показалось чно неплохо в цепочку промисов добавить сквозной контекст

я понимаю что за это функциональщики меня запинают, но контекст меня часто выручал на бекенде, там это (request,response) объекты

так вместо цепочки функций, шаманства и байндингов получился массив не функций а конфигов для каждого чейна
notion image

дальше было интереснее,я добавил возможность юзать не только .then но и менять АПИ теперь экшны можно писать так
notion image

что вцелом неимоверно выразительно и реюзабельно как на мой вкус

затем, встал вопрос изоморфности, ведь реакт дает изоморфность почти из коробки и грешно ею не воспользоваться

тоесть .save - можно сделать легко изоморфным и так я сделал grail github.com/edjafarov/grail и оно прекрасно работает

но, всеже, пока я пилил грейл мне не давало покоя то, что ПромисПайпы оказались очень похожи на серверные миддлвере

если быть браузером, и использовать промисы для описания своих программ, то любой сервер - это просто промис

а можно ли описать сервер, вместо цепочек миддлвере, цепочками промисов, ведь это суть есть одно и тоже

и более того - выпрямить цепочку логики в одну если эти детали размышлений интересны, можете почитать статью frontender.info/promisepipe-cr…

@jsunderhood Ты говоришь про инженерную сторону. Бакенды говно не от инж, а от того что они (не) следует тому что надо фронтенду.
мы можем обойтись без бекендеров, почти, для этого и служит PromisePipe twitter.com/freiksenet_ru/…

круто что вы находите парралели, значит это потенциально интересно многим twitter.com/iamale_ru/stat…

очевидно, если логика гомогенная и изоморфная, она должна без изменений быть на сервере и клиенте

это так-же значит что цепочки бизнеслогики существуют на клиенте и на сервере, и задача состоит в том чтобы их исполнение прыгало между ...

... клиентом и сервером и чисто серверные звенья цепочки выполнялись на сервере, и потом выполнение возвращалось на клиент

тоесть вот так оно выглядит и очень похоже на фрактал, так что это типа фрактальное распределение кода:)
notion image

теперь кишки - каждое звено помечаем где оно должно выполняться и вовремя исполнения цепочки сравниваем с предыдущим
notion image

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

...когда сообщение с таким АЙДИ вернется к нам и мы зарезолвим этот пайп

@jsunderhood А что если ошибка? Проблема с сетью? Как оптимистичные апдейты делать?
это все решается технически, почти все уже решено twitter.com/freiksenet_ru/…

PromisePipe раздупляет какой именно это пайп, и какие чейны нужно выполнить с какими данными и каким контекстом

причем ошибки можно ловить точно так-же как и в постых промис чейнах

я ответил на твои вопросы по кишкам @alexeyraspopov ?

саму по себе доставку мессаджа я упростил до минимума - с помошью коннекторов github.com/edjafarov/Prom…

коннекторы - это простые объекты которые имплементируют только одно - как отправить мессадж и как его словить апи универсальное и ...

сейчас есть коннекторы github.com/edjafarov/Prom… для http, socket.io, socketio с сессией и для webworker дада- это может быть не только сервер

и это совсем не RPC потомучто с точки зрения кода у вас нет процесса с которым вы общаетесь

у вас есть цепочка преобразований, в которой вы можете декларативно указать где каждое звено должно выполняться

вот еще хорошо показано как цепочка будет выполняться
notion image

@jsunderhood obsClient.merge(fromPromise(get('/server')).merge(... типо такого. Или ты результат передаешь по цепочке? Тогда flatMap
ну вот я же не смешиваю цепочки, я декларативно говорю где звено выполнять, как это технически работает - да пофигу twitter.com/xgrommx/status…

чуваки, не думайте на что это похоже, с PromisePipe я хочу донести простую мысль - сервера несуществует
notion image

разделение на сервер и клиент - это только в наших головах в реальности есть только бизнеслогика, которую мы имплементируем

кстати, PromisePipe можно найти тут github.com/edjafarov/Prom… и там-же можно найти кучу примеров github.com/edjafarov/Prom…

а теперь я вам расскажу о своей эротической фантазии

я хочу так чтоб просто писать код, а потом говорить чтоб этот код запускался на 100500 серверов, распаралеливался а в идеале

сам контролировал сколько серверов запустить прямщас

и я верю, и двигаюсь в этом направлении, потому как в PromisePipe можно декларативно указывать что-где выполняется

то вот те самы коннекторы могут имплементировать распаралеливание исполняемого кода

сейчас я пишу прототип для digitalocean, уже написал пару утилит которые могут сетапить/убивать дроплеты, я поспользуюсь fleet ом сабстака

и подвяжу коннекторы так чтоб они знали о всех дроплетах, и посмотрим воплотится ли моя эротическая фантазия с PromisePipe

еще, хочу поделиться офигенным концептом роутера который пишет @Rastopyr на базе PromisePipe

сегодня я рассказывал о PromisePipe,надеюсь мне удалось заинтересовать вас и немного пошатнуть привычную картину мираgithub.com/edjafarov/Prom…

завтра попробуем поговорить о семье и работе, удаленной работе, феминизме и хобби

Четверг


@jsunderhood а чем это должно отличаться от всяких современных деплойментов вокруг контейнеров, типа kubernetes там и т.д?
тем что написано на жс и не нужно писать код для того чтоб на нем работало и ноды взаимодействовали twitter.com/as_Crazy/statu…

@jsunderhood извините, забыл что русскоязычный акк. О хобби говорили на прошлой недели.
прикольно, тогда сформулируем это как lifework balance это всегда актуально и все крутится вокруг желания жить полно twitter.com/serhey_shmyg/s…

доброе утро с вами @edjafarov и хорошего буги вам в ленту music.yandex.ua/album/304034/t…

я один из тех, кто любит работать удаленно - в посление пару лет в офисе я был может 2-5% времени

это открывает реально новые возможности, например, можно зимой поехать в тайланд/индию/шриланку и месяцок поработать оттуда

на Шриланку этой весной на 3х человек из Киева получилось 4к суммарно перелет/проживание 3 недели/траты там

работать тоже очень удобно половина дня можно тусить с семьей, купаться, а потом лабать код до позднего вечера

работать удаленно не просто, но оно того стоит, и особенно если еще нет семьи - есть возможность поездить и потусить по миру

когда ты попадаешь в окружение с абсолютно другим мировосприятием - получаешь реально крутой опыт

чуваки на Шри, в большинстве, живут реально в раю, вот как по телеку показывают, 26-32 градуса круглый год, еду можно прям с дерева срывать

но многие чувствуют себя нищими и все просят войти в их положение, при этом бездельники чтоппц

это очень оттеняет восприятие себя, и типа вдруг понимаешь что надо реально пахать, а не сетовать что что-то не получаеся

так вот - дети и семья - это круто. Это реально неповторимый экспириенс, который очень много дает для работы

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

с ребенком легче поверить что вот тут ему страшно и поэтому он скандалит, вот тут ему одиноко и он скандалит чтоб обратить на себя внимание

увидев однажды в своем ребенке как это все работает, вы реально увидите это в своих коллегах по команде

@jsunderhood 26-32 это не рай, вот 19 круглый год — другое дело
мне было шикарно - но на вкус и цвет, все фломастеры разные twitter.com/andreypopp/sta…

работа издому - это тоже навык который можно тренировать

мне кажется что основным мотиватором в жизни и бизнесе является ответственность

только ответственность, заставляет нас самих хотеть улучшать нашу жизнь или наш проект

дети не становятся ответственными сразу, им нужно помочь, оберегая их и решая все за них мы не получим тех на кого можно положиться

так и в команде - ответственность нужно распределять и помогать членам команды взять ее

найму 7 детей, дорого! twitter.com/forever_frey/s…

я думаю что Шри разная, как и Бали с Тайландом, но хочу везде и так чтоб тепло twitter.com/rusgautama/sta…

@rusgautama @jsunderhood в Унаватуне вообще норм, ни разу не помойка.
какраз там был, есть моменты, но пару пляжей просто бомба, важно что инет норм twitter.com/axique/status/…

@jsunderhood Работа из дому в 1КК с ребенком на выходных, когда жена в другом городе — вот где настоящее испытание силы воли и стремлений.

круто, а у кого еще есть опыт работы удаленно из разных стран в режиме полуотдыха, сколько суммарно это у вас денег вышло?

@jsunderhood у меня. Основное это всегда жилье. За ним — еда и транспорт. Остальное носит глубоко вторично.
сколько денег, и за что, чтоб представлять примерно экспенсы twitter.com/SilentImp/stat…

@jsunderhood Во Львове 300$ квартира, 200$ питание на двоих, на транспорт трат не было — жил в центре.
так как кормят во Львове не кормят нигде twitter.com/SilentImp/stat…

@jsunderhood @twenty @rajdee_mhm airbnb - это МИНИМУМ 30-50% надбавки за среднюю цену такой же квартиры
ясно:) забыли про airbnb а где искать? twitter.com/mr_mig_by/stat…

@jsunderhood 3 года в Таиланде, на Самуи. $1500 в месяц на двоих, 3 комнатный домик с личной территорией
вообще шикарно! twitter.com/twenty/status/…

@jsunderhood Тай, Чианг Май, 1,5 года, на одного, $120 - кондо, $150 - еда, $100-150 - байк. Итого в $500 можно легко уложиться.
бюджетненько:) twitter.com/allfayn/status…

@jsunderhood если сюда прибавить, что был собственный мот и всякие хитрости с уличной едой/буфетами, то могло и $350 в месяц быть.
снимаю шляпу! twitter.com/allfayn/status…

@jsunderhood @me_mrsum @AntoniKapustin хороший програмист имеет зр именно в баксах!
нет, просто в Украине специфика такая, в России работают в основном на внутренний рынок, потому в рублях twitter.com/poltavajs/stat…

теперь пообщаемся за феминизм:)и за харрасмент девушек на работе Я долгое время думал что программеры неимоверно толерантные и прогрессивные

так вот, нифига! увы, мы просто не замечаем как объюзим девушек и им сильно сложнее чем нам

на контрасте - очень резануло

все в Казань! twitter.com/rusgautama/sta…

@jsunderhood спасибо, но нет. В Медвежий Ручей тоже, пожалуй, не поеду. Хотя там даже дешевле.
нозато #этонастоящийэкстрим twitter.com/SilentImp/stat…

вот это примерно то, о чем я говорю, по дефолту существует определенное предубеждение по отношению к девушкам twitter.com/victoria_veles…

хотя я знаю довольно много барышень которые лехко заткнут за поях большую часть мужиков-программистов

и как следствие этого дефолтного восприятия - у барышень всреднем зп меньше чем у мужиков того же уровня

@jsunderhood и плюс девушек сложно хантить(: типа девушка хантит девушку и какая-то такая неловкость в контакте
хаха, вот это уже дискриминация, и вообще, что это? чего у меня весь линкедин в модельных фотках с зовущим взглядом? twitter.com/DaryaChu/statu…

какое отношение хантинг имеет к тому как хантер выглядит, или какого он гендера? Яж не жениться собираюсь?


@jsunderhood @DaryaChu у женщин почти всегда есть выбор просто стать матерью. И всё, она самореализовалась. У мужчин такого выбора нет.
понимаешь в чем проблема, - материнство непристижно в нашем обществе, говорят - она мамочка,а он крутой топ менеджер twitter.com/twenty/status/…

никто не скажет во, крутая мамаша, а он - топ менеджерчик

причем мужику достаточно просто быть крутым менеджером, и он будет успешен в глазах общества, и все пофиг какой он отец

а если женщина - топ менеджер и плохая любовница и мать - то ее за это будут стебать

я нашел ответ как успевать карьеру/семью и хобби - никак "you can't be A in everything" я повторяю каждый раз как что-то проходит мимо

хинт будущим родителям, если ребенок плохо спит, вбейте 2 крюка в противоположных стенах над кроватью, подцепите гамак

так можно спать и укачивать ребенка одновременно, не боясь что он выпадет, нас с женой реально спасло:)

@VasyaRomashova @jsunderhood все же считаю, что атмосферу в доме делает женщина. Конечно,бывают исключения, но они лишь подтверждают правило
мне кажется что в отношения оба вкладываться, так и в атмосферу twitter.com/day_spring/sta…

сегодня был тяжелый день и непростые темы, я рад что мы их подняли и не опустились в срач, вы крутые! спасибо и до завтра:)

завтра я планирую поднять вопрос правильных процессов в комманде и как разработчик может на них влиять и сделать свою жизнь комфортнее

Пятница


Доброе утро, с вами все еще @edjafarov я все еще с вами, ставлю антирекорды в статистике @jsunderhood :)))

@jsunderhood на самом деле, ты отлично ведешь, хотя соблазн замьютить сначала был
я много пишу - сам бы я себя замьютил, но надеюсь что интересно twitter.com/mistadikay/sta…

сегодня я расскажу как можно влиять на процессы в комманде и как сделать свою жизнь проще и легче

в какой-то момент взросления в команде начинаешь замечать что много времени и энергии тратится впустую

сначала это вызывает злость, и начинаешь скандалить, что менеджер дурак а митинги - зло, и это нормальный процесс

который, увы, приводит в еще большему числу митингов, котороые призваны уменьшить колличество митингов:)))

если количество митингов растет, а время митинга как правило выходит за рамки оговоренного - значит в вашей команде никто не ставит рамки

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

ваша команда - именно как этот ребенок, не знает где ее рамки и какие у нее ограничения и правила

чтобы сделать свою жизнь проще - вам придется заняться рамками, если и не устанавливать, то хотя-бы соблюдать их

понятно, что у вас нет рычагов, но все потихоньку - начните отмечать конец запланированного митинга - останавливайте диалог, говорите что...

...время отведенное на митинг закончилось и если мы хотим продолжать, необходимо его продолжить. Пусть продления время будет озвучено.

с одной стороны - рамка будет сохранена, у всех будет понимание того сколько еще будет длится митинг, с другой - это достаточно гибко

со временем, команда будет лучше чувствовать время необходимое для митинга

очень часто во время митингов дискуссия уходит в сторону, это нужно пресекать, однако поднятые темы могут быть важны, - предложите ...>>

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

со временем команда научится жонглировать темами оставаясь очень сфоуксированной на одной теме дискусси в одном митинге

отмечу что все что я до этого сказал не требует от разработчика особого авторитета или менеджерских рычагов управления командой

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

@jsunderhood @edjafarov у тебя отличная неделя
круть, спасибо, а то я уже переживал:) twitter.com/iamstarkov/sta…

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

я знаю что большая часть из вас не любит ретроспективу - но реально это самый интересный митинг из всех в спринте

>> высказывать претензии. И можно предлагать изменения процессов - это время для экспериментирования - это реально фан!

именно в этот момент у вас есть возможность сказать, а давайте сведем количество митингов до минимума

или, а давайте девы самы будут писать напрямую бизнесоунеру, минуя менеджера

или, а давайте будем ассайнить оунеров на каждую задачу, и эти оунеры будут отвечать за доставку фичи на демо

придумывайте, пробуйте, смотрите на результат на следующей ретроспективе - будьте активны, и активно меняйте процессы, это в вашем интересе

@jsunderhood думаю пора уже в чат переходить. Или Эльдару пару статеек написать. Не успеваю читать :(
я иногда пишу в бложике - eldar.djafarov.com twitter.com/serhey_shmyg/s…

очень важно не просто делать работу, а делать самое важное по приоритету, вот с приоритизацией какраз больше всего проблем

выделять главное - это... каждый раз задавать вопрос, а что будет, если этого не сделать?

выделять главное - это ... когда понимаешь что митинг на 10 мин - это 10чел10мин/6030$ = 50$ для ващего клиента, всего 10 мин

если эти 10 мин 10 человек спорит нужно фиксить 5мин баг или нет - это явный бред

насамом деле, деньги платят не за квалификацию, а за велью которое ты приносишь бизнесу

Сегодня в dev-ua/node мы обсуждаем на что переходить, ASP5, битрикс или ZF2. А также как установить babel. Присоединяйтесь. /cc @jsunderhood

если у вас есть вопросы по процессам, с точки зрения разработчика, зававайте!

кстати, я сделал канал в гиттере, для обсуждения разработки с точки зрения процессов gitter.im/dev-ua/teamwork

кстати на @KharkivJS уже зарегано 400+, есть шанс успеть до того как закроют регистрацию kharkivjs.org

Ура, сегодня пятница - значит завтра можно будет покодить в свое удовольствие!
notion image

@jsunderhood маленький апдейт сайта: теперь можно оценить из каких точек планеты пишут авторы jsunderhood.ru pic.twitter.com/qa25WcrNUg

сегодня мы говорили о процессах и возможностях разработчика влиять на них. Дискуссия была не сильно бурной, но сегодняж пятница!

всем кому есть что сказать или спросить по теме процессов внутри команды, прошу в новый чатик в гиттере gitter.im/dev-ua/teamwork

на завтра у меня остались темы: Бем - пичалька, Ангуляр - зло, почему программистов не заменят роботы и на верстку всем насрать, будем жечь!

@jsunderhood оу, почему Ангуляр — зло?
/me чувствует себя Шехерaзадой:) twitter.com/twenty/status/…

Суббота


@jsunderhood без ретро жить очень грустно, проблемы не решаются и копятся как снежный ком
не поверишь, но многие не используют ретро вообще, тупо как формальный митинг twitter.com/Timrael/status…

@jsunderhood бем как набор из тысячи инструментов и правил или бем как идея независимых блоков?
я бы сказал как бренд:) twitter.com/gryzzly/status…

Доброе утро, сегодня с вами опять @edjafarov :)
notion image

У бем, только одна проблема - мне уже раз 10 рассказывали что это такое, и я досихпор не понимаю что скрывается за этими 3мя буквами

а я вас уверяю, я не самый глупый человек в индустрии, но как и большинство - я очень ленивый и прагматичный

не нашлось ни одной статьи, ни одного человека который бы сказал в 3х предложениях как БЕМ сделает мою жизнь проще

мне тут недавно закинули что БЕМ это компонентная архитектура, до того как это стало модным - да пофигу,потомучто хреновое позиционирование

и для всех - компонентная архитектура - это вебкомпоненты, Реакт и Ангуляр, потомучто не только верстка и нормальные тулы

тоесть вообще набор дизайнерских ЮиКс компонентов, которые имеют смысл - ограничен, и устоялся

и есть минимальный "хтмл отпечаток" юикс компонента, который его имплементирует в хтмл

тоесть имея отпечатки для разных юикс элементов, с помощью стилей мы можем их в достаточной степени изменить под бренд нашего сайта

вся дальнейшая верстка сводится к использованию уже стилизированных отпечатков - ровно так как это делает бутстрап

подробнее я написал у себя в бложике eldar.djafarov.com/2014/07/semant… семантик стайлинг

в реальности, у себя на проекте 4 человекогода, сотни скринов, к средине проекта мы почти перестали писать стили

с Ангуляром все сложнее, - почему Анг1 плох я написал в бложике давно eldar.djafarov.com/2014/02/angula…, но зло Ангуляра в другом, или даже не в нем

Зло Ангуляра в том, что его делает Гугль, а Гугль исторически так сложилось, не любит Жаваскрипт и его экосистему

и я просто не верю что они сделают что-то что будет play nice с остальной экосистемой

yo/bower - из той-же стратегии, благо всеже вебпак браузерифай и нпм спас нас всех:)

удивительно насколько все парадоксально вышло. Ведь бум последних лет - прямая заслуга гугла и его в8

«Бэм не нужен» — говорит сегодня @jsunderhood. Наконец-то у меня нашлись единомышленники.
нас много - тех для кого Я не авторитет. и мы будем говорить, что король голый twitter.com/webholt/status…

@jsunderhood ты даже три буквы запомнить не можешь, вполне логично
увы, я аж так ленив, похоже:) twitter.com/kuksikus/statu…

@jsunderhood на самом деле БЭМ как методология весьма хорошая идея. А вот инструменты от Яндекса для работы с ним — мягко говоря вещь в себе
мой пойнт что идея не единственная, и не самая лучшая, да и еще и довольно херово позиционируемая twitter.com/mistadikay/sta…

@jsunderhood Изменяется подход не к именованию классов, а к процессу верстки в целом. Насколько оно в реальности практично — хз.
на верстку всем насрать, верстка - это 10% разработки twitter.com/webholt/status…

@jsunderhood «на верстку всем насрать» только при условии что она есть и работает нужным образом ;)
идея в том, что уже есть отработанные механизмы-паттерны с помощью которых верстка перестает быть проблемой twitter.com/SilentImp/stat…

@dshster @jsunderhood @nayanov не вижу проблем работать с jQuery до сих пор. Хороший инструмент.
это увядающая парадигма, Джейквери не имеет смысл, так как появился виртдом twitter.com/twenty/status/…

@jsunderhood … срать на верстку пока не понятно. Они есть так же в js например. И в ruby. Ну и ква?
я имею ввиду что верстка, как проблема, принципиально решена бутстрапом twitter.com/SilentImp/stat…

когда я говорю что проблема верстки принципиально решена - это значит что в реальном процессе вам нужно заставить дизайнера создать>>

библиотеку юикс компонентов, один раз ее имплементировать в верстке, и в дальнейшем просто использовать их как словарик юикс компонентов

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

@jsunderhood … хочет странного и кастома. И бутстрап, если spa на его базе, приходится значительно переписывать.
нельзя всегда идти на поводу заказчика, все имеет цену twitter.com/SilentImp/stat…

скоро будут, слышал про ReactNative? twitter.com/Semenov/status…

вот я тебе сейчас на пальцах объясню что ты всегда смешивал логику представления с представлением: - есть ли у тебя в шаблонах IF?

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

@jsunderhood нет.
у тебя совсем статика, это не тот случай, я про аппы говорю:) twitter.com/SilentImp/stat…

@SilentImp @jsunderhood потому что представление размазано на два файла - шаблон и некоторый js, который готовит логику представления.
неа, на 3 - компонент, бизнеслогика и модели. Получается правильное разделение консернов, логика/стейт/представление twitter.com/dmitryshimkin/…

@jsunderhood я замьютил ещё в понедельник, но этот деревенский ад всё равно пробирается ко мне в ленту.
#деревенскийад, мне нравится! ад - это понятно, значит жгу! twitter.com/mostolovista/s…

@amureki @jsunderhood оба наших фронтендера пишут в атоме с накрученными плагинами (в т.ч свои пишут)
и это правильно! и круто twitter.com/mkn8rd/status/…

@dcromster @jsunderhood Google Chrome

По поводу бЭм, скажу что я ошибался, спасибо за комментарии и дискуссию, из сегодняшнего дня я вынес что попросту он не решает моих проблем

поэтому я не вижу в нем смысла, но область моих задач - сложные СПА приложения, где, по всей видимости, проблематика не ощущается

в то же время я услышал что для многим БЭМ решает проблемы с которыми они сталкиваются

Сегодня был крутой день, я не ожидал от субботы, спасибо всем кто участвовал в дискуссиях о БЕМ, Ангуляре и верстке

на завтра у меня почти не осталось тем, поэтому у вас будет возможность задать мне любые, даже самые неудобные, вопросы

ну и я еще расскажу почему программистов никогда не заменят роботы!:) и чем мы собственно говоря занимаемся насамом деле

Воскресенье


@jsunderhood накидал длинный, путанный и неразборчивый gist gist.github.com/iAdramelk/d328…
это очень круто про то, зачем БЭМ и почему бутстрап - какашка, в продолжение вчерашней дискуссии, спаcибо @iAdramelk twitter.com/iAdramelk/stat…

@jsunderhood Имхо самого react-native много не будет, но fb показал как надо делать UI, и можно ждать альтернатив в swift для ios/osx и т.д.
мой пойнт почему будет - дешево и быстро справляться с существующими ресурсами, тупо выгодно. Почему не будет? twitter.com/as_Crazy/statu…

сегодня последний день с вами @edjafarov и сегодня можете задавать мне любой, самый неудобный вопрос и я постараюсь ответить!:)

@jsunderhood спасибо! Мы все думаем насчет перехода с angular 1 на ember, не можем решиться. Всем нравится, но пугает, что все загнется.)
эмбер не загнеться, я думаю еще очень долго, он пережил 5 лет - для фронтенд фрейморка - это неимоверно долго twitter.com/BlackFoks/stat…

а пока - я давно думал, что самое главное, втом, что мы делаем, и что самое ценное

я пришел к выводу, что самое ценное в нашей работе - декомпозиция идеи в достаточный набор реальных инструкций

роботы никогда не смогут заменить программистов - програмисты всегда нужны будут для проецирования идеи на шероховатость реальности

@jsunderhood @BlackFoks я сейчас правильно понял: Angular будущего не имеет, а Ember — вполне?
ну как сказать, анг1 уже мертв, анг2 еще не жив так что сказать анг2 имеет будущее или нет - тяжело twitter.com/twenty/status/…


@twenty @jsunderhood @serhiopascale @BlackFoks почему вы вообще сравниваете jQuery и ангуляр? Жквери очень даже жив, судя по апдейтам
только потомучто активно юзается с ангой, популярность Реакта - дуамю это последний гвоздь в крышку гроба джейквери twitter.com/mr_mig_by/stat…

кстати, интересно - разработчик от джуна до мидла идет ~3года, потом синеор ~5, и начинает принимать решения об архитектуре

тоесть смена поколений какраз 5 лет, что согласуется с моими наблюдениями о смене парадигм основных фреймворков

для полной смерти jQuery достаточно смены 2х поколений, тоесть 10 лет но я думаю это произойдет раньше ~ лет 6-7

@jsunderhood как можно сравнивать джквери с реактом?
никак, я их не сравниваю, хотя они и похожи jQuery нормализирует DOM API для браузеров React нормализирует DOM twitter.com/serhey_shmyg/s…

@jsunderhood Почему тогда популяпность реакта должна влиять на джквери?
потомучто они взаимоисключающи - ты не можешь юзать и то и идругое twitter.com/serhey_shmyg/s…

@jsunderhood слово "нормализует" тут не очень уместно, скорее React даёт новый API для изменения DOM
да, React дает новый ДОМ, лучше прежнего, и одинаковый для всех включая сервер, бесплатно! twitter.com/andreypopp/sta…

@roman01la @as_Crazy @jsunderhood на это уйдет много времени что бы обтесать все неровности которые в дж квери плагине уже поправлены
я был удивлен когда начал писать компоненты на React - они писались на порядки быстрее чем на jQuery twitter.com/serhey_shmyg/s…

пожалуй пора подводить итоги судя по статистике я побил рекорд по написанным твитам, и антирекорд - максимально отписавшихся

спасибо всем кто терпел мой поток твитов эту неделю, но надеюсь вам было интересно, @jsunderhood это действительно крутой формат!

мы подняли кучу офигенных тем, я для себя открыл много нового надеюсь вы тоже с вами был @edjafarov

Ссылки