Codica - корисне про IT
Що таке Образ Docker (Docker Image) 🤔 📌 Docker Image — це блок, створений за інструкцією з Dockerfile, що виступає шаблоном запуску контейнерів. За допомогою цього документу можна побудувати безліч однакових контейнерів. 👉 Припустимо, ви створюєте один шаблон…
Робота з Docker Networks 👨💻
👀 Контейнери та мікросервісна архітектура приносять багато нових челенджів. Але вони також спрощують деякі моменти з безпеки. Наприклад, Firewall набагато простіше налаштувати, коли система маленька і виконує невелику кількість завдань, і їй потрібен доступ тільки до кількох інших контейнерів.
📎 У лінуксі докер використовує iptables для роботи з мережами.
📌 Iptables – стандартний інтерфейс для управління брандмауером netfilter. Поступово його замінює nftables.
Ставте ❤️, якщо вам цікаво почитати про це детальніше.
#codica_tech
👀 Контейнери та мікросервісна архітектура приносять багато нових челенджів. Але вони також спрощують деякі моменти з безпеки. Наприклад, Firewall набагато простіше налаштувати, коли система маленька і виконує невелику кількість завдань, і їй потрібен доступ тільки до кількох інших контейнерів.
📎 У лінуксі докер використовує iptables для роботи з мережами.
📌 Iptables – стандартний інтерфейс для управління брандмауером netfilter. Поступово його замінює nftables.
Ставте ❤️, якщо вам цікаво почитати про це детальніше.
#codica_tech
❤10👍1
💻 Мережна Docker підсистема підключається за допомогою драйверів. За замовчуванням існує кілька драйверів, які забезпечують основні мережеві функції:
▪️bridge: Міст — це мережевий драйвер за замовчуванням. Ця мережа використовується, коли ваші програми запускаються в автономних контейнерах, які повинні взаємодіяти між собою (наочний приклад Nginx + MySQL).
▪️host: Хост — це мережевий драйвер для автономних контейнерів (віддалена мережева ізоляція між контейнером і Docker хостом).
▪️overlay/overlay2: Оверлей (накладена мережа) — це мережевий драйвер для з'єднання кількох демонів Docker між собою, які дозволяють docker-swarm службам взаємодіяти один з одним.
▪️macvlan: Маквлан - це мережевий драйвер, який дозволяє призначати MAC-адресу контейнеру, роблячи його відображуваним, як фізичний пристрій у вашій мережі.
▪️none: відключає всю мережу для контейнера або контейнерів.
▪️Network plugins: Ви можете встановити та використовувати сторонні мережеві плагіни з Docker контейнерами. Ці плагіни доступні в Docker Store або сторонніх постачальників послуг.
Де і що краще використовувати? 🧐
👉 Міст (bridge) краще використовувати для зв'язку декількох контейнерів на тому самому Docker хості. Можна використовувати docker-compose і вибирати цю мережу для такої зв'язки.
👉 Хост (host) мережі краще використовувати, коли мережевий стек не повинен бути ізольований від хоста Docker.
👉 Оверлейна мережа (overlay/overlay2) або накладання мереж краще використовувати, коли вам потрібні контейнери, що працюють на різних Docker хостах для зв'язку, або коли кілька застосунків працюють разом, використовуючи docker-swarm (docker-swarm це застарілий проєкт, який більше не розвивається і не підтримується).
👉 Маквлан (macvlan) мережі найкраще використовувати, коли ви переходите з VM/дедикейта на контейнери або хочете, щоб ваші контейнери виглядали як фізичні хости у вашій мережі, кожен з унікальною MAC-адресою.
👉 Сторонні мережеві плагіни дозволяють інтегрувати Docker зі спеціалізованими мережевими стеками.
#codica_tech
▪️bridge: Міст — це мережевий драйвер за замовчуванням. Ця мережа використовується, коли ваші програми запускаються в автономних контейнерах, які повинні взаємодіяти між собою (наочний приклад Nginx + MySQL).
▪️host: Хост — це мережевий драйвер для автономних контейнерів (віддалена мережева ізоляція між контейнером і Docker хостом).
▪️overlay/overlay2: Оверлей (накладена мережа) — це мережевий драйвер для з'єднання кількох демонів Docker між собою, які дозволяють docker-swarm службам взаємодіяти один з одним.
▪️macvlan: Маквлан - це мережевий драйвер, який дозволяє призначати MAC-адресу контейнеру, роблячи його відображуваним, як фізичний пристрій у вашій мережі.
▪️none: відключає всю мережу для контейнера або контейнерів.
▪️Network plugins: Ви можете встановити та використовувати сторонні мережеві плагіни з Docker контейнерами. Ці плагіни доступні в Docker Store або сторонніх постачальників послуг.
Де і що краще використовувати? 🧐
👉 Міст (bridge) краще використовувати для зв'язку декількох контейнерів на тому самому Docker хості. Можна використовувати docker-compose і вибирати цю мережу для такої зв'язки.
👉 Хост (host) мережі краще використовувати, коли мережевий стек не повинен бути ізольований від хоста Docker.
👉 Оверлейна мережа (overlay/overlay2) або накладання мереж краще використовувати, коли вам потрібні контейнери, що працюють на різних Docker хостах для зв'язку, або коли кілька застосунків працюють разом, використовуючи docker-swarm (docker-swarm це застарілий проєкт, який більше не розвивається і не підтримується).
👉 Маквлан (macvlan) мережі найкраще використовувати, коли ви переходите з VM/дедикейта на контейнери або хочете, щоб ваші контейнери виглядали як фізичні хости у вашій мережі, кожен з унікальною MAC-адресою.
👉 Сторонні мережеві плагіни дозволяють інтегрувати Docker зі спеціалізованими мережевими стеками.
#codica_tech
👍5❤3🔥2
Всім гарного недільного дня, ловіть невеличкий дайджест новин зі світу IT від @Mister_Cody 🐾
💸 Зарплати українських PM, HR, DevOps, Data Scientists й інших ІТ-спеціалістів — зима 2023.
👀 Google створює конкурента ChatGPT. У компанії оголосили «червоний код»: тестують нову сторінку пошуку у форматі запитань і відповідей.
✋ Вчені представили систему Feel Tech, яка дозволяє відчути дотик на відстані.
💼 «Нова пошта Діджитал» планує найняти 200 співробітників і вже публікує відкриті IT-вакансії.
🪖 В Україні затвердили нові правила бронювання працівників від мобілізації — документ.
💸 Зарплати українських PM, HR, DevOps, Data Scientists й інших ІТ-спеціалістів — зима 2023.
👀 Google створює конкурента ChatGPT. У компанії оголосили «червоний код»: тестують нову сторінку пошуку у форматі запитань і відповідей.
✋ Вчені представили систему Feel Tech, яка дозволяє відчути дотик на відстані.
💼 «Нова пошта Діджитал» планує найняти 200 співробітників і вже публікує відкриті IT-вакансії.
🪖 В Україні затвердили нові правила бронювання працівників від мобілізації — документ.
👍5❤2🔥1
Найбільші помилки проєктного менеджера-початківця ❌
📌 Стаття від CEO Codica Дмитра Чекаліна
💁♂️ За свою кар'єру я провів десятки співбесід з Junior PM. Більшість із них має великий ентузіазм та бажання розвиватися у професії, і це дуже добре.
Але я бачу для себе дві найбільші помилки, які заважають їхньому розвитку 👇
🔸 Уявлення, що проєктний менеджмент це «комунікація з людьми».
🔸 Великий фокус на різні техніки (скрам, канбан, дейлі-мітинги тощо).
#codica_advice
📌 Стаття від CEO Codica Дмитра Чекаліна
💁♂️ За свою кар'єру я провів десятки співбесід з Junior PM. Більшість із них має великий ентузіазм та бажання розвиватися у професії, і це дуже добре.
Але я бачу для себе дві найбільші помилки, які заважають їхньому розвитку 👇
🔸 Уявлення, що проєктний менеджмент це «комунікація з людьми».
🔸 Великий фокус на різні техніки (скрам, канбан, дейлі-мітинги тощо).
#codica_advice
👍4🔥3👏1
💬 Абсолютна більшість уявляють собі менеджмент як «комунікацію з людьми». І більше, багато хто формулює позицію: мені подобається комунікувати з людьми, тому я вважаю, що в мене є здібності до проєктного менеджменту.
👉 Також більшість розповідає про різні скрам-церемонії, канбан, тощо. Вони уявляються якоюсь срібною кулею, котра розв’язує будь-які проблеми в проєкті.
Безумовно, і комунікація, і аджайл-техніки потрібні, їх треба знати та застосовувати.
☝️ Але головне завдання менеджера - це приймати правильні рішення, які дозволяють реалізувати проєкт у потрібний термін та в умовах наявних ресурсів. В цьому суть менеджменту взагалі, і не тільки проєктного.
🥲 Немає нічого гарного, коли менеджер безперервно комунікує та дотримується всіх потрібних аджайл-технік, але не приймає рішень, імітує їх приймання чи приймає помилкові. Це явна дорога до провалу проєкту, якщо тільки на ньому не зʼявиться якийсь неформальний лідер, який витягне його.
📍 Проблема полягає в тому, що приймати рішення не навчають на IT-курсах, цю навичку треба опановувати самостійно.
Щоб розпочати цей процес, ставте собі кожен день три питання:
✔️ В якому статусі проєкт реально перебуває на цей момент?
✔️ Чи прийдемо ми до успіху, якщо продовжимо робити так само, як зараз?
✔️ Якщо ні, що нам потрібно зробити в наступних кроках, щоб змінити ситуацію на краще?
🤔 Як мінімум, у вас з'явиться багато питань, на які у вас може не бути відповідей - і це гарний момент, щоб звернутися до більш досвідченого менеджера. Тим самим ваш досвід буде збагачуватися.
Практикуйте це, і з часом ви побачите своє зростання 😌
#codica_advice
👉 Також більшість розповідає про різні скрам-церемонії, канбан, тощо. Вони уявляються якоюсь срібною кулею, котра розв’язує будь-які проблеми в проєкті.
Безумовно, і комунікація, і аджайл-техніки потрібні, їх треба знати та застосовувати.
☝️ Але головне завдання менеджера - це приймати правильні рішення, які дозволяють реалізувати проєкт у потрібний термін та в умовах наявних ресурсів. В цьому суть менеджменту взагалі, і не тільки проєктного.
🥲 Немає нічого гарного, коли менеджер безперервно комунікує та дотримується всіх потрібних аджайл-технік, але не приймає рішень, імітує їх приймання чи приймає помилкові. Це явна дорога до провалу проєкту, якщо тільки на ньому не зʼявиться якийсь неформальний лідер, який витягне його.
📍 Проблема полягає в тому, що приймати рішення не навчають на IT-курсах, цю навичку треба опановувати самостійно.
Щоб розпочати цей процес, ставте собі кожен день три питання:
✔️ В якому статусі проєкт реально перебуває на цей момент?
✔️ Чи прийдемо ми до успіху, якщо продовжимо робити так само, як зараз?
✔️ Якщо ні, що нам потрібно зробити в наступних кроках, щоб змінити ситуацію на краще?
🤔 Як мінімум, у вас з'явиться багато питань, на які у вас може не бути відповідей - і це гарний момент, щоб звернутися до більш досвідченого менеджера. Тим самим ваш досвід буде збагачуватися.
Практикуйте це, і з часом ви побачите своє зростання 😌
#codica_advice
👏9👍6🔥2
Ділимося з вами радісною новиною 😎
Ми відкриваємо офіси в Києві та Харкові 🎉
Там все обладнано як годиться - під час відключення світла в офісах працює потужний генератор та Starlink 📡
Незважаючи ні на що, Codica продовжує свій розвиток. Тепер у наших колег є можливість спокійно працювати, незважаючи на вимкнення світла 🔌
Все буде Україна 💙💛
#CodicaTeam
Ми відкриваємо офіси в Києві та Харкові 🎉
Там все обладнано як годиться - під час відключення світла в офісах працює потужний генератор та Starlink 📡
Незважаючи ні на що, Codica продовжує свій розвиток. Тепер у наших колег є можливість спокійно працювати, незважаючи на вимкнення світла 🔌
Все буде Україна 💙💛
#CodicaTeam
❤30👍4🔥1
Друзі, привіт 👋
Сьогодні у світі відзначають День безпечного Інтернету (Safer Internet Day) під гаслом “Разом для найкращого Інтернету” 🙂
✅ Метою Дня безпеки в Інтернеті є поширення знань про безпечне, відповідальне і позитивне використання цифрових технологій для дітей та молоді.
🔗 Тримайте посилання на сайт, де можна знайти цікаві матеріали для дітей та підлітків про безпечну поведінку в інтернеті.
Сьогодні у світі відзначають День безпечного Інтернету (Safer Internet Day) під гаслом “Разом для найкращого Інтернету” 🙂
✅ Метою Дня безпеки в Інтернеті є поширення знань про безпечне, відповідальне і позитивне використання цифрових технологій для дітей та молоді.
🔗 Тримайте посилання на сайт, де можна знайти цікаві матеріали для дітей та підлітків про безпечну поведінку в інтернеті.
❤9👍3🔥1
Codica - корисне про IT
Робота з Docker Networks 👨💻 👀 Контейнери та мікросервісна архітектура приносять багато нових челенджів. Але вони також спрощують деякі моменти з безпеки. Наприклад, Firewall набагато простіше налаштувати, коли система маленька і виконує невелику кількість…
Docker volumes та bind mounts: різниця між ними та для чого вони потрібні 🌚
👉 Існують два способи, що дозволяють зробити термін життя даних більшим за термін життя контейнера. Один із способів полягає у використанні bind mount. При такому підході до контейнера можна примонтувати, наприклад, наявну папку. Працювати з даними, що зберігаються в такій папці, зможуть і процеси, що знаходяться за межами Docker.
docker run -d -it -v /target:/app nginx
☝️ Мінуси використання технології bind mount полягають у тому, що її використання ускладнює резервне копіювання даних, міграцію даних, спільне використання даних кількома контейнерами, не можна контролювати через docker-cli. Набагато краще й зручніше для постійного зберігання даних використовувати Docker volumes.
#codica_tech
👉 Існують два способи, що дозволяють зробити термін життя даних більшим за термін життя контейнера. Один із способів полягає у використанні bind mount. При такому підході до контейнера можна примонтувати, наприклад, наявну папку. Працювати з даними, що зберігаються в такій папці, зможуть і процеси, що знаходяться за межами Docker.
docker run -d -it -v /target:/app nginx
☝️ Мінуси використання технології bind mount полягають у тому, що її використання ускладнює резервне копіювання даних, міграцію даних, спільне використання даних кількома контейнерами, не можна контролювати через docker-cli. Набагато краще й зручніше для постійного зберігання даних використовувати Docker volumes.
#codica_tech
👍8❤4🔥2
📌 Volume це файлова система, яка розташована на хост-машині за межами контейнерів. Створенням та управлінням томами займається Docker. Ось основні властивості вольюмів Docker:
▪️ Вони являють собою засоби для постійного зберігання інформації.
▪️ Вони самостійні та відокремлені від контейнерів.
▪️ Ними можуть спільно скористатися різні контейнери.
▪️ Вони дозволяють організувати ефективне читання та запис даних.
▪️ Їх можна розміщувати на ресурсах віддаленого хмарного провайдера.
▪️ Їх можна шифрувати.
▪️ Їм можна надавати імена.
▪️ Контейнер може організувати завчасне заповнення тому даними.
▪️ Вони зручні для тестування.
😌 Як бачите, Docker Volume мають чудові властивості. Поговоримо про те, як їх створювати.
🖇 Вольюми можна створювати засобами Docker або за допомогою запитів до API.
docker volume create name-of-volume
docker volume rm name-of-volume
📍 Якщо ми вже створили вольюм, то його можна примонтувати ось так:
docker run -d -v name-of-volume:/app nginx
🔖 Ще є інструкція Dockerfile VOLUME створює точку монтування за вказаним шляхом усередині контейнера (при цьому вказувати шлях на хості з її допомогою неможливо).
VOLUME /my_volume
Цю директиву не часто використовують, і багато хто вважає її антипатерном.
#codica_tech
▪️ Вони являють собою засоби для постійного зберігання інформації.
▪️ Вони самостійні та відокремлені від контейнерів.
▪️ Ними можуть спільно скористатися різні контейнери.
▪️ Вони дозволяють організувати ефективне читання та запис даних.
▪️ Їх можна розміщувати на ресурсах віддаленого хмарного провайдера.
▪️ Їх можна шифрувати.
▪️ Їм можна надавати імена.
▪️ Контейнер може організувати завчасне заповнення тому даними.
▪️ Вони зручні для тестування.
😌 Як бачите, Docker Volume мають чудові властивості. Поговоримо про те, як їх створювати.
🖇 Вольюми можна створювати засобами Docker або за допомогою запитів до API.
docker volume create name-of-volume
docker volume rm name-of-volume
📍 Якщо ми вже створили вольюм, то його можна примонтувати ось так:
docker run -d -v name-of-volume:/app nginx
🔖 Ще є інструкція Dockerfile VOLUME створює точку монтування за вказаним шляхом усередині контейнера (при цьому вказувати шлях на хості з її допомогою неможливо).
VOLUME /my_volume
Цю директиву не часто використовують, і багато хто вважає її антипатерном.
#codica_tech
👍9🔥5
Що буде виведено у консоль❓
Anonymous Quiz
74%
{foo: 'bar', baz: 42}
5%
{'foo', 'bar'}
4%
{baz: 42}
7%
{foo, bar, baz}
11%
Не знаю
👍9🔥2❤1
Регулярна робота з Chrome DevTools в тестуванні 👨💻
📌 Стаття від нашого QA Lead - Олексія
▪️Chrome DevTools — це набір допоміжних засобів, вбудований в браузер Chrome. Загалом майже кожен браузер містить у собі подібний набір засобів, чогось не має, а щось навпаки має унікальне. Але зазвичай використовують developer tools саме в Chrome, позаяк це найбільш популярний браузер, що стрімко розвивається разом зі своїми тулзами.
👉 DevTools можна відкрити на будь-якій веб-сторінці клавішею F12, ПКМ — Inspect на будь-якому елементі чи комбінацією клавіш Ctrl + Shift + C, яка відкриє DevTools та переведе курсор у стан вибору елементу для інспекції. DevTools є комплексним набором засобів, але детально ми розглянемо лише те, що входить в рамки регулярної роботи.
#codica_advice
📌 Стаття від нашого QA Lead - Олексія
▪️Chrome DevTools — це набір допоміжних засобів, вбудований в браузер Chrome. Загалом майже кожен браузер містить у собі подібний набір засобів, чогось не має, а щось навпаки має унікальне. Але зазвичай використовують developer tools саме в Chrome, позаяк це найбільш популярний браузер, що стрімко розвивається разом зі своїми тулзами.
👉 DevTools можна відкрити на будь-якій веб-сторінці клавішею F12, ПКМ — Inspect на будь-якому елементі чи комбінацією клавіш Ctrl + Shift + C, яка відкриє DevTools та переведе курсор у стан вибору елементу для інспекції. DevTools є комплексним набором засобів, але детально ми розглянемо лише те, що входить в рамки регулярної роботи.
#codica_advice
👍7❤4🔥2
✔️ Першою завжди відкриється табка Elements, що містить у собі HTML структуру поточної сторінки та засоби для аналізу CSS правил будь-якого елемента.
😌 З HTML все доволі зрозуміло — ми перевіряємо коректність структури і порядок елементів, підбираємо короткі і стабільні селектори для автотестів чи перевіряємо присутність коментарів чи скриптів із чутливою інформацією в рамках тестування безпеки. Ця табка також дозволяє редагування будь-якої частини HTML з метою протестувати результат певних змін локально. Варто зазначити, що Elements підтримує пошук по HTML коду сторінки (Ctrl + F).
🗂 CSS частина табки Elements має одразу декілька підтабок. Дефолтною є Styles, що показує усі правила, застосовані до поточного елементу. Тут же міститься схема кількох “коробочок” одна всередині іншої — схема margin-border-padding-element для зручнішого розуміння відстаней і розмітки веб-сторінки. Styles дозволяє зімітувати будь-який типовий стан (кнопка :hov на тулбарі) або додати новий клас елементу (кнопка .cls на тулбарі), щоби подивитися на зовнішній вигляд елемента в такій ситуації. Як і з HTML, тут також можна редагувати будь-яку частину CSS, змінюючи застосовані правила.
💁♂️ Само собою, правила в Styles можуть дублюватися, якщо елемент потрапляє одразу в кілька пересічних селекторів, що визначають одні й ті самі стилі. Щоб не морочитися зі специфічністю і не вишукувати самому, можна перейти в підтабку Computed, де виведено усі правила CSS, які зрештою були застосовані до поточного елементу після усіх розрахунків і віддання пріоритетів.
✅ Вищезгадана комбінація клавіш Ctrl + Shift + C дозволяє обрати будь-який елемент на сторінці, а код його елементу в HTML і усі стилі CSS буде показано в табці Elements.
💻 Наступна табка — табка Console — в рамках тестування несе в собі інформативну функцію “щось не в порядку”. Повідомлення рівня warning і тим паче error, якщо вони не прикликані вашими власними браузерними розширеннями, варто обговорити з розробниками. Перевіряючи певні кейси, в яких система очікувано або фактично поводить себе некоректно, варто також поглядати, чи не з’являються нові помилки в консолі.
🔎 Табка Sources містить у собі всі доступні файли, пов’язані з поточною сторінкою — скрипти, зображення, ассети, таблиці стилів тощо. В ній зручно переглядати увесь контент, наприклад, будь-які присутні зображення окремо від решти елементів сторінки.
🗒 Табка Network містить у собі подробиці всього клієнт-серверного трафіку HTTP реквестів. При тестуванні веб-застосунків її зазвичай використовують найбільше: відстеження реквестів, їхнього вмісту, кількості і швидкості, а також респонсів від серверу, їхнього статусного коду та вмісту. Взаємодія фронт-енду та бек-енду через реквести формує собою основу застосунку. Крім того, якщо сторінка не відпрацьовує як слід, переглянути, чи є реквест, чи він іде із правильним контентом, чи надходить респонс, і чи немає в ньому помилки, має бути першою перевіркою на думці. Будь-який реквест з Network можна побачити в деталях, натиснувши на нього. Зазвичай ці деталі доповнять репорт і спростять процес фіксу для розробника.
📍 В табці Application найчастіше використовуються категорії Storage та Cache. Storage містить Local storage, Session storage та Cookies — вмістилища відповідних даних, які за певних тестових необхідностей періодично треба чистити. Закешовані сторінки необхідно чистити з кожним деплоєм, інакше деякі зміни можуть не відображатися або працювати некоректно. Аналогічним виходом із ситуації буде проводити кожну сесію тестування в окремій інкогніто-табці — вони створюються із пустим ізольованим контекстом сторінки, тож аналогічні повному очищенню storage’ів і кешу.
Chrome DevTools (або їхні аналоги в інших браузерах) вже давно інтегрувалися як частина щоденної рутини в тестуванні вебу. Деякі репорти без залучення відомостей з DevTools просто міститимуть неповну інформацію. Тож чим скоріше ви опануєте ці засоби і усвідомите спектр інформації, яка може бути зібрана там, тим якісніше зможете проводити свої щоденні тестові активності 😉
TikTok | Instagram
#codica_advice
😌 З HTML все доволі зрозуміло — ми перевіряємо коректність структури і порядок елементів, підбираємо короткі і стабільні селектори для автотестів чи перевіряємо присутність коментарів чи скриптів із чутливою інформацією в рамках тестування безпеки. Ця табка також дозволяє редагування будь-якої частини HTML з метою протестувати результат певних змін локально. Варто зазначити, що Elements підтримує пошук по HTML коду сторінки (Ctrl + F).
🗂 CSS частина табки Elements має одразу декілька підтабок. Дефолтною є Styles, що показує усі правила, застосовані до поточного елементу. Тут же міститься схема кількох “коробочок” одна всередині іншої — схема margin-border-padding-element для зручнішого розуміння відстаней і розмітки веб-сторінки. Styles дозволяє зімітувати будь-який типовий стан (кнопка :hov на тулбарі) або додати новий клас елементу (кнопка .cls на тулбарі), щоби подивитися на зовнішній вигляд елемента в такій ситуації. Як і з HTML, тут також можна редагувати будь-яку частину CSS, змінюючи застосовані правила.
💁♂️ Само собою, правила в Styles можуть дублюватися, якщо елемент потрапляє одразу в кілька пересічних селекторів, що визначають одні й ті самі стилі. Щоб не морочитися зі специфічністю і не вишукувати самому, можна перейти в підтабку Computed, де виведено усі правила CSS, які зрештою були застосовані до поточного елементу після усіх розрахунків і віддання пріоритетів.
✅ Вищезгадана комбінація клавіш Ctrl + Shift + C дозволяє обрати будь-який елемент на сторінці, а код його елементу в HTML і усі стилі CSS буде показано в табці Elements.
💻 Наступна табка — табка Console — в рамках тестування несе в собі інформативну функцію “щось не в порядку”. Повідомлення рівня warning і тим паче error, якщо вони не прикликані вашими власними браузерними розширеннями, варто обговорити з розробниками. Перевіряючи певні кейси, в яких система очікувано або фактично поводить себе некоректно, варто також поглядати, чи не з’являються нові помилки в консолі.
🔎 Табка Sources містить у собі всі доступні файли, пов’язані з поточною сторінкою — скрипти, зображення, ассети, таблиці стилів тощо. В ній зручно переглядати увесь контент, наприклад, будь-які присутні зображення окремо від решти елементів сторінки.
🗒 Табка Network містить у собі подробиці всього клієнт-серверного трафіку HTTP реквестів. При тестуванні веб-застосунків її зазвичай використовують найбільше: відстеження реквестів, їхнього вмісту, кількості і швидкості, а також респонсів від серверу, їхнього статусного коду та вмісту. Взаємодія фронт-енду та бек-енду через реквести формує собою основу застосунку. Крім того, якщо сторінка не відпрацьовує як слід, переглянути, чи є реквест, чи він іде із правильним контентом, чи надходить респонс, і чи немає в ньому помилки, має бути першою перевіркою на думці. Будь-який реквест з Network можна побачити в деталях, натиснувши на нього. Зазвичай ці деталі доповнять репорт і спростять процес фіксу для розробника.
📍 В табці Application найчастіше використовуються категорії Storage та Cache. Storage містить Local storage, Session storage та Cookies — вмістилища відповідних даних, які за певних тестових необхідностей періодично треба чистити. Закешовані сторінки необхідно чистити з кожним деплоєм, інакше деякі зміни можуть не відображатися або працювати некоректно. Аналогічним виходом із ситуації буде проводити кожну сесію тестування в окремій інкогніто-табці — вони створюються із пустим ізольованим контекстом сторінки, тож аналогічні повному очищенню storage’ів і кешу.
Chrome DevTools (або їхні аналоги в інших браузерах) вже давно інтегрувалися як частина щоденної рутини в тестуванні вебу. Деякі репорти без залучення відомостей з DevTools просто міститимуть неповну інформацію. Тож чим скоріше ви опануєте ці засоби і усвідомите спектр інформації, яка може бути зібрана там, тим якісніше зможете проводити свої щоденні тестові активності 😉
TikTok | Instagram
#codica_advice
🔥14👍6❤4
Як відповідати на запитання колег про гроші❓
#НапуттяВід_HR Директорки Клименко Наталії
👀 Мабуть, ніщо не дратує людей сильніше за розмови про їхні власні доходи. Коли вашим заробітком цікавляться родичі, можна дозволити собі бути відвертим. Але з колегами така відкритість може обернутися плітками у колективі та проблемами з керівництвом.
Давайте сьогодні з вами розберемо найпопулярніші питання, яких не хотілося би чути👇
#НапуттяВід_HR Директорки Клименко Наталії
👀 Мабуть, ніщо не дратує людей сильніше за розмови про їхні власні доходи. Коли вашим заробітком цікавляться родичі, можна дозволити собі бути відвертим. Але з колегами така відкритість може обернутися плітками у колективі та проблемами з керівництвом.
Давайте сьогодні з вами розберемо найпопулярніші питання, яких не хотілося би чути👇
❤6👍1🔥1
🚩 Скільки ти отримуєш?
👉 Мало кого не цікавить, яку зарплатню отримують колеги. У бажанні знати рівень зарплати колег немає нічого поганого. Адже так люди намагаються зрозуміти, чи добре платять їм самим. Але самі питання, пов'язані з особистим доходом, сприймаються як порушення особистих меж. Розмір зарплати належить до персональних даних, тому так не хочеться говорити про неї з тими, хто не входить до нашого близького кола.
💁🏻♀️ Якщо ви не хочете відповідати на це запитання, ось що можна зробити:
✅ Залишатися максимально ввічливим.
✅ Можна спиратися на пункт у трудовому договорі, де вам заборонено ділитися цією інформацією.
✅ Перевести фокус розмови на співрозмовника.
✅ Пожартувати фразою "всім би нам хотілося отримувати більше", "дякую, у мене все ок" та інше.
🚩 Можеш дати грошей у борг?
👉 Мабуть, кожен хоч раз потрапляв у ситуацію, коли хтось просив позичити йому гроші. Причини такого прохання можуть бути різні, іноді дійсно екстрені. Але й людей, які постійно позичають гроші та не поспішають їх повертати, теж трапляється чимало. Через страх, що гроші до них не повернуться, багато хто воліє не позичати.
💁🏻♀️ Вибирайте відповідь, яка не образить:
✅ Чемно поясніть, що вільних коштів у вас зараз немає.
✅ Скажіть, що сімейний бюджет уже розплановано.
✅ Зрештою, у вас можуть бути свої принципи і один із них – не давати грошей у борг.
🚩 Скидаємось на день народження. Ти з нами?
👉 Усі офісні співробітники звикли до того, що регулярно доводиться скидатися на дні народження та інші свята, особисті та громадські. З приходом масового ремоуту традиція частково зникла, але деякі співробітники, як і раніше, продовжують брати участь у фінансових зборах. Для деяких, особливо для тих, хто має невелику зарплату, такі заходи стають серйозною статтею витрат. Або просто ця людина нам не приємна і ми не хочемо здавати гроші.
💁🏻♀️ Якщо ви не хочете здавати гроші на захід, що можна зробити:
✅ Залишатися максимально чемним, сказавши наприклад, що хочете привітати особисто.
✅ Аргументувати, що ходите на роботу заробляти, а не витрачати.
✅ Провести анонімний збір коштів у конверті.
✅ Домовитися з керівництвом про вітання з бюджету компанії.
🚩 Ну що, як ділимо рахунок?
👉 Ще одна ситуація, яка часто завдає незручностей - це як оплатити спільні походи на обід/кафе/посиденьки з колегами?
💁🏻♀️ Варіанти рішень:
✅ Обговорити це питання ще до початку заходу.
✅ Розділити рахунок на всіх порівну, якщо всі замовляють приблизно те саме.
✅ Розділити порівну лише рахунок за їжу, а напої кожен може сплатити самостійно.
✅ Кожен платить за себе. У такому разі буде правильним усім поділити витрати на чайові офіціанту.
😌 Зрештою, ви можете сплатити рахунок за всіх. Попередивши, що наступного разу платить хтось інший. Цей формат відмінно підходить для невеликих компаній, які регулярно ходять до закладів одним і тим же складом.
Також у голлівудських фільмах часто зустрічається варіант, коли компанія скидається платіжними картками, а офіціант рандомно вибирає якусь одну 😅
☝️ Бувають ситуації, коли заздалегідь обговорити умови оплати не вдалося, а ви не хочете ділити рахунок. Тоді заздалегідь, ще до замовлення, попросіть офіціанта порахувати ваше замовлення окремо. Набагато гірше, якщо ви почнете розглядати чек і рахувати «вашу» суму на калькуляторі.
‼️ До заборонених тем на роботі, безумовно, можна віднести і обговорення вашого заробітку, але це не означає, що ваші колеги перестануть цікавитися вашими доходами. Це нормально! Важливо розуміти інше. Якщо вам некомфортне якесь питання, ви завжди маєте право не відповідати на нього. Табу на цю тему можете накласти лише ви самі.
Бажаю всім гідно обговорювати делікатні теми! ❤️
TikTok | Instagram
#НапуттяВід_HR
👉 Мало кого не цікавить, яку зарплатню отримують колеги. У бажанні знати рівень зарплати колег немає нічого поганого. Адже так люди намагаються зрозуміти, чи добре платять їм самим. Але самі питання, пов'язані з особистим доходом, сприймаються як порушення особистих меж. Розмір зарплати належить до персональних даних, тому так не хочеться говорити про неї з тими, хто не входить до нашого близького кола.
💁🏻♀️ Якщо ви не хочете відповідати на це запитання, ось що можна зробити:
✅ Залишатися максимально ввічливим.
✅ Можна спиратися на пункт у трудовому договорі, де вам заборонено ділитися цією інформацією.
✅ Перевести фокус розмови на співрозмовника.
✅ Пожартувати фразою "всім би нам хотілося отримувати більше", "дякую, у мене все ок" та інше.
🚩 Можеш дати грошей у борг?
👉 Мабуть, кожен хоч раз потрапляв у ситуацію, коли хтось просив позичити йому гроші. Причини такого прохання можуть бути різні, іноді дійсно екстрені. Але й людей, які постійно позичають гроші та не поспішають їх повертати, теж трапляється чимало. Через страх, що гроші до них не повернуться, багато хто воліє не позичати.
💁🏻♀️ Вибирайте відповідь, яка не образить:
✅ Чемно поясніть, що вільних коштів у вас зараз немає.
✅ Скажіть, що сімейний бюджет уже розплановано.
✅ Зрештою, у вас можуть бути свої принципи і один із них – не давати грошей у борг.
🚩 Скидаємось на день народження. Ти з нами?
👉 Усі офісні співробітники звикли до того, що регулярно доводиться скидатися на дні народження та інші свята, особисті та громадські. З приходом масового ремоуту традиція частково зникла, але деякі співробітники, як і раніше, продовжують брати участь у фінансових зборах. Для деяких, особливо для тих, хто має невелику зарплату, такі заходи стають серйозною статтею витрат. Або просто ця людина нам не приємна і ми не хочемо здавати гроші.
💁🏻♀️ Якщо ви не хочете здавати гроші на захід, що можна зробити:
✅ Залишатися максимально чемним, сказавши наприклад, що хочете привітати особисто.
✅ Аргументувати, що ходите на роботу заробляти, а не витрачати.
✅ Провести анонімний збір коштів у конверті.
✅ Домовитися з керівництвом про вітання з бюджету компанії.
🚩 Ну що, як ділимо рахунок?
👉 Ще одна ситуація, яка часто завдає незручностей - це як оплатити спільні походи на обід/кафе/посиденьки з колегами?
💁🏻♀️ Варіанти рішень:
✅ Обговорити це питання ще до початку заходу.
✅ Розділити рахунок на всіх порівну, якщо всі замовляють приблизно те саме.
✅ Розділити порівну лише рахунок за їжу, а напої кожен може сплатити самостійно.
✅ Кожен платить за себе. У такому разі буде правильним усім поділити витрати на чайові офіціанту.
😌 Зрештою, ви можете сплатити рахунок за всіх. Попередивши, що наступного разу платить хтось інший. Цей формат відмінно підходить для невеликих компаній, які регулярно ходять до закладів одним і тим же складом.
Також у голлівудських фільмах часто зустрічається варіант, коли компанія скидається платіжними картками, а офіціант рандомно вибирає якусь одну 😅
☝️ Бувають ситуації, коли заздалегідь обговорити умови оплати не вдалося, а ви не хочете ділити рахунок. Тоді заздалегідь, ще до замовлення, попросіть офіціанта порахувати ваше замовлення окремо. Набагато гірше, якщо ви почнете розглядати чек і рахувати «вашу» суму на калькуляторі.
‼️ До заборонених тем на роботі, безумовно, можна віднести і обговорення вашого заробітку, але це не означає, що ваші колеги перестануть цікавитися вашими доходами. Це нормально! Важливо розуміти інше. Якщо вам некомфортне якесь питання, ви завжди маєте право не відповідати на нього. Табу на цю тему можете накласти лише ви самі.
Бажаю всім гідно обговорювати делікатні теми! ❤️
TikTok | Instagram
#НапуттяВід_HR
🔥7👍5❤2
Друзі, сподіваюсь ви в безпеці 🙂
Всім спокійного продовження п'ятниці та вдалих вихідних 😌
#codica_english
Всім спокійного продовження п'ятниці та вдалих вихідних 😌
#codica_english
❤8🥰2😁1
What is the closest meaning of occur? 🤔
Anonymous Quiz
72%
Happen
10%
Get up
10%
Occupied
8%
Не знаю
🔥7❤1👍1
Що таке XSS-вразливість 🤔
📌 XSS (англ. Cross Site Scripting — «міжсайтовий скриптинг») — тип вразливості інтерактивних інформаційних систем у вебі. XSS виникає, коли на сторінки, які були згенеровані сервером, з якоїсь причини потрапляють користувацькі скрипти.
👀 Це досить поширена вразливість, яку можна виявити на багатьох вебзастосунках. Її суть досить проста: зловмиснику вдається впровадити на сторінку JavaScript-код, який не було передбачено розробниками. Цей код буде виконуватися щоразу, коли жертви (звичайні користувачі) заходитимуть на сторінку програми, куди цей код було додано. А далі є кілька сценаріїв розвитку👇
#codica_tech
📌 XSS (англ. Cross Site Scripting — «міжсайтовий скриптинг») — тип вразливості інтерактивних інформаційних систем у вебі. XSS виникає, коли на сторінки, які були згенеровані сервером, з якоїсь причини потрапляють користувацькі скрипти.
👀 Це досить поширена вразливість, яку можна виявити на багатьох вебзастосунках. Її суть досить проста: зловмиснику вдається впровадити на сторінку JavaScript-код, який не було передбачено розробниками. Цей код буде виконуватися щоразу, коли жертви (звичайні користувачі) заходитимуть на сторінку програми, куди цей код було додано. А далі є кілька сценаріїв розвитку👇
#codica_tech
👍4❤2🔥1