Тут вся грязь 18+
Связь - https://t.me/moderatorstroy
Last updated 4 months, 1 week ago
Предложка: @negativegrowth_bot
Реклама: @paprikamedia
Папка КБ: https://t.me/addlist/5f0hGQbvYaJlNWZi
https://knd.gov.ru/license?id=674c4491340096358bf0956d®istryType=bloggersPermission
Last updated 4 days, 6 hours ago
Фан проект, без конкретики.
Описание сайта: telegra.ph/ARBUZ-Fest-Obnovlenie-sajta-01-13
Как купить: t.me/tonarbuz/480
Чат: t.me/xrocket?start=sb_N6agBQgchvxHpQI
Чат китов (от 2000 арбузов): t.me/tonarbuz/1410
Сайт: https://tonarbuz.fun
Last updated 4 weeks ago
🚀 React 19
Основной акцент сделан на улучшении DX и упрощении работы с асинхронным состоянием. Также всё больше внимания уделяется серверному рендерингу. В целом, обновления не приведут к большим изменениям в коде, но сделают его чище.
Подробнее, что нового и как обновиться?
🔧 React Compiler
React Compiler — это инструмент для автоматической оптимизации кода. Он ускоряет рендеринг и уменьшает нагрузку на браузер. Благодаря компилятору многие оптимизации, вроде мемоизирования теперь выполняются автоматически. Ждём доклады о том, как он работает под капотом.
⚡️Actions и асинхронное управление состоянием
Actions позволяют управлять состоянием асинхронных операций, что избавляет нас от необходимости вручную обрабатывать pending-состояния, ошибки и оптимистичные обновления.
*⚙️ Хук useActionState*
Удобный способ отслеживать состояний Actions. Возвращает объект вида { pending: false, error: false }
с текущим состоянием формы.
🔄 Хук useOptimistic
Управляет оптимистичным обновлением данных. Изменения происходят моментально, а в случае неудачи откатываются назад.
📋 Хук useFormStatus
Позволяет отслеживать состояния формы, теперь компонентом вашей дизайн системы не нужен для этого Context.
🌀 Хук useTransition
(добавлен в react v18, активно используется с actions)
Больше не нужно вручную управлять состоянием isLoading
const [isLoading, startTransition] = useTransition();
🔑 Новый API: use
use
- удобная работа с асинхронностью внутри компонента. Вы можете прочесть promise const comments = use(commentsPromise);
react дождётся его выполнения, после чего отрисует. В это время можно отрисовать loader с помощью Suspence.
📂 React DOM и Actions в формах
Формы в React стали умнее. Теперь можно использовать функции в action
или formAction
, а также автоматически сбрасывать состояние формы после успешной отправки.
📈 Новые статические API
Добавлены новые API в react-dom/static
• prerender
• prerenderToNodeStream
Они улучшают renderToString, ожидая загрузки данных для генерации статического HTML. Предназначены для работы с потоковыми средами, такими как Node.js Streams и Web Streams. Например, в web streams среде вы можете пререндерить дерево React в статический HTML с помощью prerender
.
🌐 React Server Components и Server Actions
Server Components позволяет пререндерить часть вашего кода в CI или при каждом запросе к серверу, что улучшает перфоманс клиентского приложения.
Server Actions позволяют вызывать асинхронные функции на сервере прямо из компонентов.
📊 Улучшения в React 19
• Передача ref как пропса: Теперь можно передавать ref напрямую через пропсы без forwardRef.
• Ошибки гидратации: React показывает точные диффы при ошибках гидратации, что упрощает отладку.
• Контекст как провайдер: Теперь <Context>
можно использовать как провайдер (Context.Provider не нужен)
• Функции очистки для refs: Подержка возврата функции очистки из ref колбэка.
• useDeferredValue с начальным значением: Добавлен initialValue для useDeferredValue:
🌍 React 19 расширяет поддержку современных стандартов:
• Поддержка метаданных документа: Теперь можно использовать тэги </em>, <em><meta></em>, <em><link></em> в вашем компоненте, они будут автоматически перемещены в <em><head></em>. </p> <p><strong>•</strong> <strong>Стили и скрипты</strong>: Также для тэгов <em><script></em> и <em><link rel="stylesheet"></em> можно задать приоритет <em>precedence</em>, что позволяет управлять последовательностью их подключения. Это важно т.к. последовательность подключения влияет на отображаемые результат. </p> <p><strong>•</strong> <strong>Поддержка Custom Elements</strong>: React теперь лучше работает с Web Components. </p> <p><strong><em>🔄</em></strong> <strong>Как обновиться?</strong> </p> <p>Обновление на React 19 должно быть достаточно простым, подробнее читайте в <a href="https://react.dev/blog/2024/04/25/react-19-upgrade-guide" rel="nofollow">миграционном гайде</a> с изменения и кодмодами. Рекомендую прежде обновиться на React 18.3, чтобы увидеть предупреждения о возможных несовместимостях. </p> <p>Подробнее обо всём с примерами кода в <a href="https://react.dev/blog/2024/04/25/react-19-upgrade-guide" rel="nofollow">официальной статье</a> о релизе react 19. </p> <p><em>P.S. А вы уже завели тасочку на обновление?</em></p>
Чем занимается фронтенд-разработчик — джуниор, мидл, синьор и тимлид
Опубликовал статью на habr, где рассказал о том, чем занимаются джун, миддл, синьор разработчики и тимлиды.
Меня нередко спрашивали об этом, поэтому считаю, что тем, кто только начинает свой путь в IT это должно быть полезно. Если кратко, чем выше грейд — тем выше ответственность и неопределённость в решаемых задачах. Если вы сейчас джуниор — будьте проактивны, если хотите расти.
А какие качества помогли вам расти? И какую стратегию роста вы использовали?
Обход блокировки YouTube ?
Недавняя блокировка YouTube подставила под сомнение использование платформы и ведение канала, однако быстро нашлось решение.
Проблема заключается в том, что во время установки SSL соединения, домен, к которому мы подключаемся, передается в открытом виде. И если это googlevideo.com то начинают твориться "интересные вещи". Подробнее об этом, а также об обходе блокировки на уровне роутера для всей сети можно почитать в статье на хабре.
Однако, я предложу более простое решение, которое работает на Windows для вашего компьютера.
Скачайте последнюю версию, распакуйте архив (goodbyedpi-0.2.3rc1-2.zip)
Запустите 1_russia_blacklist.cmd
Подробнее о вопросах относительно софта читайте в обсуждении на github.
Имейте ввиду, это скрипт, который работает только лишь во время, когда он запущен. Чтобы удалить программу достаточно завершить процесс.
Надеюсь, что данный пост был вам полезен и сделает вашу жизнь немного комфортнее :)
UPD. Решения для всех систем: MacOS, Windows, Linux смотри в треде к этому посту
Популярная ошибка при решении задач на интервью
Самая частая ошибка - начинать писать код сразу, как вы получили условие. На данный момент у вас нет готового решения, и вы надеетесь придумать его, поэтапно выражая мысли в код. Часто это заканчивается тем, что вы встаете в тупик, стираете весь написанный код и начинаете писать заново, впустую потратив время.
Как решать задачи правильно?
1. Сперва, после прочтения условия, убедитесь, что вы поняли его верно. Предположите, какие могут быть краевые условия. Например, поведение программы при пустом массиве, нуле или бесконечности. Уточните у интервьюера корректность понимания работы программы в этих условиях. Обговорите, какой тип данных принимает функция, всегда ли это что-то одно или тип может быть любой? Работает ли программа с отрицательными числами? И так далее. Все индивидуально от конкретной задачи.
Полностью продумайте алгоритм решения в голове. Его также можно обговорить с интервьюером. Скорее всего уже на этом этапе у вас может завестись обсуждение вида: «а что, если вот так?». Как следствие, вы сможете сразу внести коррективы в решение. После чего приступайте к написанию кода.
После того, как решение задачи реализовано, не спешите его запускать. Пробегитесь построчно, как интерпретатор по вашему коду, исполните его в своей голове, убедитесь, что код работает верно. Не пренебрегайте лишней проверкой со своей стороны. Моя частая ошибка была в том, что я забывал написать return в конце верного решения, что зачастую мне срезало баллы.
В основном, собеседующему важно понимать, как вы мыслите и не так важно, чтобы ваша программа запустилась с первого раза. Однако, ряд компаний имеет иные приоритеты, поэтому относитесь внимательно к самопроверке.
Всем оптимальных алгоритмов!
С завода во Frontend. Вопросы для подкаста ?
Привет всем! Мы готовимся к необычному для канала формату - интервью. Наш герой - это обычный парень, который смог уйти с завода, и построить карьеру в мире frontend-разработки!
Он столкнулся с немалым количеством препятствий, отказов и трудностей, точно так же, как и многие из вас, кто сейчас находится на этом пути. Но благодаря своему стремлению, упорству и желанию учиться, он не только достиг своей цели в 2022г, но уже сейчас работает в одной из ведущих компаний.
Я верю, что его история станет отличным источником мотивации для каждого, кто стоит на этом же пути, и с нетерпением жду ваших вопросов! Вопросы помогут сделать интервью максимально полезным и интересным.
Пишите, спрашивайте, делитесь своими мыслями - так мы сделаем этот подкаст по-настоящему полезным и вдохновляющим! ????
Вы не найдёте работу, если продолжите искать также
К такому выводу я пришёл, общаясь с большинством знакомых, кто находится в поиске первой работы программистом.
Не важно, изучаете ли вы сейчас JS или уже закончили курс и начали искать. Большое заблуждение, что: “вот я закончу курс и найду работу”. Нет! Чем ближе к финишу, тем сильнее нужно грести.
Вы должны иметь четкие метрики, понимание что делать, точка А, точка Б, где я и какая моя цель?
Конкретно:
Вам необходимо выйти из состояния ученика в состояние взрослого. Вы должны получить деньги за свою работу. Если вы уже умеете верстать сайты - вы можете сделать сайт для вашего знакомого за 100 рублей, или за 10 р. или за 1 рубль. Главное, как можно скорее начать монетизировать ваш навык, а значит - получать коммерческий опыт.
Поставить цель: конкретную, реалистичную, измеримую. Точка А - точка Б.
Например, моя цель за месяц сделать 1000 качественных откликов. Это каждый день ~33 отклика. Качественный означает с сопроводительным письмом, таргетированный, решающий проблему компании. По 5 минут на отклик - 3ч15мин/день. Откликаться не только на hh.ru, но и на всех других ресурсах, карьерных сайтах, искать знакомых внутри, активно лезть везде где возможно, хоть даже писать в соц. сетях CEO компаний.
В начале карьеры вам нужно себя продать. Продав себя другу за 1 рубль, вы начинаете увеличивать свой чек до 100р, далее 500р, 1000р, нарабатываете своё портфолио. Чтобы устроиться джуном у вас уже должен быть год работы. Где вы его возьмете? Нарисуете? Нарисуйте. И вы сможете конкурировать с другими выпускниками курсов, кто также нарисовал себе опыт.
Только реальный коммерческий опыт, реальные проекты и нетворкинг даст вам эту долгожданную цель - работа в IT. Поздравляю.
P.S. Если интересно, отдельным постом напишу метод постановки целей, которым пользуюсь я сам и который работает.
Тут вся грязь 18+
Связь - https://t.me/moderatorstroy
Last updated 4 months, 1 week ago
Предложка: @negativegrowth_bot
Реклама: @paprikamedia
Папка КБ: https://t.me/addlist/5f0hGQbvYaJlNWZi
https://knd.gov.ru/license?id=674c4491340096358bf0956d®istryType=bloggersPermission
Last updated 4 days, 6 hours ago
Фан проект, без конкретики.
Описание сайта: telegra.ph/ARBUZ-Fest-Obnovlenie-sajta-01-13
Как купить: t.me/tonarbuz/480
Чат: t.me/xrocket?start=sb_N6agBQgchvxHpQI
Чат китов (от 2000 арбузов): t.me/tonarbuz/1410
Сайт: https://tonarbuz.fun
Last updated 4 weeks ago