Всё по фронтенду, бэкенду и девопсу в одном месте Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/64ai
SOLID... На котиках
Каждый программист хоть раз слышал о принципах SOLID. На собеседованиях и экзаменах многие пытались вспомнить, о чем же был тот самый принцип Лисков. Однако вряд ли цель преподавателей и интервьюеров — заставить нас заучивать строчки из учебников.
SOLID действительно помогает писать качественный код, когда во всем разберешься! Если вы этого еще не сделали, добро пожаловать в статью. Здесь вы ещё раз взглянете на то, как устроены всем известные принципы на примерах с котиками.
#solid
Вы когда-нибудь задумывались, как уязвимость в коде может стоить миллиарды?
Carbanak — это не просто группа хакеров, это команда людей, которые превратили банковские системы в свои личные банкоматы.
Они знали всё про уязвимости, про ошибки в защищенности, о которых даже не догадывались те, кто эти системы строил.
Всего за пару лет хакеры:
— атаковали более 100 банков по всему миру;
— украли $1 млрд;
— обратили на себя внимание Европола.
В подкасте «АЙТИ КРАЙМ» мы изучили, как Carbanak обходили защиту банковских систем, используя уязвимости инфраструктуры.
Скоро мы поделимся этим расследованием. Будьте готовы — здесь нет простых историй про «хакеров из подвала». Только настоящая инженерная работа, профессионализм и поразительное понимание сложных систем.
Практика JavaScript: делаем целый сайт за 2 часа с нуля
Ловите полезный двухчасовой курс по созданию сайта с JavaScript, где вы:
— напишите с нуля приложение, которое сможете добавить в портфолио;
— научитесь настраивать рабочее окружение;
— поймёте зачем на самом деле нужны классы в JavaScript);
— разберётесь как принципы SOLID помогают писать расширяемый и поддерживаемый код;
— поработаете над оптимизацией приложения;
— задеплоите приложение на хостинг и сделаете многое другое.
Видео взято с YouTube, поэтому если предпочитаете смотреть там, то вот ссылка: youtu.be/0ViiJ8qTCFM
#видео #курс #javascript
Начать проходить новый курс или…
посмотреть, как течёт вода, горит огонь или как индусы на YouTube строят дом из глины за 8 часов?
Да, возвращаться к учёбе, когда вы взрослый, совсем не просто… Но покажите вашу решимость учиться и закройте все уведомления, которые появляются на экране каждую секунду: https://tprg.ru/BJMA
Реклама
Playwright: Лучшая альтернатива Selenium
Selenium — это один из самых известных и широко используемых фреймворков для автоматизации тестирования веб-приложений на Python. Если вы работали с автоматизацией браузера, то наверняка знакомы с ним.
Playwright — это более современный инструмент, разработанный командой, которая ранее работала над Puppeteer в Google. Он мультиязычный и работает на Python, Node.js и Java.
В этой статье разобрали почему сегодня это лучшая (по мнению автора) альтернатива Selenium.
#playwright #selenium
GitHub назвал Python самым популярным языком программирования
В прошлом году это был JavaScript, но благодаря буму ИИ и некоторым другим факторам, в 2024-м в лидерах Python.
Подробнее про статистику написали в нашем свежем материале. Там же ссылка на исследование GitHub.
Old but gold: стек вызовов JavaScript: объяснение с помощью иллюстраций
Стек представляет собой структуру данных, организованных по принципу LIFO, т.е. в порядке обратной очередности (last-in — first-out, последним вошел — первым вышел).
Автор статьи объясняет, как это работает в JavaScript:
https://nuancesprog.ru/p/17792/
#javascript
facad — расширения файлов в командной строке наглядно
Из интересного — утилита поддерживает сортировку по расширению (как «Проводнике») и умеет в Unicode.
https://github.com/yellow-footed-honeyguide/facad
Eartho — open source альтернатива Google Sign-In
По словам разработчика, в своей утилите он сделал упор на приватность. И ему веришь
Так, благодаря Eartho пользователи не передают данные корпорациям, сохраняя при этом удобство быстрого входа через Google, Apple и т.д
Достигается это за счет того, что Eartho выступает в качестве промежуточного слоя между пользователем и IT-корпорациями
Подробнее про инструмент можно почитать в нашем материале по ссылке
Как создать приложение Todo на React
Полезный туториал для фронтенд-разработчиков, в котором вы с нуля создадите приложение для ведения дел. Вы научитесь использовать хуки, а также продвинутые функции JavaScript.
Стартуем здесь.
#фронтенд #javascript #react
Дилемма СТО: продолжать использовать проверенные технологии или рискнуть и внедрить что-то новое
Принцип «если работает, не трогай» давно знаком, но полное его соблюдение может остановить развитие и инновации.
Главное — найти баланс между стабильностью и стремлением к прогрессу.
Мы, вместе с МТС, изучили, как принять решение между использованием привычных технологий и переходом на новые инструменты.
Прочитать об этом можно в свежем материале на нашем сайте.
OSSU — бесплатный онлайн-университет по Computer Science
Обучение состоит из четырех блоков — введение, основы, продвинутый CS и итоговый проект, все на английском.
Для новоприбывших есть Discord-сервер на 3К+ активных участников.
171К звезд на GitHub как бы намекают, что здесь не шутки шутят, а делом занимаются.
Ссылка на университет: https://github.com/ossu/computer-science
Old but gold: ускорение в 30 раз — requestIdleCallback
Автор статьи столкнулся с проблемой медленной обработки фильтров в своём проекте. Дело в том, что происходил расчёт (распределение по типам и раскидывания данных по компонентам для каждого типа) и отрисовка даже в свернутых категориях фильтров. Для решения этого вопроса он решил воспользоваться данным методом.
Эта статья может быть полезна для понимания использования и влияния requestIdleCallback:
https://habr.com/ru/articles/759150/
#оптимизация
Как видеть состояние тысяч баз данных в одном окне и собирать с них метрики?
Узнаете на бесплатном вебинаре от СберТеха «Властелин СУБД, или один за всех. Обновления для сопровождения БД в Platform V Kintsugi 1.5.0».
Platform V Kintsugi — это графическая консоль для управления и диагностики PostgreSQL-like СУБД. Недавно продукт получил обновления, с которыми сопровождать базы данных стало ещё удобнее.
Когда: 24 октября в 11:00.
Что покажут на вебинаре:
– оперативный центр — единое окно мониторинга всех подключенных активов.
– отчеты pg_profile в интерфейсе продукта.
– обновления в ресурсно-логической модели продукта.
Будет полезно: администраторам СУБД, разработчикам БД, руководителям. Ребята расскажут с техническими деталями, но популярным языком!
Регистрация уже открыта по ссылке.
Это #партнёрский пост
Кто есть кто: Обратные вызовы, промисы и асинхронные функции
В JavaScript есть темы, которые могут сложно поддаваться пониманию. В этой статье речь как раз пойдёт о таких.
Что это вообще такое? В каких случаях используются? Как работают? Каков их внутренний механизм? В этой статье вы раз и навсегда разберёте суть этих процессов.
#javascript
До шоу финала True Tech Champ осталось всего несколько дней!
Это масштабное событие не только с привычными докладами, но и крутыми айтивностями. Вы сможете проверить свои навыки, смекалку, а еще выносливость.
Участников ждут:
— Шоу с гонкой роботов в интерактивных лабиринтах
— 20+ активностей для кодеров и фанатов технологий
— Выступления спикеров, воркшопы, плохие прогерские шутки
Вам точно понравится, если вы:
— Занимаетесь разработкой
— Интересуетесь технологиями
— Планируете построить карьеру в ИТ
Когда: 8 ноября
Где: МТС Live Холл
Как: Офлайн + Онлайн
До конца регистрации несколько дней — успевайте присоединиться: https://truetechchamp.ru/conf
Это #партнёрский пост
ESLint теперь поддерживает линтинг JSON и Markdown
Мы немного запозднились с новостью, тем не менее это важное обновление. ESLint стал более полезным благодаря поддержки JSON и Markdown. Это первый шаг на пути превращения проекта в универсальный линтер, как заявляют разработчики.
Подробнее об обновлении можно почитать в блоге проекта: https://eslint.org/blog/2024/10/eslint-json-markdown-support/
#eslint #новости
Подборка полезных материалов для тех, кто хочет лучше разбираться в веб-разработке
Здесь мы собрали для вас статьи, которые на наш взгляд помогут лучше изучить популярные технологии:
— Как использовать Redis для кэширования и очередей в веб-приложениях. Для ускорения веб-приложений есть множество инструментов и паттернов. Один из них — key-value система Redis. Рассказываем, как ее установить и настроить для повышения производительности и надежности.
— Как выбрать IDE, если вы начинающий веб-разработчик. Начинающие веб-разработчики часто сталкиваются с трудностями при выборе интегрированной среды разработки (IDE). Рассказываем, как не прогадать и не усложнить себе жизнь.
— Обзор библиотек для работы с графами в Python: NetworkX и Graph-tool. Графы применяются во множестве отраслей — от программирования до социологии. Рассматриваем две библиотеки Python для работы с графами — NetworkX и Graph-tool, а также их преимущества и недостатки.
— Margin и padding в CSS: как сразу сделать грамотно. Разбираемся в ключевых отличиях между этими важнейшими свойствами, а также знакомимся с трюками, чтобы UI / UX вашего сайта стал еще круче и грамотнее.
— 7 легендарных уравнений на JavaScript. Математика и компьютерные науки идут рука об руку. Подобрали 7 математических формул разного уровня сложности для проверки — сможете ли вы их реализовать? И на всякий случай снабдили статью нашими решениями.
— Как начать карьеру веб-разработчика. Максим Арокен делится советами с чего начать изучение веб-разработки, как не забросить в самом начале и какую дополнительную технологию изучить, чтобы легче находить заказы на фрилансе.
Сохраняйте подборку в избранном, чтобы не потерять и делитесь с друзьями-разрабами.
#подборка #redis #фронтенд #javascript #python #css
Пока одни хейтят Bitrix, другие вовсю хантят разрабов на стек
Например, в Intensa прекрасно понимают, что рынок e-com всё ещё заточен под PHP и Bitrix, поэтому ищут специалиста, который в этом разбирается и готов присоединиться к ним в команду.
Чем вы будете заниматься:
— разрабатывать новый и поддерживать существующий функционал сайтов;
— проводить интеграции проектов с ERP и внешними сервисами (поставщиками, маркетплейсами, складскими системами);
— оптимизировать производительность сайтов на серверной и клиентской стороне;
— анализировать и оценивать проекты, формировать требования, вести документацию.
Если у вас хороший опыт в разработке интернет-магазинов и высокие знания Bitrix API, то откликайтесь на вакансию.
У ребят официальное трудоустройство, удаленка и возможность роста в грейде. А если вы ещё и в Туле, то сможете приходить в классный офис в кластере «Октава».
Отправить резюме
Это #партнёрский пост
Войти в IT с нуля: как попасть на «СупремITизм»
7 ноября (четверг) в «Школе 21» пройдет крутое мероприятие с не менее крутым названием «СупремITизм». На нем эксперты расскажут об обучении, рабочих IT-навыках и силе коммьюнити. Присоединиться можно будет онлайн в 18:00 по московскому времени!
«Школа 21» — это проект Сбера, где можно бесплатно обучиться программированию и другим IT-навыкам с нуля. Другими словами, стать настоящим цифровым инженером.
Но не ведитесь на слово «школа» — это не скучные уроки и строгие учителя. Всё наоборот:
— Четыре этапа обучения, основанных на практике и саморазвитии.
— Методика «равный равному» (или peer-to-peer). Суть такая: если что-то не понимаешь, повернись к соседу справа или слева — он постарается помочь, а ты — поможешь ему в ответ.
— «Школа 21» работает 24/7. Каждый день, 365 дней в году. Единственное ограничение — спать на уроках здесь нельзя.
— 100% выпускников находят работу во время или после обучения в школе.
— Школа есть в 13 регионах России (даже в Анадыре!) — совершенно необязательно ехать в Москву.
А еще в кампусе есть игровая комната с аркадным автоматом, коворкинги, роболаба, где собирают роботов и печатают на 3D-принтере, и много заряженных на учебу ребят. И даже факультеты, как в Хогвартсе. Но главное — настоящая прокачка софт- и хард-скиллов.
Чтобы узнать о школе еще больше, приходите онлайн на продуктовую презентацию «СупремITизм» 7 ноября, а потом — на отбор.
Ночная шпаргалка по консольным командам Git 👍
В Git полно команд, и если ты часто их забываешь, эта шпаргалка специально для тебя. В репозитории можно быстро почитать об основных командах и концепциях, а затем одним вальяжным нажатием на Ctrl+C скопировать их.
Приятный бонус — всё написано на русском. Так что сохраняем!
#git #шпаргалка
Покорите стихии фронтенда и бэкенда на онлайн-курсе «Фулстек-разработчик» от Яндекс Практикум
Сейчас у ребят черная пятница: до 30 ноября вы можете получить скидку 20%, если пройдете первую учебную тему курса.
На курсе вы научитесь разбираться как в логике работы сайтов и веб-приложений, так и в визуальной части. Большая часть курса — практика. Вас ждут 700+ задач в тренажёре, лайвкодинг и воркшопы с опытными разработчиками.
Кроме диплома о профессиональной переподготовке и 16 проектов в портфолио вы получите бесплатный тутор по YandexGPT. Посмотрите подробности и подключайтесь, старт обучения намечен на 7 ноября.
Это #партнёрский пост
Научитесь работать с сайтами на онлайн-курсе «Фронтенд-разработчик» от Яндекс Практикума
Вместе с интерактивным учебником вы научитесь создавать и анимировать фасад веб-страницы: заголовки, меню карточки. Практику вы будете нарабатывать на 500+ задачах в тренажере, лайвкодинге и воркшопах.
Кроме диплома о профессиональной переподготовке и 11 проектов в портфолио вам подарят бесплатный тутор по YandexGPT. А после обучения помогут с поиском работы. Смотрите подробности и забирайте скидку 20% на обучение до 30 ноября.
Это #партнёрский пост
Подборка актуальных вакансий
— Старший менеджер производства SIM-карт
Где: удалённо
Опыт: от 3 лет
— Руководитель проектов
Где: Москва
Опыт: от 3 лет
— Стажер ML-разработчик
Где: Москва, Санкт-Петербург, Минск
Опыт: от 1 года
— Бэкенд-разработчик
Где: Москва, Санкт-Петербург, Екатеринбург, Новосибирск, Нижний Новгород, Минск
Опыт: от 1 года
— SMM-специалист в Tproger
Где: удалённо
Опыт: от 6 месяцев
#вакансии
Ubuntu — 20 лет!
Накануне один из самых популярных Linux-дистрибутивов отпраздновал круглую дату.
Как выглядела самая первая версия Ubuntu, где ее можно скачать и когда именно состоялся ее релиз — ответ на эти вопросы можно найти на нашем сайте:
https://tproger.ru/news/--samyj-populyarnyj-linux-distributiv-ubuntu-otmetil-20-letie
Working with Backdrop Filters
Очень симпатичный и легкий в реализации набор веб-фильтров.
Самое приятное, что от разработчика не требуется JS-кода. Достаточно лишь HTML и CSS.
Исходный код проекта: https://codepen.io/MrRoberts/pen/eYMPqbe
Какие шрифты лучше использовать в IDE?
На этот вопрос решил ответить Бен Авад — автор некогда нашумевшего проекта VSCode Stories.
В своем свежем ролике он перебирает несколько популярных шрифтов для IDE, давая им оцени по 10-бальной шкале.
Спойлерить не будем — лучший вариант можно найти в видео по ссылке.
Разница между .call и .apply
Методы .call()
и .apply()
используются для вызова функции с заданным значением this
, а также для передачи аргументов в функцию. Основная разница между ними заключается в способе передачи аргументов.
Метод .call()
принимает список аргументов, переданных через запятую. В то же время метод .apply()
принимает массив аргументов.
В обоих случаях мы можем вызвать функцию greet()
, передавая null
в качестве значения this
. Однако стоит иметь в виду, что использование null
в качестве значения this
может привести к привязке this
к глобальному объекту (например, window
в браузере), что может вызвать непредвиденное поведение. В первом случае аргументы передаются через запятую, а во втором — в виде массива.