# Понедельник 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 для вашего любимого редактора и 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:34noremap <Up> <NOP>
noremap <Down> <NOP>
noremap <Left> <NOP>
noremap <Right> <NOP>
Если добавить эти 4 настройки в… twitter.com/i/web/status/1…
Этой настройкой вы блокируете стрелки на клавиатуре и вам приходится пользоваться 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
Самый мой любимый плагин на сегодня это coc.nvim. Он превращает старичка #vim в настоящего монстра, который ничем н… twitter.com/i/web/status/1…
14:56Эта штука изначально была некой надстройкой над LSP, сейчас она может сделать гораздо больше
14:57LSP позволяет сделать IDE из любого редактора.
langserver.org
Сейчас запилю небольшой скринкаст
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:43Matchit, который старичок и очень круто помогает с html github.com/adelarsq/vim-m…
15:47Surround, без которого я не очень уже себя представляю github.com/tpope/vim-surr…
15:49Одно из самых крутых решений для сниппетов github.com/SirVer/ultisni…
15:50Красивые иконки github.com/ryanoasis/vim-… pic.twitter.com/mIn0qW9eKU
15:55Если в разделе [core] > editor ~/.gitconfig прописать nvim (gist.github.com/zolotyh/4e38cc…), то на каждый коммит будет в… twitter.com/i/web/status/1…
16:02Ну и конечно нечеткий поиск
github.com/junegunn/fzf.v…
Напоследок вот вам классная штука. Можно отслеживать над какими проектами вы реально работаете wakatime.com
16:12И конечно же интеграция с Vim
github.com/wakatime/vim-w…
Отдельный тред про coc.nvim, так как забыл упомянуть некоторые вещи
16:20coc.nvim имеет свою системы плагинов и свои настройки
16:22Дока по настройка и список любимых расширений далее
github.com/neoclide/coc.n…
Работа с 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
Ctrl-R любимое сочетание в консоли. Ищем по истории с FZF
youtube.com/watch?v=mxA7DQ…
Классная утилита 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…
Такой же как jq, только для yaml
github.com/mikefarah/yq
@jsunderhood Я согласен с одним — панацеи нет. Всё остальное можно применять в зависимости от задач. Makefile хорош… twitter.com/i/web/status/1…11:16
Просто оставлю это здесь github.com/denisidoro/navi
11:27В ноябре буду писать для @jsunderhood про коммуникацию и про graphql..11:28
если кейсы есть уже сейчас - задавайте, сделаю разбор :)
Ctrl + X, Ctrl + E и можно редактировать команду bash/zsh хоть в #Sublime
Нужно только прописать в ~/.zshrc export… twitter.com/i/web/status/1…
@jsunderhood Последнее время не мыслю консольку без этой штуки - github.com/jesseduffield/… консольное управление docker13: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
Заходим в рабочую папку и одной командой получаем список всех коммитов за определенный срок github.com/kamranahmedse/…
14:48git-standup -d 3 | pbcopy на Маке сразу же копируем результат в буфер обмена
14:49Всегда можно создать что-то свое для консоли. Вот вам документация github.com/SBoudrias/Inqu…
17:33# Пятница 10 твитов
@jsunderhood Можно пойти дальше. Отключить стрелки на уровне системы по этой инструкции от @nikitonsky… twitter.com/i/web/status/1…
Очень люблю такое. И конечно людей которые в это копают. Убеждён, что такие вещи крутят планету.
@jsunderhood Можно пойти дальше. Отключить стрелки на уровне системы по этой инструкции от @nikitonsky… twitter.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/
@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…
Теория категорий от @_bravit. youtube.com/watch?v=gpifdH…. Для категоричных любителей теории.
18:24Тройка докладов про архитектуру.
19:10Архитектура наше все. Дядюшка Боб Мартин знает в этом толк.
Доклад - сборник интересных мыслей на этот счет. youtube.com/watch?v=Nsjsiz…
Евгений Кривошеев, про архитектуру. А что если смотреть под разными углами?
youtube.com/watch?v=_Kex5h…
Рома Дворнов, про архитектуру фронтенда.
youtube.com/watch?v=z9y6PN…
Топ самых недооцененных докладов @HolyJSconf
19:37Топ моих любимых докладов на @HolyJSconf
19:49Возможно кому-то поможет не потеряться в ноябре на @HolyJSconf. Мой план посещения. Тут все субъективно.
20:55Последняя тема перед сном это Dart (@dart_lang)
21:13Несколько рандомных фактов о Dart
21:14Dart был спроектирован как замена JS.
При этом разработчики постарались учесть недостатки предшественника.
Подробнее об этом в докладе @mraleph youtube.com/watch?v=v1jvC7…
21:14Курс молодого бойца по Dart dart.dev/codelabs/dart-…
21:3023 ноября в Петербурге будет конференция про 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…
# Ссылки
github.com
- https://github.com/sassanh/qnvim
- https://github.com/hlissner/doom-emacs
- https://github.com/mattn/emmet-vim
- https://github.com/adelarsq/vim-matchit
- https://github.com/tpope/vim-surround
- https://github.com/SirVer/ultisnips
- https://github.com/ryanoasis/vim-devicons
- https://github.com/junegunn/fzf.vim
- https://github.com/wakatime/vim-wakatime
- https://github.com/neoclide/coc.nvim/wiki/Using-the-configuration-file
- https://github.com/neoclide/coc-tsserver
- https://github.com/neoclide/coc-json
- https://github.com/neoclide
- https://github.com/zolotyh/init.vim
- https://github.com/liuchengxu/vim-which-key
- https://github.com/junegunn/fzf
- https://github.com/wting/autojump
- https://github.com/rupa/z/
- https://github.com/sharkdp/fd
- http://github.com/mikefarah/yq
- https://github.com/denisidoro/navi
- https://github.com/jesseduffield/lazydocker
- http://github.com/kamranahmedse/git-standup
- https://github.com/SBoudrias/Inquirer.js
- https://github.com/muesli/beehive
- https://github.com/ReactiveX/rxdart
www.youtube.com
- https://www.youtube.com/watch?v=XA2WjJbmmoM
- https://www.youtube.com/watch?v=izpNqBM-GCw&feature=youtu.be
- https://www.youtube.com/watch?v=R6IUEzGnKAU&feature=youtu.be
- https://www.youtube.com/watch?v=mxA7DQHlOI0&feature=youtu.be
- https://www.youtube.com/watch?v=gpifdHvtr0k&list=PLvPsfYrGz3wsX3Z5KuuEVYhijDxhKCDDD
- https://www.youtube.com/watch?v=Nsjsiz2A9mg
- https://www.youtube.com/watch?v=_Kex5hwGE-w
- https://www.youtube.com/watch?v=z9y6PNC2FL0
- https://www.youtube.com/watch?v=1zWUN6y2WbI
- https://www.youtube.com/watch?v=OqFOXMIwzTc
- https://www.youtube.com/watch?v=6Tg2UA4XaQY
- https://www.youtube.com/watch?v=05rK5fhSGEY
- https://www.youtube.com/watch?v=z0TP-9QSdHI
- https://www.youtube.com/watch?v=v1jvC79EJ-U
holyjs-moscow.ru
- https://holyjs-moscow.ru/2019/msk/talks/jtjwxpe8fdcugodqdi9lz/
- https://holyjs-moscow.ru/2019/msk/talks/4y3sifyqmh036vhhecbqfr/
- https://holyjs-moscow.ru/2019/msk/talks/6peo4dkf6hfastrddznexx/
- https://holyjs-moscow.ru/2019/msk/talks/6dlyurskhscwngazvger3a/
- https://holyjs-moscow.ru/2019/msk/talks/1xesefyyz4cjzwv8bydovj/
- https://holyjs-moscow.ru/2019/msk/talks/6swxpgs4nl5x9vkqkhcopy/
other
- https://www.vim.org/
- https://neovim.io/
- https://www.jetbrains.com/help/idea/using-product-as-the-vim-editor.html
- https://marketplace.visualstudio.com/items?itemName=vscodevim.vim
- http://spacemacs.org/
- https://macvim-dev.github.io/macvim/
- https://onivim.io/
- https://youtu.be/Lgv_jThBvso?t=1688
- https://youtu.be/DYsaeBD7zaM
- https://youtu.be/LMuOHr_D-Jg
- https://asciinema.org/a/1Y5d4pv5CMvOzGRNnjXO0qws8
- https://asciinema.org/a/AiBCWjCxaYcNA38oxRjvfFqvq
- https://langserver.org/
- https://gist.github.com/zolotyh/4e38cc93e3250bc85c2c862c6b4358ba
- https://gist.github.com/zolotyh/1fca9043297499e183de3402ce2a9416
- https://gist.github.com/zolotyh/01c73dbf65bb373ac53797eaf62f89cf
- https://gist.github.com/zolotyh/c03f5887f1dce22dcce62d6c233d01da
- https://wakatime.com/
- https://tabnine.com/
- https://beyondgrep.com/more-tools/
- https://stedolan.github.io/jq/
- https://www.gnu.org/software/parallel/
- https://chocolatey.org/
- https://tldr.sh/
- https://learnxinyminutes.com/
- https://gitignore.io/
- https://zapier.com/
- https://ifttt.com/
- https://www.beame.io/insta-ssl
- https://localtunnel.github.io/www/
- https://ngrok.com/
- https://en.wikipedia.org/wiki/Unconference
- https://js-kongress.com/
- https://www.coursera.org/learn/algorithms-part1/home/welcome
- https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BA_%D0%BB%D0%B3%D0%B0%D1%82%D1%8C_%D0%BF%D1%80%D0%B8_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D0%B8_%D1%81%D1%82%D0%B0%D1%82%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B8
- https://dart.dev/codelabs/dart-cheatsheet
- https://dart.dev/tools/dartpad
- https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/dart-typescript.html
- https://habr.com/ru/company/wrike/blog/433060/