Честно говоря, даже не рассчитывал на такой отклик на мой предыдущий пост. 30 подписчиков на Youtube, ценные комментарии и советы, да и просто слова поддержки!
К сожалению, охват моих видео пока не очень большой, хотя видео про STAR приняли очень тепло, судя по лайкам.
На самом деле, затевая эксперимент "Кодим с ChatGPT", я был почти уверен, что сколь-нибудь значимых результатов я не получу. Но похоже, я начинаю сам себя опровергать. Чатбот сумел не просто предложить решение проблемы (например, "сделать форму авторизации"), но и решить абстрактную задачу "сделать форму красивой".
Кроме того, он неплохо разбирается в существующих библиотеках и сумел предложить мне два очень приличных варианта с полнофункциональным календарем. И это притом, что я использую версию 3.5, а не 4. В общем, мне кажется, из всего этого выйдет неплохой результат, но посмотрим. До работающего приложения еще очень далеко.
Одно могу сказать точно: если бы я писал код с нуля, я бы потратил на него раз в 5 больше времени, с учетом исправления всех ошибок, которые иногда допускает chatGPT.
Ну и немного внутренней кухни (кажется, эта рубрика становится постоянной):
Тема для видеоблога выбрана весьма непростая для новичка, ведь мне недоступна опция "перезаписать видео", если в процессе записи что-то пошло не так. Это же chatGPT, который запоминает контекст. То есть, я:
а) не могу просто как ни в чем не бывало заново его просить делать то, о чем уже просил (потому что он "знает", что я уже задавал этот вопрос и его ответ будет учитывать предыдущие ответы)
б) не могу начать новый чат с нуля, потому что для записи следующего ролика мне нужно, чтобы ИИ знал контекст предыдущего.
Приходится танцевать с бубном. Например, после записи я понял, что у меня был косяк с гарнитурой и звук был фиговый. Пришлось на имеющийся видеоряд с записью экрана накладывать новый аудио-видео ряд с голосом и миниатюрной головой. Это вылилось в адок на монтаже, общее время монтажа 17-минутного ролика составило часов 15. Всё для вас, дорогие будущие зрители :)
Спасибо за поддержку, буду рад новым подпискам на канал и идеям по развитию!
Недавно, когда я рассказывал, как мы пишем тесты, я уже упоминал, что в TypeScript’е появилось новое ключевое слово using. Оно позволяет нам сделать код чище и более линейным, избавившись от try/finally.
Но мы можем использовать using не только, когда открываем файл или подключение к базе данных, иначе его использование ограничилось бы исключительно сервером.
Мне нравится рассматривать using, как Undo/Redo только наоборот, сперва мы выполняем какое-то действие, а в конце отменяем его: - создали объект, удалили - показали спиннер и скрыли, когда получили данные
Причем отмена удобно происходит в самом конце функции, даже если мы используем async/await.
Вот простой пример, как можно использовать using, чтобы показывать/скрывать спиннер в React коде.
// такой же код, с использованием using useEffect(() => { using manager = new LoadingManager(setIsLoading); await await Promise.resolve().then(() => console.log("promise.resolve")); }, []);
Запуск тестов параллельно с мокнутыми импортами, но..
- Медленное исполнение каждого теста - Врут про Zero Config - Развесистый сложный API - Заточка под модульные тесты вместо компонентных - Красивые отчёты не помогают в отладке
«Чат на чат» — новое развлекательное шоу RUTUBE. В нем два известных гостя соревнуются, у кого смешнее друзья. Звезды создают групповые чаты с близкими людьми и в каждом раунде присылают им забавные челленджи и задания. Команда, которая окажется креативнее, побеждает.
немного полезной годноты вам в ленту товарищи (линк на курс в конце статьи)
Содержание: #1 Введение
Приветствие Что такое TypeScript и зачем нужен Альтернативы TypeScript Пререквизит к курсу Настройка окружения Как построен курс
#2 Базовая типизация
О модуле Примитивные типы Базовая типизация функций Базовая типизация объектов Объекты как параметры функции Типизация массивов Кортежи Алиасы Union типы Enum Итоги модуля
#3 Продвинутая типизация
О модуле Подробнее об интерфейсах Подробнее об алиасах Type vs Interface Сужение типов Type Guards Asserts Типизация this Перегрузка функций Рекурсивные типы Оператор ! Итоги модуля
#4 Дженерики
О модуле Актуальность дженериков Базовые примеры Добавление требований Оператор keyof Сужение допустимых значений типа Значения по умолчанию Области видимости типов дженерика Итоги модуля
#5 Комбинирование типов
О модуле Оператор typeof Conditional type Еще раз про extends Оператор infer Маппинг типов Утилиты Extract, Exclude, NonNullable Утилиты Record, Pick, Omit Утилиты ReadOnly, Required, Partial Утилиты Parameters, CounstructorParameters Доступ по индексу Шаблонные литералы Итоги модуля
#6 Проект 1. Vanilla JS -> TypeScript
Обзор проекта Постановка задачи Создание ts-проекта Создание интерфейсов Добавление type guards Типы асинхронных функций Итоги модуля
#7 Классы
О модуле Интерфейс для класса Модификаторы доступа Нюансы конструктора Абстрактные классы Геттеры и сеттеры Статические свойства и методы Итоги модуля
#8 Настройки компилятора
О модуле Составные части конфига Базовые настройки Опции компилятора Дополнительные опции Тюнинг строгости Дополнительный линтинг Рекомендованные конфиги Итоги модуля
Обзор проекта Окружение для проекта Создание типов сущностей Шапка приложения Компонент поиска Альтернативный вариант формы Компонент статистики Шапка карточки Инфо компонент Получение данных Итоги модуля
#11 Типизация Redux
О модуле Добавления Redux в приложение Типизация слайсов Типизация селекторов Типизация asyncThunk Типизация extraReducers AsyncThunk как дженерик Доработка асинхронного слайса Итоги модуля
#12 Проект React+Redux+TS
Обзор проекта Окружение для проекта Базовые типы приложения UI компоненты Типизация переключателя темы Типизация списка стран Типизация детальной страницы Типизация контролей Итоги проекта
всем кому нравиться наш контент поставьте стрелку вверх и оставьте одобрительный комментарий, так мы видим что вам нравиться то что мы делаем ❤️🤝 изучайте, развивайтесь а мы дадим вам всё необходимое для этого
Я, ведущий Денис Басковский, беру интервью у Vue.js разработчика Анастасии Егоровой. В этом подкасте мы поговорим про фреймворк Vue.js, который набирает популярность у Front-End разработчиков со всего мира.
Чем выше температура за окном, тем меньше желания стоять в пробках. Подготовили гайд об альтернативных видах транспорта, которыми можно передвигаться летом по городу — быстро и весело.
Купить себе транспорт можно на Мегамаркете — используйте промокод моелето. Он дает2 000 рублей скидки на первый заказ на сумму от 6 000 рублей. Полные правила здесь.
Велосипед: чтобы проехать большое расстояние и подкачаться
Велосипеды делятся на несколько типов. Для ежедневных поездок подойдет прогулочный, шоссейный или горный велосипед. BMX обычно используют для выполнения трюков: для города у него слишком маленькие колеса. А фэтбайк лучше подходит для катания по снегу, песку и другим труднопроходимым типам покрытия.
При выборе обязательно обращайте внимание на ростовку рамы: она должна соответствовать росту пользователя:
рама 15 дюймов подойдет для велосипедиста ростом от 145 до 165 см,
рама 18 дюймов соответствует росту велосипедиста 160–180 см,
рама 20 дюймов для велосипедиста ростом 175–190 см.
Сколько скоростей должно быть у велосипеда, зависит от того, по какой местности вы собираетесь передвигаться. Если ваш населенный пункт не отличается выраженным рельефом, можно остановиться на синглспиде — велосипеде без переключателя скоростей. А жителю гористой местности лучше взять модель с несколькими режимами. Большое количество скоростей не значит, что вы сможете покорять более крутые подъемы: оно в первую очередь влияет на плавность переключения.
Изящный городской велосипед с открытой рамой хорошо подойдет для новичков. Восемь скоростей помогут легко преодолевать подъемы, дисковые тормоза обеспечат безопасность на дороге, а крылья и защита цепи спасают одежду от грязи.
Эта модель хорошо подойдет для городский езды или покатушек на природе. Двадцать одна скорость обеспечивает плавное прохождение подъемов, а небольшой вес (15,45 кг) снизят нагрузку на велосипедиста. Благодаря складной конструкции велосипед легко хранить дома или перевозить в машине.
Эта доступная модель хорошо подойдет для спортсменов ростом выше среднего. Девятнадцатидюймовая рама рассчитана на велосипедистов ростом 172–180 см, а максимальная нагрузка составляет 110 кг — можно не только кататься по городу, но и поехать в поход. С перевозкой снаряжения не возникнет сложностей: велоштаны можно закрепить на багажнике, а под рамой — сумку с самым необходимым.
Самокат: чтобы не топать до остановки
Самокаты отлично подходят для передвижения по городу на небольшие дистанции. При выборе модели определитесь, что для вас важнее — скорость или маневренность. Самокат с большими колесами ездит быстрее, однако сложнее в управлении.
Если вы планируете передвигаться по неровной поверхности (например, привычный маршрут проходит через частный сектор или лесопарк), лучше выбирать модель с большими широкими колесами и амортизационной вилкой. А обычный городской самокат лучше подойдет для асфальта или плитки.
Самокат может развивать скорость до 15 км/ч. А если вы устанете и решите зайти в автобус или вызвать такси, транспорт легко можно сложить, чтобы он не доставлял неудобств при перевозке.
Обращайте внимание на тип конструкции. Самые крепкие самокаты — цельные, но их не так удобно перевозить в общественном транспорте или машине. Выбирая складную модель, убедитесь, что механизм надежно фиксируется: при случайном складывании есть риск получить травму.
Трюковой самокат не приспособлен для езды по брусчатке — на нем можно передвигаться по ровному асфальту, однако в первую очередь он предназначен для прыжков и преодоления препятствий.
Легкий — всего 5 кг — городской самокат подойдет как для взрослого, так и для подростка: высоту руля можно отрегулировать под рост райдера. Мягкие полиуретановые колеса обеспечат хорошее сцепление с поверхностью, а увеличенная дека позволит легко держать баланс даже новичкам.
Самокат Sportsbaby City Scooter можно использовать детям от 8 лет и взрослым. Он рассчитан на вес до 100 кг. Два тормоза: передний ручной и задний ножной. Они позволяют быстро останавливаться, обеспечивая высокую безопасность движения.
Трюковой самокат рассчитан на передвижение по ровной поверхности, а также преодоление препятствий. Небольшие колеса способствуют управляемости, а цельная конструкция делает транспорт устойчивым к повреждениям.
Электросамокат: чтобы не потеть от нагрузки
При выборе модели обращайте внимание на следующие моменты:
Мощность. Чем больше вес райдера и чем больше по дороге подъемов, тем мощнее должен быть двигатель. Если на пути встречается много перепадов высот, взрослому лучше взять модель с двигателем около 500 ватт. Для ровной местности достаточно будет 200–300 ватт, а для подростка подойдет электросамокат мощностью до 150 ватт.
Емкость аккумулятора. 10 А⦁ч достаточно для маршрутов в пределах 25 км, а если вы планируете проезжать больше 40 км, присмотритесь к моделям 20 А⦁ч. На расход энергии влияет рельеф и стиль вождения — при частых ускорениях и замедлениях батарея садится быстрее.
Вес устройства. Учтите, что время от времени не самокат будет везти вас, а вы — самокат. Поэтому в большинстве случаев удобнее будут облегченные модели до 12 кг.
Размер колес. Для города оптимальными считаются 8–10 дюймов. Для покатушек по пересеченной местности посмотрите в сторону моделей с большими диаметрами.
Модель для начинающих райдеров. Запас хода 20 км достаточен как для катания, так и для перемещения по городу. Самокат рассчитан в том числе на детей, поэтому максимальная скорость составляет 15 км/ч, а конструкция легкая и надежная.
Отличается лаконичным дизайном, но стильным внешним видом достоинства не ограничиваются. Рама из алюминиевого сплава делает модель легкой, а руль высотой 112 см подойдет для большинства взрослых. На одной зарядке можно проехать до 22 км.
Вариант для тех, кто любит передвигаться с максимальным комфортом: он оснащен удобным сиденьем, багажником для перевозки груза и амортизаторами, обеспечивающими плавный ход. Самокат развивает скорость до 45 км/ч, так что с учетом маневренности в городских условиях легко соперничает с автомобилем.
Моноколесо: чтобы вам вслед еще и оглядывались
Моноколесо может развивать приличную скорость (до 100 км/ч) и на одном заряде проехать существенные расстояния. Этот вид транспорта не так нагружает мышцы, как велосипед, однако развивает чувство баланса, укрепляет ноги и спину.
Определяя необходимую мощность, ориентируйтесь на собственный вес с учетом экипировки и на наличие подъемов. В среднем для райдера весом 70 кг подойдет колесо мощностью от 800 ватт.
Для маршрутов до 10 км достаточно будет малоемкого аккумулятора до 11 А⦁ч. Если ваши ежедневные поездки продолжительнее, смотрите в сторону более серьезных моделей, оснащенных батареей от 24 А⦁ч и выше.
Оптимальным диаметром моноколеса считается 12–18 дюймов. Большинство современных моделей входят в этот диапазон. Вес подбирайте с учетом того, что иногда придется носить транспорт с собой в офис или в магазины.
Модель для начинающих развивает скорость до 30 км/ч. Через Bluetooth к колесу можно подключить смартфон, чтобы отслеживать все важные показатели через приложение. В моноколесо встроен динамик, так что во время движения вы сможете слушать любимые треки.
Более продвинутый вариант в модельном ряду Kugoo: на колесе можно разогнаться до 35 км/ч и преодолевать подъемы до 20°. Педали выдерживают нагрузку до 120 кг, а батарея рассчитана на запас хода до 60 км.
Топовая модель в линейке оснащена мощным двигателем 2200 Вт и аккумулятором емкостью 21,5 А⦁ч. Это позволяет проехать до 130 км на скорость 50 км/ч. Для безопасности вечером или ночью можно включить встроенный фонарь. Учтите, что устройство довольно тяжелое — 24 кг.
Выбирайте все для летних поездок на Мегамаркете и обязательно используйте промокод моелето. Он дает 3 000 рублей скидки на первый заказ на сумму от 6 000 рублей. Полные правила здесь.
Реклама ООО «МАРКЕТПЛЕЙС» (агрегатор) (ОГРН: 1167746803180, ИНН: 9701048328), юридический адрес: 105082, г. Москва, ул. Спартаковская площадь, д. 16/15, стр. 6
Через месяц перехожу в компанию где буду работать с языками и технологиями про которые ничего не знаю и опыта ноль. Хоть это и не обязательно, но хочу к началу работы иметь хоть какие то знания. Что я сумел выяснить это то, что 60% это TypeScript и 90% backend, используют DynamoDB. Может кто то сможет подсказать в каком порядке разбираться (хоть и поверхностно). Как я понимаю, что раз TypeScript в backend то начинать надо с NodeJS (или я не прав?), если DynamoDB то надо еще разобраться с AWS. В любом случае буду рад любым советам. Никогда до этого в вебе не работал (веб ли это вообще?)