Codica - корисне про IT
2.02K subscribers
2.46K photos
124 videos
11 files
1.31K links
Привіт, друже, це канал про корисності в ІТ🤘

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

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

👉 Відкриті вакансії - www.codica.com/careers
Download Telegram
Книжкові поради 📚

@codica підготувала для вас маленьку добірку цікавих книжок, які допоможуть розвинути корисні навички!

🔸Ед Саліван "Час - гроші".

Корисні поради від провідного розробника ПЗ.

🔸 Проект "Фенікс".

Роман про те, як DevOps змінює бізнес на краще. Неймовірна історія Білла — IT-менеджера в компанії Parts Unlimited, або як зберегти свій відділ за 90 днів.

🔸Джим Коллінз "Від хорошого до великого".

Дев’ять кроків для примноження успіху, що принесе шалені прибутки.

📝 "Люди перестають мислити, коли перестають читати" Д.Дідро

#CodicaTeam
👍8
Корисні поради для React девелопера💪

👉 React - одна з найпопулярніших бібліотек для побудови користувацьких інтерфейсів. #CodicaTeam також використовує цю бібліотеку. Тож ми зібрали для вас 5 корисних порад, що допоможуть вам у роботі:

Зберігайте ваші компоненти невеликими

👉 Залишати компоненти невеликими – одна з найкращих практик React. Існує одне перевірене правило, яке ви можете використовувати. Подивіться на метод render. Якщо в ньому більше ніж 10 рядків, то ваш компонент, імовірно, занадто великий і є хорошим кандидатом для рефакторингу та поділу на кілька менших компонентів. Реалізація лише цієї, здавалося б, простої практики може допомогти вам писати більш чистий та зручний для підтримки код.

Як слід познайомтеся з React-хуками

👉 Якщо ви хочете просунутися у сфері React-розробки, то найкраще, на що ви можете виділити час, це глибоке вивчення хуків з метою їхнього повного розуміння.

👉 Вам потрібен якийсь побічний ефект? Якщо так, тоді хук useEffect - це ваш найкращий друг. Чи потрібно організувати спостереження за станом компонента та виконувати його повторний рендеринг при зміні стану? Подивіться на useState. Потрібно зберігати й оновлювати певні значення між рендерингами, але при зміні цих значень рендеринг не виконувати? А може, вам потрібно знати про висоту чи ширину DOM-елементів? Тоді ваш друг - це useRef.

Приділіть особливу увагу тестуванню

👉 Рівень володіння технологіями тестування - це те, що відокремлює джуніорів від сеньйорів. Якщо ви не знайомі з методиками тестування React-програм, ви можете знайти і вивчити масу матеріалів про це.

👉 Можливо, ви колись писали кілька модульних тестів, але вашого досвіду не вистачає на те, щоб створювати інтеграційні тести, що охоплюють додаток? Це не повинно вас турбувати, тому що, знову ж таки, є безліч ресурсів, які допоможуть вам заповнити прогалини у знаннях і напрацювати потрібний досвід.

Перевірка коду за допомогою лінтера

👉 Підвищенню якості програм сприяє використання належної системи перевірки коду на наявність помилок. Зазвичай такі перевірки здійснюють за допомогою програм-лінтерів. Якщо розробник має продуманий набір правил лінтингу, редактор коду зможе автоматично відстежувати появу того, що може призвести до проблем.

Деструктуруйте властивості

👉 Деструктурування властивостей (в англомовній термінології React їх називають «props») — це вдалий спосіб зробити код чистішим і покращити можливості його підтримки. Справа в тому, що це дозволяє чітко виражати або оголошувати те, що використовує певну сутність (на зразок компонента React).

📝 @codica

Зрозумілого вам коду!
👍6🔥2
Як пояснити концепції потоків, промісів, лінтингу та декларативного програмування наче 5-річній дитині💪🏻

👉 Реактивне програмування та потоки

📍
Роблячи щоденні справи, ми намагаємося по можливості бути багатозадачними, але наш мозок до цього не пристосований, як не намагайся.

Єдине, що ми можемо робити, це перемикатися між завданнями та ефективно розділяти їх. Ми, фактично, постійно переключаємося між завданнями, навіть коли не усвідомлюємо цього.

👉 Реактивне програмування - це написання програм, що використовують події та залежать від них, а не від порядку розташування рядків у коді. Зазвичай ідеться більше ніж про одну подію. Згодом так і утворюється послідовність подій.

📍 Цю послідовність ми називаємо потоком.

👉 Ви можете уявляти події як щось, що може статися в майбутньому.

📍 Наприклад, ваша дівчина завжди робить твіти про цікаві події в її житті. Кожен її твіт можна вважати «подією». Якщо ви переглянете її стрічку в Twitter, ви побачите послідовність «подій» (потік подій).

👉 Реактивне програмування називається саме так, тому що ми маємо «реагувати» на ці події.

📍 Ілюстрацією цього буде, коли ваша дівчина твітне промокод на якусь річ, яку ви хотіли б самі купити. Ви хочете відреагувати на цей твіт і купити річ, використовуючи промокод. Це спрощена картинка, але вона ілюструє, що таке реактивне програмування.

👉 Щоб мати змогу відреагувати на подію, ми маємо її відстежувати. Якщо ми не відстежуємо події, ми не дізнаємося, коли потрібно починати реагувати.

📍 Так, щоб відстежувати твіти вашої дівчини, ви підписуєтеся на неї в Twitter і вмикаєте режим повідомлень про нові твіти. Коли дівчина щось пише, ви отримуєте повідомлення, переглядаєте твіт та вирішуєте, чи потрібно на нього реагувати.

👉 У реактивному програмуванні процес відстеження подій називається прослуховуванням. Це схоже на передплату на розсилку.

📍 Коли ви підписуєтеся на розсилку якогось сайту, ви надсилаєте йому адресу своєї електронної пошти. При кожному новому випуску розсилки ваша адреса використовується для доставки вашого екземпляра.

👉 Аналогічним чином можна передплатити потік подій — за допомогою функції. Щоразу, коли з'являється нова подія, потік використовуватиме цю функцію, щоб дати можливість нашому коду відреагувати на подію.

📍 Якщо брати нашу аналогію, платформа розсилки – це потік подій. Кожен випуск розсилки - це подія, а ваша email-адреса - це функція, яку ви використовуєте для підписки на цей потік подій.

👉 Ще потоки подій можна порівняти зі звичайними масивами. Вони насправді дуже схожі. Масив - це послідовність значень у просторі, а потоки подій - це послідовності подій у часі.

📍 У реактивному програмуванні ми можемо робити з потоками те саме, що й з масивами: фільтрувати, зменшувати, комбінувати, переспрямовувати один потік на вхід іншого.

Реактивне програмування, по суті, схоже на повсякденність і те, як ми здійснюємо якісь дії або комунікуємо з оточуючими.

👉 1 Частина. Програмування
👉 2 Частина. Вивчення програмування
👉 3 Частина. Змінні
👉 4 Частина. Помилки та вийнятки
👍8
Що буде виведено у консоль?
Anonymous Quiz
16%
Error
17%
True
53%
False
14%
Undefined
Корисні поради для здорової харчової поведінки 🥗

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

👉 Вирушайте в магазин тільки на ситий шлунок та зі списком продуктів.

📍 Це допоможе виключити імпульсні покупки та захаращення холодильника непотрібною їжею, яку «треба доїсти, щоб не зіпсувалася».

👉 Якщо у вас ще немає звички вечеряти з сім'єю - постарайтеся ввести цей ритуал у своє життя.

📍 Згідно з дослідженнями, люди менше схильні до переїдання, якщо вечеряють із сім'єю та близькими. Це не тільки допоможе більш усвідомлено ставитися до їди, але і зміцнить сімейні зв'язки.

👉 Приберіть гаджети під час їжі.

📍 Перегляд ютубу або серіалу, гортання стрічки Інстаграм під час їди ніяк не сприяє правильному харчовому наказу. Під час сніданку, обіду, вечері краще приділити час своїм відчуттям їжі.

👉 Перш ніж з'їсти їжу без фізичного голоду, подумайте про те, як почуватиметеся фізично та психологічно.

📍 Якщо все ж таки після цих порад від їди відчуваєте дискомфорт - спробуйте вести харчовий щоденник, де записуєте час прийому їжі, рівень голоду або ситості, свої думки та емоції. Така фіксація своїх думок допоможе зрозуміти проблемні місця.

🥦 І, звичайно, не забувайте про гігієну сну, баланс роботи та відпочинку, роботу з думками та емоціями, турботу про своє тіло. Все це також впливає на харчову поведінку.

Будьте здорові!

📝 @codica
🔥12👍4
Аляяяяяярм⚠️

Арестович дає свої прогнози на вивчення Ruby🔥 або це просто меми з каналу #codica_humor

Тицяй 🔥 якщо вивчиш швидше
😁17🔥6
Друзі, всім привіт! На зв'язку #CodicaTeam 🤘

🔥 Ми раді бачити вас у нашому Telegram каналі

👉 Саме тут ви можете знайти корисну інформацію зі світу ІТ, цікаві поради та авторські статті від наших колег Senior рівня, і звісно велику кількість розважального контенту!

🖥 Навігація:

📍 #codica_advice - поради від наших провідних спеціалістів

📍 #codica_tech - технічні статті з розробки від наших TechLead девелоперів

📍 #НапуттяВід_HR - авторські статті від нашої HR директорки Наталії Кліменко

📍 #codica_js - задачки з JavaScript

📍 #codica_english - невеличкі тести з англійської мови

📍 #codica_ruby - задачки з Ruby

📍 #codica_humor - внутрішній гумор команди та файні меми

Дякуємо за підписку, і гарного вам дня💫
13
Гарний ментор дорожчий за золото, або де знайти собі ментора

Безліч компаній кажуть про наявність ментора. Але не зовсім зрозуміло, хто такий ментор і як він тобі допоможе на твоєму шляху. Тож давайте підемо від простого!

Хто такий ментор?

👉 Зазвичай, це людина, яка має великий досвід у тій чи іншій сфері та ділиться ним із людьми, коли вони цього потребують.

Які основні функції ментора?

Спільна побудова стратегії росту;

Регулярні зустрічі для підсумку результатів та постановлення нових цілей;

Регулярний зворотній зв’язок, поради та мотивація.

Що не мусить робити ментор:

Виконувати завдання замість підопічного

📍 Ментор не мусить виконувати всю роботу за тебе. Він також має свої завдання, які мусить виконувати. Тут тобі допоможе навичка гуглити. Тож не чіпай ментора, доки сам не перевірив чи не знайшов інформацію в інтернеті.

Давати поради або критикувати, коли менті цього не просить

📍 Інколи гіперопіка може завдавати шкоди менті. Не треба робити з підопічного свою копію, бо це може призвести до втрати інтересу від комунікації.

Залишати один на один з труднощами та ігнорувати прохання менті

📍 Напевно, це найгірше, що може зробити ментор. Якщо ментор не виконує свої обов’язки, розвиток його підопічного може йти повільно або зовсім зупинитися.

Вимагати обов’язкового виконання рекомендацій ментора

📍 Це теж неправильно. Менті так само має свій досвід і навіть Junior спеціаліст може вирішити задачу Senior спеціаліста. Менті - це не копія ментора!


Також ми хочемо дати кілька порад для менті, щоб ваша робота в тандемі була більш ефективною:

Ставте питання та не бійтеся бути незнайком.

📍 Ментор для того й потрібен, щоб дати пораду у складній ситуації.

Поважайте власний час ментора.

📍 Спочатку спробуйте знайти ту чи іншу інформацію самостійно, а потім уже питайте ментора.

Робіть нотатки.

📍 Фіксуйте результати, робіть саммарі вашої зустрічі. Так вам буде легше все зрозуміти та запам'ятати.

Не бійтеся критики та критикуйте самі.

📍 Захищайте свою точку зору, якщо не згодні з ментором. А критика у ваш бік - це завжди поштовх для подальшого розвитку.

Беріть відповідальність на себе.

📍 Не перекладайте свої обов’язки та невдачі на ментора.

#codica_advice
👍9🔥1
Дорогоцінні каміння Ruby - RubyGems❤️

Усім привіт!👋
Сьогодні ми поговоримо про один із найважливіших моментів програмування на Ruby — геми (gems) 🔥

💎 Коштовні камінчики, що змінять вашу думку про програмування.

Переходь за посиланням, щоб дізнатися більше.
👍61
This media is not supported in your browser
VIEW IN TELEGRAM
Спокій та тільки спокій 😐

Коли за вікном коїться якась маячня, а тобі потрібно бути сконцентрованим на своїх тасках, бо скоро дедлайн 🤯

#codica_humor
🔥9😁3
Що буде виведено у консоль?
Anonymous Quiz
31%
[[1, 2, 3, 4, 5]]
43%
[1, 2, 3, 4, 5]
23%
1
4%
[1]
👍2👏2🥰1
Що робити, якщо ви втратили роботу під час війни? До кого звернутись? Де шукати рішення?

👉 Саме для вас, наша HR директорка Наталія Кліменко зібрала декілька корисних порад. Вони допоможуть вам не розгубитись у цій складній ситуації та з найменшими психологічними втратами пережити це.

Переходьте за посиланням, щоб дізнатися більше!

#НапуттяВід_HR
👍10
Продуктивність - друге ім'я😂

Ставте 🔥, якщо ви так само почуваєтесь коли вихідні вже зовсім поруч❤️

#codica_humor
🔥12
Гаряча новина від нашого CEO Дмитра Чекаліна 🔥

👉 Зустрічайте новий Ruby digest #55: Подкасти з RailsConf 2022, інвестиції від Shopify, результати опитування Ruby on Rails ком'юніті та інше.

👉Саме у цьому дайджесті зібрані кращі новини та релізи минулого місяця зі світу Ruby та Ruby on Rails.

Переходьте за посиланням, щоб дізнатись більше!

#codica_tech
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
9
Mr.Cody може дивитись на три речі вічно

Як тече вода
Як дме вітер 
Та як горить "російський воєнний корабль"

Додавайте наші фірмові стікери собі у колекцію, буде багато цікавого❤️
12👍7🔥3
Як пояснити концепції потоків, промісів, лінтингу та декларативного програмування 5-річній дитині

📍 Функції зворотного виклику та проміси.

👉 Уявіть, що ви заходите в Starbucks, і замовляєте каву. Бариста питає ваше ім’я, що ви будете замовляти і каже, що треба буде трохи почекати. Після того, як ваша кава буде готова - він покличе вас по імені і вручить те, що ви просили. Це і є функцією зворотнього виклику або call-back function.

👉 Ім’я що ви називали, можна вважати функцією зворотнього виклику. Її викликав об'єкт до якого ви робили замовлення.

👉 Тепер уявіть, що замість вашого замовлення вам видали якийсь загадковий об’єкт. І вони вам обіцяють (promise на англійській), що цей об’єкт, в підсумку, може перетворитись у ваше замовлення.

👉 Загадковий об’єкт, у підсумку, може прийняти дві різні форми. Одна асоціюється з успіхом, а інша з поразкою.

👉 Як приклад, ми попросили курку дати нам курча, а вона дала нам яйце. Це яйце може успішно перетворитися на маленьке курча або виявитись порожнім.

const egg = chicken.makeChick(); // It's a promise!
egg.then(chick => raiseChick()) // Success outcome
.catch(badEgg => throwBadEgg()) // Fail outcome

👉 1 Частина. Програмування
👉 2 Частина. Вивчення програмування
👉 3 Частина. Змінні
👉 4 Частина. Помилки та вийнятки
👉 5 Частина. Реактивне програмування та потоки

#codica_tech
👍8
Усі вакансії в одному місці

👉 Щомісяця наша команда зростає. З'являється більше цікавих проєктів, до яких ТИ можеш долучитися просто зараз!

Спеціально для вас ми підготували дайджест гарячих вакансій:
🔸 Ruby / Ruby on Rails developer
🔸 Node.js Developer
🔸 React Developer
🔸 QA Engeneer

📝 Мерщій переходьте за посиланням в описі каналу та надсилайте резюме!

#codica_jobs
🔥8👍2