Друзі, дивіться, що ми знайшли 👀
Є цікавий спосіб зекономити до 60% токенів при роботі з AI-моделями 🤯
Суть у тому, що замість того, щоб передавати моделі величезні обсяги тексту (системні промпти, документацію чи контекст), їх можна перетворити на зображення. І тут починається найцікавіше 👇
Мультимодальні моделі читають такі зображення доволі ефективно, а оплата йде за роздільну здатність картинки, а не за кількість тексту всередині. Тобто великий шматок тексту можна буквально «запакувати» в PNG і суттєво скоротити витрати.
Для цього використовують інструмент pxpipe:
▫️ конвертує промпти, документацію та старий контекст у зображення;
▫️ залишає нові повідомлення у звичайному текстовому форматі;
▫️ допомагає зменшити витрати на токени приблизно на 60–70% залежно від задачі.
За словами автора, в одному з прикладів вартість сесії вдалося знизити з $42 до $6 без помітної втрати якості роботи моделі.
Ділимося знахідкою, бо тема справді цікава 🔥
Автор: Павло Лисий 🙌
TikTok | Instagram | Telegram
Є цікавий спосіб зекономити до 60% токенів при роботі з AI-моделями 🤯
Суть у тому, що замість того, щоб передавати моделі величезні обсяги тексту (системні промпти, документацію чи контекст), їх можна перетворити на зображення. І тут починається найцікавіше 👇
Мультимодальні моделі читають такі зображення доволі ефективно, а оплата йде за роздільну здатність картинки, а не за кількість тексту всередині. Тобто великий шматок тексту можна буквально «запакувати» в PNG і суттєво скоротити витрати.
Для цього використовують інструмент pxpipe:
▫️ конвертує промпти, документацію та старий контекст у зображення;
▫️ залишає нові повідомлення у звичайному текстовому форматі;
▫️ допомагає зменшити витрати на токени приблизно на 60–70% залежно від задачі.
За словами автора, в одному з прикладів вартість сесії вдалося знизити з $42 до $6 без помітної втрати якості роботи моделі.
Ділимося знахідкою, бо тема справді цікава 🔥
Автор: Павло Лисий 🙌
TikTok | Instagram | Telegram
👍2🔥1
Друзі, а у вас бувало таке, що дивишся на розвʼязання задачі в Python і JavaScript — і ніби логіка однакова, а код виглядає так, ніби його писали люди з різних світів? 😄
У цьому й одна з найцікавіших відмінностей між мовами. Python часто робить ставку на лаконічність і читабельність, тоді як JavaScript дає більше свободи у виборі підходів та побудові рішень.
Тож продовжуємо нашу рубрику Python vs JavaScript 👇
⚔️ Python vs JavaScript — Code Style Battle
#codica_advice
Попередні частини:
📍 Python vs JavaScript — Part 1
📍 Python vs JavaScript — Part 2
У цьому й одна з найцікавіших відмінностей між мовами. Python часто робить ставку на лаконічність і читабельність, тоді як JavaScript дає більше свободи у виборі підходів та побудові рішень.
Тож продовжуємо нашу рубрику Python vs JavaScript 👇
⚔️ Python vs JavaScript — Code Style Battle
#codica_advice
Попередні частини:
📍 Python vs JavaScript — Part 1
📍 Python vs JavaScript — Part 2
👀3
1) Витягнути імена користувачів
Python:
Пояснення:
Читається як природна мова: “візьми
JavaScript:
Пояснення:
Часто використовується разом з іншими методами в ланцюжках.
2) Відфільтрувати активних користувачів
Python:
Пояснення:
Один вираз — одразу новий список.
Мінімум синтаксичного шуму.
JavaScript:
Пояснення:
Зручно комбінувати з
3) Безпечний доступ до поля
Python:
Пояснення:
Часто використовується при роботі з API-даними.
JavaScript:
Пояснення:
Дозволяє уникати довгих перевірок
4) Асинхронний виклик
Python:
JavaScript:
Пояснення:
Обидві мови підтримують
Чому це виглядає як “батл”?
🔹 Python часто прагне максимальної простоти читання.
🔹 JavaScript прагне універсальності та композиції функцій.
🔹 Python-деви іноді кажуть, що JS “перевантажений синтаксисом”.
🔹 JS-деви відповідають, що Python “занадто обмежує стиль”.
📌 Висновок
Це не битва мов — це битва
І багато сучасних команд спокійно поєднують Python на
💬 А який стиль коду вам ближчий — Python чи JavaScript?
TikTok | Instagram | Telegram
Python:
names = [user["name"] for user in users]
Пояснення:
List comprehension — класичний Python-патерн.Читається як природна мова: “візьми
name для кожного user”.JavaScript:
const names = users.map(user => user.name);
Пояснення:
map() — частина functional style у JS.Часто використовується разом з іншими методами в ланцюжках.
2) Відфільтрувати активних користувачів
Python:
active = [u for u in users if u["active"]]
Пояснення:
Один вираз — одразу новий список.
Мінімум синтаксичного шуму.
JavaScript:
const active = users.filter(u => u.active);
Пояснення:
filter() повертає новий масив.Зручно комбінувати з
map() або reduce().3) Безпечний доступ до поля
Python:
name = user.get("name", "Guest")
Пояснення:
dict.get() — стандартний спосіб уникнути KeyError.Часто використовується при роботі з API-даними.
JavaScript:
const name = user?.name ?? "Guest";
Пояснення:
Optional chaining + nullish coalescing — сучасний синтаксис JS.Дозволяє уникати довгих перевірок
if.4) Асинхронний виклик
Python:
async def fetch_data():
await api_call()
JavaScript:
async function fetchData() {
await apiCall();
}
Пояснення:
Обидві мови підтримують
async/await.JS історично сильніший у UI та event-loop задачах, Python — у backend і automation.Чому це виглядає як “батл”?
🔹 Python часто прагне максимальної простоти читання.
🔹 JavaScript прагне універсальності та композиції функцій.
🔹 Python-деви іноді кажуть, що JS “перевантажений синтаксисом”.
🔹 JS-деви відповідають, що Python “занадто обмежує стиль”.
📌 Висновок
Це не битва мов — це битва
code style.І багато сучасних команд спокійно поєднують Python на
backend і JavaScript на frontend.💬 А який стиль коду вам ближчий — Python чи JavaScript?
TikTok | Instagram | Telegram
🔥3
📊 А який стиль коду вам ближчий — Python чи JavaScript?
Anonymous Poll
4%
Python: хочу писати код словами, а не малювати ребуси
44%
JS: обожнюю ліпити ?., ?? та дужки всюди, де можна
22%
Обидва! Коли фронт на JS, а бек на Python – це ідеальне комбо
26%
Ruby: сиджу з попкорном і дивлюсь, як ви знову винайшли велосипед
19%
«Мені нравиться, як воно горить», коли всі сходяться в одному репозиторії
30%
Я просто зайшов подивитись, як ви тут 🍿
Друзі, скільки разів на мітингу хотілося пояснити свою думку англійською, але в голові крутилося лише: “It depends”? 😅
Щоб почуватися впевненіше під час обговорення технічних рішень, ловіть добірку корисних фраз 👇
#codica_english
🔹 Обговорення технічних рішень
💬 “From a technical standpoint, this could be challenging.”
З технічної точки зору це може бути складно.
💬 “We’re considering a more scalable solution.”
Ми розглядаємо більш масштабоване рішення.
💬 “This approach should improve performance.”
Цей підхід має покращити продуктивність.
💬 “There are some trade-offs we need to consider.”
Є певні компроміси, які треба врахувати.
🔹 Проблеми та ризики
💬 “We’ve identified a potential bottleneck.”
Ми виявили можливе вузьке місце.
💬 “There’s a risk this could break existing functionality.”
Є ризик, що це зламає існуючий функціонал.
💬 “We’re currently investigating the issue.”
Ми зараз досліджуємо проблему.
💡 Зберігайте собі в закладки!
TikTok | Instagram | Telegram
Щоб почуватися впевненіше під час обговорення технічних рішень, ловіть добірку корисних фраз 👇
#codica_english
🔹 Обговорення технічних рішень
💬 “From a technical standpoint, this could be challenging.”
💬 “We’re considering a more scalable solution.”
💬 “This approach should improve performance.”
💬 “There are some trade-offs we need to consider.”
🔹 Проблеми та ризики
💬 “We’ve identified a potential bottleneck.”
💬 “There’s a risk this could break existing functionality.”
💬 “We’re currently investigating the issue.”
💡 Зберігайте собі в закладки!
TikTok | Instagram | Telegram
❤🔥4❤1🔥1
Друзі, а у вас бувало таке, що все чудово працює на локалці, а в продакшені сторінка раптом починає «думати» значно довше? 😅
Дуже часто причина ховається не в складній бізнес-логіці чи базі даних, а в одній із найпоширеніших пасток Rails.
Продовжуємо нашу серію про типові проблеми продакшену 👇
Попередні пости серії:
📍 Rails без магії: 7 помилок, які роблять навіть мідли
📍 Background jobs: чому “просто Sidekiq” — не завжди просто
📍 Transactions у Rails: чому “і так працює” — небезпечна ілюзія
📍 DB constraints: чому Rails validation — це не гарантія
📍 Fat model / Fat controller: коли клас росте швидше за проєкт
#codica_advice
Дуже часто причина ховається не в складній бізнес-логіці чи базі даних, а в одній із найпоширеніших пасток Rails.
Продовжуємо нашу серію про типові проблеми продакшену 👇
Попередні пости серії:
📍 Rails без магії: 7 помилок, які роблять навіть мідли
📍 Background jobs: чому “просто Sidekiq” — не завжди просто
📍 Transactions у Rails: чому “і так працює” — небезпечна ілюзія
📍 DB constraints: чому Rails validation — це не гарантія
📍 Fat model / Fat controller: коли клас росте швидше за проєкт
#codica_advice
N+1: коли все працює… поки не з’являються реальні дані
Якщо сторінка відкривається за
Rails робить асоціації зручними.
І саме ця зручність іноді дорого коштує.
Ми всі через це проходили 🙂
Класичний приклад
Здається невинно.
Але під капотом:
Якщо користувачів
Чому це небезпечно
🔹 Проблема не помітна на маленьких даних
🔹 Логи виглядають “нормально”
🔹 Ламається тільки під навантаженням
🔹 Важко відловити без моніторингу
Як це виправити?
1️⃣ includes
Rails зробить
2️⃣ preload vs eager_load
Іноді
3️⃣ counter_cache
Якщо ви лише рахуєте:
І:
І більше ніяких
4️⃣ Дивитись у EXPLAIN
Якщо не дивишся в
Маленьке правило
Якщо в коді є
💬 Хто ловив N+1 уже після релізу? І через що помітили —
TikTok | Instagram | Telegram
Якщо сторінка відкривається за
50 ms на локалці, але падає в продакшені — дуже часто це N+1.Rails робить асоціації зручними.
І саме ця зручність іноді дорого коштує.
Ми всі через це проходили 🙂
Класичний приклад
users = User.all
users.each do |user|
puts user.posts.count
end
Здається невинно.
Але під капотом:
1 запит за всіма usersN запитів за posts для кожного userЯкщо користувачів
200 — це вже 201 SQL-запит.Чому це небезпечно
🔹 Проблема не помітна на маленьких даних
🔹 Логи виглядають “нормально”
🔹 Ламається тільки під навантаженням
🔹 Важко відловити без моніторингу
N+1 — це не баг. Це “тиха деградація”.Як це виправити?
1️⃣ includes
users = User.includes(:posts)
Rails зробить
2 запити замість N+1.2️⃣ preload vs eager_load
includes — універсальний варіантpreload — окремі запитиeager_load — JOINІноді
JOIN краще, іноді — ні. Треба дивитись у SQL.3️⃣ counter_cache
Якщо ви лише рахуєте:
add_column :users, :posts_count, :integer, default: 0
І:
belongs_to :user, counter_cache: true
І більше ніяких
.count у циклі.4️⃣ Дивитись у EXPLAIN
Якщо не дивишся в
SQL — ти не контролюєш продуктивність.Маленьке правило
Якщо в коді є
.each + асоціація — перевір, скільки запитів реально виконується.💬 Хто ловив N+1 уже після релізу? І через що помітили —
Sentry, NewRelic чи “клієнт написав”? 😄TikTok | Instagram | Telegram
🔥3👀1
Коли робочий тиждень позаду, у Mr. Cody прокидається внутрішній кутюр’є ✨
Наш маскот приміряв традиційні костюми різних країн. Ну який же він у нас гарнюня 🫶 (Окрім одного персонажа з унітазами, але то окрема клінічна історія 🫠)
Який образ Містера Cody залетів вам у саме серце?
Став реакції:
❤️ — за розкішний український аутфіт!
🔥 — за стильні європейські костюми!
🗿 — за «стиль болота» в окремому бліндажі!
TikTok | Instagram | Telegram
Наш маскот приміряв традиційні костюми різних країн. Ну який же він у нас гарнюня 🫶 (Окрім одного персонажа з унітазами, але то окрема клінічна історія 🫠)
Який образ Містера Cody залетів вам у саме серце?
Став реакції:
❤️ — за розкішний український аутфіт!
🔥 — за стильні європейські костюми!
🗿 — за «стиль болота» в окремому бліндажі!
TikTok | Instagram | Telegram
❤4👍1🌚1
Друзі, всім ясного та допитливого вихідного 🔬
#codica_weekend
Зібрали для вас підбірку про науку. Ідеально, щоб залипнути з користю 🧠
➡️ 25 за 25: найбільші наукові відкриття ХХІ сторіччя і що далі до 2050?
Геном, CRISPR, AlphaFold, чорні діри і термоядерка — концентрат науки, після якого трохи інакше дивишся на світ і майбутнє.
⏱ Тривалість — 34 хв
➡️ Людина, яка відкрила антиматерію [VERITASIUM]
Історія відкриття, яке звучить як sci-fi, але стало реальною наукою — дуже захоплює і пояснює складне простими словами.
⏱ Тривалість — 34 хв
➡️ Чому часові пояси такі дивні?
Після цього відео ви нарешті зрозумієте, чому світ живе в такому хаосі часу і чому все могло бути значно простіше 😄
⏱ Тривалість — 27 хв
Нехай ці вихідні будуть з новими відкриттями, гарним настроєм і хоча б однією відповіддю на питання “як це працює?” ☕
TikTok | Instagram | Telegram
#codica_weekend
Зібрали для вас підбірку про науку. Ідеально, щоб залипнути з користю 🧠
➡️ 25 за 25: найбільші наукові відкриття ХХІ сторіччя і що далі до 2050?
Геном, CRISPR, AlphaFold, чорні діри і термоядерка — концентрат науки, після якого трохи інакше дивишся на світ і майбутнє.
⏱ Тривалість — 34 хв
➡️ Людина, яка відкрила антиматерію [VERITASIUM]
Історія відкриття, яке звучить як sci-fi, але стало реальною наукою — дуже захоплює і пояснює складне простими словами.
⏱ Тривалість — 34 хв
➡️ Чому часові пояси такі дивні?
Після цього відео ви нарешті зрозумієте, чому світ живе в такому хаосі часу і чому все могло бути значно простіше 😄
⏱ Тривалість — 27 хв
Нехай ці вихідні будуть з новими відкриттями, гарним настроєм і хоча б однією відповіддю на питання “як це працює?” ☕
TikTok | Instagram | Telegram
🔥2
Англійська за мемами😜
👉 Говоримо красиво
📍 hooman – жартівливе написання слова human («людина»), часто використовується в мемах про тварин
📍 family size pack – велика упаковка для всієї родини; сімейна упаковка
#codica_english
TikTok | Instagram | Telegram
👉 Говоримо красиво
📍 hooman – жартівливе написання слова human («людина»), часто використовується в мемах про тварин
📍 family size pack – велика упаковка для всієї родини; сімейна упаковка
#codica_english
TikTok | Instagram | Telegram
😁7
🎯 Як відповідати на технічні запитання на співбесіді?
#codica_interviews
❌ Обмежуватися визначенням з документації.
✅ Пояснювати архітектурні нюанси.
#codica_interviews
❌ Обмежуватися визначенням з документації.
✅ Пояснювати архітектурні нюанси.
📌 Explain what is a session mechanism. How does it work in Rails?
📍 Очікувана відповідь:
HTTP є stateless-протоколом, тому сесія — це спосіб зберегти стан між запитами.
За замовчуванням у Rails використовується
Весь стан сесії серіалізується у JSON (починаючи з Rails 7), шифрується алгоритмом
🔒 Завдяки шифруванню клієнт не може прочитати вміст, а завдяки криптографічному підпису — не може його підробити.
💡 Профі додасть про обмеження та альтернативи:
🛡 Захист від Session Fixation при автентифікації
📌 Describe CSRF, XSS, session hijacking, and session fixation.
📍 Очікувана відповідь:
🔹 CSRF (Cross-Site Request Forgery) — атака, що змушує браузер авторизованого користувача виконати небажаний запит (POST/PUT/DELETE) на ваш додаток.
🛡 Захист: Rails (у non-API додатках) порівнює токен у параметрах/заголовках із токеном у сесії за допомогою
🔹 XSS (Cross-Site Scripting) — впровадження шкідливого JS-коду в сторінку.
🛡 Захист: Rails автоматично ескейпить вивід у шаблонах (через клас
🔹 Session Hijacking — викрадення чужого session cookie (через MITM або XSS).
🛡 Захист: Робота виключно через HTTPS (
🔹 Session Fixation — ситуація, коли зловмисник нав'язує жертві свій
🛡 Захист: Обов’язковий виклик
✅ Коротко:
На співбесіді важливо показати концепцію Defense in Depth (багаторівневий захист): ми не просто сподіваємося на магію фреймворку, а чітко розуміємо конфігурацію кук, HTTP-заголовки безпеки (
TikTok | Instagram | Telegram
📍 Очікувана відповідь:
HTTP є stateless-протоколом, тому сесія — це спосіб зберегти стан між запитами.
За замовчуванням у Rails використовується
ActionDispatch::Session::CookieStore.Весь стан сесії серіалізується у JSON (починаючи з Rails 7), шифрується алгоритмом
AES-256-GCM (через ActiveSupport::MessageEncryptor) і зберігається прямо у браузері користувача.🔒 Завдяки шифруванню клієнт не може прочитати вміст, а завдяки криптографічному підпису — не може його підробити.
💡 Профі додасть про обмеження та альтернативи:
УCookieStoreє ліміт 4KB і відсутній швидкий механізм відкликання сесії з боку сервера (якщо куку вкрали, вона валідна, поки не спливеexpires). Тому для критичних систем краще конфігурувати:cache_store (на базі Redis або Solid Cache) — тоді в cookie зберігається лише випадковийsession_id, а самі дані лежать на сервері.
🛡 Захист від Session Fixation при автентифікації
def create
user = User.find_by(email: params[:email])
if user&.authenticate(params[:password])
# Повністю оновлюємо сесію перед записом нових даних
reset_session
session[:user_id] = user.id
redirect_to root_path
else
render :new
end
end
📌 Describe CSRF, XSS, session hijacking, and session fixation.
📍 Очікувана відповідь:
🔹 CSRF (Cross-Site Request Forgery) — атака, що змушує браузер авторизованого користувача виконати небажаний запит (POST/PUT/DELETE) на ваш додаток.
🛡 Захист: Rails (у non-API додатках) порівнює токен у параметрах/заголовках із токеном у сесії за допомогою
protect_from_forgery. Також допомагає прапорець SameSite=Lax або Strict для cookies.🔹 XSS (Cross-Site Scripting) — впровадження шкідливого JS-коду в сторінку.
🛡 Захист: Rails автоматично ескейпить вивід у шаблонах (через клас
ActiveSupport::SafeBuffer). Метод html_safe та хелпер raw слід використовувати обережно. Глобально додаток захищає налаштування Content Security Policy (CSP) заголовків.🔹 Session Hijacking — викрадення чужого session cookie (через MITM або XSS).
🛡 Захист: Робота виключно через HTTPS (
config.force_ssl = true), а також обов'язкові прапорці HttpOnly (забороняє JS читати куку) та Secure для сесійних файлів cookie.🔹 Session Fixation — ситуація, коли зловмисник нав'язує жертві свій
session_id до моменту логіну, а після авторизації користувача отримує доступ до його сесії.🛡 Захист: Обов’язковий виклик
reset_session одразу після успішного входу (популярні геми на кшталт Devise чи Rodauth роблять це автоматично під капотом).✅ Коротко:
На співбесіді важливо показати концепцію Defense in Depth (багаторівневий захист): ми не просто сподіваємося на магію фреймворку, а чітко розуміємо конфігурацію кук, HTTP-заголовки безпеки (
HSTS , CSP) та логіку роботи middleware (ActionDispatch).TikTok | Instagram | Telegram
🔥2❤1
💼 Чому одні проходять випробувальний термін легко, а інші стикаються з труднощами вже в перші місяці?
#НапуттяВід_HR Директорки Клименко Наталії
Наталя, HR Director, яка за роки роботи в IT супроводжувала сотні probation-періодів, ділиться інсайтами з практики.
У цьому матеріалі — реальні поради про адаптацію, комунікацію з командою та кроки, які допоможуть закріпитися на новій позиції.
Зберігайте та гортайте далі 👉
TikTok | Instagram | Telegram
#НапуттяВід_HR Директорки Клименко Наталії
Наталя, HR Director, яка за роки роботи в IT супроводжувала сотні probation-періодів, ділиться інсайтами з практики.
У цьому матеріалі — реальні поради про адаптацію, комунікацію з командою та кроки, які допоможуть закріпитися на новій позиції.
Зберігайте та гортайте далі 👉
TikTok | Instagram | Telegram
🔥7