Codica - корисне про IT
2.03K subscribers
2.88K photos
144 videos
35 files
1.49K links
Привіт, друже, це канал про корисності в ІТ🤘

🔺Даємо практичні матеріали з RoR, JavaScript, QA, DevOps
🔺Розкажемо як знайти першу роботу без хвилювань та проблем

✍️Для звʼязку-@klimenko_nataly

👉 Відкриті вакансії - www.codica.com/careers
Download Telegram
19 років в ІТ — це вже не просто досвід, а ціла колекція історій:
і про стрімкий кар’єрний ріст, і про burnout, і про знайоме багатьом «можна я просто тихенько попрацюю і щоб ніхто не чіпав?» 😅

#НапуттяВід_HR Директорки Клименко Наталії

👉 HR-директорка Наталі зібрала 10 чесних порад про кар’єру. Тут про те, чому роки досвіду самі по собі нічого не гарантують, як насправді працює нетворкінг, чому складні проблеми = більша цінність, і навіщо інвестувати не тільки в технічні навички.

👉 Коротко кажучи — це ті інсайти, які зазвичай приходять через роки роботи… або через кілька складних проєктів 😄

Ми розклали їх у картках — гортайте і ловіть ідеї, які можуть трохи змінити погляд на кар’єру!

TikTok | Instagram | Telegram
👍2
Хочете бути в курсі трендів JavaScript — впливу AI на створення коду, JS-фреймворків, сучасних інструментів розробки, performance та розвитку екосистеми JavaScript? Тоді приєднуйтесь до AI JavaScript fwdays’26! 🚀

📅 23 травня 2026

📍 Київ (офлайн) + Онлайн

🎟 Використайте промокод FWDAYS_CODIСA та отримайте знижку 10%
Спікери та доповіді:

Ілля Климов зараз розвиває проєкт україномовного контенту JavaScript.Січ, мета якого — допомогти україномовним JavaScript-розробникам стати одними з найкращих у світі. У своїй доповіді «JavaScript, agentic coding та сувора реальність» Ілля поділиться практичним досвідом використання AI у великому brownfield-проєкті на прикладі GitLab: як поєднувати штучний інтелект і JavaScript, що реально працює в агентській розробці та чому міфічна х10 продуктивність не така проста, як здається.

Андрій Шумада — прихильник підходів TDD та “everything as a code”, публічний спікер і контриб’ютор open source. Під час доповіді «No MCP, No Zod: Lean AI Agents in Node.js and Vertex AI» Андрій розповість про створення мультиінструментального AI-агента на Node.js поверх Google Vertex AI, поділиться досвідом вибору моделей, масштабування розробки через CI/CD і пояснить, чому команда вирішила відмовитися від MCP-серверів і Zod, які часто вважають стандартом для таких систем.

Олександр Зіневич — Engineering Director в Avenga з понад 10-річним досвідом у розробці вебзастосунків. Працював із .NET, Java, Ruby та JavaScript, а сьогодні відповідає за розвиток engineering culture у Node.js та Ruby департаментах компанії. Під час доповіді «Навчи ШІ користуватись своїм бекендом або Магія MCP» Олександр покаже, як перетворити звичайний REST API на MCP-сервер і навчити AI працювати з вашим бекендом. Ви дізнаєтесь про основи Model Context Protocol, необхідні інструменти та важливі аспекти безпеки.

Більше тем та доповідей на сайті конференції
🔥3
Нас 1000! Тепер ми офіційно банда (або маленька секта) 🥳

Друзі, ми це зробили! На YouTube-каналі Codica People вже перша тисяча підписників. Це як задеплоїти великий фікс у п’ятницю ввечері й нічого не зламати — відчуття просто космос! 🚀

Ми знаємо, що ви тут не заради наших гарних очей (хоча і це теж), а заради контенту. Тому, замість довгих промов, тримайте наш «Золотий фонд» — 5 відео, які залетіли найсильніше.

Обережно: викликають бажання кодити, рефлексувати та іноді істерично сміятися.
🎉3
👇 Що подивитись, поки компілюється проєкт:

1️⃣ Як джуну пройти техспівбесіду на Ruby on Rails 💎
Класика жанру. Це як перше побачення, тільки замість квітів — питання про наслідування та модулі. Макс та Наталя показують, як не перетворитися на помідорку від сорому, коли лід питає про self.

2️⃣ Чи існують 20-річні сеньйори? 🦄
Міфічні істоти, про яких всі чули, але ніхто не бачив (або бачили в дзеркалі після трьох енергетиків). Розбираємось: це генії з пелюшок чи просто хтось дуже швидко сивіє в IT?

3️⃣ 7 AI-інструментів, які зроблять тебе продуктивним (і трохи ледачим) 🤖
Відео для тих, хто хоче, щоб нейронка писала код, відповідала в Slack і ходила за продуктами. Гайд, як легально нічого не робити й отримувати за це офери.

4️⃣ Як перевершити інших кандидатів на співбесіді RoR 🚜
Інструкція з виживання в умовах жорстокого ринку. Розповідаємо, як підсвітити свої скіли так яскраво, щоб рекрутер забув про всіх інших (і навіть про обідню перерву).

5️⃣ Не робіть цього на роботі: Факапи QA інженерів 🤯
Наше улюблене. Коли «це не баг, а фіча» вже не працює. Збірка історій про те, як один клік може покласти прод і змусити сивіти весь відділ розробки. Вчимося на чужих помилках, поки свої ще не такі дорогі.

Щиро дякуємо, що ви з нами ❤️❤️❤️
Далі буде ще більше україномовного контенту, мемів та користі.

Підписуйтесь, ставте вподобайки і пишіть у коментарях: яка ваша наступна ціль — 10k підписників чи вивчити нову бібліотеку до понеділка? 😉

TikTok | Instagram | Telegram
🔥3
⚔️ Python vs JavaScript — чому розробники постійно сперечаються?

Як тільки в команді зустрічаються Python і JavaScript розробники — починається класика:
“читабельність vs гнучкість”, “backend vs універсальність”, “простота vs контроль”.

І справа навіть не в тому, яка мова краща — вони просто вирішують різні задачі різними підходами.

Давайте подивимось на реальні відмінності без holy war 👇

#codica_advice
🐍 Синтаксис і читабельність

Python:

numbers = [x * 2 for x in range(5)]


JavaScript:

const numbers = [...Array(5)].map((_, i) => i * 2);


👉 Python читається простіше
👉 JS дає більше варіантів реалізації

🔄 Робота з колекціями

Python:

filtered = [x for x in items if x.active]


JavaScript:

const filtered = items.filter(x => x.active);


👉 Python — компактність
👉 JS — chainable стиль

📦 Робота з обʼєктами / словниками

Python:

value = user.get("name", "Guest")


JavaScript:

const value = user?.name ?? "Guest";


Обидві мови вирішують одну проблему — безпечний доступ до даних.

Асинхронність

Python:

async def fetch_data():
await api_call()


JavaScript:

async function fetchData() {
await apiCall();
}


👉 JS історично сильніший у async
👉 Python наздогнав через asyncio

🧠 Типізація

Python:

def greet(name: str) -> str:
return f"Hi {name}"


JavaScript (TypeScript):

function greet(name: string): string {
return Hi ${name};
}


👉 Python typing — optional hints
👉 JS часто переходить у TypeScript для строгих контрактів

🌐 Екосистема

🐍 Python:
• data science
• automation
• backend APIs
• ML/AI

🟨 JavaScript:
• frontend
• full-stack
• realtime apps
• UI ecosystem

📌 То хто ж “кращий”?

Python — коли важлива швидкість розробки і читабельність.
JavaScript — коли потрібна універсальність і робота в браузері.

А реальність така: сучасні команди часто використовують обидві мови разом.

💬 Python чи JS — за що ви любите свою мову більше?

TikTok | Instagram | Telegram
🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Якщо твоя англійська звучить нормально, але не звучить смачно — зараз це виправимо 😏

Ось 5 нетипових фраз, які використовують носії (і які одразу піднімуть твій рівень звучання)

#codica_english

1️⃣ I’m running on fumes
👉 Я працюю “на останніх краплях бензину”, ледве тримаюсь.
Ідеально для понеділків (і дедлайнів 🙃)

2️⃣ Spill the tea
👉 Розказуй усе! (плітки / juicy info).
Коли колега каже “I have news” — ти знаєш, що відповісти 😏

3️⃣ That’s a whole mood
👉 Це прям мої вайби / стан душі.
Фото з кавою — mood. Собака в ковдрі — теж mood.

4️⃣ I vibe with that
👉 Мені це відгукується, подобається, заходить.
Універсальна фраза, коли не хочеш казати банальне “I like it”.

5️⃣ It hits different
👉 Це відчувається по-особливому.
Кава на свіжому повітрі? Oh yes, it hits different

💾 Збережи собі, щоб не загубити
і почни використовувати вже сьогодні, бо такі фрази реально роблять твою англійську живою 🔥

TikTok | Instagram | Telegram
👍4👀1
Що виведе цей код?
Anonymous Quiz
17%
Range
55%
Array
10%
Enumerator
17%
Integer
Що буде виведено в консоль?
Anonymous Quiz
20%
0 0 0
22%
3 3 3
44%
0 1 2
15%
Error
А ви колись ловили себе на думці, що “я ж додав validation — значить, дублікати неможливі”? 😄

А потім у проді раптом з’являються сюрпризи, які ламають це відчуття безпеки.

Давайте розберемося, чому так відбувається 👇

#codica_advice
DB constraints: чому Rails validation — це не гарантія

📍 Rails без магії: 7 помилок, які роблять навіть мідли
📍 Background jobs: чому “просто Sidekiq” — не завжди просто
📍 Transactions у Rails: чому “і так працює” — небезпечна ілюзія

Майже кожен писав так:

validates :email, uniqueness: true

І здається — все, проблема вирішена.

Але в продакшені раптом з’являються два користувачі з однаковим email.

Чому?

Бо validation — це перевірка на рівні додатку,
а не гарантія на рівні бази.

Ми всі через це проходили 🙂

У чому реальна проблема
Rails validation працює так:
1. Перевіряє — чи існує запис
2. Якщо не існує — створює

Але якщо два запити прийшли одночасно → race condition.

І ти отримуєш дубль.

Що реально захищає
1️⃣ Unique index

add_index :users, :email, unique: true

Ось це вже гарантія.

База не дозволить вставити дубль навіть при конкурентному доступі.

2️⃣ NOT NULL

change_column_null :users, :email, false

Validation можна обійти через

update_column, insert_all

або консоль.
Constraint — ні.

3️⃣ Foreign keys

add_foreign_key :orders, :users

Без foreign key можна легко отримати “висячі” записи.

4️⃣ Check constraints (просунутий рівень)
Наприклад, статус лише з дозволеного списку:

add_check_constraint :orders, "status IN ('new', 'paid', 'cancelled')"

Тепер БД сама не дозволить некоректні дані.

Маленьке правило
Validation — це зручність.
Constraint — це гарантія.

Якщо дані критичні — вони мають бути захищені на рівні БД.

Типова помилка
Розробник каже:
“У нас же є validation.”

Але продакшен — це завжди про конкурентність, баги і непередбачувані сценарії.

І база — остання лінія оборони.

У кого був кейс, коли validation “пройшла”, а база зламалась? І що тоді довелося чистити вручну? 😄

TikTok | Instagram | Telegram
👍2
Є плани на літо? У нас є кілька ✈️

Ось 3 професійні стажування за кордоном від AIESEC для молоді 18–30 років 👇
👍2👎1