Iniciar sesión Registro
Anuncios
Tu espacio publicitario
Reserva este slot exclusivo para el periodo elegido.
Comprar publicidad →
Logotipo de la comunidad de telegram - Codica - корисне про IT
Añadido 14 jul. 2024

Codica - корисне про IT

@codica
Número de suscriptores: 2 125
Fotos: 3,050
Videos: 154
Enlaces: 1,570
Descripción:
Привіт, друже, це канал про корисності в ІТ🤘 🔺Даємо практичні матеріали з RoR, JavaScript, QA, DevOps 🔺Розкажемо як знайти першу роботу без хвилювань та проблем ✍️Для звʼязку-@klimenko_nataly 👉 Відкриті вакансії - www.codica.com/careers

👥 Número de suscriptores

2 125
Promedio/Día:: +44
Promedio/Tiempo:: +73
Promedio/Mes:: +115

👁️ Vistas promedio por mensaje

223
Promedio/Día:: 230
Promedio/Tiempo:: 222
ERR: 10.49%

📊 Mensajes por Día

2.6
Último día: 0
Promedio semanal: 2.1
Promedio por día: 2.6

Historial de cambios de logotipo

Historial de cambios de estado

Oficialmente no confirmado 2024-07-14

Muro

Estadísticas de telegram canal

👁 228 25-08-13 08:25
Незмінні (Immutable):Integer – цілі числа: 42, -7Float – десяткові числа: 3.14, 0.001Symbol – унікальні імена: :user, :emailTrueClass, FalseClass, NilClass – логіка: true, false, nil📌 Приклад:x = 5y = xx += 1puts y # => 5 (x і y – окремі об'єкти) Змінні (Mutable):String – рядки: "hello", 'world'Array – масиви: [1, 2, 3]Hash – словники: {name: "Dima", role: "CEO"}Set – множини (через require 'set')📌 Приклад:arr = [1, 2, 3]arr << 4puts arr.inspect # => [1, 2, 3, 4] Цікаві нюанси:🔸 Рядки у Ruby – mutable за замовчуванням:str = "Hi"str << " there"puts str # => "Hi there" 🔸 Але символи :symbol – immutable. Памʼять економлять і швидше порівнюються::admin == :admin # => true (один обʼєкт)"admin" == "admin" # => true, але два різні рядки Чому це має значення?В Ruby багато магії, але якщо не памʼятаєш, що mutable – можеш собі ж копати баги 🕳️Правильно обираючи тип – економиш памʼять, пишеш безпечнішеА ще краще розумієш, чому одні об’єкти змінюються, а інші ні – без сюрпризів 💥 Далі буде – типи даних у JavaScriptЗалишайся з нами 💬#codica_techTikTok | Instagram | Telegram
👁 217 25-08-11 11:05
ReactReact залишається королем фронтенду й у 2025. Його популярність лише зросла завдяки React Server Components і покращеній інтеграції з Next.js. Vue.jsVue 3 уже став стандартом, а в 2025 з’явився Vue 3.4 із ще кращою продуктивністю та офіційною підтримкою Vite як рекомендованого білдера. Angular Angular випустив версію 18 із новим компілятором та значно кращим DX (developer experience). Svelte & SvelteKitSvelte продовжує завойовувати серця завдяки відсутності віртуального DOM і мініатюрним бандлам. У 2025 SvelteKit (фреймворк поверх Svelte) стабільно підтримується й розвивається. Next.jsТак, це вже не просто «React», а цілий фреймворк з рендерингом на сервері, підтримкою React Server Components і Edge Functions. У 2025 – ще швидший. Nuxt.jsФреймворк на базі Vue, чудовий для SSR та статичних сайтів. Nuxt 4 ще більше спростив роботу з TypeScript та серверними функціями. QwikНовачок, який буквально злітає. Основна фішка – миттєвий старт сторінки завдяки розумній стратегії завантаження. Solid.jsЩе один легковаговик, що перевершує React за продуктивністю й простотою, із реактивною моделлю даних. RemixБрат Next.js, але з акцентом на веб-стандарти, форми та роботу без JavaScript там, де це можливо. Дуже гнучкий.Висновок:👉 Якщо потрібна стабільність – беріть React, Vue або Angular.👉 Якщо хочеться чогось нового й легшого – пробуйте Svelte, Solid чи Qwik.👉 Для серверного рендерингу й SEO – Next.js, Nuxt або Remix.Зберігайте собі й діліться з колегами.А якщо ви вже тестували щось із новенького в 2025 – діліться враженнями в коментарях 👇🚀 Успіхів і хай ваш код завжди буде красивим та швидким!TikTok | Instagram | Telegram
👁 207 25-08-08 08:15
1. Основи JavaScript📌 Що вивчати:- синтаксис JS- змінні (var, let, const), типи даних- оператори, умовні конструкції, цикли- функції, стрілкові функції- області видимості та hoisting📚 Ресурси:👉 MDN: JavaScript Basics 👉 JavaScript.info 👉 Eloquent JavaScript (книга) 2. Git та GitHub📌 Що вивчати:- git init, add, commit, push/pull- гілки та злиття (merge)- pull requests📚 Ресурси:👉 Git Handbook👉 Learn Git Branching 3. HTML/CSS (обов’язково!)📌 Що вивчати:- семантичний HTML- Flexbox, Grid- адаптивність (media queries)- базовий дизайн форм📚 Ресурси:👉 MDN: HTML 👉 MDN: CSS 👉 Frontend Roadmap 4. DOM та події📌 Що вивчати:- вибір елементів DOM- зміна стилів та атрибутів- обробка подій- делегування подій📚 Ресурси:👉 MDN: Introduction to the DOM 👉 JavaScript.info: DOM 5. ES6+ і далі📌 Що вивчати:- шаблонні рядки, деструктуризація- spread/rest оператори- модулі (import/export)- async/await, проміси- класова модель📚 Ресурси:👉 MDN: ES6 guide 👉 JavaScript.info: Promises 6. Інструменти розробника📌 Що вивчати:- npm/yarn — менеджери пакетів- Babel — трансляція коду- Webpack / Vite — збірка проектів- ESLint / Prettier — лінтинг і форматування📚 Ресурси:👉 Node.js Docs 👉 NPM Docs 7. Фреймворки та бібліотеки📌 Що вивчати:- React.js — компоненти, стейт, хуки- Vue.js — шаблони, реактивність- Angular — модулі, компоненти, DI📚 Ресурси:👉 React Docs 👉 Vue.js Docs 👉 Angular Docs 8. Тестування📌 Що вивчати:- unit-тести з Jest- E2E тести з Cypress- мокінг, snapshot-тести📚 Ресурси:👉 Jest Docs 👉 Cypress Docs 9. API та JSON📌 Що вивчати:- робота з JSON- HTTP-запити (fetch, axios)- REST API📚 Ресурси:👉 MDN: Fetch API 👉 Axios 10. ПрактикаЩо зробити: ToDo app калькулятор галерея з API чат на WebSockets SPA (single page app) на React/VueДалі: архітектура, продуктивність, CI/CD оптимізація фронтенда SSR (Next.js/Nuxt.js) автоматизація збірок, деплой📌 Читай:👉 JavaScript Weekly 👉 Awesome JavaScript (GitHub) Зберігай у закладки й ділися з друзями! 💬#codica_adviceTikTok | Instagram | Telegram
👁 259 25-08-05 11:25
🔹 Rubyist UA – максимально зрозумілий Ruby українськоюАвторські уроки, які крок за кроком допоможуть розібратись із Rails-проєктом.👉 Налаштування середовища та перший запуск проєкту 👉 Загальний принцип роботи сайту. Робота з VIEW 👉 HTML. Bootstrap. Assets. Робота з помилками 🔹 Rails-практика від CodicaХочеш створювати реальні проєкти на Rails? Тоді тобі сюди. Все показано наживо – бери й повторюй.👉 #1 Rails Туторіали | Встановлення та старт нового проєкту 👉 #2 Rails Туторіали | Створення моделей та міграцій 👉 #3 Rails Туторіали | Оновлення Rails та перший скрапер 👉 #4 Rails Туторіали | MVC Архітектура 🔹 Основи Ruby для новачківЧіткі пояснення, базові концепти, хороший стартовий матеріал для тих, хто тільки починає.👉 Основи Ruby 👉 Вступ до фреймворку Ruby on Rails 👉 Архітектурні шаблони. Сервіс, форма та декоратор 🔹 Як підготуватись до інтерв’ю на Ruby on RailsМаксим – Tech Lead, і Наталія – HR-директор з Codica, розповідають, як виглядає реальне технічне інтерв’ю для джуна, чого чекати й як себе підготувати.👉 Як джуну пройти технічне інтерв'ю Ruby on Rails 🔹 Вступ до Ruby: оглядова лекціяДопоможе скласти загальну картину й зорієнтуватись, куди рухатись далі.👉 Коротко про Ruby для джуніорів | EPAM University 🎬 Вмикай, практикуйся, ділись із друзями. Навіть з базовим Ruby вже можна будувати справжні проєкти. Гарного перегляду!TikTok | Instagram | Telegram
👁 217 25-07-21 09:45
1. God Model — коли модель знає ВСЕМодель User у 700 рядків? Там і валідації, і бізнес-логіка, і парсинг Excel, і надсилання email’ів, і… сльози. Антипатерн:class User < ApplicationRecord before_save :normalize_email def send_welcome_email; end def export_to_csv; end def soft_delete; end def hard_delete; end def resurrect; end # ще 53 методиend Краще:— винести бізнес-логіку в сервісні об'єкти— окремі обов'язки – в concerns— парсинг/експорт – в окремі класи2. Fat Controller — коли кожен екшн з душею (і сотнею рядків)OrdersController, де create – на 70 рядків, а update – на 130? Це вже не REST, це серіал. Краще:— витягнути логіку в форм-обʼєкти— використовуй interactor’и, services, commands— before_action з умовами – ок, але без фанатизму3. Колбеки-лабіринти (before_save, after_commit, around_update)Якщо ти не впевнений, чому один і той самий рекорд тригерить три листи й два оновлення таблиць – ти, мабуть, десь переборщив із колбеками. Проблема:— Колбеки приховані— Їх важко тестувати— Вони викликаються неочікувано Рішення:— винось сторонні ефекти (email, push, інтеграції) у ActiveJob— використовуй Service objects, де логіка викликається явно, а не «десь там у фоні»4. Business Logic in Views (ERB має бути простим)Якщо в show.html.erb ти бачиш це:<% if current_user.admin? && order.status == 'pending' && Time.now < order.expires_at %> <%= link_to 'Approve Order', approve_order_path(order) %><% end %> …то ти бачиш антипатерн. Краще:— логіку – в helpers або view models— мінімум умов у ERB, максимум змісту5. Overuse of default_scopeЦе ніби зручно: ти хочеш, щоб усюди is_active: true. Але потім ти хочеш зробити with_deleted… і нічого не працює. Антипатерн:default_scope { where(is_active: true) } Чому погано:— default_scope автоматично додається у ВСІ запити – навіть у joins, includes, count— складно зрозуміти, чому певні дані «не приходять» Краще:scope :active, -> { where(is_active: true) } Rails – це про швидкість. Але legacy приходить не вночі, воно починається з «та я просто тут один колбек додам».Вивчай свій код. Переписуй. Не соромся бути кращим, ніж був вчора.Хочеш частину 2 з антипатернами – напиши в коментарях 👇TikTok | Instagram | Telegram
👁 218 25-07-11 10:41
1. “Після цього клікати – не обов’язково” (і забули протестити клік)Ніхто не любить повзати по кожній кнопці. Але от кнопка в стилі “Submit” без жодної дії і вже гаряче. Погано:Протестували валідацію форми, але не перевірили, що кнопка взагалі щось робить після неї. Добре:Завжди перевіряй поведінку після дій, навіть якщо “начебто вже все валідне”.2. “Все працює, бо я так кажу” (і нуль тест-кейсів)Тестувати “на око” – це класика. Але нагадаємо: “Looks good to me” – не тест-кейс. Погано:Прийомка без документації, без кейсів, без чеклістів. Добре:Базові кейси в Notion/Google Doc/QA Touch – це вже ок.Все, що можна автоматизуй або хоча б стандартизуй.3. “Тестував на Dev, на Staging ще не бачив”Сценарій: на деві все супер, на проді зламалась оплата. Бо в staging інші налаштування, а ти туди не заходив. Погано:Перевірка тільки на одному середовищі. Добре:Завжди уточнюй, на яких енвайронментах треба перевірити.Проганяй критичні кейси скрізь, де вони можуть відрізнятись.4. “Щось не працює, але я не зберіг скрін”Скриншот, відео, логи, дані – усе це важить більше, ніж “ну воно просто не працює“. Погано:Репорт: “Помилка при логіні” без опису, даних та відтворення. Добре:Додавай все: що робив, у якому браузері, які кроки, які очікування.Скрін – це добре, але ще краще відео з Loom.5. “Я думав, що це фіча” (і не спитав ні в кого)Нічого страшного, що користувач не може вийти з кабінету. Це ж фіча. Мабуть. Погано:Здогадки замість уточнень. Добре:Питай: у продактів, у тімлідів, у дизайнерів.Краще уточнити, ніж закрити баг, який закриє вам карму.QA – не про те, щоб знайти баг. А про те, щоб не пропустити критичне лайно в прод. Іноді дрібна неуважність створює більше проблем, ніж баг в коді.Тому тестуй ретельно, думай системно і бережи скріншоти ❤️#codica_adviceTikTok | Instagram | Telegram
👁 250 25-07-02 08:24
4. Забути return в Array.map()Ти хотів трансформувати масив, а отримав набір undefined. Погано:const result = [1, 2, 3].map((n) => { n * 2; // нічого не повертається!}); Добре:const result = [1, 2, 3].map((n) => n * 2);// абоconst result = [1, 2, 3].map((n) => { return n * 2;}); 5. Мутувати масив чи об‘єкт напрямуОсобливо болісно це бачити в React. Але навіть без нього — це гарний спосіб створити собі баг, який важко відловити. Погано:const arr = [1, 2, 3];arr.push(4); // мутує оригінальний масив Добре:const newArr = [...arr, 4]; // створює новий масивconst newObj = { ...oldObj, updatedProp: 42 }; // для обʼєктів 6. Виклик setState у useEffect без залежностейЦе або нескінченний цикл, або лаги. Або все одразу. Погано:useEffect(() => { setState(data);}); Добре:useEffect(() => { setState(data);}, [data]); // вкажи залежності І пам’ятай: порожній масив — це “виконати один раз“.Бонус: забути await перед асинхронним викликомconst result = fetchData(); // Це проміс, а не результат! Правильно:const result = await fetchData(); 💬 Пишіть у коментарях — зберемо колекцію помилок, які ми всі колись робилиTikTok | Instagram | Telegram
👁 261 25-06-25 09:04
📚Гайз, ми підготували для вас чудову добірку технічних книг, які дійсно резонують із повсякденними викликами фронтенд-розробки. Це не просто посібники з програмування — це книги, які формують професійне мислення.📌 Clean Code: A Handbook of Agile Software CraftsmanshipRobert C. MartinПро що книга: як писати код, який не страшно відкривати через пів року. Принципи чистоти, приклади «поганого» та «хорошого» коду, рефакторинг.🔗 Читати на Amazon 📌 The Pragmatic Programmer: Your Journey to MasteryAndrew Hunt & David ThomasПро що книга: як мислити як розробник. Прийняття рішень, робота з технічним боргом, гнучке мислення, стиль коду. Книга-порадник із досвідом.🔗 Читати на Amazon 📌 You Don't Know JS Yet: Get StartedKyle SimpsonПро що книга: JavaScript без прикрас. Глибоке пояснення замикань, this, hoisting, типів — усе, що здається простим, але працює не так, як очікуєш.🔗 Читати на Amazon📌 Learning JavaScript Design PatternsAddy OsmaniПро що книга: як організовувати масштабні фронтенд-проєкти. Singleton, Factory, Observer, MVC — з прикладами на JS та порадами для сучасного коду.🔗 Читати на Amazon 📌 Eloquent JavaScript: A Modern Introduction to ProgrammingMarijn HaverbekeПро що книга: універсальний старт для тих, хто хоче добре зрозуміти програмування через JavaScript. Задачі, пояснення, розбір складних тем простою мовою.🔗 Читати на Amazon Зберігайте пост, читайте у зручний час і діліться своїми фаворитами в коментарях 👇TikTok | Instagram | Telegram
👁 230 25-06-23 09:51
1️⃣ Яка різниця між класом і модулем у Ruby?📍 Очікувана відповідь:Клас — це шаблон для створення об’єктів, його можна інстанціювати. Модуль — набір методів і констант, не створює об'єктів. Його використовують для міксинів: include додає методи як інстанс-методи, extend — як методи класу.2️⃣ Що таке singleton-методи? Що таке eigenclass у Ruby?📍 Очікувана відповідь:Singleton-методи — це методи, що належать тільки одному конкретному об’єкту. Вони зберігаються в так званому eigenclass (або singleton-класі) — це прихований клас, який Ruby створює для кожного об’єкта і де зберігає ці методи.3️⃣ Опишіть шлях пошуку методів у Ruby (method lookup path).📍 Очікувана відповідь:Ruby шукає метод у такому порядку:1. У singleton-класі об'єкта2. У класі об'єкта3. У модулях, включених через include4. У суперкласах і їхніх модулях5. У BasicObjectЯкщо метод не знайдено — викликається method_missing.4️⃣ Яка різниця між Proc і lambda у Ruby?📍 Очікувана відповідь:Обидва — об'єкти, що інкапсулюють блоки коду, але:- lambda перевіряє кількість аргументів, Proc — ні.- return у lambda виходить тільки з самої лямбди, а в Proc — з усього методу.Тобто lambda поводиться як звичайний метод, а Proc — більш "вільно".#codica_interviews📌 Сподобалось? Збережи собі, щоб не загубити, і постав реакцію — підтримай тих, хто теж готується до співбесід ❤️І звісно — успіхів на співбесідах! Нехай питання будуть знайомі, а відповіді — впевнені 😉TikTok | Instagram | Telegram
👁 264 25-06-20 08:37
Тримай базовий набір практик, які реально допомагають тримати Rails-застосунок у формі:📌 КешуванняНайшвидший запит — той, якого не було.— Rails.cache.fetch — кешуй фрагменти даних або частини сторінок— Russian doll caching + touch для звʼязаних моделей— Redis — швидко, просто, ефективно📌 Фонові задачі (Background Jobs)Не вантаж прод задачами, які можна виконати окремо.— Sidekiq — золотий стандарт: простий, стабільний, battle-tested— Винось у фон: email-розсилки, API-запити, PDF, аналітику— Не забудь про retries, queues, таймаути й моніторинг📌 Оптимізація ActiveRecordПрацюй з базою так, щоб не боліло.— Використовуй includes, select, pluck, find_each— Уникай N+1: Bullet gem підкаже, де прорвало— EXPLAIN у SQL допоможе зрозуміти причину гальм— Індекси must-have — особливо на foreign_key, user_id, created_at📌 Архітектурна декомпозиціяРозділяй, щоб вижити.— Винось важке (аналітику, email-сервіси) в мікросервіси чи окремі воркери— CDN — для статики, зображень і фронтенд-активів📌 Моніторинг — mustБез нього ти не побачиш, де гальмує.— Skylight, New Relic або хоча б rack-mini-profiler— Логи + алерти = твій ранній захист від прод-катастроф💡 Масштабування — це не тільки “серверів побільше“, а розумні практики ще під час розробки.Зберігай, передавай далі, повертайся, коли 🔥#codica_adviceTikTok | Instagram | Telegram