Для чого потрібен Dependency Injection?
Anonymous Quiz
7%
Щоб автоматично створювати новий потік для кожної залежності
15%
Щоб приховувати реалізацію класу від інших модулів
2%
Щоб кешувати всі створені об’єкти в пам’яті
73%
Щоб об’єкт отримував залежності ззовні
3%
Не знаю
👍7
Мав трохи вільного часу і завайбкодив можливість створювати контент для користувачів.
Якщо хочете написати статтю або поділитися питаннями з інтервʼю — реєструйтеся на сайті та заходьте в «Мої публікації».
Після створення контенту я перевірю, чи це не якийсь скам 😁, і якщо все ок — опублікую.
Особливо цікаві питання по frontend, бо зараз на сайті переважає backend, а по frontend є лише кілька питань.
📎 - https://devs-hive.tech/uk/my-content
Якщо хочете написати статтю або поділитися питаннями з інтервʼю — реєструйтеся на сайті та заходьте в «Мої публікації».
Після створення контенту я перевірю, чи це не якийсь скам 😁, і якщо все ок — опублікую.
Особливо цікаві питання по frontend, бо зараз на сайті переважає backend, а по frontend є лише кілька питань.
📎 - https://devs-hive.tech/uk/my-content
🔥17❤2👍2
Для чого потрібен never у TypeScript?
Anonymous Quiz
9%
Щоб дозволити будь-який тип без перевірки
4%
Щоб зробити значення необов’язковим
5%
Щоб автоматично перетворити тип на undefined
6%
Не знаю
76%
Щоб позначити значення, яке ніколи не може існувати
🔥6👎3
Новий інструмент для Nest.js - Observe 🔭🔭🔭
Пару днів тому відбувся реліз Observe — це інструмент для швидкого налаштування Observability без зайвого гемороя.
І, як на мене, це доволі крутий інструмент. Звісно, якщо на проєкті є розробник, який вміє в Observability і може швидко накидати сетап з умовним OpenTelemetry, прикрутивши туди пару дашбордів, то Observe там не потрібен.
Але в реальності такої людини може не бути, бо в команді всі джуни/мідли, які вже побудували потужне Observability, використовуючи самий надійний інструмент — console.log. Або це маленький проєкт, де взагалі не потрібно заморочуватися, і Observe вирішить всі болі продукту.
📎 - https://www.observe.nestjs.com/
Пару днів тому відбувся реліз Observe — це інструмент для швидкого налаштування Observability без зайвого гемороя.
І, як на мене, це доволі крутий інструмент. Звісно, якщо на проєкті є розробник, який вміє в Observability і може швидко накидати сетап з умовним OpenTelemetry, прикрутивши туди пару дашбордів, то Observe там не потрібен.
Але в реальності такої людини може не бути, бо в команді всі джуни/мідли, які вже побудували потужне Observability, використовуючи самий надійний інструмент — console.log. Або це маленький проєкт, де взагалі не потрібно заморочуватися, і Observe вирішить всі болі продукту.
📎 - https://www.observe.nestjs.com/
NestJS Observe | Zero-Config Observability for NestJS
Auto-instrumented observability for NestJS applications — tracing, error monitoring, logs and alerts, set up in minutes.
❤9😁3🔥2👍1🤡1
Халява! 🔥🔥🔥
Натрапив на допис в LinkedIn про те, що Redis роздає безкоштовні сертифікації. До сьогодні я навіть не знав, що можна бути Redis Certified.
Як на мене, Redis — це один із поважних інструментів інженера, розуміючи який, можна вирішити багато нетривіальних проблем.
Навіщо воно вам?
Враховуючи те, як шатає ІТ ринок, будь-яка "бумажка" від Big Tech компанії може дати плюс у CV і на інтервʼю. А якщо ви раніше не працювали з Redis, то під час підготовки до сертифікації розберетеся з основами і не тільки.
З податками мені нарахували 218 USD, але якщо скористатися купоном з сайту, вони перетворюються на 0. Тому, звісно я не втримався і забронював Associate Developer. Навіть, якщо ви дуже зайняті, можете забукати дату через пару місяців, а якщо і далі не буде часу - перенести 😁
Забукати сертифікацію можна тут - https://redis.io/certifications/
Натрапив на допис в LinkedIn про те, що Redis роздає безкоштовні сертифікації. До сьогодні я навіть не знав, що можна бути Redis Certified.
Як на мене, Redis — це один із поважних інструментів інженера, розуміючи який, можна вирішити багато нетривіальних проблем.
Навіщо воно вам?
Враховуючи те, як шатає ІТ ринок, будь-яка "бумажка" від Big Tech компанії може дати плюс у CV і на інтервʼю. А якщо ви раніше не працювали з Redis, то під час підготовки до сертифікації розберетеся з основами і не тільки.
З податками мені нарахували 218 USD, але якщо скористатися купоном з сайту, вони перетворюються на 0. Тому, звісно я не втримався і забронював Associate Developer. Навіть, якщо ви дуже зайняті, можете забукати дату через пару місяців, а якщо і далі не буде часу - перенести 😁
Забукати сертифікацію можна тут - https://redis.io/certifications/
Redis
Redis Associate Developer certification | Redis
Developers love Redis. Unlock the full potential of the Redis database with Redis Enterprise and start building blazing fast apps.
👍19🔥8
Для чого в Redis потрібен SET ... NX?
Anonymous Quiz
49%
Щоб записати значення лише якщо ключ ще не існує
13%
Щоб оновити тільки вже існуючий ключ
10%
Щоб автоматично видалити ключ після читання
1%
Щоб продублювати значення
26%
Не знаю
Яку проблему допомагає вирішити API Gateway?
Anonymous Quiz
15%
Забезпечити спільну транзакцію між усіма сервісами
4%
Автоматично реплікувати дані між мікросервісами
5%
Замінити service discovery у будь-якій архітектурі
69%
Приховати від клієнта структуру та адреси внутрішніх сервісів
7%
Не знаю
Хочу розповісти про цікавий проєкт - pg-boss 😱😱😱
Це job queue, яка працює прямо поверх PostgreSQL. Тобто якщо у вас уже є PostgreSQL і потрібно реалізувати прості background jobs, то не обов’язково окремо тягнути ще й брокер.
Виглядає цікаво, але кому це треба?
Як на мене, набагато простіше й надійніше взяти Serverless брокер на кшталт SQS чи GCP Pub/Sub, ніж докручувати цю приблуду до бази даних. Вони не потребують окремих інстансів, як наприклад RabbitMQ, і не додають зайвої складності у вашу систему.
Хто хоче погратись, ось посилання на проєкт - https://github.com/timgit/pg-boss
Це job queue, яка працює прямо поверх PostgreSQL. Тобто якщо у вас уже є PostgreSQL і потрібно реалізувати прості background jobs, то не обов’язково окремо тягнути ще й брокер.
Виглядає цікаво, але кому це треба?
Як на мене, набагато простіше й надійніше взяти Serverless брокер на кшталт SQS чи GCP Pub/Sub, ніж докручувати цю приблуду до бази даних. Вони не потребують окремих інстансів, як наприклад RabbitMQ, і не додають зайвої складності у вашу систему.
Хто хоче погратись, ось посилання на проєкт - https://github.com/timgit/pg-boss
GitHub
GitHub - timgit/pg-boss: Queueing jobs in Postgres from Node.js like a boss
Queueing jobs in Postgres from Node.js like a boss - timgit/pg-boss
👍5
Для чого потрібен Service Discovery в мікросервісах?
Anonymous Quiz
5%
Щоб зберігати всі конфігурації в одній базі даних
3%
Щоб автоматично повторювати невдалі запити
7%
Щоб синхронізувати дані між сервісами
12%
Не знаю
73%
Щоб сервіси могли знаходити актуальні адреси інших сервісів
❤1
Реліз Node.js 26.8.0 (Current)🔥🔥🔥
З важливого:
- Нативна підтримка для роботи з ZIP файлами. Поки в early development, але це дуже важливий крок для Node.js
- TracingChannel перейшов в Stable. Походу Observability стане трошки кращим
- Покращення в SQLite
📎 - https://nodejs.org/en/blog/release/v26.8.0
З важливого:
- Нативна підтримка для роботи з ZIP файлами. Поки в early development, але це дуже важливий крок для Node.js
- TracingChannel перейшов в Stable. Походу Observability стане трошки кращим
- Покращення в SQLite
📎 - https://nodejs.org/en/blog/release/v26.8.0
nodejs.org
Node.js — Node.js 26.8.0 (Current)
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
🔥17❤1
Нове відео на каналі ☕️☕️☕️
Розповів про один із найпопулярніших патернів у мікросервісах — Idempotency Key.
Він не тільки часто використовується на практиці, а й є одним із типових питань на технічних інтервʼю та кейсів, які варто вміти розбирати на System Design інтервʼю.
📎 - https://www.youtube.com/watch?v=fDnPW03Ux3Q
Розповів про один із найпопулярніших патернів у мікросервісах — Idempotency Key.
Він не тільки часто використовується на практиці, а й є одним із типових питань на технічних інтервʼю та кейсів, які варто вміти розбирати на System Design інтервʼю.
📎 - https://www.youtube.com/watch?v=fDnPW03Ux3Q
YouTube
Idempotency Key — просте рішення великих проблем
В цьому відео розберемо один з найбільш популярних патернів в мікросервісній архітектурі - Idempotency Key. Розберемо, що таке ідемпотентність і яку проблему вирішує сам патерн
Telegram - тут пишу про інженерний розвиток
https://t.me/devshive
0:00 - Intro…
Telegram - тут пишу про інженерний розвиток
https://t.me/devshive
0:00 - Intro…
❤6👍6🔥2
Для чого потрібен Retry Pattern у мікросервісах?
Anonymous Quiz
1%
Щоб ізолювати ресурси між сервісами
3%
Щоб зупинити виклики після першої помилки
2%
Щоб гарантувати однакові дані в усіх сервісах
91%
Щоб повторити запит після тимчасової помилки
3%
Не знаю
👍5🔥1
Трохи про Prisma 8 😱😱😱
Я декілька разів писав про Prisma — і зазвичай не в найкращому світлі. У цій ORM багато чого не вистачало, а загалом рівень абстракції, який вона пропонувала, був занадто високим для сучасної розробки.
Я давно не цікавився, як у неї справи, але нещодавно отримав лист про оновлення в Prisma 8, після яких я змінив свою думку про цю ORM.
Якщо коротко, ось список важливих змін, які вже додали:
1. Новий Query API — нарешті вони прибрали цей пиздець із вкладеними обʼєктами, які навіть прості запити перетворювали на нечитабельну ковбасу.
2. SQL Query Builder — цього реально не вистачало в Prisma. До цього при складних запитах потрібно було або костиляти з ORM API, що не завжди працювало, або писати RAW SQL запити.
3. Extensions API — ну про таке в подібній ORM раніше навіть мріяти не доводилося 😁
4. Performance - на мою думку, виглядає як перемога. Детальніше можна почитати тут
5. Streaming — теж цікава фіча, яка дозволяє стрімити дані при роботі з великими датасетами. Якщо воно дійсно працює так, як вони описують, то для background jobs, exports, analytics... не потрібно буде тягнути додаткові залежності, якщо задача тривіальна.
Я декілька разів писав про Prisma — і зазвичай не в найкращому світлі. У цій ORM багато чого не вистачало, а загалом рівень абстракції, який вона пропонувала, був занадто високим для сучасної розробки.
Я давно не цікавився, як у неї справи, але нещодавно отримав лист про оновлення в Prisma 8, після яких я змінив свою думку про цю ORM.
Якщо коротко, ось список важливих змін, які вже додали:
1. Новий Query API — нарешті вони прибрали цей пиздець із вкладеними обʼєктами, які навіть прості запити перетворювали на нечитабельну ковбасу.
2. SQL Query Builder — цього реально не вистачало в Prisma. До цього при складних запитах потрібно було або костиляти з ORM API, що не завжди працювало, або писати RAW SQL запити.
3. Extensions API — ну про таке в подібній ORM раніше навіть мріяти не доводилося 😁
4. Performance - на мою думку, виглядає як перемога. Детальніше можна почитати тут
5. Streaming — теж цікава фіча, яка дозволяє стрімити дані при роботі з великими датасетами. Якщо воно дійсно працює так, як вони описують, то для background jobs, exports, analytics... не потрібно буде тягнути додаткові залежності, якщо задача тривіальна.
👍14🔥3❤1
Ловіть кошерну платформу для Incident Management 🤌🤌🤌
Загалом, продукт включає в себе все, що потрібно для керування інцидентами:
- On-call
- Incident Response
- Investigations
- Insights
- Post-incident workflows
Вона зніме з вас геморой побудови інтеграцій. Наприклад, в Nest.js API щось сталось, пушнувся лог в OpenTelemetry -> Datadog -> а incident.io обробив інцидент і надіслав його якомусь "щасливчику" на on-call.
📎 - https://incident.io/
Загалом, продукт включає в себе все, що потрібно для керування інцидентами:
- On-call
- Incident Response
- Investigations
- Insights
- Post-incident workflows
Вона зніме з вас геморой побудови інтеграцій. Наприклад, в Nest.js API щось сталось, пушнувся лог в OpenTelemetry -> Datadog -> а incident.io обробив інцидент і надіслав його якомусь "щасливчику" на on-call.
📎 - https://incident.io/
incident.io
AI software reliability platform | incident.io
incident.io is a software reliability platform unifying on-call, agentic root cause analysis, incident response, and status pages – helping teams resolve issues faster.
❤5👍2
Ще один цікавий інструмент - Gridex ☕️
Native database IDE powered by AI 🤌🤌🤌
В принципі, концепція доволі проста - окрім звичайного GUI для бази даних, тут інтегрований AI який дозволить простіше і швидше працювати з базою.
Але тут є цікавий момент. В прод базу його не підключиш по очевидним причинам, а от в дев базі він особливо не нужонний тому є в мене сумніви, що подібний підхід приживеться.
📎 - https://gridex.app/
Native database IDE powered by AI 🤌🤌🤌
В принципі, концепція доволі проста - окрім звичайного GUI для бази даних, тут інтегрований AI який дозволить простіше і швидше працювати з базою.
Але тут є цікавий момент. В прод базу його не підключиш по очевидним причинам, а от в дев базі він особливо не нужонний тому є в мене сумніви, що подібний підхід приживеться.
📎 - https://gridex.app/
Gridex
Gridex — AI-Native Database IDE for macOS, Windows & Linux | Claude, GPT, Gemini, Ollama, MCP
Gridex is the fastest native database IDE for macOS, Windows, and Linux, with built-in AI chat and an MCP server. Query PostgreSQL, MySQL, SQLite, Redis, MongoDB, SQL Server, and ClickHouse using Claude, GPT, Gemini, or local Ollama. Free Community edition.…
💯5❤1🔥1
Для чого в PostgreSQL потрібен VACUUM?
Anonymous Quiz
4%
Щоб автоматично створювати індекси
5%
Щоб шифрувати таблиці на диску
66%
Щоб очищати місце від застарілих версій рядків
7%
Щоб синхронізувати primary і replica
19%
Не знаю
Devs Hive
Перемога підʼїхала🔥 Зʼявилась інформація того, що буде додано в Nest.js 12, який по ідеї мав би відбутись до кінця вересня. Покращень тут цілий список і ось основні: - Перехід з CommonJS на ESM. Це прям топчик - Rspack замість webpack. Не знаю, що таке Rspack…
Раніше писав про те, що буде додано в Nest.js 12 і 28 серпня відбувся реліз 🔥🔥🔥
Як на мене він дуже важливий тому обовʼязково ознайомтесь з тим, що було додано - https://trilon.io/blog/nestjs-12-is-now-available
Як на мене він дуже важливий тому обовʼязково ознайомтесь з тим, що було додано - https://trilon.io/blog/nestjs-12-is-now-available
❤5🔥3