Как стать автором
Поиск
Написать публикацию
Обновить
330.6

JavaScript *

Прототипно-ориентированный язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Бот за 15 минут на генераторах

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров2.6K

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

Что делать? Логичное решение — максимально упростить бота и написать его на стороне фронтенда с отправкой результата на бэкенд и получением ответа одним запросом. Думаю, многие баловались или могут представить, что это несложно, но нужно писать множество конструкций и условий.

Я же предлагаю в статье посмотреть, как написать бота с помощью простого советского JavaScript‑генератора.

Читать далее

Разбираем стандарты нейминга на примерах

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.7K

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

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

В этой статье я поделюсь примерами таких случаев, разделив их на категории для удобства и наглядности. Надеюсь, этот материал будет полезен!

Читать далее

Вышел React v19

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров21K

React v19 теперь доступен на npm!

В нашем руководстве по обновлению React 19 мы поделились пошаговыми инструкциями по обновлению вашего приложения до React 19. В этом посте мы расскажем о новых возможностях React 19 и о том, как их можно использовать.

Читать далее

Народный браузер — каким он мог бы быть?

Время на прочтение3 мин
Количество просмотров3K

image


Добрый день! Меня зовут Тимур и я программист.


В прошлой статье я сделал анонс сборки Хромиума — Ultimatum, и несмотря на то что обсуждения на хабре слегка потеряли градус (по сравнению с обсуждениями 5-10 летней давности) — пара неплохих идей все таки всплыла. Собственно этой статьей я рассчитываю поднять интерес к теме и попытаться понять на какие фичи у людей есть реальный запрос.


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

Читать дальше →

Автоматически обновляем дату завтрашнего дня в Тильде. Пошаговая инструкция на чистом JS

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров1.2K

Автообновление завтрашнего дня в Тильде. Как добавить +1 день внутри текста в Tilda. Пошаговая инструкция.

Если вы сделали сайт на Tilda и вам требуется добавить дату завтрашнего дня, то эта статья для вас. Данный метод позволяет добавить дату куда угодно в любое место на сайте и с наступлением нового дня будет автоматически добавлять завтрашний день. Код сделан на чистом JavaScript что делает его универсальным и не требует добавления сторонних библиотек.

Читать далее

HTTP-запросы: структура, методы, строка статуса и коды состояния

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров16K

HTTP-запросы: структура, методы, строка статуса и коды состояния

Цель: написать небольшую статью, максимально понятным языком,
которая дает представление о протоколе http и объясняет структуру http запросов и ответов сервера.

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

Заголовок: HTTP-запроса: Структура, методы, статусная строка и коды состояния.

Читать далее

Ultimatum — еще один форк хромиума, с претензией…

Время на прочтение10 мин
Количество просмотров11K

image


Добрый день! Меня зовут Тимур и я программист.


Сегодня я хочу сделать настоящий анонс своей сборки chromium — Ultimatum. Он умеет уже достаточно много что бы гордо носить свое собственное имя.


В прошлой своей статье я рассказал о том как пробросил в js прямой доступ до http кеша и объяснил для чего я это делаю. Статья завершилась со словами что я еще вернусь со своим антидетект браузером. Я вернулся и это немного больше чем антидетект браузер.


Если коротко — Ultimatum уже помножил на ноль такие техники трекинга как hsts-pinning, favicons cache и вообще использование многих других кешей в трекинге. А также! Теперь можно поставить расширение с любого сайта, не только со сторов гугля, оперы или микрософта (с них кстати тоже можно — со всех!). А еще! Можно перехватывать сетевые запросы и подменять их полностью! Ну и так далее и тому подобное.


А теперь более подробно и более спокойно.

Читать дальше →

Базовое программирование, или Почему джуны не могут пройти к нам собеседование

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров64K

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

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

Читать далее

Голосовая аутентификация через GPT

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2.6K

Около трёх месяцев назад я задумался о том, что в ближайшем будущем взаимодействие человека с техносферой (программно-аппаратно-сетевой инфраструктурой) будет происходить скорее через мессенджеры, такие как Telegram, чем через привычный браузер. Частое использование чатов на смартфоне быстро подтолкнуло меня к попытке снова попробовать голосовой ввод вместо привычных тапов по виртуальной клавиатуре или набора слов жестами. К моему приятному удивлению, распознавание голоса сейчас достигло очень высокого уровня как на Android, так и на iPhone. Причём настолько высокого, что STT (speech-to-text) стал для меня основным способом ввода текста в чатах, включая браузер.

Поскольку искусственный интеллект в целом, и технологии OpenAI в частности, уже практически стали повседневной нормой (по крайней мере, для меня), я, естественно, начал использовать голосовое общение и в GPT-чатах. А узнав о действиях (actions) в настраиваемых GPT-чатах, я сразу загорелся идеей соединить GPT-чат с каким-нибудь внешним приложением. Однако на этом этапе встал вопрос: как аутентифицировать пользователей чата во внешнем приложении? Несмотря на то что OpenAI предлагает использовать OAuth 2.0 для интеграции, в этой статье я рассмотрю альтернативный вариант — парольную аутентификацию, которая, на мой взгляд, лучше подходит для голосового взаимодействия.

Читать далее

JavaScript-фреймворки и библиотеки, на которые стоит обратить внимание в 2025 году

Время на прочтение6 мин
Количество просмотров16K

Привет! Это Саша Калач, разработчик в МТС Диджитал. Сегодня поделюсь подборкой фреймворков и библиотек, которые могут быть полезны JavaScript-разработчику. О самых известных, вроде React, Vue.js, Next.js, говорить не буду, о них и так все знают. Вместо этого предлагаю посмотреть менее популярные инструменты. Если вы пользуетесь другими фреймворками и библиотеками, которые не вошли в подборку — пишите о них в комментариях. Поехали!

Читать далее

Как удалить неиспользуемые зависимости из проекта?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров3K

В процессе разработки проекта со временем могут накапливаться неиспользуемые зависимости. Они увеличивают размер проекта и могут создавать потенциальные уязвимости. Рассмотрим основные методы очистки проекта от таких зависимостей.

Читать далее

Как сделать анимацию разными способами: CSS, WebP, Canvas, Lottie, Spine и секвенции

Уровень сложностиСредний
Время на прочтение25 мин
Количество просмотров7.2K

Привет! Меня зовут Даша, я фронтенд-разработчик отдела спецпроектов в KTS.

В нашем отделе мы часто занимаемся разработкой ярких и креативных проектов, которые содержат в себе анимации. Сегодня хочу поделиться нашим опытом, рассказать про несколько способов создания анимаций и показать, в каких случаях они подходят лучше всего.

Для каждой из перечисленных технологий я буду приводить пример использования анимации в реальном проекте.

Читать далее

Как я написал свою первую обучающую игру на JavaScript с помощью Mistral AI и Яндекс Шедеврума

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров7.9K

Я преподаватель математики и информатики. В один прекрасный день осознал простую и важную вещь: дети (и взрослые) любят игры, а математику не любят. И с этим ничего нельзя сделать.

Начал размышлять, как бы геймифицировать учебный процесс. Увлекаюсь HTML, CSS, JavaScript, поэтому задумал написать игру, в которой сюжет продвигался бы за счёт решения задач. Но самое интересное то, что больше половины работы за меня сделал ИИ.

В статье рассказываю о том, как это было.

Читать далее

Ближайшие события

Выкинь свой RoadMap: что на самом деле нужно знать начинающему фронтендеру

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров5.9K

Сколько бы раз я ни смотрел RoadMap для начинающих фронтендеров, всегда натыкаюсь на одну проблему: RoadMap, как правило, — просто свалка технологий, которую можно описать одной фразой: "Учи всё, что есть". Но так ли это? Нужно ли учить всё это в самом начале? Давайте отбросим большую схему с технологиями в сторону и поговорим начистоту.

Читать далее

Слабоумие и отвага: как найти ликвидные облигации с доходностью до 40% и ежемесячными фиксированными выплатами

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров9.4K

Что может быть привлекательнее депозита в Сбербанке под 21%? Видимо только депозит в ВТБ под 24%. А еще можно рассмотреть облигации с доходностью до 40% и ежемесячной выплатой купонов. Посмотрим, что они предлагают и какие существуют риски.

В статье будем искать такие варианты при помощи скрипта поиска ликвидных облигаций, который выложен на GitHub.

Вообще покупки высокодоходных облигаций с низким рейтингом (ВДО) на фоне роста ключевой ставки Центрального банка Российской Федерации – задача не для слабонервных. Высокие процентные ставки означают повышенный риск дефолта, особенно для эмитентов ВДО.

Ищем %

Ускорение страниц с VK Видео

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.3K

Ускорение страниц сайта на которых встроено VK Видео через iframe. Не самая популярная тема в прошлом, но сейчас времена меняются.

Читать далее

Самая сложная директива Taiga UI

Уровень сложностиСложный
Время на прочтение9 мин
Количество просмотров4.5K

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

В этой статье исследуем директиву ActiveZone — подход, который мы использовали в библиотеке компонентов Taiga UI. Она полагается на два моих любимых инструмента Angular: Dependency Injection и RxJS. Нам понадобится глубокое понимание нативных событий DOM. Как бы ни был далек Angular от чистого JavaScript и DOM, он все равно полагается на старые добрые Web API, поэтому важно качать свои знания и в области ванильного frontend.

Читать далее

WordPress × Wavesurfer JS

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров1.1K

WordPress × Wavesurfer JS – наконец-то дошли руки поделиться своим опытом использования wavesurfer.js в связке с сайтом на WordPress.

Читать далее

Руководство по Convex. Часть 2

Уровень сложностиСредний
Время на прочтение27 мин
Количество просмотров1.6K


Привет, друзья!


В этой серии статей я рассказываю о Convex — новом открытом и бесплатном решении BaaS (Backend as a Service — бэкенд как услуга), которое выглядит очень многообещающе и быстро набирает популярность среди разработчиков.


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


Эта вторая часть серии, в которой мы поговорим об аутентификации и авторизации.


Читать дальше →

Redux для новичков: база, с которой можно стартовать

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров15K

Привет, Хабр!

Сегодня рассмотрим библиотеку Redux для JS, зачем она нужна, и стоит ли она вашего внимания. Redux — это библиотека для управления состоянием приложения. Redux создан для тех случаев, когда:

У вас огромное приложение, и нужно управлять кучей данных.
Эти данные нужно шарить между компонентами, которые находятся на разных уровнях иерархии.
Есть сложная логика обновления данных, и хочется, чтобы код этой логики был не просто работающим, но и понятным через полгода.

Читать далее

Вклад авторов