Telegram Web Link
💡 Написав приклади CAS-операцій для лекцій з архітектури. Починаю писати приклади Blockchain, наступний крок буде, об'єднати CRDT синхронізацію стану, CAS-операції, indexedDB, Blockchain, B-tree індекси, протокол metacom, бібліотеку для опису схем даних metaschema у прототип розподіленої БД, це можна буде використовувати для local-first підходу та багато чого ще. https://github.com/HowProgrammingWorks/CAS
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥95👍3😎2
💡 Latest code examples for Metarhia courses:
- Simple blockchain with smart contracts (JavaScript + Node.js): https://github.com/HowProgrammingWorks/Blockchain
- Compare and Swap Data Structures: https://github.com/HowProgrammingWorks/CAS
- Updated examples for Atomics: https://github.com/HowProgrammingWorks/Atomics
- JavaScript CRDT implementations: https://github.com/HowProgrammingWorks/CRDT
👉 Courses
- Async 2025: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Async-2025.md
- Node.js 2025: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS-2025.md
- Patterns 2025: https://nodeua.com/Patterns-2025.html
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍1🔥1🤝1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁71🤣1
Вночі було гучно, от я і написав приклад PWA, що створює один Websocket у service worker для багатьох вкладок, та вміє працювати в офлайні, пересилає повідомленнями між вкладками, та в онлайні, через сервер, може інсталюватися на мобільні та браузери. Трохи згодом я до нього прикручу indexedDB, CRDT, CAS та blockchain, які окремо вже зробив, і будє вам local-first https://github.com/HowProgrammingWorks/PWA Ну тут ще багато оптимізації та інтеграції
🔥379👍4🤯4🤝1
🚀 Все це разом складає інфраструктуру для local-first додатків:

1⃣ PWA (Progressive Web App)
Веб-додатки з UX, наближеним до нативних: офлайн-режим, встановлення, швидке завантаження. Вирішують проблеми поганого зв'язку та повільної мережі поєднуючи переваги вебу та нативних застосунків.

2⃣ CRDT (Conflict-Free Replicated Data Types)
Структури даних для автоматичного вирішення конфліктів у розподілених системах. Вирішують проблеми синхронізації, паралельного редагування та забезпечують роботу офлайн-застосунків без втрати або конфліктів даних.

3⃣ CAS Containers (Compare-And-Swap)
Атомарний механізм одночасного доступу, що зберігає записи бази даних із захистом за допомогою хешів або версій. Вирішує проблеми race conditions, конфліктів одночасних змін, гарантує консистентність та забезпечує оптимістичне управління паралельним доступом у розподілених БД.

4⃣ IndexedDB (browser built-in database)
DB з API для транзакційного зберігання структурованих даних на стороні клієнта в браузерах. Вирішує проблеми збереження даних офлайн, локальних запитів, кешування та побудови b-tree індексів.

5⃣ OPFS (Origin Private File System)
Захищена високопродуктивна файлова система, доступна лише веб-додаткам у межах одного домену (точніше одного origin). Вирішує проблеми зберігання великих файлів та швидких файлових операцій у вебі.

6⃣ Blockchain (без майнінгу)
Розподілений захищений журнал записів для децентралізованої бази даних та гарантованої історії. Вирішує проблем цілісності та незмінності даних, прозорості та довіри.

7⃣ JavaScript Smart Contracts
Бізнес-логіка, виконувана мовою JavaScript у децентралізованих середовищах. Вирішує проблеми автоматизації й довіри при зміні даних, автоматичного підтвердження домовленостей, безпечного виконання коду.

8⃣ WebSocket
Протокол для двостороннього обміну даними в реальному часі через одне TCP-з'єднання. Вирішує проблеми затримок, інтерактивні додатків, наближених до реального часу.

9⃣ WebRTC (Web Real-Time Communication)
Протокол для потокової комунікації та мультимедіа, передачі даних напряму між користувачами. Вирішує проблеми прямого зв’язку в реальному часі, низьких затримок та децентралізації без проміжних серверів.

🔟 Metaschema
Декларативна мова схем для моделювання, валідації й синхронізації даних. Вирішує проблеми невідповідності даних, еволюції та міграції схем, складності опису метаданих та спрощує роботу з комплексними структурами.
23👍10🔥53
Вчора робив лайвкод з Cursor 1.3.9 (claude-4-sonet, claude-3.5-sonet, gpt-4.1, o3, gemini-2.5-pro)
для студентів курсу по патернам, ноді та асинхронності і показав, як потрібно підходити для постановки задачі для AI, сприймати його як виконавця, а не як магічну коробочку, яка працює за вас, я більше години писав ТЗ, а потім він дуже швидко все реалізував, але усі ідеї були у ТЗ, я дав йому приклади коду зі своїх попередніх розробок, опис задачі зайняв 71 рядок: https://github.com/metarhia/metautil/blob/gsid-ai/lib/TASKS.md Після цього з невеликим додатковим доопрацюванням у 10-15 хвилин він згенерував ось ці 43 рядки коду: https://github.com/metarhia/metautil/blob/gsid-ai/lib/gsid.js та багато додаткового коду для аналізу результату, звіт по продуктивності та оптимізації що я додав у кінець файлу TASKS md. Деякі речі я публікую тут, інші будуть доступні тільки студентам. Скоро запишу відео з порівнянням, що виходить, якщо сприймати AI як асистента, а що виходить, коли людина не розуміє задачі і не може керувати AI.
👍23🔥43💯1
🎫 Відкрив Community підписку на Patreon для щотижневих стрімів, семінарів, лайвкоду, Q&A сесій, усяких матеріалів, що я випускникам готую. Раніше вона була, але останні два роки я туди запрошував тільки усіх, хто на курси приходив та випускників, кожного тижня 2 години, ми вже це ведемо 5 років, там завжди цікаво. Тепер $10 на місяць: https://www.patreon.com/tshemsedinov/membership
8👍2🔥2🤝1
👩‍💻 Each approach represents a different strategy for working with AI tools, from basic prompting to structured technical specifications.
- Short prompt in vibe coding style
- Step-by-step chat with AI in vibe coding style
- Technical specification implementation
https://github.com/HowProgrammingWorks/CodeWithAI
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥4👍3
https://youtu.be/_S8zcKaj7Fk

CAS-контейнер это один из блоков, из которых мы соберем технологию для local-first (offline-first) разработки, вместе с CRDT и Websocket он обеспечит синхронизацию приложений между закладками браузера, между несколькими устройствами, между разными пользователями. Менторы курса Patterns делают пример фронтенда, я пишу бекенд и синхронизацию. Скоро мы объединим это вместе с PWA и web workers, OPFS и indexedDB как я писал тут https://www.tg-me.com/metarhia/1904 а позже реализуем транспорт при помощи WebRTC, а целостность состояния будет обеспечивать Blockchain. Конечно, их использование не обязательно, это просто блоки, из которых можно будет собрать свое решение. Бизнес-логику можно будет писать как сервисы или как смарт-контракты на выбор. Даже разработка API будет рациональной, 80% функциональности можно делать без серверного API даже вообще не разрабатывая сервера, на автоматической синхронизации базы данных, но можно и свое API реализовать. Поставьте ❤️ если вы уловили, что мы хотим сделать, 👍 если частично, но интересно, 🤷‍♂ если совсем сложно понять. Все эти технологические блоки совсем скоро позволят писать фронтенд не в стиле простыни, где визуальные компоненты содержат работу с API через fetch, а бизнес-логика размазана по событиям на кнопочках (как в делали ваши деды на Delphi), но позволит делать чистую архитектуру и изолировать слои. Ни кто, конечно, не запретит писать лапшу, но сделать простое и красивое решение будет в разы проще. Что мы покажем на примере проекта.
👍3320🤷‍♂11🔥1
👍164🔥2🤯2
💡Just a fact: AI способен создавать 2.7 миллиона языков программирования в день
🤣341🔥1💯1
2025/09/20 04:18:25
Back to Top
HTML Embed Code: