Senior Frontend - javascript, html, css
25.7K subscribers
1.28K photos
2.25K videos
705 links
Senior Front - канал для frontend программистов, практические задачки, проверки знаний, интересные статьи

Админ, сотрудничество, реклама:@seniorFrontPromo, @maria_seniorfront
Канал в реестре РКН https://rknn.link/bsU
Download Telegram
🚀Онлайн-Хакатон Practice & Scale AI 

Тебя ждут увлекательные мастер-классы, командная работа над актуальными кейсами, возможность представить свои результаты на захватывающей питч-сессии и доказать, что ты лучший из лучших! 🔝 

🧑‍💻Уникальные кейсы:
- Рерайтинг текста с помощью ИИ для прохождения фильтрации распознающих систем;
- Анализ звонка на соответствие скрипту для выявления отклонений;
- Создание видео на основе фото и текстового сценария.

🏆Призовой фонд 500 000 рублей!

Приступай к разработке решения уже сейчас, чтобы 23 июня представить лучший продукт - мы ждем: крутые решения в программном коде проекта, потенциал для рыночной масштабируемости и внедрения в бизнес.
 
📅Когда: 21 - 23 июня 2024 года
🌐Формат: Онлайн
🔥Дедлайн регистрации: 19 июня 2024 года, 23:59 (мск)

Подробности и регистрация: https://tglink.io/c89b4d2442e3
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
В конце концов всё равно берёшь

👉 @seniorFront
👍11👎4
This media is not supported in your browser
VIEW IN TELEGRAM
Image Zoom

Анимировано библиотекой gsap при помощи плагина ScrollTrigger.

👉 @seniorFront
🔥173👍2
This media is not supported in your browser
VIEW IN TELEGRAM
3D Image Carousel

Создано на чистом CSS. Параметры анимации задаются через CSS переменные.

👉 @seniorFront
🔥19👍31
Какое ключевое слово сбрасывает все указанные значения свойства для конкретного блока до значений по умолчанию?
Anonymous Quiz
45%
initial
21%
inherit
27%
unset
7%
revert
3
Media is too big
VIEW IN TELEGRAM
Magnetic Mousemove Effect

В этом видео создаётся оригинальный эффект при наведении на карточку при помощи JS.

👉 @seniorFront
🔥71
This media is not supported in your browser
VIEW IN TELEGRAM
Glowy Text Button from Departures

В CSS созданы переменные, значения которых изменяются в JS при перемещении курсора.

👉 @seniorFront
🔥113👍1🤔1
Lazy Repeater

Создайте функцию makeLooper(). В эту функцию передайте строку. Вызов этой функции вернет другую функцию, каждый вызов которой должен возвращать символы переданной строки по очереди.

Пример:
var abc = makeLooper('abc');
abc(); // should return 'a' on this first call
abc(); // should return 'b' on this second call
abc(); // should return 'c' on this third call
abc(); // should return 'a' again on this fourth call


👉 @seniorFront
👍72🤔1
Сбросить балласт. Аккуратное отключение лишних фич

Разработчики в целом склонны что-то добавлять, а не убирать, даже в ущерб результату. Исследования показали, что люди плохо справляются с поиском простых решений, которые противоречат шаблонному интуитивному мышлению (что-то добавить).

Что тут говорить, если самая простая программа сегодня весит под 100 МБ, как целая операционная система со всем софтом несколько десятилетий назад. Кто-то говорит, что причиной этого является закон Мура и рост производительности процессоров в геометрической прогрессии. В связи с этим даже интересно, каким был бы софт при замедлении CPU в двадцать раз.

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

👉 @seniorFront
1
decodeURIComponent и decodeURI в JS

decodeURIComponent применяется для обработки отдельных компонентов URI и эффективно декодирует специальные символы, такие как &, =, +, ?. Этот метод подходит для получения точных значений параметров из строки запроса.

decodeURI предназначен для декодирования полных URI. Он сохраняет специальные символы, которые существенны для структуры URI, например & и = в запросах, тем самым поддерживая целостность URI.

Примеры:
// decodeURI сохраняет структуру запроса
console.log(decodeURI("http://example.com/?name=John%20Doe&age=30")); // "http://example.com/?name=John Doe&age=30"

// decodeURIComponent усиленно декодирует, что может изменить структуру
console.log(decodeURIComponent("name=John%20Doe%26age%3D30")); // "name=John Doe&age=30"


Используйте decodeURIComponent, чтобы извлекать точные значения из составных частей URI, и decodeURI, когда необходимо сохранить работоспособность всего URI.

👉 @seniorFront
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
Neumorphic Rocker Switch

Оригинальный переключатель, свёрстанный из кнопки на HTML и SCSS. Логика переключения реализована в JS.

👉 @seniorFront
👍14🔥51🤔1
Проработал в IT больше 10 лет. Вот 5 вещей, которые я бы хотел знать, если бы начинал сейчас:

1. Консистентность – залог успеха
Когда-то я был не уверен в том, что делаю. Ни в качестве, ни в выборе – от направления до стека. Я переключался между технологиями, думал о том, чтобы бросить то, что делаю, и снова поменять профессию. От этого не было уверенности в собственных навыках, и руки опускались очень часто и очень низко. Определитесь с путем и идите по нему – это даст вам больше плодов, чем широкий спектр посредственно развитых навыков, особенно в начале пути.

2. У вас будет не получаться, вы будете не понимать – и это нормально (и это пройдет со временем, но не совсем)
Со временем станет легче, но это не пройдет. Я прогуливал пары в универе, поэтому у меня остались дыры в фундаментальных знаниях о компьютерной науке, которые я не залатал с опытом. Но это не самое важное. Самое важное, что и в своей работе вы будете иметь пропуски в знаниях. Может быть, не в конкретной работе в конкретной роли на конкретном проекте – это лимитированные знания, проект можно изучить вдоль и поперек, особенно если работать на нем достаточно долго. Но это нормально не знать какие-то вещи о вашей профессии в целом.

3. Не держитесь за плохое место
Бывает такое – плохое рабочее место. Распознать плохое место просто – в конце дня вам хочется завернуться в одеялко и забиться в угол, и самое главное – на работе не с кем об этом поговорить, чтобы улучшить ситуацию. У плохого места бывают разные причины. Иногда это коллектив, иногда начальство, иногда дело может быть в вас – просто не подходите на это место, ошибка найма, и это нормально. Не нормально – держаться за это место.

4. Часто менять работу может быть полезно, но не всем
Я все еще вижу рекомендации для начинающих программистов: меняйте работу почаще. Так, мол, больше опыта наберетесь. Год там, полгода сям, и вот ты через три-четыре года опытный как сеньор помидор. Это может сработать. Но это не для всех.
Есть разные типы людей, по тому, как они умеют концентрироваться и удерживать внимание. Если у вас нет проблем с фокусом, вы легко можете проработать несколько лет на одном месте и изучить все процессы вдоль и поперек – это и цену в текущей компании повысит, и даст возможность в будущем рассказать о том, что узнали, на собеседованиях. Люди недооценивают понимание работы вглубь, а ведь много позиций и компаний, где это ценят.

5. Не упускайте возможности, даже если они кажутся мелкими или незначительными
Карьера в автоматизации тестирования изменила мою жизнь в лучшую сторону. Эта возможность всегда была у меня перед носом. Я не раз задумывался о том, чтобы попробовать, и даже начинал что-то учить, но бросал – мне казалось, что тестирование это несерьезно и вообще это какой-то позор переключаться на тестирование после нескольких лет опыта в веб-программировании (хаха). Оказалось, что я способен сделать серьезную карьеру в этом поле и даже без относительно серьезных усилий. Больших усилий для меня стоило переключиться с работы в баре на работу веб-разработчика.

👉 @seniorFront
9👍6👎2🔥1
Перформанс ревью

Перформанс ревью (performance review) — система оценки компаниями профессиональных качеств сотрудников. Это – популярный и эффективный инструмент, который используют крупные мировые и отечественные бренды, например, Google, Яндекс и Авито.

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

👉 @seniorFront
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Team Profiles rotation with Theme Toggle

Стилизовано при помощи Tailwind. Каждая фотография - это input type="radio".

👉 @seniorFront
👍12
Media is too big
VIEW IN TELEGRAM
CSS Animation Effects Tutorial

В этом видео создаётся анимированная граница на HTML и CSS.

👉 @seniorFront
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Проводит нагрузочное тестирование

👉 @seniorFront
👍8🤔3
This media is not supported in your browser
VIEW IN TELEGRAM
Leaping Percentage Loader

Это анимированная svg картинка. Логика смены чисел реализована в JS.

👉 @seniorFront
👍92👎1🔥1🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
No script accordion animation

Реализовано на HTML и SCSS. При наведении задействуются CSS трансформации и изменяется значение grid-template-rows.

👉 @seniorFront
👍82
Какой из методов массива в JavaScript можно использовать для создания итерируемого объекта из значений элементов массива?
Anonymous Quiz
32%
map()
24%
forEach()
40%
values()
5%
filter()
3👍1
Media is too big
VIEW IN TELEGRAM
CSS Pulse Animation Effects

В этом видео создается анимация пульсации на CSS.

👉 @seniorFront
👍5
Media is too big
VIEW IN TELEGRAM
Blackhole

Создано и анимировано на canvas при помощи WebGL.

👉 @seniorFront
👍5