DevNotes Live
6 subscribers
84.3K photos
12K videos
195 files
35.4K links
Автоматический агрегатор IT ресурсов в Telegram (@devnotes_robot)
Информация: https://t.me/devnotes_live/121
Download Telegram
📑 11 материалов для взлета карьеры дизайнера

Артур Кузьмин, lead product designer из JetBrains (ранее Avito, ВТБ, Home Credit), выложил в открытый доступ уникальные материалы из своего курса про карьеру и скиллы

Такого в инете не найдешь

Для карьеры:
1. Бот для оценки грейда
2. Лонгрид карьера в продукте с 0 до 300к
3. Что нужно от вас разным типам работодателей
4. Как оформлять портфолио
5. Записи разборов резюме, портфолио и кейсов
6. 110 самых популярных вопросов на техническом собеседовании
7. 3 часа ответов на 110 популярных вопросов
8. Топ-15 ошибок дизайнера в портфолио и резюме

Для дизайна:
9. Оптическая и метрическая линейки самых популярных размеров отступов и элементов
10. Полная таблица сочетаний размеров текста H1 до XS
11. Схема: как устроен дизайн-процесс в продукте

Забирай в шапке канала: https://t.me/+yVBl34Mugkg2OWVi

Забирай сейчас — через 12 часов пост исчезнет 🙄
Forwarded from UX Live 🔥
Соберу пожалуй коллекцию того, как сайты переоделись для нового года.

1. Яндекс красивше всех добавил елочку и предложил дополнять ее сгенерированными игрушками
2. Вконтакт развесил гирлянды на шапке
3. Майл просто утопил логотип в снегу
4. Озон что-то невнятное в логотипе добавил, но сам сайт весь пестрит новогодними акциями
5. Яндекс Маркет накидал игрушек и сделал оформленный раздел
6. Сбербанк оформил иконки в меню под новый год
7. Вайлдберис красиво оформил шапочку

Кто еще приоделся?
Forwarded from UX Live 🔥
Forwarded from UX Live 🔥
Forwarded from UX Live 🔥
Forwarded from UX Live 🔥
Forwarded from UX Live 🔥
Forwarded from UX Live 🔥
Forwarded from Оди
This media is not supported in your browser
VIEW IN TELEGRAM
🎁 Подарочный сертификат «Журналуса»

«Журналус» — медиа о дизайне, которое фильтрует инфошум, выбирая самое ценное, важное и полезное. Он помогает развиваться в профессии и быть в курсе трендов, но при этом не тратить часы на скроллинг лент. Там можно собирать коллекцию крутых референсов, важных инструментов и годных образовательных материалов.

🎄В честь нового года предлагаем порадовать любимых дизайнеров, фотографов, арт-директоров и менеджеров подпиской на «Журналус»

zhurnalus.ru

Реклама ИП Олейниченко Кирилл Александрович, ИНН 781697320774, erid: 2SDnjdtqUgp
Forwarded from Адовый UX
This media is not supported in your browser
VIEW IN TELEGRAM
🎁 Подарочный сертификат «Журналуса»

«Журналус» — медиа о дизайне, которое фильтрует инфошум, выбирая самое ценное, важное и полезное. Он помогает развиваться в профессии и быть в курсе трендов, но при этом не тратить часы на скроллинг лент. Там можно собирать коллекцию крутых референсов, важных инструментов и годных образовательных материалов.

🎄В честь нового года предлагаем порадовать любимых дизайнеров, фотографов, арт-директоров и менеджеров подпиской на «Журналус»

zhurnalus.ru

Реклама ИП Олейниченко Кирилл Александрович, ИНН 781697320774, erid: 2SDnjdtqUgp
Что нового в TypeScript 4.9 - оператор satisfies

Алоха товарищи фронты! Я знаю что TS 4.9 это не самая новая версия так как недавно анонсировали TS 5.0. Но я думаю что далеко не все знают о том что нового было в версии 4.9 и уверен что многим будет это полезно.

И так что делает новый оператор:

Позволяет нам проверить соответствие выражения некоторому типу, не меняя сам тип. Это помогает при работе с объектами со смешанными типами данных.

Рассмотрим на примере:

type FormFields = "name" | "surname" | "age";
const data: Record<FormFields, number | string> = {
name: "name",
surname: "surname",
age: 21,
}

const newAge = data.age * 2;
const nameUpperCase = data.name.toUpperCase();

Объект data имеет как числовые, так и строковые значения, поэтому при работе с этим объектом мы получаем следующие ошибки:

The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.
Property 'toUpperCase' does not exist on type 'string | number'.
Property 'toUpperCase' does not exist on type 'number'.

Вот тут-то нам и поможет оператор satisfies.

type FormFields = "name" | "surname" | "age";

const data = {
name: "name",
surname: "surname",
age: 21,
} satisfies Record<FormFields, string | number>

const newAge = data.age * 2;
const nameUpperCase = data.name.toUpperCase();

Также оператор satisfies можно использовать для отлова некоторых ошибок. Например, для проверки объектов на наличие ключей, соответствующих заданному типу:

type FormFields = "name" | "surname" | "age";
const data = {
name: "name",
surname: "surname",
age: 21,
passport: {}
} satisfies Record<FormFields, string | number>

Надеюсь что было полезно. В общем удачи в экспериментах!
Forwarded from Denis Sexy IT 🤖
This media is not supported in your browser
VIEW IN TELEGRAM
Чел подключил лицо к джойстику и играет в эмоции на максималках, идеально для интровертов или на кинк на вечеринках ☕️

Тут инструкция как собрать себе такое же
Please open Telegram to view this post
VIEW IN TELEGRAM
Sound of Fabric -— модный бренд, который воспевает красоту ткани. Дизайнеры Sofia Noceti, Crista Bernasconi решили поиграть с начертанием названия и начали с ручной гравировки небольших кусочков ткани.

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


Дизайн: UFFICIO