fa
Feedback
[ $davids.sh ]

[ $davids.sh ]

رفتن به کانال در Telegram

high load, ai и clientful (и немного gamedev) С 🖤 от @david_shek

نمایش بیشتر
396
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+47 روز
+330 روز
آرشیو پست ها
🔥 Подъехала моя новая методичка, так еще и по фронтенду 🔥 [ widget-sliced-design.davidshekunts.ru ] > Архитектура фронтенда, которой никогда не понадобится рефакторинг WSD – это одно из лучших открытий в моей карьере программиста. Оно настолько логично повторяет то, как устроен фронтенд, что идеально ложится под любые задачи. Я использую этот подход уже лет 7 и ни разу не было кейса, когда он создавал бы мне проблемы или подводил. Звучит как мифическа “серебряная пуля”? Буду глупцом, но черт возьми, скажу “да”, потому что оно сработало в каждом моем кейсе. Не веришь? Докажи обратное, атеист. Ребята, просьба: глава "Правила структурирования" получилась ооочень сложной и оттого пугающей, при том, что мысль там крайне простая: "клади по папкам, если выше и Х переиспользуй, если ниже и Х не переиспользуй" – пожалуйста, помогите переформулировать так, чтобы стало понятно [ $ echo "всем_мощной_прокачки" ]

💰 Такой дорогой (а теперь бесплатный) 301 редирект 301 редирект – это когда вы открываете домен, запрос доходит до сервера,
💰 Такой дорогой (а теперь бесплатный) 301 редирект 301 редирект – это когда вы открываете домен, запрос доходит до сервера, он возвращает 301 HTTP status и куда идти, а вы туда и идите Особенно важно, когда вы перенесли свой контент в новое место или у вас много ссылок, которые ведут на один и тот же контент DNS записи не имеют REDIRECT, что крайне прекскорбно, потому что звучит как неплохая идея в стиле symlink, поэтому что-то на каком-то сервере должно принять запрос по домену и ответить куда идти По-классике это nginx на вашей VPS, по-современному возможность в UI хостинга назначить это правило и он сам будет редиректить В Cloudflare и Vercel есть аж 3 варианта: Workers, Routers и Page Rules – каждый дает возможность А вот чего нет у Cloudflare и Vercel? В чем их выигрывают российские площадке? Верно, у них нет возможности нормально работать на территории РФ, а это серьезное бизнес-преимущество, поэтому пиршлось на них перейти Проблема – ни у одного из провайдеров нет функции редиректа в стиле, как я описал выше, а значит мне для моей задачи иметь 4 книжни с 4-мя длинными и сокращенными доменами придется брать VPS за 500 рубасов, чтобы разместить там nginx на 301 редирект Буду ли я так делать? Нет, я лучше сожгу книги (уверен, что Достоевский по той же причине это сделал) Но если прямого решения нет, а цель ясна: "бесплатный 301 редирект" – надо искать обходные пути... И он найден Яндекс.Клауд – единственные ребята, которые дают "встроенный редирект": создаешь S3 бакет, привязываешь домен, назначаешь его "бакетом-сайтом" и включаешь с него редирект на другой бакет-сайт Так вот, вместо того, чтобы сделать select с выбором других своих "бакет-сайтов" они дали возможность просто вписать произвольную строчку (что в реальности так всегда и будет), а значит что? Значит, можно вписать любой домен, на который оно будет редиректить Прописываем нужный домен и получаем абсолютно бесплатный 301 редирект Пользуйтесь и берегите золотые 🪙

🦀 Крабус умный, крабус железный Решил по-приколу прикинуть прикинуть: какое железо нужно, чтобы собрать умного ИИ ассисстентна тамагочи в формфакторе, чтобы на брелок повесить Вот примерное железо: - Wifi + BLE + RFID + NFS - Mic + Speaker + 3 buttons + USB + SD Card + (Touch) Screen - SIM + GPS - Battery xxxx Пришел к 2-м вариантам реализации: - "Малой" – микроконтроллер типа ESP32, которому я говорю что-то в микрофон, или отправляю сообщение через приложение, оно переотправляется в OpenClaw на моем серваке и кло принимает решение какие подключенные девайсы надо вызвать, отправляет команды для их вызова Малому, Малой делает что нужно и возвращает результат - "Старшой" – линуксовая тачка, на которой крутится ZeroClaw, claude cli / codex, чтобы использовать подписку и даже, возможно, какие-то локальные МЛ-ки (да, такое уже возможно). Сам обрабатывает сообщения и сам принимает решение что делать - "Посерединок" – линуксовая тачка, но сама почти ничего не делает, просто интерфейс до железок, как "Малой". Срединок нужен, чтобы проверить концептуально удобство и смысл такой конструкции прижде, чем суперсильно заебаться с низкоуровневым кодом ESP32. Решил поискать что по второму варианту есть и вот опции: . Raspberry Pi Zero 2W – самая большая проблема это 512 RAM (и тудаже ОС), то есть можно только скрипты запускать . Radxa Zero 3W – до 16Gb, но работает через раз и хуй нормально запустишь или будешь работать, потому что 0 норм документации . Orange Pi Zero 3W – МОНСТР вышел 2 месяца назад, 1-16Gb оперативы, уже есть видосы на которых он просто топово ебет Тогда будем пробовать делать Середняка на распбери 2W, а Старшого на оранже 3W Пока основная проблема: размер батареи. Думаю, с тонкой батарейей Старшой даже 10 часов может не протянуть, у Средняка есть шансы, а вот Малой как раз максимально автономен Похожие проекты: - flipperclaw.com - github.com/espressif/esp-claw - github.com/syxanash/maxheadbox - https://github.com/brenpoly/be-more-agent Кидайте кто, что видел похожее

🔥 Подъехала моя новая методичка, так еще и по фронтенду 🔥 [ widget-sliced-design.davidshekunts.ru ] > Архитектура фронтенда, которой никогда не понадобится рефакторинг WSD – это одно из лучших открытий в моей карьере программиста. Оно настолько логично повторяет то, как устроен фронтенд, что идеально ложится под любые задачи. Я использую этот подход уже лет 7 и ни разу не было кейса, когда он создавал бы мне проблемы или подводил. Звучит как мифическа “серебряная пуля”? Буду глупцом, но черт возьми, скажу “да”, потому что оно сработало в каждом моем кейсе. Не веришь? Докажи обратное, атеист. Ребята, просьба: глава "Правила структурирования" получилась ооочень сложной и оттого пугающей, при том, что мысль там крайне простая: "клади по папкам, если выше и Х переиспользуй, если ниже и Х не переиспользуй" – пожалуйста, помогите переформулировать так, чтобы стало понятно [ $ echo "всем_мощной_прокачки" ]

🔑 clientful как anti vendor-lock [ clientful.davidshekunts.ru ] Добавил еще один пункт в clientful: > Anti Vendor-lock – все данные буду представлять из себя json файлы, разложенные по папкам, а значит, если пользователю срочно потребуется мигрировать (например, из-за недоверия площадке, или новых законов страны) мигрировать между файловой систему, Goodle Drive-like провайдерами, S3-like провайдерами и подобным. Очень интересное свойство, которое технологическим решением открывает новые продуктовые преимущества, а именно все приложения, где потеря данных – смерть Например, ваши пароли. Если они в Google, значит блокировка учетки и жопа, если они в каком-то сервисе, значит блокировка IP и тоже жопа, если они на вашем сервааке, то смерть сервака или блокировка учетки и тоже конец А если ваши пароли это .json файл, в приложении вы можете подцепить файловую систему + Google Drive + Yandex Disk + S3 (все, нажатием 1 кнопки), то вот тут потерять данные практически невозможно Добавим сюда, что приложению не нужны сервера, а значит один раз получив html, css и js, вы обеспечиваете себя работоспособностью приложения до конца своих времен

🧑‍🦼 Эпидемия технологической толерастии Я ненавижу как ИИ часто делают описание и сравнение технологий: это или “вот если хочешь OpenAI, то codex, а если Anthropic, то Claude” (это блять реальный ответ сравнения технологий от Клода), или, портянка из абстрактного текста без ответа «что это» / «что это реально дает» / «что это дает в сравнении с аналогами» То есть, приходится требовать примеры, читать их и только так понимать применение (а это требует и сил, и опыта, а значит не решает мой запрос «объясни») И, ясен пень, я все настроил, чтобы сразу таблицы сравнений, описание что есть что и примеры, бла бла бла, но оно все равно сука неконкретное из-за технологической «толерастии» Я лучше от махрового PHP-шника выслушаю какая у него либа крутая, а Го - кал, чем буду читать это ИИсусье: «не, ну, всему свое место в этом мире, все мы создания божьи» Человек вполне себе хорошо делает 2 вещи: говорит что что-то гавно, а что-то нет, и конкретно говорит «это Х, чтобы захерачить Y, а вот в случае G не варик» Поднимаю этот бокал, чтобы мы все оставались людьми со своими вкусами и уникальным «фи» 🥂

📤 Выгрузка из ТГ -> Перевод -> Статический сайт -> Бесплатный хостинг Вчера вайбанул набор скриптов, чтобы выгрузить свой tg канал на сайт https://github.com/Dionid/telestatic Цель: сделать блог с англ контентом из тг для бургерного резюме, НО АБСОЛЮТНО БЕСПЛАТНО, даже камень за хостинг не отдам (за перевод всего моего паблика и комментариев отдал 20 центов) Пример сайта: https://blog.davids.sh Как: выгружаем историю канала и чата, запускаем make extract-clean-preapare-translate, далее меняем дизайн сайта на Astro, make build-deploy на какой-нибудь Cloudflare Pages Состояние: реально работает, но хадркод, поэтому делайте Fork для себя Ваша задача: напихуярьте мне туда здвезд, чтобы рекрутеры текли [ $ echo "всем_мощной_прокачки" ]

Привет! Меня зовут Давид Шекунц [ $ davids.sh ] Как Tech Lead (Go / Node.js / Python) за последние 12 лет успел собрать коман
Привет! Меня зовут Давид Шекунц [ $ davids.sh ] Как Tech Lead (Go / Node.js / Python) за последние 12 лет успел собрать команды, cпроектировать, разработать и развивать: - AI / IoT дефектоскопия для заводов spectra.palatine.ru - AI / IoT система контроля проезда palatine.ru - крипто кастодиальный кошелек для gomining.com - движок процессинга крипто-транзакций для nearpay.io - IoT платформа мониторинга криптоферм для hosting.gomining.com - IoT платформа вендинговых устройств для smvend.io - IoT платформа телеметрии для innopolis.university - 5+ систем в сферах IoT, AI, fintech, gamedev и SaaS А также выпустил книгу, 2 whitepaper и 2 курса для senior разработчиков: - FOP – функциональная альтернатива ООП - Записки с High Load – 52 best-practice разработки High Load проектов - clientful – как разрабатывать real-time collaborative offline-first приложения без backend сервисов и баз данных Здесь я сосредоточу материалы на моих разработках и исследованиях в 3-х областях: high load, ai и clientful (и немного gamedev) Буду рассказывать про проекты, над которыми работаю, делиться вымученными за эти годы best-practice и болячками, обсуждать с вами библиотеки, подходы, статьи, видео и книги Рад видеть вас на моем канале, учавствуйте в обсуждениях, не стесняйтесь задавать вопросы, даже в директ, и желаю всем мощной прокачки 🦾 [ историческая справка: раньше этот канал назывался "🦾 IT-Качалка Давида Шекунца 💪" в честь "Летающего Цирка Монти Пайтона", но я немного устал от этого брендинга и теперь отсылка на Монгольский Скайнет и вебпанк ]

🪓 HEEEEERE'S DAVID 🪓 Что случилось за 8 месяцев (хосподь всемогущий, как быстро летит время...) моего молчания: i. Написал
🪓 HEEEEERE'S DAVID 🪓 Что случилось за 8 месяцев (хосподь всемогущий, как быстро летит время...) моего молчания: i. Написал еще один whitepaper clientful – архитектура разработки real-time collaborative offline-first приложения без традиционных backend сервисов и баз данных clientful.davidshekunts.ru Штука ооочень непохожая и на традиционный web 2.0 и на web 3.0. Ближе всего offline-first / local-first, но даже там синхронизация обычно происходит с центральным сервером. Моя же методология предполагает, что нет никакой централизации и все данные синхронизируются полностью p2p. А самое интересное – оно работает и уже даже попало в продакшен, о чем ниже. ii. Разработал и выпустил 3 продукта 1. Spectra (spectra.palatine.ru) – скоростной камерой фотографируем изделия на конвейре, анализируем CV-шками, принимает решение является изделие дефектным и выкидывает с конвейера бракованные. И все это оффлайн и за 900мс по 15 CV моделей на 1 изделие. 2. Tempera Palatine – вместе с palatine разработали десктопный аналог Miro с встроенным GenAI, работающие полностью оффлайн. При этом есть режим как одиночного использования, так и коллаборативного именно благодаря clientful. 3. Mooden (mooden.app) – приложение в стиле "трекер настроения", но с некоторыми специфичными механизмами для людей с нестабильным настроением. И здесь тоже использовал clientfiul – нет никакого backend, все приложение представляет из себя frontend, БД хранится Google Drive и автоматически синхронизируется между всеми устройствами пользователя. iii. Что будет дальше на канале 1. Начну выпускать статьи по каждому из продуктов, с ссылками, историями создания и техническими ноу хау, которые пришлось придумать, чтобы вообще это ожило 2. Проекты закончились и поар идти дальше, поэтому ищу работу как Tech Lead (Go / Node.js / Python), резюме и подробности в следующих постах 3. Также, я переименую этот канал 😢 боюсь, что "IT-Качалка" себя изжила и будет брендинг с серьезным таблом, НО, суть в виде всратых шуток и кряхтения на все остается на местах И по-прежнему всем мощной прокачки 🦾

🤜 Не одним CRDT едины или как решать конфликты в local-first приложениях 🤛 Сегодня поговорим про реализации решения конфликтов подходов local / offline-first – это когда ваше приложение позволяет пользователям работать полностью или частично оффлайн, а когда они выходят в сеть, синхронизировать все их изменения. Примеры таких приложений: Notion-like редакторы, Figma-like вайтборды или Linear-like таск менеджеры. Основная идея – коллаборация, а коллаборация несет за собой конфликты, разберем очень наглядный пример: Что делать, если 2 человека одновременно поменяли название документа с "Новая папка" на "IT-Качалка Давида Шекунца" и "davids.sh"? Подробнее в статье на Хабр https://habr.com/ru/articles/946722 Как всегда, заходим и кидаем в меня карму, спасиба 💗

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

🔎 Лутаем Open Source #24. Они наконец-то починили MongoDB! Перенеся его на PostgreSQL... 🔎 https://github.com/documentdb/documentdb DocumentDB – БД от Microsoft, которая состоит из 3-х частей: - PG расширение, добавляющее BSON формат (написанный, на С) - CRUD API поверх него (С) - Сервис трансляции Mongo Query в SQL (Rust) Зачем она нужна? В чем будут проблемы при переезде с MongoDB? Причем тут альцгеймер? Узнаете в новом посте на Хабр https://habr.com/ru/posts/943926 Опять же, лайкаем, чмокаем, обсуждаем

🔨 Развивать или выпиливать легаси: где грань? 🪚 А теперь первая за очень долгое время статья на Хабр. Очень неуверен в ней, думаю, что меня отменят, но попытка не пытка https://habr.com/ru/articles/943396/ Поддержите пожалуйста кармой на хабре или первыми закидайте меня гавном (лучше уж свои это сделают) 💋

😐 Пробуем писать посты на Хабр 😐 Давно ссусь, но решил начать хоть с чего-то: небольшой постик на тему эксперимента с лоцированием кода ближе друг к другу https://habr.com/ru/posts/941090/ Ребята, ставим лайки, повышаем карму, срем на меня в комментах 🫶

Как вы находили работу?
Anonymous voting

😬 Ищи компанию по проблемам 😬 Пришла тупая || гениальная идея: Как найти работу на которой будут интересные задачи / технологии / подходы? Выбирай проблемы, которые ты сам хотел бы решить! А как узнать у кого какие проблемы? Смотреть выступления на конференциях! Буквально сейчас нашел несколько компаний, о которых никогда не видел и не слышал, но уже по конференции понимаю, по-крайней мере, как мыслят разрабы и с какими проблемами сталкиваются Если поделитесь какими-то похожими фишками поиска в комментах, будет круто #career #jobhunt

🧪 Исследование для backend-разработчиков Прошел очень интересный опросник от моего коллеги @d_r_q на тему "поддерживаемых backend" Команда пытается выяснить какие факторы действительно влияют на упрощение поддержания и развития кодовой базы Если вы работали хотя бы три месяца над зрелым проектом, находившимся в разработке не менее полугода до вашего прихода — обязательно приходите поучавствовать 👉 Принять участие: https://forms.yandex.ru/cloud/685ccc62eb614635657832a4 📊 Результаты исследования будут опубликованы осенью 2025 года на сайте: https://maintable-backends.tilda.ws/ А со своей стороны напомню, что я написал аж 2 книги по теме: (λ) Фунционально Ориентированное Программирование – процедурно-функциональная альтернатива ООП 🛌 Fatigue Driven Development – буквально книга про best-practice разработки, которые упрощают жизнь и улучшают сон Всегда рад получить говна на вентилятор обратную связь по обеим книгам 🙌 #career #jobs

🔎 В поисках Middle+ Full-stack 🔎 Моему близкому товарищу в palatine.ru на проект нужен Middle+ TypeScript Full-stack, скорее, с упором во фронт Команда - 1 Tech Lead – очень опытный игрок, который будет лидить проект и помогать по всем вопросам и давать обратную связь. Гарантируем рост твоих навыков разработки - Команда ML инженеров – занимаются разработкой нейросетевых моделей - 1 DevOps – решает вопросы с выкаткой системы в прод - 2 Дизайнера – создают UI и UX системы нам красоту Проект Ребята создают продукт-аналог recraft.ai и florafauna.ai для школ и университетов. Если совсем коротко, то это Miro + интеграция генеративного ИИ. Создают его на базе blocksuite.io Твоими главными задачами будут: - Взять blocksuite и реализовать с его помощью новые новые графические инструменты - Сделать интеграцию с сервисами нейронных сетей - С нуля разработать фронт и бек личного кабинета, аналогично Affine, при этом реализовав мультитенанси и коллаборативность Стэк - React + TypeScript + blocksuite - Node.js + TypeScript + PostgreSQL + Hasura - Electron / Tauri Формат работы - Формат: полная удаленка - Занятость: проектная первые 2 месяца, дальше парт-тайм - Оплата: безналичный перевод / оплата на юр. лицо / криптовалюта - Оформление: ИП / самозанятость / ГПХ; Что нужно - Продакшен опыт вывода 2-3-х React приложений в прод - Умение писать backend for frontend и знание SQL (со схемой и остальным помогут, backend небольшой, но знать как SELECT … JOIN … и UPSERT ... нужно) - Хорошие знания TypeScript (infer – ваш друг и товарищ) - Вам придется выучить blocksuite и со временем стать спецом по нему, хоть в начале задачи по нему будут неочень сложные Бонус - Разработка графических редакторов или плагинов для них (даже как пет-проект) - Работа с локальными БД (типа local-storage, embedded sqlite, etc.) - Опыт работы с yjs или другими системами синхронизации стейта на фронте Собесы - Лучше всего заполнить анкету. Если с ней проблемы - можно отправить свое резюме и портфолио в телеграм, но это может занять немного больше времени: @anya_krolya - Короткий созвон со знакомством и парой технческих вопросов (никаких HR, только кодеры) - Далее тестовое (да, без этого никак, нужно чтобы человек показал, что способен будет разобраться с blocksuite, даже если его придется форкнуть) - Далее сис диз (составите с Tech Lead архитектуру будущего проекта) - Если все ок, то приступаете Не забудьте написать, что пришли от меня

💪 Сокачки, мы с вами вошли в историю 🦾 14 пальцев вверх, 3 сердечка, одна строчка кода... MR был принят с личными благодарн
+1
💪 Сокачки, мы с вами вошли в историю 🦾 14 пальцев вверх, 3 сердечка, одна строчка кода... MR был принят с личными благодарностями от авторов Поздравляю всех, коллеги https://github.com/tursodatabase/turso/pull/2067

🦫 Мой самый эпичный вклад в open source 🦫 Ребята, пора и вам поучавствовать в развитии open source: наставьте там лайков, чтобы приняли https://github.com/tursodatabase/turso/pull/2067