Как стать автором
Обновить
-3
@ZvaroGread⁠-⁠only

Пользователь

Отправить сообщение

Заметки гика. zsh shell

Время на прочтение2 мин
Количество просмотров5.1K
Дубль первый.


В какой то момент возникла острая необходимость заиметь англо-русский словарь в консоли,
в ходе 2 минутного поиска по пакетам счастья не было обнаружено.
Ну что же, придется делать свой словарь, вспомнив что в chromium стоит плагин для словаря было принято решение распотрошить его содержимое, и прикрутить словарь от google к консоли.
Ну а далее код для zsh.
В комментах ресурсы которые были просмотрены в ходе поиска решения.
Читать дальше →
Всего голосов 44: ↑37 и ↓7+30
Комментарии21

zsh

Время на прочтение2 мин
Количество просмотров33K
Привет!

Поговорим о самом удобном shell-е для Linux. Знакомьтесь — это zsh. Многие пользователи Linux не променяют bash ни на что другое, но я, будучи склонным к экспериментам, не поленился и поставил zsh.
Читать дальше →
Всего голосов 72: ↑64 и ↓8+56
Комментарии64

Написание своих автодополнений для Shell. Часть 1: zsh

Время на прочтение4 мин
Количество просмотров46K

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


Преамбула

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

Введение

Существует несколько возможных вариантов написания файла автодополнения для zsh. В случае данной статьи я остановлюсь только на одном из них, который предоставляет большие возможности и не требует больших затрат (например, работы с регулярными выражениями).

Читать дальше →
Всего голосов 32: ↑29 и ↓3+26
Комментарии10

Zsh: fucky new year

Время на прочтение8 мин
Количество просмотров19K
Прочитал пост habrahabr.ru/post/247161 и подумал: вот человек написал непонятную программу на bash, которая выводит «Happy new year». Но это ведь bash! Надо показать, что zsh не хуже, а даже намного лучше! И так, программа на zsh, выводящая «С новым годом!» (по‐русски!) со следующими ограничениями:
  1. Программа не должна использовать никакие сторонние программы. Ни base64, ни cat, ничего.
  2. Программа должна выводить текст по‐русски.
  3. Программа быть написана на ASCII, но не должна содержать ни одной буквы или цифры.
Читать дальше →
Всего голосов 29: ↑25 и ↓4+21
Комментарии15

zsh: tips & tricks

Время на прочтение3 мин
Количество просмотров31K

zsh logoО zsh не раз писали на хабре. Однако, и как те топики, и как мои личные наблюдения, показывают, что большинство людей, знакомых с zsh, используют его как bash с продвинутым автокомплитом. Да и тот (автокомплит) используют не на полную катушку.



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

Если вам интересно, и вы не сторонник холиваров, милости прошу
Всего голосов 64: ↑63 и ↓1+62
Комментарии34

Трюки, облегчающие жизнь в zsh

Время на прочтение11 мин
Количество просмотров27K
Zsh — одна из лучших командных оболочек, обладающая впечатляющим набором возможностей. Однако, из‐за большого количества возможностей нет ничего удивительного в том, что некоторые из них проходят мимо внимания или возможность их применения для решения повседневных задач неочевидна. В этой статье будут рассмотрены как несколько «встроенных» возможностей zsh, так и примеры непростого кода, облегчающие жизнь.
Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии8

Переход с bash на zsh

Время на прочтение12 мин
Количество просмотров199K

Чтобы перейти с bash на zsh необходимо знать базовые отличия между ними — без этого будет сложно провести первоначальную настройку zsh в ~/.zshrc.


Я не нашёл краткого описания этих отличий когда переходил сам, и мне пришлось потратить немало времени на вычитывание документации zsh. Надеюсь, эта статья упростит вам переход на zsh.


Зачем переходить


Для начала — а стоит ли вообще тратить своё время и внимание на переход? Учить ещё один диалект sh, менее распространённый чем POSIX sh или bash, заново заниматься настройкой рабочего окружения…


На мой взгляд, если вы проводите много времени в консоли, вам нравятся Vim или Emacs и вы уже потратили немало времени на их настройку "под себя" — однозначно стоит! Zsh по духу очень на них похожа: это очень сложная и гибкая программа, чьи возможности полностью мало кто знает, но потратив некоторое время на настройку можно получить очень удобную лично вам рабочую среду.

Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии118

Bash скрипты

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров134K

Работа с командной строкой Linux & Shell скрипты для начинающих.

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

В этой статье мы обсудим основы написания сценариев bash, включая переменные, команды, ввод/вывод и отладку. Каждый пункт сопроводим примерами.

Начнем.

Читать далее
Всего голосов 16: ↑9 и ↓7+6
Комментарии81

Нюансы разработки парсера для своего языка программирования

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров12K

image


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


Я решил не сильно париться, поэтому использовал библиотеку parglare. Она очень легкая и удобная, всем рекомендую. Для описания синтаксиса парсер принимает строку в соответствующем формате, использует регулярные выражения (не надо осуждать регулярки, они всесильны!).

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


Ведь в жизни практически любого программиста может наступить момент, когда ему в голову приходит светлая идея — разработать свой собственный язык программирования. Может быть и не ради захвата мира, наравне с C/C++, Python или хотя бы PHP, а в качестве личного пет-проекта, с которым он, длинными зимними вечерами будет оттачивать собственное мастерство.


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


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

Читать дальше →
Всего голосов 25: ↑23 и ↓2+28
Комментарии55

NudeCrawler: Голый ползун по женщинам на телеграфе

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров89K

Nudecrawler - паук для поиска голых женщин.

Читать далее
Всего голосов 144: ↑134 и ↓10+167
Комментарии135

Ассоциативная память без нейросетей + генерация текста

Время на прочтение9 мин
Количество просмотров2.4K

Когда‑то давно ко мне пришла идея реализовать алгоритм основанный на цепочках символов. Этот алгоритм выделяет в тексте несколько последовательностей символов, и таким образом производит его анализ. Этот алгоритм в какой‑то мере похож на метод построения N‑грамной модели, разница лишь в том, что он строит последовательности символов переменной длины. Как это делается я расскажу немного ниже. В результате алгоритм мог сравнивать тексты друг с другом и находить степень похожести между ними. Я приспособил его для того, чтобы отсеивать ранее известные тексты, и выбирать только те, которые обладают наибольшей уникальностью на момент анализа. Результат работы алгоритма можно посмотреть здесь: http://luksian.ru

Расскажу вкратце суть идеи. Например, у нас есть текст ABCABD. Из этого текста можно выделить следующие последовательности из двух символов: AB, BC, CA, AB, BD. Здесь видно что последовательность AB встречается два раза, а за этой последовательностью в каждом случае следуют разные символы. Такая ситуация считается конфликтом который необходимо разрешить. Для этого создаются новые последовательности символов: ABC и ABD. Последовательности из этих трех символов в тексте встречаются по одному разу, поэтому конфликт считается разрешенным, больше неоднозначностей в тексте не наблюдается. Разумеется, в обычном тексте написанном на простом человеческом языке для разрешения конфликтов иногда может потребоваться построить гораздо более длинные цепочки символов чтобы можно было найти между ними разницу. И вот недавно я вспомнил об этом алгоритме и попробовал его исследовать поподробнее.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии6

Как изучать SQL в 2023 году

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров111K

В 2023 году SQL (Structured Query Language) остается одним из самых популярных языков программирования, используемых в области баз данных и аналитики данных. Изучение SQL может быть полезным как для тех, кто только начинает свой путь в IT, так и для опытных профессионалов, которые хотят расширить свои знания и навыки. В этой статье мы рассмотрим несколько советов и ресурсов, которые помогут вам изучать SQL в 2023 году, и оставаться в курсе последних тенденций и изменений в этой области.

Согласно данным сайта Indeed.com, в 2023 году требования к кандидатам в вакансиях, связанных с базами данных и анализом данных, включают знание SQL в качестве обязательного навыка. Некоторые из таких популярных вакансий включают в себя SQL Developer, Data Analyst, Database Administrator, Business Intelligence Analyst и другие. Согласно данным сайта Glassdoor, зарплата специалистов, владеющих навыками работы с SQL, может составлять от $50 000 до $100 000 в год в зависимости от региона и уровня опыта. В связи с этим, изучение SQL может быть полезным для тех, кто хочет улучшить свои шансы на рынке труда и получать высокую заработную плату в IT-сфере.

Читать далее
Всего голосов 36: ↑31 и ↓5+32
Комментарии57

Аппаратные закладки под микроскопом. Обнаружение

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров36K

Дисклеймер. Много лет в сообществе технических специалистов идёт дискуссия о возможности внедрения троянов в популярные коммерческие микросхемы. К сожалению, в этот чисто технический вопрос вмешиваются политические аргументы: мол, давайте переходить на российские процессоры, потому что в западных чипах закладки! Такой типичный FUD (см. контрпропаганду на Хабре). Кстати, американские коллеги используют такие же аргументы, но против китайских микрочипов. Похоже, политики любят использовать «пугалки» для принятия выгодных решений, ведь искусство политики древнее самого человечества.

Хотим ещё раз подчеркнуть: мы исследуем эту тему исключительно в общемировом контексте как важную область микроэлектроники и информационной безопасности. А как используют данные факты ангажированные представители индустрии и политики — пусть останется на их совести.
Читать дальше →
Всего голосов 67: ↑58 и ↓9+73
Комментарии50

SQL-инъекции для самых маленьких

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров102K

Мы переходим к технической части статей про тестирование на проникновение. И начнем как всегда с внешнего пути – с эксплуатации веб уязвимостей. И начнем мы с SQL – инъекций.

SQL-инъекция (SQLi) - это уязвимость веб-безопасности, которая позволяет злоумышленнику вмешиваться в запросы, которые приложение делает к своей базе данных. Как правило, это позволяет просматривать данные, которые он обычно не может получить. Это могут быть других пользователей, или любые другие данные, доступ к которым имеет само приложение. Во многих случаях злоумышленник может изменять или удалять эти данные, вызывая постоянные изменения в содержимом или поведении приложения.

Читать далее
Всего голосов 17: ↑13 и ↓4+12
Комментарии12

Продукты российских разработчиков: начинаем с Астра Линукс (Astra Linux)

Время на прочтение7 мин
Количество просмотров51K

Astra Linux — крупный игрок на рынке информационных технологий в России. Компания производит отечественное ПО, в том числе защищенные операционные системы и платформы виртуализации. Продукты разработчика входят в реестр Минкомсвязи России, используются крупнейшими государственными структурами страны, министерствами и корпорациями. Он является членом ассоциации «Руссофт» и АРПП, лауреатом национальных и международных премий. Список заслуг и достижений достаточно внушительный, что и стало главным стимулом более детального знакомства с основными продуктами.

Читать далее
Всего голосов 23: ↑10 и ↓13+4
Комментарии72

Когда один TCP-порт может быть поделён

Время на прочтение19 мин
Количество просмотров14K

Вы замечали, как простые вопросы иногда приводят к сложным вопросам? Сегодня мы попытаемся подступиться к одному из таких вопросов. Категория — наша любимая: сетевые аспекты Linux.

Читать далее
Всего голосов 21: ↑17 и ↓4+17
Комментарии6

Как настроить Alpaca (аналог ChatGPT) на своём арендованном сервере. Гайд для самых маленьких

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров41K

После публикации https://habr.com/ru/news/t/723638/ меня попросило несколько человек написать гайд для новичков, как же это всё запустить поиграться где-нибудь на арендованном сервере, если локальная машина не позволяет? На всё про всё нам потребуется минут 20 и сто рублей денег.

Но уже появились бесплатные варианты на HuggingFace

Читать далее
Всего голосов 28: ↑28 и ↓0+28
Комментарии45

История о том, как фронтендер YaLM 100B на одной RTX 3070 TI запускал

Время на прочтение5 мин
Количество просмотров7.6K

В июне Яндекс опубликовал нейросеть YaLM 100B. Нейросеть умеет генерировать тексты. А это очень мощная вещь, можно попробовать массу всего полезного (и не очень) создать с ее помощью, от сюжетов для книг, игр и приложений, заканчивая рерайтом статей или того хуже, дорвеями.

Эта штука имеет лицензию Apache 2.0. Но чтобы запустить нужно ~ 200GB GPU  видеопамяти!

И еще есть нюанс, проверить нейронку в работе, не так-то просто. Яндекс не предоставили ни демок, ни инструкций, как запустить бюджетно YaLM 100B. Пока все ждут урезанную или онлайн версию, я познакомился с ней поближе. Об этом и лонгрид. 

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

Поехали!
Всего голосов 25: ↑18 и ↓7+19
Комментарии17

Яндекс выложил YaLM 100B — сейчас это крупнейшая GPT-подобная нейросеть в свободном доступе. Вот как удалось её обучить

Время на прочтение10 мин
Количество просмотров119K

Больше примеров — в конце поста

В последние годы большие языковые модели на архитектуре трансформеров стали вершиной развития нейросетей в задачах NLP. С каждым месяцем они становятся всё больше и сложнее. Чтобы обучить подобные модели, уже сейчас требуются миллионы долларов, лучшие специалисты и годы разработки. В результате доступ к современным технологиям остался лишь у крупнейших IT-компаний. При этом у исследователей и разработчиков со всего мира есть потребность в доступе к таким решениям. Без новых исследований развитие технологий неизбежно снизит темпы. Единственный способ избежать этого — делиться с сообществом своими наработками.

Год назад мы впервые рассказали Хабру о семействе языковых моделей YaLM и их применении в Алисе и Поиске. Сегодня мы выложили в свободный доступ нашу самую большую модель YaLM на 100 млрд параметров. Она обучалась 65 дней на 1,7 ТБ текстов из интернета, книг и множества других источников с помощью 800 видеокарт A100. Модель и дополнительные материалы опубликованы на Гитхабе под лицензией Apache 2.0, которая допускает применение как в исследовательских, так и в коммерческих проектах. Сейчас это самая большая в мире GPT-подобная нейросеть в свободном доступе как для английского, так и для русского языков.

В этой статье мы поделимся не только моделью, но и нашим опытом её обучения. Может показаться, что если у вас уже есть суперкомпьютер, то с обучением больших моделей никаких проблем не возникнет. К сожалению, это заблуждение. Под катом мы расскажем о том, как смогли обучить языковую модель такого размера. Вы узнаете, как удалось добиться стабильности обучения и при этом ускорить его в два раза. Кстати, многое из того, что будет описано ниже, может быть полезно при обучении нейросетей любого размера.
Читать дальше →
Всего голосов 123: ↑122 и ↓1+164
Комментарии139

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность