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

Открыл для себя новый браузер Arc

Умеет искать по запросу, также присутствуют вкладки и ad blocker

При первом открытии — сразу же спрашивает о чем запрос

Затем предлагает искать стандартно или с помощью AI-режима

К сожалению, проприетарный

Для девелоперских запросов подсвечивает общие идеи и названия библиотек

Жду когда сделают опенсорсную альтернативу

https://arc.net/


Работает в том числе и на десктопе
1
#ide #opensource #atom #pulsar #github

Pulsar 🚀 ⚛️

Нашел поддерживаемый коммьюнити форк Atom-а, IDE сделанной GitHub, когда VS Code ещё не был популярен и когда Microsoft, купив GitHub не закрыла Atom

Лендинг: https://pulsar-edit.dev/
Репозиторий: https://github.com/pulsar-edit
#music #tty #terminal #yandexmusic #opensource

Yandex Music в вашем терминале :3

Инструкция:


brew install go
go install github.com/dece2183/yamusic-tui@latest
cd ~/go/pkg/
./yamusic-tui


На этом этапе у Вас спросит токен, топаем сюды https://yandex.cloud/ru/docs/iam/concepts/authorization/oauth-token

И жамкаем на кнопку со скриншота либо топаем сюды https://oauth.yandex.ru/authorize?response_type=token&client_id=1a6990aa636648e9b2ef855fa7bec2fb

После попадете на https://oauth.yandex.ru/verification_code и по середине экрана будет Ваш токен

Наслаждайтесь, на кнопку l - лайкать, стрелками переключаться, пример конфига в закрепе комментов

GitHub Repository: https://github.com/DECE2183/yamusic-tui
❤‍🔥2🔥1
#opensource #tty #terminal #monitoring

Полезный тулинг-лист для управления системой из-под терминала (всё как всегда, долой стандартный gui поверх х-ов или wayland)

1) Самое простое это питонвский bpytop (на скриншоте 1)

Работает как ресурс мониторинг а-ля top -H

https://github.com/aristocratos/bpytop

2) Ушедший с поддержки Edex UI (на скриншоте 2)

Тула настолько монстр что получила премию на OSS Award

Что в коробке?

- Эмуль терминала + всякие приколы поверх curses (старый способ рисовать окна в консоли, на смену ему придет `ncurses`)
- Отображение ресурсов (CPU, RAM, swap, processes) и network (GeoIP, active connections, transfer rates) monitoring.
- Поддержка сенсорных экранов
- Файловый менеджер
- Кастомные темы
- Звук

https://github.com/GitSquared/edex-ui

В том числе легко пробрасывается vim и прочее (скриншот 3)

Установка обоих в комментах в закрепе
1
#proprietary #ide #cursorai #development

По сути очередной клон OSS, но в этот раз предлагает прикольный usability.

Что под капотом?

- VS Code (видать OSS, потому что не все extensions ставятся)
- Прослойка к своим моделям для Tab fill, Chat with codebase и так далее
- Прослойка к публичным Open AI моделям и прочим сервисам

Экспертное мнение:

Стоит ли оно того?

Определенно, да, видимо придется переосмыслить свой подход к разработке и посмотреть насколько это забустит, ведь можно в кодовой базе держать не только код, но и всякие работы для написания статей, стартапов и так далее, ведь .md - тоже код.

Под катом в комментах:

- Как экспортировать ваши vs code extensions
- Скрины изнутри с примерами что происходит и зачем


Pricing: Есть бесплатная версия, есть подписка 20$ / баксов
Official website: https://www.cursor.com/
YouTube: https://www.youtube.com/watch?v=23in9xpt-FE
#zettelkasten #knowledgebase #logseq

Один немецкий статист прошлого столетия оптимизировал свою систему ведения заметок таким образом, что в итоге за жизнь написал примерно 70-80 книг и около 900 научных статей.

Весь прикол в том, что он писал заметки особым образом и использовал строгую концепцию по их ведению.

По-факту, эта история называется сейчас как "Второй мозг"

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

Помните байку про "Подумал о чём-то? Запиши, а то забудешь!"?

Ну так вот, многие из нас ведут заметки или записи хрен пойми как. Кто-то в Notion, кто-то в Google Docs, кто-то в Notes, кто-то по-умнее и скачал Obsidian, кто-то еще умнее и поставил Logseq.

В целом, систем-то очень много. Вопрос как в них писать эти самые заметки?

Поехали по порядку.

Зачем?

Создание Zettelkasten в Logseq – отличный способ организовать знания. Это мощный метод, который поможет связать идеи, создать структурированную сеть знаний и упрощать поиск информации.

Основные принципы Zettelkasten:

- Связывайте заметки: Каждая заметка должна быть связана с другими заметками через контекст или тематику.
- Уникальные идентификаторы: Можно использовать временные метки (например, 202412181230) или просто имена, связанные с содержанием.
- Минимальная структура: Создавайте заметки с одной ключевой идеей, чтобы избежать перегрузки информации.

Структура работы:

- Используйте Daily Notes как рабочий инструмент:

1) Каждый день фиксируйте идеи, задачи, мысли.
2) Выделяйте важные части для превращения их в отдельные страницы/узлы.

- Создание страниц (atomic notes):

1) Ключевая идея = одна страница. Например, вместо "Заметки по книге" сделайте страницы вроде: Как внедрить привычки или Роль мотивации в обучении.
2) Оформляйте короткие заметки и связывайте их через [[ссылки]].

- Хештеги:

1) Хештеги полезны для широких категорий (например, #психология, #проект_А).
2) Не заменяйте связи ссылками – это разные механизмы. Хештег создаёт контекст, а ссылка – глубокую связь.

- Ссылки между заметками:

1) В новых заметках ищите, к чему они могут относиться.
2) Например, если заметка связана с уже существующей идеей, добавьте ссылку на неё.

Как работать с TODO в Zettelkasten:

- Не перегружайте TODO-список:

1) Если задач много, создайте страницу вроде #TODO или Задачи, и перемещайте туда все задачи из Daily Notes.
2) Уточняйте действия: вместо Сделать отчетПодготовить слайды для отчета (дедлайн 20.12).

- Проверяйте задачи ежедневно:

В конце дня просматривайте TODO и переносите невыполненные задачи вперёд. В Logseq для этого даже плагин есть.

Рекомендации по оптимизации:

- Используйте "Би-линки" (Backlinks):

В конце заметки добавляйте ссылки на страницы, где эта идея упоминается. Например: См. также: [[Привычки]].

- Создавайте индексы:

Сделайте страницу "Индекс", где вручную соберите ссылки на ключевые темы и группы заметок.

- Автоматизируйте хештеги и TODO:

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

- Рефакторинг заметок:

Регулярно пересматривайте старые заметки, добавляйте связи, уточняйте идеи.

Соб-сна шаблон для заметок:


# Заметка: [[Название заметки]]

## Ключевая идея
Здесь кратко описывается основная мысль.

## Связи
- Связано с: [[Другая заметка]], [[Идея Х]].
- Категория: #тема.

## Развитие идеи
Здесь можно уточнить детали, добавить аргументы, примеры и цитаты.


Сделайте свой второй мозг :3
👍1
#видеозаписи

Слова «Функциональное программирование» и «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