В интерфейсе командной строки гита есть интерактивный редактор файлов, которые попадут в коммит. Вызывается через
https://medium.com/@poslegm/интерактивный-git-cli-5f6e7d27aec
#ссылки
git add -i. Теперь графические тулзы для гита ни нужны.https://medium.com/@poslegm/интерактивный-git-cli-5f6e7d27aec
#ссылки
Medium
Интерактивный git CLI
Единственный случай, в котором мне было удобнее пользоваться графическими оболочками для гита вместо CLI ― это выбор файлов, которые…
Кирилл Мокевнин (технический директор hexlet.io) иногда ведёт суперполезные вебинары про процесс разработки ПО. Смотреть можно все, но мне больше всего понравились эти:
Stateful vs Stateless ― разговор о состояние в широком смысле, о том, почему с ним сложно работать, и как упростить эту работу https://www.youtube.com/watch?v=WPCz_U7D8PI&index=16&list=PLo6puixMwuSPfJVVXKhLkHCymzEQAKxjr
Что такое паттерны ― самое простое, понятное и полезное объяснение паттернов в программировании https://www.youtube.com/watch?v=wX6BBaQZpzE&index=15&list=PLo6puixMwuSPfJVVXKhLkHCymzEQAKxjr
Как распространять инженерную культуру в своей компании ― о том, что такое инженерная культура, насколько она может быть плохой, и как сделать её лучше https://www.youtube.com/watch?v=mOfiWrTW9dA&t=2s
#ссылки
Stateful vs Stateless ― разговор о состояние в широком смысле, о том, почему с ним сложно работать, и как упростить эту работу https://www.youtube.com/watch?v=WPCz_U7D8PI&index=16&list=PLo6puixMwuSPfJVVXKhLkHCymzEQAKxjr
Что такое паттерны ― самое простое, понятное и полезное объяснение паттернов в программировании https://www.youtube.com/watch?v=wX6BBaQZpzE&index=15&list=PLo6puixMwuSPfJVVXKhLkHCymzEQAKxjr
Как распространять инженерную культуру в своей компании ― о том, что такое инженерная культура, насколько она может быть плохой, и как сделать её лучше https://www.youtube.com/watch?v=mOfiWrTW9dA&t=2s
#ссылки
Выложил на медиум свой сборник любимых команд администрирования кафки. Запомнить их невозможно. Поэтому раньше, чтобы сделать любое элементарное действие, приходилось лезть в заметочник. Теперь буду подсматривать в этот пост.
https://medium.com/@poslegm/шпаргалка-по-командам-кафки-75761ba7dae8
https://medium.com/@poslegm/шпаргалка-по-командам-кафки-75761ba7dae8
Medium
Шпаргалка по командам кафки
Бложик переехал. На медиум писаться больше ничего не будет.
Казалось, что скалисты навсегда погрязли в междуусобице из-за самого скандального пулл-реквеста. Но этой ночью в комменты явился сам Учитель. И пролил он свет истины, и даровал он надежду на процветание Scala 3.0
Онлайн генератор выражений для крона ― https://www.freeformatter.com/cron-expression-generator-quartz.html. С ним можно быстро и без проблем сделать шедулер даже со сложной логикой формирования расписания событий.
Писать руками всякие
А ещё там есть генераторы QR-кодов, конвертеры XML ⟷ JSON и всякие другие полезные штуки.
#ссылки
Писать руками всякие
0 * 0 ? * 7/7 * мне сложно каждый раз, как в первый.А ещё там есть генераторы QR-кодов, конвертеры XML ⟷ JSON и всякие другие полезные штуки.
#ссылки
Есть быстрый способ почистить в гите старые локальные ветки, которых может накопиться под пару сотен.
Удалить все слитые с мастером:
Удалить все не влитые в мастер, кроме подходящих под регулярку:
Само собой, делать это надо крайне осторожно :)
Удалить все слитые с мастером:
git branch --merged | grep -v master | xargs git branch -d
Удалить все не влитые в мастер, кроме подходящих под регулярку:
git branch --no-merged | grep -v -E 'superfeature.*|.*stable' | xargs git branch -D
Само собой, делать это надо крайне осторожно :)
Мастрид про роли и качества тимлида. Самое развёрнутое описание из тех, которые мне встречались.
https://felixit.blog/2018/03/31/timlid-v-trioh-licah/
#ссылки
https://felixit.blog/2018/03/31/timlid-v-trioh-licah/
#ссылки
У тебя есть 30 секунд, чтобы объяснить, почему ты до сих пор не используешь Astra Linux в качестве основной операционной системы
Astra Linux ― это инновационная операционная система класса Linux (на основе Debian) с уникальным графическим окружением рабочего стола Fly
Astra Linux ― это первая и единственная ОС, сертифицированная по требованиям ФСТЭК РФ
Astra Linux импортозамещает операционные системы и офисное ПО в Челябинской области
Astra Linux работает на процессорах Эльбрус
Жду ваши оправдания
https://astralinux.com
Astra Linux ― это инновационная операционная система класса Linux (на основе Debian) с уникальным графическим окружением рабочего стола Fly
Astra Linux ― это первая и единственная ОС, сертифицированная по требованиям ФСТЭК РФ
Astra Linux импортозамещает операционные системы и офисное ПО в Челябинской области
Astra Linux работает на процессорах Эльбрус
Жду ваши оправдания
https://astralinux.com
Основное преимущество интерфейсов командной строки перед графическими ― это то, что они являются одновременно и пользовательскими, и программными интерфейсами. Взаимодействие с ними элементарным образом скриптуется, кастомизируется, расширяется. А вот возможность кастомизации GUI-программ с целью расширения функциональности ― это огромная редкость и сложность.
Например, я хочу иметь команду гита, которая выполнит три действия:
1. Переключится на master-ветку;
2. Подгрузит свежие изменения;
3. Вернётся на ветку, в которой я находился изначально.
Работая в командной строке, я могу написать примитивную программу и задать её как алиас:
А при взаимодействии с гитом через графическую обёртку остаётся надеятся на то, что разработчик моего любимого инструмента сделает такую функцию.
Например, я хочу иметь команду гита, которая выполнит три действия:
1. Переключится на master-ветку;
2. Подгрузит свежие изменения;
3. Вернётся на ветку, в которой я находился изначально.
Работая в командной строке, я могу написать примитивную программу и задать её как алиас:
[alias]
pm = git checkout master && git pull && git checkout -
А при взаимодействии с гитом через графическую обёртку остаётся надеятся на то, что разработчик моего любимого инструмента сделает такую функцию.
Scala Puzzlers
Книжка на пару вечеров про подводные камни компилятора скалы. Содержит 36 примеров того, как не надо программировать.
Код из таких книг, конечно, достаточно сильно оторван от реальной жизни и обычно представляет из себя bad practices. Но его разбор позволяет расширить представление о тонкостях работы компилятора и освежить в голове некоторые нетривиальные моменты.
Книжка на пару вечеров про подводные камни компилятора скалы. Содержит 36 примеров того, как не надо программировать.
Код из таких книг, конечно, достаточно сильно оторван от реальной жизни и обычно представляет из себя bad practices. Но его разбор позволяет расширить представление о тонкостях работы компилятора и освежить в голове некоторые нетривиальные моменты.
Последняя надежда
Вышло видео доклада John A. De Goes с отличной критикой современного состояния Scala-экосистемы. Позитивная повестка довольно абстрактна, но это не проблема, потому что это доклад про «Кто виноват?», а не «Что делать?».
Озвученные проблемы:
1. Котлин очень быстро отжирает рынок языков на jvm, а Oracle в последние годы начал активно развивать джаву. Скала же всё не может закрепиться среди других популярных промышленных языков, хотя очень близка к ним;
2. Балансировка на двух стульях между джавой и хаскелем. Вроде и стремимся сделать промышленный язык, элегантный, как хаскель, но ограничения платформы заставляют городить внутри него костыли (хотя их не так уж и много);
3. Маркетинг скалы сосёт. Пока голанг продаётся, как язык для быстрой разработки эффективных высоконагруженных приложений, скалку подают под соусом возможности совмещать ООП и ФП. Акцент делается не на решении задач бизнеса, а на академических интересах;
4. Есть вероятность (примерно 100%), что грядущий релиз Scala 3 создаст такой же коллапс с параллельным развитием версий, как у питона. Крупным компаниям будет тяжело обновиться со второй версии;
5. Утечка кадров из сообщества, внутренние междусобойчики, политика внутри инженерного сообщества;
6. В Scala 3 пытаются пропихнуть пару фич, которые не нужны ни одной из частей скала-сообщества. Фичи ради фич приведут к усложнению языка (куда уж больше?), но не принесут реальной пользы, потому что часть людей уже использует библиотеки, реализующие то же самое, а остальным это в принципе не нужно.
Предложения:
1. Брать пример с Котлина: больше документации, больше тулинга, больше надёжности;
2. Не делать мертворождённых проектов ради PhD у аспирантов Одерски;
3. Не распыляться в попытках впихнуть весь опыт компьютерных наук в один язык. Делать меньше вещей, но делать их лучше;
4. Признать, что скала — это функциональный язык, и выгнать из сообщества ООП-макак (не шутка). Сделать уже ФП-возможности скалы конкурентным преимуществом, а не замыливать их кучей вторичных фич.
Видео выступления: https://www.youtube.com/watch?v=v8IQ-X2HkGE
Вышло видео доклада John A. De Goes с отличной критикой современного состояния Scala-экосистемы. Позитивная повестка довольно абстрактна, но это не проблема, потому что это доклад про «Кто виноват?», а не «Что делать?».
Озвученные проблемы:
1. Котлин очень быстро отжирает рынок языков на jvm, а Oracle в последние годы начал активно развивать джаву. Скала же всё не может закрепиться среди других популярных промышленных языков, хотя очень близка к ним;
2. Балансировка на двух стульях между джавой и хаскелем. Вроде и стремимся сделать промышленный язык, элегантный, как хаскель, но ограничения платформы заставляют городить внутри него костыли (хотя их не так уж и много);
3. Маркетинг скалы сосёт. Пока голанг продаётся, как язык для быстрой разработки эффективных высоконагруженных приложений, скалку подают под соусом возможности совмещать ООП и ФП. Акцент делается не на решении задач бизнеса, а на академических интересах;
4. Есть вероятность (примерно 100%), что грядущий релиз Scala 3 создаст такой же коллапс с параллельным развитием версий, как у питона. Крупным компаниям будет тяжело обновиться со второй версии;
5. Утечка кадров из сообщества, внутренние междусобойчики, политика внутри инженерного сообщества;
6. В Scala 3 пытаются пропихнуть пару фич, которые не нужны ни одной из частей скала-сообщества. Фичи ради фич приведут к усложнению языка (куда уж больше?), но не принесут реальной пользы, потому что часть людей уже использует библиотеки, реализующие то же самое, а остальным это в принципе не нужно.
Предложения:
1. Брать пример с Котлина: больше документации, больше тулинга, больше надёжности;
2. Не делать мертворождённых проектов ради PhD у аспирантов Одерски;
3. Не распыляться в попытках впихнуть весь опыт компьютерных наук в один язык. Делать меньше вещей, но делать их лучше;
4. Признать, что скала — это функциональный язык, и выгнать из сообщества ООП-макак (не шутка). Сделать уже ФП-возможности скалы конкурентным преимуществом, а не замыливать их кучей вторичных фич.
Видео выступления: https://www.youtube.com/watch?v=v8IQ-X2HkGE
YouTube
Keynote: The Last Hope for Scala's Infinity War - John A. De Goes
Java, the heavyweight champion of the JVM, has easily defeated attacks from newer programming languages by appropriating features like lambdas, streaming pipelines, and optional types from more capable languages. Kotlin continues its meteoric rise as a better…
Продолжаем унижение скалистов. Есть такая шина для передачи сообщений — Apache Kafka. Биг дата, распределённые системы, все дела.
В своё время она была написана на Scala, а сейчас 70% кодовой базы — это отборный Java-код. Последний коммит в .scala файл датируется 2016 годом, а проект находится в состоянии перехода Scala -> Java с 2015 года.
Почему? Может быть дело в языковых конструкциях, высоком пороге входа? Или в долгой компиляции? Или в экосистеме языка? Нет. Просто у Scala нет бинарной совместимости между версиями. И разработчикам приходилось билдить и тестировать артефакты для 2.8, 2.9, 2.10, 2.11... версий компилятора. В конце концов им это надоело, и всё, кроме ядра системы, было переписано на джяву.
В своё время она была написана на Scala, а сейчас 70% кодовой базы — это отборный Java-код. Последний коммит в .scala файл датируется 2016 годом, а проект находится в состоянии перехода Scala -> Java с 2015 года.
Почему? Может быть дело в языковых конструкциях, высоком пороге входа? Или в долгой компиляции? Или в экосистеме языка? Нет. Просто у Scala нет бинарной совместимости между версиями. И разработчикам приходилось билдить и тестировать артефакты для 2.8, 2.9, 2.10, 2.11... версий компилятора. В конце концов им это надоело, и всё, кроме ядра системы, было переписано на джяву.