Хасан – Дорога в Айти
127 subscribers
189 photos
36 videos
84 links
Путь в IT через frontend 🌐👨‍💻

Frontend-разработчик в начале карьеры.
Имею коммерческий опыт в стартапе.
Делюсь процессом развития, ошибками и практическими выводами.

Иногда стримы работы и учёбы: https://www.twitch.tv/khasan_code
Download Telegram
БАЗОВОЕ ЗАМЫКАНИЕ

Я наконец дошел до верного ответа который хотели услышать от меня на тех скрининге.

Вопрос: Приведи пример замыкания без ф-ии вложенной в ф-ю.

Cамый простой ответ:


const x = 10; // Внешняя переменная

function logX() {
console.log(x); // Замыкание на `x`
}

logX(); // 10


Если функция обращается к переменной, объявленной во внешней области видимости (даже если это глобальная область), формально это замыкание.

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


let counter = 0;

function increment() {
console.log(++counter); // Явное замыкание (функция зависит от `counter`)
}

increment(); // 1
increment(); // 2
4
Нетворкинг в LinkedIn

Есть пост, где люди оставляют свое:
— направление
— грейд
— локацию
— ссылку на линкедИн

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

Пост свежий. Авторы советуют отправлять заявки с коротким сообщением с указанием от куда вы нашли человека.

Вот ссылка на пост

Всем хорошего нетворка 🤝

В комментарии опишу как это может помочь в поиске работы.
🤝4
Пятничный Книжный Клуб 📕

Сегодня я первый раз был на созвоне Книжного Клуба по Frontend. Сейчас проходим книгу “Рецепты TypeScript”.

Формат таков: каждый берет 1 небольшую главу и на созвоне презентует и объясняет ее суть.

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

К сегодняшнему созвону я готовил главу “9.3. Работа с defineProperty”. Суть главы:

Задача
Используя Object.defineProperty,
TypeScript не распознает изменения.

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

Я делал небольшую презентацию на нашем созвоне.(ссылка сразу на мою презентацию)
🔥3🆒1
English Club сообщества IT-Хозяева

Сегодня был созвон English клуба в собществе IT-Хозяева. Мы поговорили на тему “Почему мы выбрали свою профессию?” и послушали истории друг друга.

Вот ссылка на запись созвона.
(в ссылке встроен тайминг чтобы открыть стрим на начале общения)

Созвон был в китайском аналоге zoom, так что были небольшие сложности )

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

Let’s Go⚡️
2
Недельный отчет #100DaysOfStudy

За последнюю неделю сделал не так много. К концу этой недели думаю выпущу небольшой пост с обновлениями )

Дни №21-26

📚 ТЕОРИЯ / 🧩 ПРАКТИКА
- Книжный Клуб: Рецепты TypeScript. Типизация Object.defineProperty()
- Короткий видео курс по NEXTjs (40 мин)
- Интерактивная обучалка по NEXTjs где надо сделать dashboard. (10/16)


🌿СТАЖИРОВКА:
- Сделал Welcome задания с 1-ой недели. На этой неделе надо сделать Todo приложение на NEXTjs

👨‍💻 ДЛЯ РАБОТЫ
- Вебинар по LinkedIn

НЕТВОРК / АКТИВНОСТЬ:
- Cозвон IT English Club. Была тема “Почему выбрали свою профессию?”


🎯 ПЛАН НА НОВУЮ НЕДЕЛЮ
1) Начать активно откликаться на вакансии вне HH
2) Кодить на NEXTjs
3) Учить больше теории по JS для собесов


Погнали в новую неделю!
Всем Энергии
51
This media is not supported in your browser
VIEW IN TELEGRAM
Я все таки не смог успокоиться пока не увидел рабочую смену темы.

Вот теперь можно и спать 🛏💤

А завтра надо будет уже разобраться в деталях.

Всем спокойно ночи 🌙
🔥5
Недельный отчет #100DaysOfStudy
Немного выпал и ничего не постил. Буду снова включаться ⚡️
Коротко о моих последних 2-3 неделях

Дни №26-40

🐣 СТАЖИРОВКА:
- Получил задачу по верстке страницы
- По пути пришлось быстро изменить переиспользуемый компонент кнопки, чтобы подгонять кнопки под стили макета.

📀 OPEN SOURCE:
- Взялся за issue в библиотеке reactuse по работе над хуком useHistoryState
- Познакомился с useReducer и тестами
- Создал первый PR чтобы получить фидбек

📖 КНИГА РЕЦЕПТЫ TYPESCRIPT:
Готовил 2 темы к книжному клубу.
1) Глава 9.6. Расширение модулей
2) Глава 10.2 Написание контролируемых компонентов

В главе 10.2 была интересная тема. Оказалось что в React есть 2 способа контролировать input компоненты: через DOM и через React State.

🖥️ МОЙ ПРОЕКТ:
Исправлял замечания из PR на гитхабе.

🇬🇧 ENGLISH CLUB:
Все также по субботам практикуем обсуждение разных тем на английском. Последние темы были: игры и что мы делаем для обучения и развития.

На этом пока все.
🔥4
ПСИХОЛОГИЯ ПРОЦЕССА ОТЛАДКИ 🛠

За последние пару дней я сталкивался с неожиданными проблемами в работе над проектом. Видя ошибки, я реагировал: “Но тут же всё правильно!” и некоторое время находился в недоумении.


А сегодня прочитал отрывок о “Психологии процесса отдладки” и он попал прямо в точку.

📖 Цитата из книги “Программист прагматик”
Если ваша первая реакция после обнаружения ошибки или просмотра отчета об ошибках сводится к восклицанию "Это невозможно!", то вы явно ошиблись. Не стоит тратить ни одного нейрона на цепочку умозаключений, начинающуюся с фразы "Но этого не может быть!", потому что совершенно ясно, что может, и это уже произошло.


#engineer #mindset
👨‍💻2
This media is not supported in your browser
VIEW IN TELEGRAM
Когда сделал React компонент в котором стили работают по селектору HTML тега 🙃

❗️UPDATE:
Оказалось проблема в другом.
Кто догадается в чем?
Ответ в комментах.
🙉3
Недельный отчет #100DaysOfStudy

Буду возвращать недельные отчеты ⚡️
Коротко о моих последних нескольких неделях

Дни №40-50

🐣 СТАЖИРОВКА:
- Создавал страницу с настройками приложения
- Еще небольшую задачу на правку уже готовой
- Была проблема на проекте из-за регистра в именах папок, решили ее вместе с тимлидом так как сталкивался уже с таким )

📀 OPEN SOURCE:
Reactuse
- Написал тесты на хук useDebounceCallback
- Взялся писать тесты еще на один хук
- Я появился в списке контрибьютеров на гитхаб #18. Хочу подняться выше )

📖 КНИГА РЕЦЕПТЫ TYPESCRIPT:
В книжном клубе пока не участвовал.
На след неделе в пятницу планирую снова быть и подготовить тему по книге.

🖥️ МОЙ ПРОЕКТ:
Не трогал.

🇬🇧 ENGLISH CLUB:
Все также по субботам практикуем обсуждение разных тем на английском. Последние темы были: Mental Health и Food and Cooking

🎯ПЛАНЫ
- Хочу регулярнее стримить, так как это помогает заниматься.
- Делать отчеты о пути в Айти на ютуб чтобы самому понимать где я.
🔥21
Недельный отчет #100DaysOfStudy

Совсем забыл про отчет за неделю. Было время авантюр, голова кругом 🙃

Дни №51-55

🐣 СТАЖИРОВКА:
- Первый проект заканчиваем (верстку)
- Я нашел себе уже второй: закончить надо быстро так что процесс идет кашей. Плюс у нас же все джуны.

📀 OPEN SOURCE:
Reactuse
- Успел залить туда еще 1 тест для хука
- И оказывается я там теперь на последнем месте среди отображаемых контрибьютеров 🏆

📖 КНИГА РЕЦЕПТЫ TYPESCRIPT:
Участвовал и готовил тему про “Типизацию компонента высшего порядка”. Было любопытно, но оказалось это уже мало используемый подход.

🇬🇧 ENGLISH CLUB:
Общались на тему Future Technologies. Были интересные тейки и опасения на тему развития AI.


💎 Интересный Тейк:
Только когда я выбирал что-то делать я мог понять а стоит ли вообще делать это. Гиперанализировать до принятого выбора = просто прожигание ресурсов.

🎯ПЛАНЫ
Наполеоновские.
- Войти в новый проект
- Продолжить контрибьютить
- Попробовать с ребятами разбор новой книги
🔥3
Пару слов в добавок

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

Я понял что мой самый большой враг - неизвестность. Если она занимает большую часть моего процесса, то это гарант выгорания. Она должна занимать лишь часть.

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

— Выгорающий Джун


В общем, надеюсь это будет более стабильный подход и так я смогу непрерывно двигаться к цели.

Всем огонька 🔥
🔥3
Интересное время 🚀

Теперь в одного можно разрабатывать и поддерживать несколько приложений. Раньше мне кажется для этого надо было либо пахать без продыха. Либо собирать команду и платить разрабам.

Парень у которого 4 приложения рассказал как перешел с Cursor на Claude Code. И платит за него 200$ в мес. А по API токенам у него выходило бы до 3$тыс в неделю при оч активной разработке.

Процесс разработки значительно ускоряется. Вопрос: значит ли это что все будет становится лучше и что будет больше возможностей заработать? 💸

А какими нейронками, агентами и прочим пользуетесь вы? Поделитесь опытом в комментариях.

ЮТ Видео

П.С. Отчет за неделю выложу завтра.
3