Прошло уже почти 2 мес с момента как я записал второе видео про свой путь в айти, но так до сих пор его и не смонтировал…
Сегодня заглянул в материал и поугарал)
На этих выходных обязательно его нарежу и выложу.
А за последние 2 мес уже произошло еще много нового, так что пора записывать еще одно видео.
А вот самое первое которому уже пол года
Почему я изучаю Фронтенд разработку?
Клипы из предстоящего видео:
Сегодня заглянул в материал и поугарал)
На этих выходных обязательно его нарежу и выложу.
А за последние 2 мес уже произошло еще много нового, так что пора записывать еще одно видео.
А вот самое первое которому уже пол года
Почему я изучаю Фронтенд разработку?
Клипы из предстоящего видео:
🔥4⚡2❤1
Плюс мораль от сообщества 🚀
Мой вход в айти в самом разгаре. Путь это не легкий и на нем необходима поддержка. Полгода назад я наткнулся на сообщество IT-Хозяева. В нем я нашел как возможности для общения и развития в техническом направлении, так и круг людей по интересам: спорт и английский.
Я стал активной частью сообщества и начал проводить созвоны English Club и недавно начал запускать небольшие челленджи в нашем спортивном чатике.
Основатель сообщества Саня (@jointimer) сделал мне мега подгон:
⭐ Фирменная футболка IT-Хозяев
⭐ Книга: Чистый Код
⭐ И еще ништячки
Я благодарен ему за поддержку и то, что он создал такое классное сообщество.
Двигаться в одиночку было бы гораздо сложнее. Так что всем рекомендую сообщество IT-Хозяева
Всем успехов в развитии ⚡️
Мой вход в айти в самом разгаре. Путь это не легкий и на нем необходима поддержка. Полгода назад я наткнулся на сообщество IT-Хозяева. В нем я нашел как возможности для общения и развития в техническом направлении, так и круг людей по интересам: спорт и английский.
Я стал активной частью сообщества и начал проводить созвоны English Club и недавно начал запускать небольшие челленджи в нашем спортивном чатике.
Основатель сообщества Саня (@jointimer) сделал мне мега подгон:
⭐ Фирменная футболка IT-Хозяев
⭐ Книга: Чистый Код
⭐ И еще ништячки
Я благодарен ему за поддержку и то, что он создал такое классное сообщество.
Двигаться в одиночку было бы гораздо сложнее. Так что всем рекомендую сообщество IT-Хозяева
Всем успехов в развитии ⚡️
🐳7❤🔥6🔥3❤1👍1
Обещанный второй ролик из серии “Дорога в Айти”
Смотреть на Ютуб
(всего 4 мин)
За последние 2 мес уже произошло много всего, так что в ближайшие пару недель постараюсь записать новый ролик.
Смотреть на Ютуб
(всего 4 мин)
За последние 2 мес уже произошло много всего, так что в ближайшие пару недель постараюсь записать новый ролик.
YouTube
Как попасть в Айти в 2025? Учеба, Стажировка, Собесы, Работа. Дорога в Айти 2
Мой путь в Айти в самое тяжелое время в индустрии.
Всем привет, я Хасан (30 лет) и влетаю во фронтенд.
Стримы работы и учебы
https://www.twitch.tv/codeforfreedom_
Телеграмм канал
https://news.1rj.ru/str/codeforfreedom
Мок собес у Димы (@siberiacancode )
https:/…
Всем привет, я Хасан (30 лет) и влетаю во фронтенд.
Стримы работы и учебы
https://www.twitch.tv/codeforfreedom_
Телеграмм канал
https://news.1rj.ru/str/codeforfreedom
Мок собес у Димы (@siberiacancode )
https:/…
🔥7👍2
Спустя месяц работы над задачей 🙈
▻ изменено 133 файла
▻ добавлено 2300 строк
▻ удалено 1400
Этот MR на стартапе, где я работаю никто не будет проверять. Я его проверял сам с нейронкой и просил найти критические и важные ошибки.
По итогу нашлись ошибки именований, типов и надо было обновить тесты.
В целом думаю что прогонять MR/PR через нейронку хорошо даже если потом его будет смотреть человек. Помогает найти то, что мы недоглядели. Особенно в разделах, которые мы не трогали, но они связаны с нашими изменениями.
Я бы очень хотел чтобы мой код ревьюили опытные разрабы, думаю это сильно помогало бы расти как специалист. Но это уже совсем другая история
▻ изменено 133 файла
▻ добавлено 2300 строк
▻ удалено 1400
Этот MR на стартапе, где я работаю никто не будет проверять. Я его проверял сам с нейронкой и просил найти критические и важные ошибки.
По итогу нашлись ошибки именований, типов и надо было обновить тесты.
В целом думаю что прогонять MR/PR через нейронку хорошо даже если потом его будет смотреть человек. Помогает найти то, что мы недоглядели. Особенно в разделах, которые мы не трогали, но они связаны с нашими изменениями.
Я бы очень хотел чтобы мой код ревьюили опытные разрабы, думаю это сильно помогало бы расти как специалист. Но это уже совсем другая история
👍6💅3👀1
Начал проходить курс по TypeScript
Я до сих пор не проходил системно структурированные материалы по TypeScript. И в мои руки попал свежий курс по TypeScript.
(Спасибо другу за это 🤝)
В первом ролике на тему “Иерархии типов” узнал про важную особенность объектных типов (object types).
Оказывается в TypeScript при описани подобного типа:
это правильно читать следующим образом: “поле name обязательно в объекте и должно иметь тип string”. Но это не означает что объект типа User должен иметь только одно поле name.
Eсли в переменную типа User напрямую присваивать объект с лишними полями
то будет ошибка проверки лишних свойств (“Excess Property Checks”). А если присвоить через промежуточную переменную или получить объект из сетевого запроса — ошибок нет.
Excess Property Checks срабатывает, если объект сразу присваивается переменной.
А вы знали про эту особенность?
#100DaysOfStudy День 92
Я до сих пор не проходил системно структурированные материалы по TypeScript. И в мои руки попал свежий курс по TypeScript.
(Спасибо другу за это 🤝)
В первом ролике на тему “Иерархии типов” узнал про важную особенность объектных типов (object types).
Оказывается в TypeScript при описани подобного типа:
type User =
{ name: string; }
это правильно читать следующим образом: “поле name обязательно в объекте и должно иметь тип string”. Но это не означает что объект типа User должен иметь только одно поле name.
Eсли в переменную типа User напрямую присваивать объект с лишними полями
{ name: 'Bob', age: 33 }
то будет ошибка проверки лишних свойств (“Excess Property Checks”). А если присвоить через промежуточную переменную или получить объект из сетевого запроса — ошибок нет.
Excess Property Checks срабатывает, если объект сразу присваивается переменной.
А вы знали про эту особенность?
#100DaysOfStudy День 92
🔥7🗿3
This media is not supported in your browser
VIEW IN TELEGRAM
Нашел способ как облегчить чтение статей 🗿
И можно выбирать скорость чтения.
И можно выбирать скорость чтения.
🗿5
Задачка на понимание TypeScript
Вопрос: Почему нету подсветки ошибки в коде, но падает Run?
Ссылка на Код
——
Ключевые моменты:
1) Надо учитывать особенность что в TS объектные типы являются открытыми. И они не запрещают иметь больше полей чем мы указали.
2) Указывать явно типы не всегда есть хорошо. А еще есть такая вещь как “satisfies” которая не указывает тип, а проверяет его на совместимость.
3) Опциональный тип “:?” в объекте может вызывать проблемы при типизации параметров функции.
В этом примере он позволил принимать объект без поля verificationDate, что позволило принять тип User. От этого можно было бы защититься если в типе VerifiedUser типизировать поле вот так
Разбор в открытом доступе - Ютуб
#100DaysOfStudy День 93
Вопрос: Почему нету подсветки ошибки в коде, но падает Run?
Ссылка на Код
——
Ключевые моменты:
2) Указывать явно типы не всегда есть хорошо. А еще есть такая вещь как “satisfies” которая не указывает тип, а проверяет его на совместимость.
3) Опциональный тип “:?” в объекте может вызывать проблемы при типизации параметров функции.
В этом примере он позволил принимать объект без поля verificationDate, что позволило принять тип User. От этого можно было бы защититься если в типе VerifiedUser типизировать поле вот так
verificationDate : Date | undefined
Разбор в открытом доступе - Ютуб
#100DaysOfStudy День 93
🤔4
Вчера у меня случилась странно-забавная история с LLM-агентом.
Я настраивал локализацию i18n в проекте, и в тестовой-среде (jest) локализация просто не поднималась. Подключил агента Claude (через Cursor), чтобы разобраться. В итоге мы провели около часа, вращаясь вокруг одной и той же проблемы: он несколько раз уверял, что нашёл решение, пробовал разные подходы, но результат оставался прежним. Чувствовалось, что агент заблудился в трёх соснах.
В конце концов я решил начать всё с нуля, но перед этим попробовать кое-что. Я написал ему резкое сообщение, что это его последний шанс. И неожиданно, после этого, расставляя логи по всей цепочке, он буквально за пять минут нашёл корневую причину и полностью решил задачу. Почти точно такая же ситуация у меня уже была полгода назад с gemini-cli.
И вот возникает вопрос: действительно ли давление на нейронки повышают шанс решения задачи? 🤔
Кто-нибудь ещё «угрожал» агентам и насколько это помогало? Дайте знать.
П.С.
По промту ясно что у меня знатно подгорело 💥
Я настраивал локализацию i18n в проекте, и в тестовой-среде (jest) локализация просто не поднималась. Подключил агента Claude (через Cursor), чтобы разобраться. В итоге мы провели около часа, вращаясь вокруг одной и той же проблемы: он несколько раз уверял, что нашёл решение, пробовал разные подходы, но результат оставался прежним. Чувствовалось, что агент заблудился в трёх соснах.
В конце концов я решил начать всё с нуля, но перед этим попробовать кое-что. Я написал ему резкое сообщение, что это его последний шанс. И неожиданно, после этого, расставляя логи по всей цепочке, он буквально за пять минут нашёл корневую причину и полностью решил задачу. Почти точно такая же ситуация у меня уже была полгода назад с gemini-cli.
И вот возникает вопрос: действительно ли давление на нейронки повышают шанс решения задачи? 🤔
Кто-нибудь ещё «угрожал» агентам и насколько это помогало? Дайте знать.
П.С.
🤣6👀2
ТИПИЗИРОВАННЫЕ ВЫХОДНЫЕ
В эту субботу был первый созвон на курсе TypeScript с практическим разбором кода.
Планировался на 2ч, а шел все 5ч. Было интересно и вот что я подметил из нового и важного:
🔰TypeScript не следует семантическому версионированию.
Версия 4.4 и 4.5 могут быть несовместимыми 🙈
🔰Полезный паттерн: discriminated union в типе с общим литеральным полем для корректного сужения к конкретному типу
🔰Иногда на фронтенде мы можем добавить в тип поле, которого нету на беке. Как раз таки, например, если нам не приходит discriminated union поле
🔰Наши типы – это контракт. Я недавно читал в “Программист прагматик” про программирование по контракту и теперь идеи немного связались.
🔰"as const" – сужает типы до литералов. Жду когда разберем “as const satisfies Type”.
🔰"assert" – функция Node.js, которая проверяет условие и выбрасывает ошибку, если оно не выполнено
Надо будет пересмотреть созвон, и покопаться в практике.
П.С.
Моне созвон показался скучнум 🥱💤
#100DaysOfStudy День 94
В эту субботу был первый созвон на курсе TypeScript с практическим разбором кода.
Планировался на 2ч, а шел все 5ч. Было интересно и вот что я подметил из нового и важного:
🔰TypeScript не следует семантическому версионированию.
Версия 4.4 и 4.5 могут быть несовместимыми 🙈
🔰Полезный паттерн: discriminated union в типе с общим литеральным полем для корректного сужения к конкретному типу
🔰Иногда на фронтенде мы можем добавить в тип поле, которого нету на беке. Как раз таки, например, если нам не приходит discriminated union поле
🔰Наши типы – это контракт. Я недавно читал в “Программист прагматик” про программирование по контракту и теперь идеи немного связались.
🔰"as const" – сужает типы до литералов. Жду когда разберем “as const satisfies Type”.
🔰"assert" – функция Node.js, которая проверяет условие и выбрасывает ошибку, если оно не выполнено
Надо будет пересмотреть созвон, и покопаться в практике.
П.С.
Моне созвон показался скучнум 🥱💤
#100DaysOfStudy День 94
👍4🔥3✍1
⚠️ Разработчики Cursor сломали голосовой ввод
На свою голову я только что обновил Cursor, и пропал голосовой ввод в агенте. Оказывается, его сломали еще в релизе примерно от 12 декабря. Если вы им пользуетесь, пока лучше не обновляйтесь.
🎙 Кстати, насчет голосовых вводов.
Я начал активно пользоваться Google Gemini, и оказывается, у них язык для голосового ввода выбирается по вашему системному языку. У меня это английский, так что в Gemini приходится наговаривать текст на английском.
А в чат GPT язык определяет по речи. Говорите по-русски — он будет транскрибировать в русский, на английском — то будет английский.
Про Gemini и GPT шла речь в контексте браузеров на десктоп. В мобильных приложениях немного другая история.
А вы пользуетесь где-нибудь голосовым вводом?
На свою голову я только что обновил Cursor, и пропал голосовой ввод в агенте. Оказывается, его сломали еще в релизе примерно от 12 декабря. Если вы им пользуетесь, пока лучше не обновляйтесь.
Голосовой ввод (микрофон) в Cursor сейчас не работает из-за бага в последних версиях. Разработчики осведомлены и работают над исправлением.
🎙 Кстати, насчет голосовых вводов.
Я начал активно пользоваться Google Gemini, и оказывается, у них язык для голосового ввода выбирается по вашему системному языку. У меня это английский, так что в Gemini приходится наговаривать текст на английском.
А в чат GPT язык определяет по речи. Говорите по-русски — он будет транскрибировать в русский, на английском — то будет английский.
Про Gemini и GPT шла речь в контексте браузеров на десктоп. В мобильных приложениях немного другая история.
А вы пользуетесь где-нибудь голосовым вводом?
🐳2🔥1
Я не собирался нетворкаться на первой IT-конференции, но что-то пошло не по плану.
Говорят главная ценность конференций – это нетворкинг. Но я, конечно же, не планировал им заниматься. Потому что кто я такой в начале карьеры? Так что рассчитывал просто посетить доклады и познакомиться с миром большого IT.
В ноябре в Казахстане проходила конференция от Яндекс Cloud с основной тематикой ML & AI. На фоне того, что из каждого угла кричат: "AI умеет всё и скоро всех заменит", мне запомнился доклад, в котором подчёркивали, что AI для бизнеса – это не silver bullet, и разбирали для каких задач он действительно подходит, а для каких нет.
Что было после докладов? Afterparty. Как раз таки, для того самого нетворкинга. Уходить сразу не хотелось, было ощущение, что если уж пришёл, то стоит прочувствовать конференцию целиком. Я решил остаться и посмотреть что да как.
Я стоял в сторонке(фото 5 🙈). Получилось так, что ко мне подошли и завели разговор. Оказалось это не так уж и страшно. После, набравшись решительности, я уже самостоятельно подошел и завел разговор. Позже к нам подключился CTO одной компании, который в итоге даже дал мне свою визитку.
Я не планировал нетворкаться, но нутро говорило: попробуй. Попробовал – и ушёл без сожалений.✔️
Спасибо @jointimer за ссылку на конфу. Сам я бы её, скорее всего, не нашёл. В будущем планирую уже самостоятельно искать конференции и посещать их.
П.С.
Конференции это также простикеры 🙂
Говорят главная ценность конференций – это нетворкинг. Но я, конечно же, не планировал им заниматься. Потому что кто я такой в начале карьеры? Так что рассчитывал просто посетить доклады и познакомиться с миром большого IT.
В ноябре в Казахстане проходила конференция от Яндекс Cloud с основной тематикой ML & AI. На фоне того, что из каждого угла кричат: "AI умеет всё и скоро всех заменит", мне запомнился доклад, в котором подчёркивали, что AI для бизнеса – это не silver bullet, и разбирали для каких задач он действительно подходит, а для каких нет.
Что было после докладов? Afterparty. Как раз таки, для того самого нетворкинга. Уходить сразу не хотелось, было ощущение, что если уж пришёл, то стоит прочувствовать конференцию целиком. Я решил остаться и посмотреть что да как.
Я стоял в сторонке(фото 5 🙈). Получилось так, что ко мне подошли и завели разговор. Оказалось это не так уж и страшно. После, набравшись решительности, я уже самостоятельно подошел и завел разговор. Позже к нам подключился CTO одной компании, который в итоге даже дал мне свою визитку.
Я не планировал нетворкаться, но нутро говорило: попробуй. Попробовал – и ушёл без сожалений.
Спасибо @jointimer за ссылку на конфу. Сам я бы её, скорее всего, не нашёл. В будущем планирую уже самостоятельно искать конференции и посещать их.
П.С.
Конференции это также про
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥11👍4🔥2❤1