Який параметр найбільше впливає на випадковість відповіді?
Anonymous Quiz
8%
Max tokens
42%
Temperature
11%
Top-K
39%
Context window
Що означає “context window”?
Anonymous Quiz
4%
Час відповіді моделі
36%
Розмір embedding
11%
Довжина промпту
49%
Ліміт токенів у контексті
🤯 «Знову бізнес-логіка в контролері, а ActiveRecord-модель роздулася до 1000 рядків?» — знайомий біль у Rails-проектах?
Коли додаток росте, стандарти validates у моделях починають заважати: вони прив’язані до бази даних і підходять для простих перевірок, але ламаються на складній бізнес-логіці (наприклад, різна валідація для Admin API та Mobile API).
Рішення, яке ставлять у вимоги на Senior/Lead позиціях — використання екосистеми dry-rb, зокрема dry-validation та dry-monads.
Коли додаток росте, стандарти validates у моделях починають заважати: вони прив’язані до бази даних і підходять для простих перевірок, але ламаються на складній бізнес-логіці (наприклад, різна валідація для Admin API та Mobile API).
Рішення, яке ставлять у вимоги на Senior/Lead позиціях — використання екосистеми dry-rb, зокрема dry-validation та dry-monads.
❤2
Показуємо, як винести валідацію та бізнес-логіку з моделей у ізольовані Service Objects за 3 кроки:
1️⃣ Виносимо складну валідацію в Contract (dry-validation):
2️⃣ Використовуємо dry-monads для чистого повернення результату (Success/Failure):
3️⃣ Тонкий і чистий контролер:
🔥 Чому це оцінять на співбесіді та в коді:
• Single Responsibility: Модель відповідає ТІЛЬКИ за роботу з БД, Контракт — за валідацію, Сервіс — за бізнес-логіку.
• Відсутність "брудних" exceptions: Замість raise/rescue ми контрольовано повертаємо Success або Failure (Railway Oriented Programming).
• Тестувати такі контракти та сервіси в RSpec — суцільне задоволення, бо вони не потребують підйому бази даних.
А як ви виносити складну логіку з моделей у своїх проектах: використовуєте dry-rb, ActiveInteraction чи старі добрі PORO-сервіси? 👇
TikTok | Instagram | Telegram
1️⃣ Виносимо складну валідацію в Contract (dry-validation):
class UserRegistrationContract < Dry::Validation::Contract
params do
required(:email).filled(:string)
required(:age).filled(:integer)
end
rule(:email) do
unless /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i.match?(value)
key.failure("має бути коректним email-ом")
end
end
rule(:age) do
key.failure("реєстрація доступна лише з 18 років") if value < 18
end
end
2️⃣ Використовуємо dry-monads для чистого повернення результату (Success/Failure):
class RegisterUser
include Dry::Monads[:result]
def call(params)
# 1. Валідуємо параметри
contract_result = UserRegistrationContract.new.call(params)
return Failure(contract_result.errors.to_h) if contract_result.failure?
# 2. Створюємо користувача (бізнес-логіка)
user = User.create!(contract_result.to_h)
Success(user)
rescue ActiveRecord::RecordNotUnique
Failure(email: ["цей email вже зайнятий"])
end
end
3️⃣ Тонкий і чистий контролер:
class UsersController < ApplicationController
def create
case RegisterUser.new.call(user_params)
in Dry::Monads::Success(user)
render json: user, status: :created
in Dry::Monads::Failure(errors)
render json: { errors: errors }, status: :unprocessable_entity
end
end
end
🔥 Чому це оцінять на співбесіді та в коді:
• Single Responsibility: Модель відповідає ТІЛЬКИ за роботу з БД, Контракт — за валідацію, Сервіс — за бізнес-логіку.
• Відсутність "брудних" exceptions: Замість raise/rescue ми контрольовано повертаємо Success або Failure (Railway Oriented Programming).
• Тестувати такі контракти та сервіси в RSpec — суцільне задоволення, бо вони не потребують підйому бази даних.
А як ви виносити складну логіку з моделей у своїх проектах: використовуєте dry-rb, ActiveInteraction чи старі добрі PORO-сервіси? 👇
TikTok | Instagram | Telegram
🔥3
👍2
🧠 13 законів розробки
Друзі, у кожній команді рано чи пізно помічаєш одну цікаву закономірність: невелика частина людей створює більшу частину результату. Це не про “кращих” чи “гірших”, а про природну динаміку досвіду, фокусу та залученості в роботі.
Закони, які вже розглянули:
👉 Закон Паркінсона
👉 Закон Хофштедтера
👉 Закон Брукса
👉 Закон Конвея (і зворотний закон Конвея)
👉 Закон Каннінгема
👉 Закон Стерджена
👉 Закон Завінскі (Zawinski’s Law)
👉 Закон Хайрума (Hyrum’s Law)
Сьогодні — закон, який часто згадують у контексті продуктивності команд 👇
Друзі, у кожній команді рано чи пізно помічаєш одну цікаву закономірність: невелика частина людей створює більшу частину результату. Це не про “кращих” чи “гірших”, а про природну динаміку досвіду, фокусу та залученості в роботі.
Закони, які вже розглянули:
👉 Закон Паркінсона
👉 Закон Хофштедтера
👉 Закон Брукса
👉 Закон Конвея (і зворотний закон Конвея)
👉 Закон Каннінгема
👉 Закон Стерджена
👉 Закон Завінскі (Zawinski’s Law)
👉 Закон Хайрума (Hyrum’s Law)
Сьогодні — закон, який часто згадують у контексті продуктивності команд 👇
💯1
📊 Закон Прайса (Price’s Law)
“Квадратний корінь із загальної кількості людей у групі виконує приблизно половину всієї роботи.”
👨💻 Що це означає для розробників
• кілька ключових інженерів часто беруть на себе складні задачі;
• knowledge concentration може створювати ризики для проєкту;
• важливо ділитися контекстом і знаннями.
📊 Що це означає для менеджерів
• не варто перевантажувати найсильніших людей;
• потрібно вирівнювати експертизу через менторство;
• стабільність команди залежить від розподілу відповідальності.
💡 Простий приклад
У команді з 16 людей приблизно 4 можуть генерувати половину ключових технічних рішень.
Якщо ці люди перевантажені або вигорають — швидкість команди падає навіть при тій самій кількості розробників.
Як працювати з цим законом:
✔️ інвестувати в knowledge sharing
✔️ уникати “hero culture”
✔️ будувати процеси, а не залежність від окремих людей
💬 Сильна команда — це не кілька незамінних людей, а система, де знання розподілені і доступні кожному.
TikTok | Instagram | Telegram
“Квадратний корінь із загальної кількості людей у групі виконує приблизно половину всієї роботи.”
👨💻 Що це означає для розробників
• кілька ключових інженерів часто беруть на себе складні задачі;
• knowledge concentration може створювати ризики для проєкту;
• важливо ділитися контекстом і знаннями.
📊 Що це означає для менеджерів
• не варто перевантажувати найсильніших людей;
• потрібно вирівнювати експертизу через менторство;
• стабільність команди залежить від розподілу відповідальності.
💡 Простий приклад
У команді з 16 людей приблизно 4 можуть генерувати половину ключових технічних рішень.
Якщо ці люди перевантажені або вигорають — швидкість команди падає навіть при тій самій кількості розробників.
Як працювати з цим законом:
✔️ інвестувати в knowledge sharing
✔️ уникати “hero culture”
✔️ будувати процеси, а не залежність від окремих людей
💬 Сильна команда — це не кілька незамінних людей, а система, де знання розподілені і доступні кожному.
TikTok | Instagram | Telegram
👍2
Друзі, впевнені, що тут у чаті повно впевнених мідлів і сеньйорів, але ж точно є й ті, хто тільки придивляється до ІТ або думає зайти в усе це з нуля))
Звісно, золотих гір зараз ніхто не обіцяє, але це просто нормальна робота, яка багатьом дійсно кайфова. От ми й задумалися: а якби наші сеньйори опинилися на старті сьогодні?
Як виглядав би нормальний шлях? Тож підготували його для вас)
#codica_advice
Звісно, золотих гір зараз ніхто не обіцяє, але це просто нормальна робота, яка багатьом дійсно кайфова. От ми й задумалися: а якби наші сеньйори опинилися на старті сьогодні?
Як виглядав би нормальний шлях? Тож підготували його для вас)
#codica_advice
👍1👀1
Ось робочий стек, який обійдеться в нуль гривень:
01 — START HERE w3schools.com
Розбираємося з базою: HTML, CSS, JavaScript, SQL і базові поняття програмування.
02 — GO DEEPER JavaScript Mastery
Коли основи вляглися в голові — пробуємо склепати перші реальні апки і дивимось, як воно все працює на практиці.
03 — BUILD The Odin Project
Час збирати готові проєкти й розуміти, як шматочки пазла взагалі стикуються між собою.
04 — UNDERSTAND THE WEB MDN Web Docs
Якщо щось незрозуміло — вчимося відкривати офіційні доки замість того, щоб вічно шукати відповіді на форумах.
05 — LEARN BY DOING freeCodeCamp
Закріплюємо навички на задачках і живих проєктах.
06 — LEARN FROM REAL CODE GitHub
Заглядаємо в чужі репозиторії, дивимося, як пишуть інші люди, створюємо перші issues і робимо внески.
07 — LEARN THE CAREER PATH roadmap.sh
Щоб не хапатися за все підряд, дивимося на чіткі дорожні карти: що і в якій послідовності реально вчити.
08 — BUILD WITH OTHERS Open Source
Тут починається справжній дев-вайб. Читаємо чужий код, фіксимо баги, кидаємо пул-реквести і вчимося працювати в команді.
Звісно, мільйони вкладати не треба. Треба ноутбук, стабільний інет і готовність до того, що код у перші тижні постійно падатиме з помилками (і це норм).
👇 А яке одне посилання ви б скинули людині, яка от просто зараз вирішила стартувати з нуля? Накидайте в коментарі!
TikTok | Instagram | Telegram
01 — START HERE w3schools.com
Розбираємося з базою: HTML, CSS, JavaScript, SQL і базові поняття програмування.
02 — GO DEEPER JavaScript Mastery
Коли основи вляглися в голові — пробуємо склепати перші реальні апки і дивимось, як воно все працює на практиці.
03 — BUILD The Odin Project
Час збирати готові проєкти й розуміти, як шматочки пазла взагалі стикуються між собою.
04 — UNDERSTAND THE WEB MDN Web Docs
Якщо щось незрозуміло — вчимося відкривати офіційні доки замість того, щоб вічно шукати відповіді на форумах.
05 — LEARN BY DOING freeCodeCamp
Закріплюємо навички на задачках і живих проєктах.
06 — LEARN FROM REAL CODE GitHub
Заглядаємо в чужі репозиторії, дивимося, як пишуть інші люди, створюємо перші issues і робимо внески.
07 — LEARN THE CAREER PATH roadmap.sh
Щоб не хапатися за все підряд, дивимося на чіткі дорожні карти: що і в якій послідовності реально вчити.
08 — BUILD WITH OTHERS Open Source
Тут починається справжній дев-вайб. Читаємо чужий код, фіксимо баги, кидаємо пул-реквести і вчимося працювати в команді.
Звісно, мільйони вкладати не треба. Треба ноутбук, стабільний інет і готовність до того, що код у перші тижні постійно падатиме з помилками (і це норм).
👇 А яке одне посилання ви б скинули людині, яка от просто зараз вирішила стартувати з нуля? Накидайте в коментарі!
TikTok | Instagram | Telegram
🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🚨 Нові тіктоки під'їхали! 🚨
Якщо ви хоча б раз казали: «Та це ж буквально про мене!» — вам точно до нас!
👉 https://www.tiktok.com/@codica_com?_t=ZM-8tp6m9QvxxN&_r=1
Залітайте в наш TikTok, підписуйтесь і не пропускайте нові життєві приколи, які знайомі кожному 😎
TikTok | Instagram | Telegram
Якщо ви хоча б раз казали: «Та це ж буквально про мене!» — вам точно до нас!
👉 https://www.tiktok.com/@codica_com?_t=ZM-8tp6m9QvxxN&_r=1
Залітайте в наш TikTok, підписуйтесь і не пропускайте нові життєві приколи, які знайомі кожному 😎
TikTok | Instagram | Telegram
❤4
Англійська за мемами😜
👉 Говоримо красиво
📍 capture — впіймати, захопити
📍 hobby horse — іграшкова конячка (на палиці)
#codica_english
TikTok | Instagram | Telegram
👉 Говоримо красиво
📍 capture — впіймати, захопити
📍 hobby horse — іграшкова конячка (на палиці)
#codica_english
TikTok | Instagram | Telegram
😁5👀1
Раночку, друзі)) ☕️
Став +, якщо саме так робочий тиждень починається 😂
#codica_humor
TikTok | Instagram | Telegram
Став +, якщо саме так робочий тиждень починається 😂
#codica_humor
TikTok | Instagram | Telegram
💯4
Ruby devs, готуйтеся плакати від щастя (і від нестачі вільного місця), бо наша нескінченна цифрова полиця знову прогинається під вагою нової порції годноти!
#codica_advice
Підготували вже 9-ту порцію легендарних PDF-книжок про Ruby та Rails 🚀
Минулі добірки теж не губіть:
📍 Добірка Ruby-книжок 1
📍 Добірка Ruby-книжок 2
📍 Добірка Ruby-книжок 3
📍 Добірка Ruby-книжок 4
📍 Добірка Ruby-книжок 5
📍 Добірка Ruby-книжок 6
📍 Добірка Ruby-книжок 7
📍 Добірка Ruby-книжок 8
#codica_advice
Підготували вже 9-ту порцію легендарних PDF-книжок про Ruby та Rails 🚀
Минулі добірки теж не губіть:
📍 Добірка Ruby-книжок 1
📍 Добірка Ruby-книжок 2
📍 Добірка Ruby-книжок 3
📍 Добірка Ruby-книжок 4
📍 Добірка Ruby-книжок 5
📍 Добірка Ruby-книжок 6
📍 Добірка Ruby-книжок 7
📍 Добірка Ruby-книжок 8
👍2