Digitable: Channel
132 subscribers
143 photos
12 videos
3 files
106 links
digitable.ru | Твой путеводитель в разработке ПО, от стажера/джуна до техлида, ex-workers и workers Microsoft, Xsolla, Roadmunk, Adjust, Контур, НЛМК, Т1, Аквелон
Download Telegram
#видеозаписи

Слова «Функциональное программирование» и «JavaScript» нечасто оказываются рядом. Но тем интереснее об этом послушать!

В первый #ТяжелыйПонедельник года открываем запись для всех, кто готов расширить кругозор.

YouTube | VK Видео

Скачать презентацию с сайта HolyJS
🔥5
Forwarded from thg (Marat Zimnurov)
#softskills #management #исскуствообщениявсети #книги #искусствообщения #тимлидинг

Часто наблюдаю потребность людей решить всё через чат (речь не про "зуммеров", что боятся поговорить 1:1, а вообще в целом нежелание посещать встречи для проговаривания)

Но такие переписки превращаются в long-read-ы, которые человек, как агентная модель может держать контекст на 20к токенов. Попробуйте вспомнить два-три треда на 100+ сообщений, в которых вы активно что-то обсуждали, и сразу же сказать какие там на выходе AI сложились?

Логика в том, что асинхронное общение работает, когда у вас нет дедлайнов вообще.
Так, например, устроены #random или Reddit или форумы, на которых не требуется получить "мгновенный ответ".

В личных чатах, к примеру, нет "сроков" чаще всего, поэтому там все треды/топики идут без привязки к теме. Мало, кто в личных сообщениях следует логике #тема сообщения, а к примеру чрезмерная формализация превращается в wiki, и чаще всего в бизнесовый.

По сути, все ваши "онлайн/оффлайн встречи" – это закрепление контрактов. Воспринимайте их так.

Например, вы можете обсудить фильм в личной переписке
Например, вы можете спланировать поход на фильм в личной переписке

Однако, как только вы (кто-то из вас) понимаете, что похоже за пару сообщений вопрос решить невозможно – нужна синхронная встреча (или грубо говоря это асинхронная встреча с минимальный delay).
То есть, нужно за раз согласовать "контракт" на просмотр кино. Это может быть встреча на 15 / 30 / 45 / 60 минут, всё что угодно.
Это может быть элемент Agenda на встречу, если initial вопрос составляет 5-10 минут для "контракта", а цена организации встречи занимает кратно больше, тогда ведётся collection под Agenda.

Вопрос – как понять когда?

В целом, рекомендую пользоваться следующим паттерном/приёмом/мозговой установкой:

1) Если тред набирает 5-10 сообщений, а проблема не решена → созвон на 15-20 минут
2) Если в рамках созвона контекст не удаётся собрать и решить проблему → созвон на полчаса/час под запись с уже собранным контекстом и вопросами
3) Если в рамках созвона уже с контекстом не удаётся договориться → начинается эскалация, в случае если одна система не адаптируется под другую
4) Дальше подключается фасилитатор, если и у него не выходит → эскалация продолжается

Обычно всё заканчивается на третьем шаге, работает как швейцарский нож

По тому, что зачем "записывать" встречу:
- Многие могут с вами начать спор прямо в тексте, если таких текстовых встреч ведётся тысячи параллельно, гарантия "не найти" сообщение крайне высока, а ещё текст не передаёт эмоции, "зумеры", вон, дефолтный ":)" перенесли в пассивную агрессию, в следствии, под запись под публикацию люди обычно ведут себя сдержаннее и готовятся к встрече, а если не готовы, часто идут на компроммисы, это элемент психологии в том числе темного эмпата, которая полезна для рабочего пространства.
- Многие встречи обычно проводятся "высокоуровнево" с выделением основных нарративов.

AI из встречи: "Мы идём в кино на хоррор, в выходной"
AI из переписки: "Мы идём на мультик про бетмена, в субботу в 14:00, билеты купил, ты должен 42 рубля"

Причём второй AI легко появляется при наличии первого. Так как первый и был "открытием контекста" или "топика"

По тому, что почитать на похожий нарратив как точку входа:

- Дейл Карнеги – Как выработать уверенность в себе и влиять на людей, выступая публично
- Дейл Карнеги – Как располагать к себе людей
- Дейл Карнеги – Секрет общения с людьми
- Максим Батырев – 45 татуировок менеджера
- Николай Мрочковский - Экстремальный тайм-менеджмент
- Роб Коул - Блистательный Agile
- Джон Харгрейв - Mind hacking. Как перенастроить мозг за 21 день
- Сунь Цзы - Искусство войны
- Лао Цзы - Книга пути и достоинства
🔥2
Digitable: Channel
#proprietary #ide #cursorai #development По сути очередной клон OSS, но в этот раз предлагает прикольный usability. Что под капотом? - VS Code (видать OSS, потому что не все extensions ставятся) - Прослойка к своим моделям для Tab fill, Chat with codebase…
This media is not supported in your browser
VIEW IN TELEGRAM
#opensource #ideplugins #llm #ai #aiagent #development

Очередной опен-сорсный AI плагин для IDE чтобы агенты сами за вас всё делали, а вы отдыхали

Альтернативой для Cursor AI является continue.dev, который точно так же выглядит, но просто Extension

А вот уже альтернативой к continue.dev будет cline
Такой же агент, но он уже параллелит свою работу - объясняет и сразу же редачит код
Из забавных плюсов - доступ к браузеру (на гифке есть пример)

Offtop: Осталось только найти 1.5 TB VRAM чтобы запустить DeepSeek V3 self-hosted и можно отключаться от интернетов гг

Ссылки:

- Cline: https://github.com/cline/cline
- Continue DEV: https://github.com/continuedev/continue
🔥1💯1
#memes #ai #books #deepseek #aicluster #facts

P.S:
В целом, это одна из тех книг, что может заставить Вас смеяться или глубоко задуматься. Заодно узнаете побольше про 42.

P.P.S:
DeepSeek V3 671B в исходном виде примерно требует 1.5TB VRAM для запуска self-hosted. По текущим ценникам, это примерно 500к баксов или up to 50 млн рублей.

P.P.P.S:
Можно запустить кластер из всех домашних девайсов + каких-нибудь одноплатников с парой видеокарт и DeepSeek V3 в сжатом 8B-40B может работать более чем, ссылка на утиль – https://github.com/exo-explore/exo
Сделал свой chrome extension, чтобы повысить вашу скорость чтения гг

Биологический хак для чтения кода: Bionic Reader для программистов

#browser #extension #opensource #speedread #bionicreader #bionicreading #programming #productivity #reading

TL;DR для занятых

- Расширение для Chrome, которое делает чтение кода и документации быстрее
- Поддерживает русский и английский языки с гибкими настройками
- Адаптивное выделение для длинных слов
- Open source, без трекеров

## Проблема

Каждый программист сталкивается с этим ежедневно:
- Тонны документации
- Километры чужого кода
- Бесконечные PR на ревью
- Статьи на Хабре по диагонали
- Технические спецификации

Мозг устает от постоянного парсинга текста. Особенно когда автор не заморочился с форматированием и структурой.

Как работает наш мозг при чтении

1. Сначала учимся читать по буквам
2. Потом по слогам
3. Дальше целыми словами
4. Продвинутые читают фразами ("дорогие дамы и господа" = один блок)

Но даже опытные читатели спотыкаются на плохо структурированном тексте. Мозгу нужны точки фиксации.

Решение: Bionic Reading с адаптивным выделением

Основная идея проста:

- Выделяем начало каждого слова жирным
- Мозг цепляется за эти "якоря"
- Достраивает остальное автоматически
- Скорость чтения увеличивается

Дополнительно:

- Для длинных слов используется адаптивное выделение
- Процент выделения зависит от длины слова
- Гибкие настройки для каждого языка

Почему моя версия

1. Работает с русским языком:
- Гибкие настройки длины выделения (2-12 символов)
- Учет особенностей языка
- Адаптивное выделение для длинных слов

2. Чистый код в функциональном стиле:
- Композиция функций через pipe
- Чистые функции
- Явное управление состоянием
- Тесты с >80% покрытием

3. Для разработчиков:
- TypeScript с строгой типизацией
- Автоматический деплой через GitHub Actions
- Semantic versioning
- Легко добавить новый язык

4. Никакого bloatware:
- В коде нет телеметрии
- Нет рекламы
- Нет freemium-ограничений
- Минимум permissions

Технические детали


// Конфигурация для языков
{
languages: {
ru: {
pattern: /[а-яА-ЯёЁ]/,
boldLength: 3,
minBoldLength: 2,
maxBoldLength: 12
},
en: {
pattern: /[a-zA-Z]/,
boldLength: 2,
minBoldLength: 1,
maxBoldLength: 12
}
},
constants: {
longWordThreshold: 6,
boldPercentage: 0.3,
minBoldPercentage: 0.2,
maxBoldPercentage: 0.5
}
}

// Основная логика с адаптивным выделением
const calculateBoldLength = (word: string, language: string): number => {
if (word.length > config.constants.longWordThreshold) {
const percentLength = Math.ceil(word.length * config.constants.boldPercentage);
const minLength = Math.max(
Math.ceil(word.length * config.constants.minBoldPercentage),
config.languages[language].minBoldLength
);
const maxLength = Math.min(
Math.ceil(word.length * config.constants.maxBoldPercentage),
config.languages[language].maxBoldLength
);
return Math.min(Math.max(percentLength, minLength), maxLength);
}
return config.languages[language].boldLength;
};


Как использовать

1. Установить расширение
2. Настроить длину выделения для каждого языка
3. Profit! Теперь начало каждого слова выделено с учетом его длины

Особенно полезно для:

- Чтения документации
- Ревью кода
- Технических статей
- Спецификаций
- Любых длинных текстов

Полезные ссылки

- [Оригинальный Bionic Reading](https://bionic-reading.com/)
- [Научное обоснование](https://www.oxfordlearning.com/what-is-bionic-reading-and-why-should-you-use-it/)
- [Reddit тред с обсуждением](https://www.reddit.com/r/coolguides/comments/ut3x75/bionic_reading_does_this_help_you/)


Репозиторий: https://github.com/the-homeless-god/chrome-bionic-reader/

Страница в магазине: https://chromewebstore.google.com/detail/chrome-bionic-reader-%D0%B1%D0%B8%D0%BE%D0%BD/bofckkbophijgakfoeihfmnjfphcabhi?authuser=0&hl=ru
🔥2
Немножко доделал плагин авто-линковки для локальной базы данных / системы ведения заметок Logseq (а-ля Obsidian только open source)

#logseq #plugin #opensource #productivity #notes #i18n #russian #chinese #japanese #korean #weekenddevelopment #nightdevelopment


Что это и зачем?

Плагин который исходя из ваших предыдущих заметок позволяет создавать некоторый back-link как в Википедии

Чу поделав?

- Добавил мультиязыки
- Начал экспериментировать с NLP, плюс убрал case sensitive и так далее

GitHub: https://github.com/the-homeless-god/logseq-automatic-linker-international

https://logseq.com/

И в магазине расширений LogSeq также доступен по ключу logseq-automatic-linker-international

Всё началось с того, что я активно использовал Logseq для ведения заметок на русском языке. Плагин Automatic Linker отлично работал с английским, но с русским текстом возникали проблемы:

- Ссылки не создавались для русских слов
- Путаница с регистром букв
- Проблемы с пробелами в названиях
- Я заметил, что пользователи из Китая, Японии и Кореи сталкивались с похожими проблемами. Решил это исправить! (у челика там issue висит, а оригинальное репо мертво)

Добавил тестов и пошел переписывать

1) Добавил поддержку следующих языков:

- Русский 🇷🇺
- Китайский 🇨🇳
- Японский 🇯🇵
- Корейский 🇰🇷
- Немецкий 🇩🇪

2) Улучшил обработку:

- Unicode символов
- Смешанного текста
- Специальных символов
- Пробелов в разных языках

Основной вызов был в правильной обработке Unicode. Вот ключевой фрагмент кода:


const parseForRegex = (s: string) => {
s = s.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&");
// Поддержка пробелов во всех языках
s = s.replace(/\s+/g, "[\\s\\u0020\\u00A0]+");
return s;
};


Также починил пачку багов и ускорил загрузку
🔥1
Forwarded from thg (Marat Zimnurov)
#speaker #conference #it #development #opensource

Пока я тут приболел, готовясь к отпуску, мой доклад заанонсирован на сайте CodeFest

Анонс доклада: https://15.codefest.ru/lecture/2893

Конфа будет в Новосибирске, с 31 мая по 1 июня

Обещают 3000+ участников.

Буду рассказывать там про монструозные отказоуйстоичивые файловые системы в веб 3.0, будет весело, подробнее в анонсе опять же https://15.codefest.ru/lecture/2893

Тг конфы: https://t.me/cdfst
Сайт конфы: https://15.codefest.ru/

Всех обнял-приподнял, schone Wochenende
🔥1
Forwarded from thg (Marat Zimnurov)
#speaker #conference #it #development #opensource

Пока я тут приболел, готовясь к майским, мой доклад заанонсирован на сайте Музея криптографии

Анонс: https://cryptography-museum.ru/events/konferencija-kriptografija-v-blokchejnah

Конфа будет 18 мая в Москве, ВДНХ

Буду рассказывать про то, как можно шифровать данные в вычислениях с помощью ген алгоритмов и фп

Там еще много всего про веб3 будет

Сайт музея: https://cryptography-museum.ru/events
Тг DeFrens: https://t.me/defrensorg
🔥1
#books #education #programming #base

Список рекомендуемых книг к прочтению из академической или so close среды для self-learning

- Аристотель – Риторика – база логики, 2к лет прошло, особо ничего не менялось
- Челпанов – Логика – если не потянули предыдущий труд
- Оксфорд – Very short introduction – серия по разным направлениям
- Гилберт – Линейная алгебра
- Романовский - Дискретный анализ
- Харари – Теория графов
- Ульман - Компиляторы
- Стендфорд – Essential C – можно обойтись курсом лекций а-ля youtube
- Стендфорд - CS107 – открытый курс

Почему мало академ. книг по проге?

В большинстве своём книги по проге пишут:
- либо авторы языков программирования
- либо группа идейных людей с концепциями
- либо просто пиар или авторитет по каким-то причинам (возьмите того же Мартина, сейчас мир начнёт пересаживаться на closure потому что он по нему написал книжку и начнут выкупать fp-идеи)

Однако базовые книги по проге уже есть: компиляторы, алгебра и можно нарыть книги по мт или lambda calculus.

В остальном, всё часто является частным случаем и предметом изучения в рамках монографий или огромных академических трудов развивается с трудом, так как последние 30 лет наиболее динамичное явление по развитию подходов и так далее. Может быть именно Вы напишите важный академический труд по разработке ПО.
🔥3👍2
#ai #memes

"Нейросети нас заменят", – говорили они, тем временем самые топовые модели, когда просишь их скачивать образ alpine...
🤣1
👍1💯1
😁4👍1
Forwarded from thg (Marat Zimnurov)
#speaker #conference #it #development #opensource #holyjs

Пока я в очередной раз приболел, мой доклад заанонсирован на сайте HolyJs, причём там всего 5 анонсировано пока что xD, обычно 50+, шизоидные доклады в топ! А вообще, айсберг шизы понял @DreamShaded , thanks man

Анонс доклада: https://holyjs.ru/talks/754a1a8e8fb448899b1da3fb158a6247

Конфа будет в Санкт-Петербурге, 20–21 ноября

Приходите, уровень шизы почти космос, но это так, надрыв ящика Пандоренов

О чём буду говорить? О том как жить в терминале, ладно-ладно, вот текст анонса

Цель моего доклада — рассказать, как с помощью развертывания фронтендов в терминале можно экономить ресурсы и упростить/ускорить/ушатать разработку в целом. Шапочки из фольги приветствуются!

«Эль. Пси. Конгру», — шепчете вы, запуская очередной графический редактор. Но что-то идет не так: ваша система отказывается запускать современные приложения, а драйверы видеокарты снова требуют обновления. В параллельных мирах линуксоиды уже давно нашли способ избежать этой участи, но вы все еще застряли в бесконечной петле установки GUI-приложений. «Я же говорил, что нужно было выбрать синюю таблетку терминала», — усмехается ваш внутренний Морфеус.

А что, если существует способ погрузиться в виртуальный мир без громоздких графических оболочек? Представьте: весь ваш рабочий стол — это всего лишь матрица символов, где каждый пиксель имеет значение. Как Кирито в SAO, мы нырнем в глубины системы, где Chrome превращается в ASCII-арт, VS Code живет в tmux-окнах, а любимые игры стримятся прямо в терминал.

Мы создадим свой Акихабара прямо в консоли, где NetBSD встречается с современным JavaScript, а контейнеры с Podman танцуют в облаках. Расскажу, как превратить терминал в портал между мирами: запускать современные приложения там, где их быть не должно, эмулировать целые системы через QEMU и пробрасывать графику через временные врата.

Вы узнаете, как избавиться от оков графического интерфейса и построить свою «Консольную Арт Онлайн», где каждая команда — это шаг к новым возможностям.

Мы даже научим ИИ понимать этот пиксельный мир лучше, чем когда-либо! Эль. Пси. Конгру. Это выбор Врат Терминала!

Что расскажу и покажу:

- Как еще можно улучшить процесс E2E ваших веб-сайтов и мобильных приложений.
- Как можно удешевить запуск E2E на инфраструктуре.
- Как можно улучшить и применить ML-/AI- методы к E2E.


Тг конфы: https://t.me/holyjsconf
Сайт конфы: https://holyjs.ru/

Всех обнял-приподнял, schöne Wochenstart
🔥4
#articles #habr #functionalprogramming

На Хабр опубликовали статью, по сути пересказ доклада с Holy.js по функциональному программированию

Гугл, конечно же, сразу понял, что ее нужно закинуть мне в реки, не понимая, что я ее и писал

https://habr.com/ru/companies/avito/articles/926544/ От Аристотеля до Тьюринга: что такое функциональное программирование и как оно облегчает жизнь / Комментарии / Хабр
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
#opensource #browser #development

Наткнулся на новый браузер Zen, который типа должен сделать дзен, IDK

Шустрый, глянцевый, современный

Особенности:

- Минималистичный дизайн (можно выключить всё ненужное вплоть до стрелок back и forward в history, унесли строку поиска в решение а-ля rofi / dmenu / spotlight, sidebar вместо tab-bar, компактность, split view для вкладок )

ЕМНИП, в chromium висит split view в следующие патчи, в Zen он уже доступен

- Сделан на базе firefox (35k звезд на github)

Website: https://zen-browser.app/

GitHub: https://github.com/zen-browser
👍5
#digitable #opensource #tools #it

Захостил на базе проекта (https://github.com/CorentinTh/it-tools) портал https://tools.digitable.life/

Можно тыкать, использовать и делиться ОС

Что на нем есть и почему он нужнее чем LLM/GPT?

Во-первых, он бесплатный
Во-вторых, это open source
В-третьих, в нем:

- Все виды базовых крипто-генераторов (токены, rsa, uui, шифра, pdf sign checker),
- Затем там есть конвертеры (второй скриншот, например дат, base 64, цветов, json в yaml и наоборот, в том числе и markdown в html)
- Также всякие веб-приколы, а-ля инфо о девайсе, парсер ссылок, jwt parser, wysiwyg editor, http status codes, json diff)
- Генераторы QR кодов (в том числе и для вашей wifi сети) и запись с веб-ки
- Сетка читов по git-у, нормализованные почты, чит по regex
- Калькуляторы сетей и прочее
- Базовая математика (мое любимое – расчет ETA и проценты)
- Таймеры, конвертер температур и бенчмарков
- Генераторы Lorem Ipsum, обфускатор строк, пикер эмоджей и ascii art generator

В общем, пользуйтесь, и друзьям покажите, постепенно буду публиковать в том числе и ссылки на основном портале с услугами (digitable.ru), а в digitable.life будут именно полезные инструменты
🔥1