Иван Петриченко (Campfire school, Udemy и прочие полезности) @petrychenko_ivan Channel on Telegram

Иван Петриченко (Campfire school, Udemy и прочие полезности)

@petrychenko_ivan


Личный аккаунт для связи: @ivanpetrychenko

Full-stack разработчик
Преподаватель онлайн/оффлайн курсов
Основатель Campfire school и тот парень с Udemy
Езжу по миру, люблю технологии и фриланс

Иван Петриченко (Campfire school, Udemy и прочие полезности) (Russian)

Здравствуйте, уважаемые читатели! Сегодня мы хотим рассказать вам о канале Telegram под названием "Иван Петриченко (Campfire school, Udemy и прочие полезности)". Этот канал принадлежит Ивану Петриченко - личному аккаунту для связи, который также известен как full-stack разработчик, преподаватель онлайн и оффлайн курсов, основатель Campfire school и тот самый парень с Udemy. Помимо этого, Иван ездит по миру, любит технологии и занимается фрилансом. На канале вы найдете полезные материалы о разработке, обучении, путешествиях и многом другом. Присоединяйтесь к каналу "Иван Петриченко (Campfire school, Udemy и прочие полезности)" уже сегодня и получайте актуальные и интересные информационные обновления!

Иван Петриченко (Campfire school, Udemy и прочие полезности)

06 Dec, 12:42


Он таки вышел React 19

Готовьтесь, фронты, сейчас все новости будут этим забиты

Иван Петриченко (Campfire school, Udemy и прочие полезности)

29 Nov, 14:20


💎 Праздничная распродажа (уже закончилась) и новый вид курса

До 2го декабря на моем сайте будут сниженные цены на все курсы с полной поддержкой и индивидуальными проектами

➡️ Посмотреть сразу

А так же доступны готовые пакеты, по еще более сниженной цене, где можно максимально сэкономить:

⚡️ Пакет полной готовности (вся расширенная верстка, JS, React, Typescript, 2 индивидуальных проекта и 131+ часов практического материала)

⚡️ Пакет правильного фронтендера (поддержка, вся расширенная верстка, JS, React, 2 индивидуальных проекта и 102+ часа практического материала)

⚡️ Пакет психологических консультаций - 5 консультаций по цене 4

По любым вопросам можете сразу писать мне в личные сообщения. Никаких ботов или менеджеров, только я как всегда 🙂

Вторая новость - это дополнительный новый формат прохождения курса Web-разработчик. Все, кто мне писал и хотел еще более расширенную программу и поддержку + проект, теперь могут залетать на этот курс

В нем я стараюсь максимально сконцентрировать весь практический опыт, чтобы передать его вам: для чего это нужно в реальности, как сделать правильно и где что-то может сломаться, а не только просто информация, которая есть повсюду. И в новой версии курса, в каждом уроке, уже включены ответы на вопросы студентов за предыдущие 5 лет. И новые уроки, которые есть только в этой версии

Тут так же включен индивидуальный проект под моим наставничеством, макет для которого будет взят у дизайн-студий - партнеров

Один из последних таких сайтов взял Honarable Mention от Awwwards: посмотреть

В этой версии курса будет дополнительныйодин практический модуль (4й, всего 3 в базовой версии). Пока еще в программу не загружал, так как нужно все оттестировать с учениками-тестерами. Но если необходимо - я вам скину программу в личку

🎁 Если хотите приобрести что-то в виде подарка или оплатить криптой - то не стесняйтесь писать мне

P.S. Так же по некоторым правилам была включена информация о том, сколько из стоимости уходит на налоги без учета НДС (VAT). На цену для вас это никак не влияет

Иван Петриченко (Campfire school, Udemy и прочие полезности)

27 Nov, 16:40


Грядет праздничное затишье как в заказах (у меня тоже), так и в вакансиях 🎄🎁

Стараемся не унывать (рынок цикличен) и тратить это время с умом: изучать новые технологии, повторять материал, качать инглиш и планировать свое будущее 🚀

Иван Петриченко (Campfire school, Udemy и прочие полезности)

25 Nov, 13:28


Ребят, я знаю, что частые технические посты тут вас достают. Я это вижу по отпискам каждый раз 🙈

Но в работе я почти каждый день сталкиваюсь с чем-то интересным или тем, что стоит повторить. Хочется делиться всем-всем. И часто приходят рекламодатели, которым я постоянно отказываю, так как канал больше личный

Поэтому я решил создать отдельные три канала, куда я почти каждый день закидываю информацию, чтобы и свою голову держать в тонусе, и вам полезностей накидать в более кратком формате

Буду крайне благодарен, если вы залетите в каждый из них 🐾

Почти месяц я их веду, так что уже есть что почитать:


👩‍💻👩‍💻 Канал чисто по фронтенду и подготовке к собеседованиям
Вопросы с собесов, примеры хорошего кода, шпаргалки, алгоритмы, библиотеки — всё, что нужно разрабу на пути к трудоустрйоству
Подписаться

👩‍💻 Канал по айтишке в целом
Если хотите быть в курсе происходящего в ИТ + получать мамтериалы по фронтенду/бэкенду, которые не вошли в другие каналы
Подписаться

👩‍💻 Канал по python и подготовке к собеседованиям
Можете посмотреть, насколько этот язык отличается от JS и проверить свои знания 😉 Веду его вместе с моим хорошим знакомым, котоорый как раз пишет на Питоне
Подписаться

Жду вас)

Иван Петриченко (Campfire school, Udemy и прочие полезности)

24 Nov, 15:47


В выходной плойку запустил, пошел смотреть что в магазине продают - и тут тестируют прямо в продакшене 😐

Да, я не нашел как скрин на телевизоре делать

Иван Петриченко (Campfire school, Udemy и прочие полезности)

23 Nov, 12:44


Запомните эти вопросы

Собеседования - это один из самых непредсказуемых этапов жизни любого разработчика

Спросить могут хер пойми что: иногда про хард скиллы не спрашивают вообще, спрашивают вообще другую сферу, просят сделать кофе (в оффлайне) и еще тысячи самых разных комбинаций. Часто я понимаю зачем это делается, иногда нет

И многие забывают, что у вас тоже есть право задавать вопросы. Я приведу список из части тех, которые мы обсуждаем на консультациях. Запоминайте, делитесь с друзьями, выбирайте на что вам делать упор и помните, что это тоже проактивность, по которой отбирают на вакансии (только не душните)

Как проходит день сотрудника на этой позиции?
Базовый вопрос, позволяет выяснить чем и в каком темпе вы будете заниматься

Чего нужно достигнуть для увеличения зп в два раза? И как часто происходит пересмотр зп?

Какая форма выплаты зп? (официально, наличка в конвертах, оплата на карту, крипта)
Некоторые форматы вам просто могут не подходить, лучше знать заранее + разобраться с налогами. Если что - по всему миру куча разных схем

Почему появилась эта вакансия?
Может это расширение штата сотрудников, а может там такой пиздец, что все бегут оттуда

Какие показатели эффективности моей работы?
Если слышите про количество строк кода - хорошо подумайте

Используете ли в компании/команде тайм-трекеры (скриншоты/запись всех экранов, афк, затреканое время влияет на ЗП и тд)
Обычно чем больше "пытаются" ввести контроля - тем хуже и контрпродуктивнее. Можно еще и на штрафы влетать

Отношение к day off (отгулам): как часто можно брать, что если что-то экстренное и как они влияют на зп

Какой notice period и условия увольнения
Иногда в контракты вписывают абсолютную дичь, к этому нужно очень внимательно отнестись. Последний пиздец, что видел - запрет на работу на аналогичной должности после увольнения на 2 года

В комментах можете накидать и свои варианты. Думаю их еще с десяток собрать можно

Иван Петриченко (Campfire school, Udemy и прочие полезности)

15 Nov, 11:04


Пропадающие заказчики и ненужные проекты

Это скрин от моей хорошей знакомой. И такое бывает не редко, поверьте

Мы тут люди взрослые, так что давайте говорить начистоту. Иногда digital продукты нужны вовсе не для конечной цели, или не для продолжительной его жизни. Буду говорить за свой опыт и опыт некоторых друзей

Примеры, когда заказы приходят в компании/студии/фрилансерам:

💎 Создание того же веб-продукта нужно для "проведения расходов через бухгалтерию". По всему миру есть business expenses и всякие схемы оптимизации налогов. И этим пользуются

💎 Совсем прямая отмывка баблишка, когда просто нужен конечный результат для показа

💎 Когда создают откровенно и заведомо провальный стартап на деньги инвестора. Единственная заинтересованность тут - это "выдоить" как можно больше денег

💎 Просто когда компания/бизнес хочет создать тот же веб-продукт, "чтобы было", "как у всех", "и нам такое нужно". Тут заказчики иногда пропадают даже после 50%ной предоплаты

И другие уморительные истории. Для нас с вами тут самое неприятное то, что участие в таких проектах может демотивировать, понижать наш скилл и бить по совести

Представьте, вы разрабатываете проект 9 месяцев и все это время знаете, что он никому не нужен. Конечно же, можно экспериментировать в нем, но плюс сомнительный

Поэтому помните, что кодинг - это все тот же бизнес, а часто там не самые радужные вещи происходят. И это я еще не начинал тему порносайтов, приложух и всего подобного, что занимает большую нишу рынка 😮‍💨

Иван Петриченко (Campfire school, Udemy и прочие полезности)

14 Nov, 17:45


Большая статистика за год от github 🚀

Мало кто из нас будет читать полную статью (32 минуты чтения), поэтому самую интересную информацию я вытащил для вас в виде картинок

Но если коротко:

✏️ Все начали резко разрабатывать ИИ (как неожиданно) и этот скачок подтянул за собой популярность Python

✏️Typescript стабильно показывает рост, уже java обогнали

✏️Docker все чаще встречается в репозиториях

Иван Петриченко (Campfire school, Udemy и прочие полезности)

05 Nov, 09:42


Что ж, давайте с вами решим задачку и вернемся к теме, на которой валятся все равно многие ☕️

Не, серьезно, если вы новичок - попробуйте решить, ведь эта задача будет масштабироваться с вашим опытом. А если ветеран - то быстро понять на что направлена задача. Ответ выложу завтра, чтобы не сразу спойлерить

Условие задачи:

💡 У вас есть объект с содержимым инвенторя. Можете представить, что это инвентарь в вашей любимой игре

Любое изменение инвентаря приходит как еще один объект, где вам нужно вычислить разницу. Представьте, что вы открыли сундук и нажали кнопку "Забрать все"

Если приходит что-то новое - добавить такой пункт в объект

✏️ Бывает так, что нам нужно отдать вещи из инвенторя. Тогда изменение будет отрицательным. Но результат не может таким быть, если это произошло - нужно вывести сообщение и запретить операцию (смотри пример)

const inventory = {
wood: 10,
steel: 5,
coal: 8,
};

const update = {
wood: 3, // Увеличить количество на 3
steel: -5, // Уменьшить количество на 5
copper: 4, // Добавить что-то новое
};

const updatedInventory = updateInventory(inventory, update);

console.log(updatedInventory);
// Ожидаемый результат: { wood: 13, steel: 0, coal: 8, copper: 4 }

const updateWithError = {
steel: -10, // Ошибка: не может быть отрицательным
};

updateInventory(inventory, updateWithError); // Должно выбросить ошибку


Ну и главная задача - это написать функцию updateInventory. Кидайте ваши примеры в комменты🙂

P.S. На самом деле, такая логика у вас может трансформироваться во что угодно: корзина товаров, данные о пользователе/пользователях(массив объектов), список товаров и тд. На простом примере можно разобрать и понять более сложные концепции

#вопросы_на_собеседования

Иван Петриченко (Campfire school, Udemy и прочие полезности)

02 Nov, 10:26


Есть такая метрика, которая очень активно форсится гуглом и частью фреймворков

Называется CLS и по моим наблюдениям большинству ресурсов на неё {подставить матюк} все равно

Если коротко, то это когда вы начинаете работать с веб-ресурсом, а его части могут резко изменять свое расположение за счет подгрузки чего-то. Это реально неприятно, а в видосике-превью даже смертельно 🥱

Очень подробно и наглядно советую почитать статью тут

Она вам пригодится, особенно если не работаете с серверным рендерингом

А в разных инструментах вы будете встречать чаще не CLS, а просто layout shift (привет дока next'a)

#полезности

Иван Петриченко (Campfire school, Udemy и прочие полезности)

31 Oct, 12:01


Знаете, tech или team lead — это человек, который не только ведёт проект и даёт пинки под зад, но и учит, растит команду. Не всем это дано, но если попадётся такой человек — ваш рост ускоряется в разы 🔝

Моим первым техлидом был Ленар в далёком 2017 году. Он ставил мне задачи и заботился о том, чтобы я правильно понял, что именно нужно сделать. Ещё именно он научил меня софт-скиллам: как не бояться говорить на аудиторию любого объема, как себя вести в разных ситуациях, как "продавать" себя заказчикам etc.

Удивительно, но тогда я думал, что это не так важно, что код решает. Оказалось, что в следующие годы и по сей день эти навыки помогают мне в разы больше, чем написание кода. Заказчикам чаще все равно на технические решения, а вот на впечатление от меня — нет

Сейчас Ленар работает техлидом в банке и постоянно рассказывает интересные вещи из работы и жизни в своём телеграм-канале — советую вам подписаться на него. Почерпнете много нового

Помимо этого он ведёт свой подкаст о техлидстве, выпуски выкладывает так же в свой канал. Послушайте, если тоже метите на эту позицию и хотите вырасти. И даже если не метите — сможете вырасти значительно в карьере

Подписаться на канал Ленара

Иван Петриченко (Campfire school, Udemy и прочие полезности)

30 Oct, 12:35


👨‍💻 Паттерн BFF или потратьте 7 мин с пользой

Даже если вы только недавно начали изучать JS (но если только самые основы - то пропускайте и сохраняйте на будущее)

Даже если вы плохо знаете инглиш (гугл-переводчик на страничке в помощь)

Все равно начинайте понемногу читать про полезные подходы в разработке. Они будут откладываться у вас в голове на нужных полочках и вы никогда не знаете в какой момент могут понадобиться. И вообще, вы к ним придете сами, но лучше знать про такое заранее

А теперь 7 минут на статью про распространенный BFF Pattern (Backend for Frontend) (с картинками!)

#полезности

Иван Петриченко (Campfire school, Udemy и прочие полезности)

29 Oct, 13:05


Что такое плохой UX наглядно в примере

➡️ Вы заполняете форму и прикрепляете файлы

➡️ Пытаетесь отправить форму, ничего не происходит: она не очищается, сообщений не появляется

➡️ Вы заходите в консоль и видите 413ю ошибку и сообщение, что файл слишком большой

😮‍💨 Какой из двух файлов? Сколько ограничений? Почему я должен юзером консоли, чтобы это узнать?

😱 Ужимаете файлы в надежде на попадание в лимит "веса". С четвертой попытки угадываете, что ограничение в 1мб

Если вы хотите быть нормальным разработчиком, то не нужно все скидывать на то, что "дизайнер не нарисовал". Банально:

➡️ Добавьте сообщения об ошибке отправки формы. А еще лучше адекватные сообщения с причиной

➡️ Ну подпишите вы хоть текстом ограничения по формату файлов и их весу

➡️ (необязательно) На бэке можете указать лимит и отправлять сообщением при таком запросе

Просто? Просто.

Иван Петриченко (Campfire school, Udemy и прочие полезности)

24 Oct, 16:04


The AI Deepfake Game 🙂

Суть проста: угадайте какое фото реальное, а какое сгенерировал ИИ

Я набрал всего 5/10 😱

Сколько у вас? 📩

Иван Петриченко (Campfire school, Udemy и прочие полезности)

23 Oct, 12:07


Фронтенд в картинках — просто, наглядно и понятно. Новые знания в компактном формате каждый день.

Присоединяйтесь: @FrontendPortal

Иван Петриченко (Campfire school, Udemy и прочие полезности)

22 Oct, 14:39


Страсти айтишные или как официально своровать код 😮

Кто использует WordPress может удивиться тому, что чуть ли не самый известный плагин ACF исчез из магазина плагинов. Если коротко, то его спиздили сказали что он небезопасный, сделали его копию и выложили под другим названием

Полторы минуты чтения на английском, если интересны подробности: ссыль
(тренируй тех англ, не ленись)

А в плагинах вы теперь найдете Secure Custom Fields - тоже самое, но с новыми отзывами

Вот так шутки про сворованый код выходят из под контроля

P.S. Как конфликт устаканится, я внесу правки в WP курс, а то не понятно что еще выкинут

Иван Петриченко (Campfire school, Udemy и прочие полезности)

21 Oct, 13:16


Их же уже не существует!

А не, подождите 🤔

Короче говоря, моя хорошая знакомая Таня устроилась пару месяцев назад верстальщиком. Она искренне любит это дело и заслуженно получает хорошие деньги

А еще в ее отделе их 30+ человек. Верстальщиков.

Так и живем, про верстку не забываем, учим что-то новое каждый день 👨‍💻

Иван Петриченко (Campfire school, Udemy и прочие полезности)

18 Oct, 18:32


Аудиоформат прошедшего стрима ⬇️
Спасибо всем, кто пришел ❤️‍🔥

P.S. Эксперимент с записью стримов тут проведен, качество конечно пишет так себе, особенно видео у хоста. Так что ютуб, жди нас 😎

Иван Петриченко (Campfire school, Udemy и прочие полезности)

18 Oct, 17:25


Live stream finished (1 hour)

Иван Петриченко (Campfire school, Udemy и прочие полезности)

18 Oct, 16:00


Live stream started

Иван Петриченко (Campfire school, Udemy и прочие полезности)

18 Oct, 16:00


Live stream scheduled for

Иван Петриченко (Campfire school, Udemy и прочие полезности)

16 Oct, 15:01


А в эту пятницу будет стрим вместе с senior/lead React / React Native разработчицей Светланой 😎

Что будем обсуждать?

📌 Реально ли soft-скиллы так важны? С примерами, ситуациями и советами
📌 Что такое "бенч": что за слэнг, что оно такое и как проходить такой этап с пользой

Когда и где?

Эта пятница, 18 октября 19:00 по UTC +3
Прямо в телеграм-канале будет стрим

Можно будет и послушать в виде подкаста, пока гуляете с собакой, готовите, в дороге и тд, а можно и будет посмотреть на нас красивых

Будет ли запись?

Да, планируется, но для лучшего взаимодействия лучше прийти на трансляцию

Формат и вопросы

Единственная наша цель - это поделиться опытом и сделать сообщество кодеров (и не только!) чуть лучше. Поэтому стрим будет максимально честным, с пятничным юморком и без занудства

Если у вас есть вопросы по теме, то их можно задать заранее вот тут

Увидимся совсем скоро 😎

Иван Петриченко (Campfire school, Udemy и прочие полезности)

16 Oct, 14:58


Привет, ребята 🙂

Знаете как блогеры часто пропадают, а потом такие: "Со мной столько всего случилось", а потом целую неделю рассказывают мелкими кусочками с "интригами". Ненавижу такое 😠

Так вот, я к вам возвращаюсь, но причины двухмесячного отсутствия по человечески банальны:

- было много работы. И фронтендерской и с ребятами лично занимался
- потом немного отдыха
- потом встретился с родителя впервые за 3+ года
- потом меня в третий раз накрыло ковидом, будь он неладен (стараюсь меньше материться, честно)

Но теперь готов заряжать дальше и делать контент в том числе. Планов много 👨‍💻

Кстати, новый модуль web-разработчика уже отрендеривается на серверах как моей платформы, так и udemy. Буду открывать их по мере нормализации качества, надеюсь, что каждый день

Иван Петриченко (Campfire school, Udemy и прочие полезности)

22 Jul, 12:31


Нужно ли сглаживание шрифтов?

В последнее время в меня со всех сторон летит сss-свойство font-smooth как в коде, так и в дизайне. Возможно даже вы видели такие строки:
    -webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;


Я решил немного разобраться в теме и сделать для вас краткую выжимку

⚡️Даже в документации свойства вы увидите, что оно нестандартизировано и для разных движков нужны префиксы и разные значения. Добавим сюда и caniuse в 35% поддержки

🤓 Под капотом оно работает довольно интересно, особенно про субпиксельную отрисовку и сам механизм сглаживания. Рекомендую почитать эту статью, в названии которой уже есть ответы (5 минут чтения)

😠 Правильно ли делают, что дизайнеры везде используют сглаживание шрифтов, а программисты вслед добавляют это свойство для всего сайта?

Ответ: нет, даже не смотря на то, что в других браузерах оно будет просто проигнорировано, оно может снизить читаемость текста в зависимости от цвета заднего фона и операционной системы

Но, его вполне можно использовать для участков текста, где вы хотите, чтобы текст выглядел более утонченно

Можете свободно использовать его для светлого текста на темном фоне, можете свободно использовать его для исправления пользовательского рендеринга шрифтов в Windows или для стилизации определенных фрагментов текста на странице, чтобы он выглядел более тонким, но для основных частей текста, где читабельность имеет первостепенное значение, пожалуйста, оставьте настройку по умолчанию и позвольте операционной системе заняться сглаживанием.

Иван Петриченко (Campfire school, Udemy и прочие полезности)

12 Jul, 15:38


Мысли каждого программиста, особенно в пятницу

Иван Петриченко (Campfire school, Udemy и прочие полезности)

04 Jul, 11:37


Начал читать распиаренную книгу «Атомные привычки» и понимаю, что всю жизнь неосознанно следовал советам из неё 🤓

И с кодом получается примерно так же: кто-то неосознанно применяет алгоритмы и оптимизацию (вот просто из логики лезет), а кому-то нужно просто изучить все то, что дает литература или другие источники

К примеру, такие источники можно найти в архиве программиста , где есть и тематические книги по программированию, и что поизучать на досуге.

😎 Ну и сейчас там конкурс на геймерское кресло в закрепе

Иван Петриченко (Campfire school, Udemy и прочие полезности)

03 Jul, 09:43


Тема клонирования обьектов в js - одна из частых на собеседованиях любого ранга

(Как подраздел темы работы по ссылке или по значению)

И вот на собеседовании у знакомого был очередной вопрос про structuredClone, про который рассказывал вот тут. Что уже стало примерно стандартом

А вслед за ним вопрос про библиотеки с расширенным функционалом клонирования

Про Lodash _.cloneDeep() знают многие, как и минусы его использования (большая библиотека в целом со своими проблемами, нет смысла тянуть ради одного метода и тд)

Поэтому одним из аналогов будет klona, которую вам тоже стоит занести в копилку знаний 👨‍💻

Так что советую почитать доку, занести в закладки и глянуть статистику установок 👍

Иван Петриченко (Campfire school, Udemy и прочие полезности)

27 Jun, 09:17


Пока всё ждем апдейтов React, документация решила сама себя перевести 🥺

Ну и ошибки полезли в примерах. Если видите похожее - значит это к скорым обновлениям 👨‍💻