Если кто-то пропустил, то недавно релизнулся Vim9. Как по мне одна из главных его фишек: это новый скриптовый язык программирования: vim9noscript
Создатели решили сделать его похожим на что-то среднее между Python и JS/Typenoscript
Примеры кода:
Ну те писать расширения и расширять возможности теперь будет интереснее и больше функциональности можно добавить, кмк.
Про новый ЯП можно прочитать тут: https://vimhelp.org/vim9.txt.html#Vim9-noscript
Создатели решили сделать его похожим на что-то среднее между Python и JS/Typenoscript
Примеры кода:
def SomeFunc()
var func_var = noscript_var
if cond
var block_var = func_var
endif
enddef
var Lambda = (arg) => ({key: 42})
Ну те писать расширения и расширять возможности теперь будет интереснее и больше функциональности можно добавить, кмк.
Про новый ЯП можно прочитать тут: https://vimhelp.org/vim9.txt.html#Vim9-noscript
vimhelp.org
Vim: vim9.txt
Vim help pages, always up-to-date
👍4🤯2🤔1
Хочется общения и комьюнити. Особенно в нынешние времена это очень актуально, быть в комьюнити и находить единомышленников
А посему я запустил чатик: @hackdevclub
Хочу написать свою идеологию, которой я придерживаюсь
На сегодня Ит индустрия очень развита и разрослась до таких размеров, что почти все митапы и конференции - это тусы энтепрайзников, где все делятся опытом как команда фронтендеров из 20 человек строит воркфлоу взаимодействия с 30 бэкендерами и 10 дизайнерами, как во все это вовлекается отдел QA и девопсов...
Одним словом, если вы стартап или начинающий, который не готов идти работать в большую корп среду, то приходится тусить на таких мероприятиях и ... В итоге либо даже в стартапах начинается это корп канитель, либо создается ощущение что по другому не бывает.
Я в профессии с 2001 года, я олдфаг и я скучаю по первым версиям тусовок типа пхп клаба и им подобгным. Когда не было и мысли что есть отдел девопсов и тестировщиков, а все были ИТ инженерами. Бэкендеры умели хтмл и джаваскрипт, был популярен пхп и нестандартный подход к решению задач.
В мире веба царил истинный дух стартапов: синьк аут зе бокс, все делаем из говна и палок и палки из говна чтобы быстрее, синяя изолента - наш главный инструмент.
Поэтому добро пожаловать в клуб "Синяя изолента", он же Growth Hack Development Club
У меня давно есть мечта собрать свою миниконференцию-митапы на эту тему и сейчас ищу спикеров, собираю доклады
Read more...
➡
А посему я запустил чатик: @hackdevclub
Хочу написать свою идеологию, которой я придерживаюсь
На сегодня Ит индустрия очень развита и разрослась до таких размеров, что почти все митапы и конференции - это тусы энтепрайзников, где все делятся опытом как команда фронтендеров из 20 человек строит воркфлоу взаимодействия с 30 бэкендерами и 10 дизайнерами, как во все это вовлекается отдел QA и девопсов...
Одним словом, если вы стартап или начинающий, который не готов идти работать в большую корп среду, то приходится тусить на таких мероприятиях и ... В итоге либо даже в стартапах начинается это корп канитель, либо создается ощущение что по другому не бывает.
Я в профессии с 2001 года, я олдфаг и я скучаю по первым версиям тусовок типа пхп клаба и им подобгным. Когда не было и мысли что есть отдел девопсов и тестировщиков, а все были ИТ инженерами. Бэкендеры умели хтмл и джаваскрипт, был популярен пхп и нестандартный подход к решению задач.
В мире веба царил истинный дух стартапов: синьк аут зе бокс, все делаем из говна и палок и палки из говна чтобы быстрее, синяя изолента - наш главный инструмент.
Поэтому добро пожаловать в клуб "Синяя изолента", он же Growth Hack Development Club
У меня давно есть мечта собрать свою миниконференцию-митапы на эту тему и сейчас ищу спикеров, собираю доклады
Read more...
➡
👍4🔥3
Освобождаем удаленные файлы без перезапуска процесса
Не все процессы закрывают файловые дескрипторы (указатели на файл на диске) даже после удаления файла. Тогда
Если нет уверенности, что у тебя именно так, — проверить это можно с помощью:
Самый простой способ решить проблему — элементарно перезапустить процесс. Но если сделать это нельзя, есть еще один вариант.
Находим, какие файлы удалены:
Очищаем файл(ы):
Не все процессы закрывают файловые дескрипторы (указатели на файл на диске) даже после удаления файла. Тогда
du -hs такие файлы не найдет, но при этом df -h покажет, что место используется.Если нет уверенности, что у тебя именно так, — проверить это можно с помощью:
lsof | grep deleted | lessСамый простой способ решить проблему — элементарно перезапустить процесс. Но если сделать это нельзя, есть еще один вариант.
Находим, какие файлы удалены:
# find /proc/*/fd -ls 2> /dev/null | grep '(deleted)' | grep logstashОчищаем файл(ы):
# truncate -s 0 /proc/path/2/file👍3🔥2👏1
Quickemu призван облегчить создание десктопных виртуальных машин. Теперь больше не нужно искать дистрибутив, ставить его в виртуальное окружение (которое часто требуется еще и настроить перед этим), настраивать гостевую ОС и только после этого пользоваться — достаточно написать всего две команды и получить готовую систему.
https://github.com/quickemu-project/quickemu
Можно просто в две команды запустить любой дистрибутив:
Так же легко можно поставить, например, macOS:
Кроме Catalina, конечно, поддерживаются еще и high-sierra, mojave, big-sur и monterey. Более подробно о запуске macOS читай в репозитории.
Установить можно даже новейшую Windows 11!
https://github.com/quickemu-project/quickemu
Можно просто в две команды запустить любой дистрибутив:
quickget ubuntu focal
quickemu --vm ubuntu-focal.conf
Так же легко можно поставить, например, macOS:
quickget macos catalina
quickemu --vm macos-catalina.conf
Кроме Catalina, конечно, поддерживаются еще и high-sierra, mojave, big-sur и monterey. Более подробно о запуске macOS читай в репозитории.
Установить можно даже новейшую Windows 11!
quickget windows 11
quickemu --vm windows-11.conf
GitHub
GitHub - quickemu-project/quickemu: Quickly create and run optimised Windows, macOS and Linux virtual machines
Quickly create and run optimised Windows, macOS and Linux virtual machines - quickemu-project/quickemu
🔥4
Cockpit — это большая веб‑консоль для управления сервером.
Установка максимально проста:
Затем нужно открыть порт 9090 на файрволе:
Дальше можно настроить доступ через реверс‑прокси nginx по имени хоста с нормальными SSL-сертификатами и на привычных портах.
Начинающему и не только DevOps'у это может здорово облегчить жизнь.
Установка максимально проста:
sudo apt update
sudo apt install cockpit
sudo systemctl enable cockpit
sudo systemctl start cockpit
Затем нужно открыть порт 9090 на файрволе:
sudo ufw allow 9090/tcp
Дальше можно настроить доступ через реверс‑прокси nginx по имени хоста с нормальными SSL-сертификатами и на привычных портах.
Начинающему и не только DevOps'у это может здорово облегчить жизнь.
🔥3👍1
Miller — это утилита, которая умеет обрабатывать структурированные данные в форматах CSV, TSV и JSON. Указываем исходный формат, указываем нужный нам формат — и получаем результат в желаемом виде.
https://github.com/johnkerl/miller
Если у тебя Ubuntu, miller устанавливается одной командой.
Если ты работаешь с таблицами из терминала, то это полезнейшая штука!
https://github.com/johnkerl/miller
Если у тебя Ubuntu, miller устанавливается одной командой.
sudo apt install millerЕсли ты работаешь с таблицами из терминала, то это полезнейшая штука!
👍6
Для того, чтобы научиться работе в VIM, можно использовать встроенные уроки
Для того чтобы открыть их прямо в виме в сплит режиме, можно сделать так:
Запускаем vim и далее в командном режиме:
vimtutorДля того чтобы открыть их прямо в виме в сплит режиме, можно сделать так:
Запускаем vim и далее в командном режиме:
: vert term
$ vimtutor
<c-w>j
👍3
Но так же могу порекомендовать:
- https://vim-adventures.com/
- http://www.vimgenius.com/lessons/vim-intro
- https://www.openvim.com/
- https://vim-adventures.com/
- http://www.vimgenius.com/lessons/vim-intro
- https://www.openvim.com/
👍3
Интересное расширение для браузера - https://www.codegrepper.com/
Подставляет куски кода в поисковую выдачу гугла
Подставляет куски кода в поисковую выдачу гугла
👍2
Eternal Terminal — делает так, чтобы соединение с удаленным сервером по SSH не причиняло боль при нестабильном коннекте или смене IP-адресов клиента (например, в дороге). Возможно, ты скажешь, что это похоже на Mosh. Автор этого и не скрывает, просто его утилита работает гораздо лучше.
Eternal Terminal не перезапускает сессию при падении (для этого есть autossh), а обеспечивает бесшовное переключение между аплинками без прерываний сессии.
Но если ты используешь tmux или screen - то тебе может это не пригодиться. А так же будь внимателен, если ты будешь подключаться через et и далее запускать tmux - поймешь, о чем я говорю =)
https://eternalterminal.dev/
Eternal Terminal не перезапускает сессию при падении (для этого есть autossh), а обеспечивает бесшовное переключение между аплинками без прерываний сессии.
Но если ты используешь tmux или screen - то тебе может это не пригодиться. А так же будь внимателен, если ты будешь подключаться через et и далее запускать tmux - поймешь, о чем я говорю =)
https://eternalterminal.dev/
Eternal Terminal
Remote terminal for the busy and impatient
👍1
Я тут для себя придумал способ делать видео корытыши для Ютуба. Буду публиковать типс энд трикс
По сути сварганил себе комбайн для кодинг спецэффектов. Вот 1й результат 🙂
https://youtu.be/EF_w8P9Sia8
По сути сварганил себе комбайн для кодинг спецэффектов. Вот 1й результат 🙂
https://youtu.be/EF_w8P9Sia8
YouTube
Fun Python Tips&Tricks: How to reverse string in Python
There is no built-in function to reverse a String in Python. The fastest (and easiest?) way is to use a slice that steps backwards, -1. Create a slice that starts at the end of the string, and moves backwards. In this particular example, the slice statement…
👍4
Продолжаю серию коротышей: Округление в PHP, JS и Python, часть первая
https://www.youtube.com/watch?v=xbSk9d-IbWw
https://www.youtube.com/watch?v=xbSk9d-IbWw
YouTube
Round function in Python doesn't seem to be rounding properly?
ROUND function is working fine, but not as well as in other languages. Python uses bank rounding, while other languages use arithmetic rounding
👍2
Vizex и vizexdf — это апгрейд df, который выполняет свою задачу куда нагляднее и приятнее внешне.
Написан на python и ставится через pip
https://github.com/bexxmodd/vizex
Написан на python и ставится через pip
https://github.com/bexxmodd/vizex
Rhit - консольная утилита для анализа логов nginx. Это, конечно, не GoAccess, но выглядит тоже интересно.
Умеет рисовать графики частоты запросов прямо в консоли.
Есть анализ трендов в запросах и удобный графический вывод этого в консоль.
https://dystroy.org/rhit/
Умеет рисовать графики частоты запросов прямо в консоли.
Есть анализ трендов в запросах и удобный графический вывод этого в консоль.
https://dystroy.org/rhit/
🔥3👎1
Butterfly Backup — это такая интересная обертка вокруг rsync, которая умеет создавать и восстанавливать бэкапы
https://github.com/MatteoGuadrini/Butterfly-Backup
https://github.com/MatteoGuadrini/Butterfly-Backup
GitHub
GitHub - MatteoGuadrini/Butterfly-Backup: Butterfly Backup is a modern backup program that can back up your files.
Butterfly Backup is a modern backup program that can back up your files. - MatteoGuadrini/Butterfly-Backup
Для начинающих и продолжающих жильцов консоли существует сервис Bash Bible (и его родной брат sh bible) - там представлены примеры реализации разных задач в скриптах, написанных исключительно на чистом Bash (или sh).
1) https://github.com/dylanaraps/pure-bash-bible
2) https://github.com/dylanaraps/pure-sh-bible
1) https://github.com/dylanaraps/pure-bash-bible
2) https://github.com/dylanaraps/pure-sh-bible
GitHub
GitHub - dylanaraps/pure-bash-bible: 📖 A collection of pure bash alternatives to external processes.
📖 A collection of pure bash alternatives to external processes. - dylanaraps/pure-bash-bible
👍3
Накатал тут для себя скрипт уведомления при авторизации на сервере. Уведомления шлются в телегу. Кому надо, берите исходник на гитхабе. Если есть сложности с настройкой, чутка позже будет видео шорты 🙂
https://github.com/frontdevops/ssh-telegram-alert
https://github.com/frontdevops/ssh-telegram-alert
GitHub
GitHub - frontdevops/ssh-telegram-alert: Telegram notifications about ssh authorization on the server
Telegram notifications about ssh authorization on the server - frontdevops/ssh-telegram-alert
🔥14
А вы знали что Google таблицы можно использовать как клиент для SQL баз данных?
Точнее не только таблицы, в целом любой апликейшен, который поддерживает Google AppScript
Apps Script может подключаться к внешним базам данных через службу JDBC , являющуюся оболочкой стандартной технологии Java Database Connectivity . Служба JDBC поддерживает базы данных Google Cloud SQL MySQL , MySQL, Microsoft SQL Server и Oracle.
https://developers.google.com/apps-noscript/guides/jdbc
Точнее не только таблицы, в целом любой апликейшен, который поддерживает Google AppScript
Apps Script может подключаться к внешним базам данных через службу JDBC , являющуюся оболочкой стандартной технологии Java Database Connectivity . Служба JDBC поддерживает базы данных Google Cloud SQL MySQL , MySQL, Microsoft SQL Server и Oracle.
https://developers.google.com/apps-noscript/guides/jdbc
👍2
Пример функции факториала на питоне и bash. Это к вопросу что порой некоторые вещи проще решить в баше, без притягивания артиллерии
https://www.youtube.com/watch?v=cEKhcVcbo_k
https://www.youtube.com/watch?v=cEKhcVcbo_k
YouTube
Python vs Bah : Factorial
Example of factorial function in Python and Bash
Timecodes:
0:13 - Factorial function on Python
0:30 - Factorial function on Python
Timecodes:
0:13 - Factorial function on Python
0:30 - Factorial function on Python
👍2