zolotyh

23 сентября 2019, Санкт-Петербург

# Понедельник 4 твита

Всем привет! С вами @zolotyh! Работаю в @Infobip и @HolyJSconf. Люблю Dart, Vim и автоматизацию всего, о чем часто делаю доклады.

10:14

Вчера внезапно выяснилось, что завтра я буду делать доклад на @TeamLeadConf. Поэтому твитов сегодня будет меньше чем обычно. Готовлюсь.

10:16
@jsunderhood @zolotyh @Infobip @HolyJSconf В Питерском Инфобипе?

Да, в нём

@jsunderhood @zolotyh @Infobip @HolyJSconf В Питерском Инфобипе?

10:23

Сижу на @TeamLeadConf. В целом рад, что такая штука вообще есть. Но все-таки такие слайды нужно оставить в прошлом pic.twitter.com/UMRfkJNw4z

12:36

# Вторник 1 твит

Все ушли послушать @bunopus, поэтому зал полупустой. Начинаю через 3 минуты. Конференция для тимлидов ;) pic.twitter.com/u2PFlGmpae

12:58

# Среда 50 твитов

Если вам нравится VIM, то у вас есть 3 варианта как его использовать

8:59

  • Использовать классический VIM. vim.org. В последнее время он почти ни чем не уступает NeoVim
  • 9:00

  • Использовать NEOVIM neovim.io. Это клон оригинального Vim. О том, какие цели у этого проэкта можно… twitter.com/i/web/status/1…
  • 9:02

    Использовать плагин, который эмулирует поведение VIM для вашего любимого редактора и IDE

    9:02
    @jsunderhood @jetbrains @UnderJS А пробовал ли @spacemacs?

    Я пробовал @spacemacs. И очень его рекомендую. Из минусов – медленный старт и необходимость знать 2 редактора вмест… twitter.com/i/web/status/1…

    @jsunderhood @jetbrains @UnderJS А пробовал ли @spacemacs?

    9:26
    @jsunderhood @spacemacs У doom-emacs очень быстрый запуск - github.com/hlissner/doom-…
    9:49

    Тред про любимые сочетания клавиш в VIM. От простого к сложному.

    10:27

    Использую hjkl вместо стрелок для перемещения по коду. Это реально удобнее. Но как и все в Vim удобство приходит через боль

    10:34

    noremap <Up> <NOP>
    noremap <Down> <NOP>
    noremap <Left> <NOP>
    noremap <Right> <NOP>
    Если добавить эти 4 настройки в… twitter.com/i/web/status/1…

    10:47

    Этой настройкой вы блокируете стрелки на клавиатуре и вам приходится пользоваться hjkl.

    10:48

    Хорошее видео про Vim от @miripiruni youtu.be/Lgv_jThBvso?t=…. Таймер стоит на месте, где объяснется про стрелки

    11:12
    @jsunderhood А ещё можно сразу купить клавиатуру без стрелок pic.twitter.com/9WYVd5EMaP

    Хм, координальное решение. Нужно подумать. Стрелками и правда не пользуюсь

    @jsunderhood А ещё можно сразу купить клавиатуру без стрелок pic.twitter.com/9WYVd5EMaP

    11:43

    Про Vim не так много интересного видео. Ниже делюсь тем, что сам люблю.

    13:09

    Оказывается можно многие вещи делать без плагинов. Об этом есть древнее видео. youtube.com/watch?v=XA2WjJ…

    13:09

    В @Neovim внезапно есть встроенный терминал. Им очень удобно пользоваться. Об этом тоже есть видео… twitter.com/i/web/status/1…

    13:13
    @jsunderhood @Neovim Кстати, в neovim 0.4 из lua можно использовать libuv — можно делать все, что можно в nodejs (с… twitter.com/i/web/status/1…
    13:20

    Наконец-то тред про плагины #vim

    14:47

    Самый мой любимый плагин на сегодня это coc.nvim. Он превращает старичка #vim в настоящего монстра, который ничем н… twitter.com/i/web/status/1…

    14:56

    Эта штука изначально была некой надстройкой над LSP, сейчас она может сделать гораздо больше

    14:57

    LSP позволяет сделать IDE из любого редактора.
    langserver.org

    14:59

    Сейчас запилю небольшой скринкаст

    15:03

    Интерграция coc.nvim c emmet и typescript language server youtube.com/watch?v=izpNqB…

    15:32

    Раз уже упомянул, то и emmet-vim github.com/mattn/emmet-vim. Немногие знают, что помимо развертывания строки в html ес… twitter.com/i/web/status/1…

    15:36

    Вот так это выглядит youtube.com/watch?v=R6IUEz…

    15:43

    Matchit, который старичок и очень круто помогает с html github.com/adelarsq/vim-m…

    15:47

    Surround, без которого я не очень уже себя представляю github.com/tpope/vim-surr…

    15:49

    Одно из самых крутых решений для сниппетов github.com/SirVer/ultisni…

    15:50

    Если в разделе [core] > editor ~/.gitconfig прописать nvim (gist.github.com/zolotyh/4e38cc…), то на каждый коммит будет в… twitter.com/i/web/status/1…

    16:02

    Ну и конечно нечеткий поиск
    github.com/junegunn/fzf.v…

    16:03

    Напоследок вот вам классная штука. Можно отслеживать над какими проектами вы реально работаете wakatime.com

    16:12

    И конечно же интеграция с Vim
    github.com/wakatime/vim-w…

    16:13

    Отдельный тред про coc.nvim, так как забыл упомянуть некоторые вещи

    16:20

    coc.nvim имеет свою системы плагинов и свои настройки

    16:22

    Дока по настройка и список любимых расширений далее
    github.com/neoclide/coc.n…

    16:23

    Работа с typescript github.com/neoclide/coc-t…

    16:24

    Валидация JSON github.com/neoclide/coc-j…

    16:25

    Совсем недавно кто-то в twitter писал про автокомплит с машинным обучением (tabnine.com). Лично я польз… twitter.com/i/web/status/1…

    16:27

    В общем есть emmet, eslint, docker, stylelint и еще много других штук. Что-то для себя можно поискать здесь github.com/neoclide

    16:29

    И угадайте на чем это написано? Подсказка: в репозиториях есть файл package.json

    16:31

    Я вместе с #Vim уже лет 10. За это время несколько раз переписывал конфиг с нуля. Несколько раз пытался уйти, но к… twitter.com/i/web/status/1…

    16:37

    Сначала ты относишься к Vim скептически

    16:38

    Потом ты решаешь попробовать и тут нужна сила воли, чтобы не бросить.

    16:38

    Со временем ты учишь сочетания типа cit dat gg G C ci" и тебе кажется, что ты супер-герой

    16:42

    А потом ты внезапно понимаешь, что реальная производительность не в этом.

    16:43

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

    16:44

    Инженерным решением я могу сэкономить полгода работы, например, взяв что-то готовое, вместо написания своего. При п… twitter.com/i/web/status/1…

    16:46

    Вот мой конфиг github.com/zolotyh/init.v… Решил ничего не менять. Так что ругайте. Буду править. Может кому-то поможет. Вопросы тоже задавайте

    16:54

    Всем спокойной ночи, завтра буду рассказывать про консольку и прочие эти ваши красноглазые вещи. Но вы спрашивайте… twitter.com/i/web/status/1…

    17:43

    # Четверг 27 твитов

    github.com/liuchengxu/vim… @rage_monk возвращайся к нам со @spacemacs. У нас есть такое же красивое меню с подсказками по сочетаниям клавиш

    3:41

    Доброе утро. Сегодня как и обещал, начну с консольки.

    7:00

    Одна из моих любимых штук - jq (stedolan.github.io/jq/) Позоляет делать запросы в JSON. Для отладки можно использо… twitter.com/i/web/status/1…

    7:05

    Еще одна вещь, которую всем сильно рекомендую – fzf (github.com/junegunn/fzf) Утилита для нечеткого поиска. На вход… twitter.com/i/web/status/1…

    7:30

    Устанавливаем FZF и добавляем следующее в свой ~/.zscrc gist.github.com/zolotyh/01c73d…
    По команде fbr получаем крутую штуку youtu.be/DYsaeBD7zaM

    7:31

    Ctrl-R любимое сочетание в консоли. Ищем по истории с FZF
    youtube.com/watch?v=mxA7DQ…

    7:32

    Классная утилита autojump github.com/wting/autojump Вместо того, чтобы ходить по папкам при помощи cd, жмем j и часть… twitter.com/i/web/status/1…

    7:40

    Ставим gnu-sed. Если вы на маке конечно. У других все должно работать и так. Дальше добавляем… twitter.com/i/web/status/1…

    7:45
    @jsunderhood Тоже самое делает z - github.com/rupa/z/
    8:16

    fd - удобный поиск по имени файла github.com/sharkdp/fd

    9:00

    Не очень люблю npm скрипты. Очень тяжело заставить их выполняться параллельно и вообще они очень ограничены. Люблю… twitter.com/i/web/status/1…

    10:00
    @jsunderhood так более универсально MAKEFLAGS="-j $(nproc)"

    В целом да! Спасибо!

    @jsunderhood так более универсально MAKEFLAGS="-j $(nproc)"

    10:42

    Еще одна любимая штука из старых. gnu.org/software/paral…
    Можно сделать что-то с подпапками параллельно и быстро. Н… twitter.com/i/web/status/1…

    11:00

    Такой же как jq, только для yaml
    github.com/mikefarah/yq

    11:10
    @jsunderhood Я согласен с одним — панацеи нет. Всё остальное можно применять в зависимости от задач. Makefile хорош… twitter.com/i/web/status/1…
    11:16

    Просто оставлю это здесь github.com/denisidoro/navi

    11:27
    В ноябре буду писать для @jsunderhood про коммуникацию и про graphql..
    если кейсы есть уже сейчас - задавайте, сделаю разбор :)
    11:28

    Для тех, кто не любит man просто и понятно. tldr.sh

    12:00

    Ctrl + X, Ctrl + E и можно редактировать команду bash/zsh хоть в #Sublime
    Нужно только прописать в ~/.zshrc export… twitter.com/i/web/status/1…

    13:00
    @jsunderhood Последнее время не мыслю консольку без этой штуки - github.com/jesseduffield/… консольное управление docker
    13:07

    Не могу не упомянуть learnxinyminutes.com. Это конечно не консоль, но экономит очень много времени

    13:12

    Замечательный сайт gitignore.io славен не только интерфейсом. Прописываем в .gitignore… twitter.com/i/web/status/1…

    14:01

    Используем #webstorm, чтобы мерждить конфликты. В ~/.gitconfig gist.github.com/zolotyh/c03f58…. Дальше git mergetool при конфликте

    14:45

    Разрезолвить все конфликты в подпапках
    for d in `ls -d */` ; do (cd "$d" && git mergetool); done

    14:47

    Заходим в рабочую папку и одной командой получаем список всех коммитов за определенный срок github.com/kamranahmedse/…

    14:48

    git-standup -d 3 | pbcopy на Маке сразу же копируем результат в буфер обмена

    14:49

    Всегда можно создать что-то свое для консоли. Вот вам документация github.com/SBoudrias/Inqu…

    17:33

    # Пятница 10 твитов

    @jsunderhood Можно пойти дальше. Отключить стрелки на уровне системы по этой инструкции от @nikitonskytwitter.com/i/web/status/1…

    Очень люблю такое. И конечно людей которые в это копают. Убеждён, что такие вещи крутят планету.

    @jsunderhood Можно пойти дальше. Отключить стрелки на уровне системы по этой инструкции от @nikitonskytwitter.com/i/web/status/1…

    5:30

    Делаем автоматизации как в zapier.com или ifttt.com только бесплатно и на своем сервере github.com/muesli/beehive

    6:00

    Пробрасываем локальный сервак в интернет по рандомному домену beame.io/insta-ssl
    localtunnel.github.io/www/

    7:56
    @jsunderhood Какие отличия от ngrok?

    Добавлю еще и ngrok.com.

    @jsunderhood Какие отличия от ngrok?

    8:10

    Начну про доклады и конференции.

    10:00

    Заметил, что хожу на конференции и не слушаю доклады. На первый взгляд это может показаться странным . Но ничего не… twitter.com/i/web/status/1…

    10:01

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

    10:02

    Если я разбираюсь в какой-то технологии, то не хожу на доклады по ней. Скорее всего я не узнаю ничего нового. Имеет… twitter.com/i/web/status/1…

    10:30

    Мое любимое развлечение на конференциях - Unconference. en.wikipedia.org/wiki/Unconfere…. Формат очень сложный. Видел как пр… twitter.com/i/web/status/1…

    10:34

    Про работу в программном комитете @HolyJSconf.

    12:07

    # Воскресенье 19 твитов

    Учиться, учиться и еще раз учиться. Топ 5 любимых бесплатных курсов.

    18:23

    Функциональное программирование на языке Haskell. Имеет смысл выполнять все задачи и тогда вам откроется истина. Но… twitter.com/i/web/status/1…

    18:24

    Теория решения изобретательских задач. Можно ли научиться изобритательству? Ответ по ссылке.
    Мало относится к прогр… twitter.com/i/web/status/1…

    18:24

    Теория категорий от @_bravit. youtube.com/watch?v=gpifdH…. Для категоричных любителей теории.

    18:24

    Тройка докладов про архитектуру.

    19:10

    Архитектура наше все. Дядюшка Боб Мартин знает в этом толк.
    Доклад - сборник интересных мыслей на этот счет. youtube.com/watch?v=Nsjsiz…

    19:10

    Евгений Кривошеев, про архитектуру. А что если смотреть под разными углами?
    youtube.com/watch?v=_Kex5h…

    19:12

    Рома Дворнов, про архитектуру фронтенда.
    youtube.com/watch?v=z9y6PN…

    19:13

    Топ самых недооцененных докладов @HolyJSconf

    19:37

    Топ моих любимых докладов на @HolyJSconf

    19:49

    Возможно кому-то поможет не потеряться в ноябре на @HolyJSconf. Мой план посещения. Тут все субъективно.

    20:55

    Последняя тема перед сном это Dart (@dart_lang)

    21:13

    Несколько рандомных фактов о Dart

    21:14

    Dart был спроектирован как замена JS.
    При этом разработчики постарались учесть недостатки предшественника.

    21:14

    Подробнее об этом в докладе @mraleph youtube.com/watch?v=v1jvC7…

    21:14

    Курс молодого бойца по Dart dart.dev/codelabs/dart-…

    21:30

    23 ноября в Петербурге будет конференция про Dart. Вход бесплатный. Я там буду рассказывать про зоны. Больше информ… twitter.com/i/web/status/1…

    21:37

    Попробовать Dart можно здесь dart.dev/tools/dartpad

    21:38

    Мое время с @jsunderhood подошло к концу. С вами был Алексей Золотых из @Infobip @infobip_dev.
    Всем приятной недели… twitter.com/i/web/status/1…

    21:56

    github.com

    www.youtube.com

    holyjs-moscow.ru

    other


    @davert
    @kirjs