Как стать автором
Обновить
317.59

Веб-разработка *

Делаем веб лучше

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

Четыре шага для запуска системы бронирования: кейс коворкинга Fifty Four

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

В 2019 году партнеры, консалтинговое агентство «Дком», работали над запуском нового коворкинга Fifty Four в Алматы. Ребята просчитали бизнес-модель, сделали сайт и брендбук. Не хватало только систем бронирования и управления.

Готовых «коробочных» решений для коворкингов на тот момент не было. Поэтому нас и пригласили в проект — как проверенных программистов.

Читать далее
Всего голосов 1: ↑0 и ↓1-1
Комментарии0

Новости

Как устроено хранение разных типов данных в веб-буфере обмена

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

Если вы уже давно имеете дело с компьютерами, то, вероятно, знаете, что в буфере обмена (clipboard) могут храниться различные типы данных (изображения, текст с форматированием, файлы и так далее). Меня как разработчика ПО начало напрягать то, что я не знаю, как буфер обмена хранит и упорядочивает данные разных типов.

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

Начнём мы с изучения API веб-буферов обмена и их истории. API накладывают интересные ограничения, связанные с типами данных; мы узнаем, как некоторые из компаний обходят эти ограничения. Также мы рассмотрим некоторые из предложений, предназначенных для устранения этих ограничений (самое примечательное из них — это Web Custom Formats).

Если вы когда-нибудь задавались вопросом, как устроен веб-буфер обмена, то этот пост для вас.
Читать дальше →
Всего голосов 4: ↑4 и ↓0+7
Комментарии2

Можно просто так взять и опубликовать Приложение в ОК

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

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

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

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

Читать далее
Всего голосов 12: ↑11 и ↓1+16
Комментарии9

Что нам даёт понимание спецификации языка ECMA Script? Разбираем стандарт ECMA262

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

Привет, Хабр! Меня зовут Александр, я frontend-разработчик SimbirSoft. Я 7 лет занимаюсь разработкой, и могу утверждать, что в процессе получения опыта работа специалиста становится все более творческой. Мы не просто стремимся заставить ПО работать нужным заказчику образом, а стараемся сделать все его части элегантными, производительными и легко поддерживаемыми. 

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

Я расскажу о сообществе, которое занято развитием нашего языка JavaScript. В первую очередь это организация ECMA International, которая разрабатывает стандарт языка ECMA Script, диалектом которого является JavaScript.

Мы разберем основные движки, реализующие стандарт ECMA Script, его ключевые разделы, опишем содержание на примере фичи. Рассмотрим, для чего изучать стандарт и как его дополнить, внеся свой вклад в сообщество разработчиков.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Истории

Три способа оптимизировать работу с памятью на Go с помощью memory pools

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

Привет, Хабр! Меня зовут Александр Иванов, я разрабатываю средства управления сетевыми элементами сотовой связи и пишу на языке Go в YADRO. Однажды я работал над приложением, которое испытывало пиковые нагрузки каждые 10 минут, но выполнить обработку памяти быстро мешал Garbage Collector. Чтобы решить эту проблему, я изучил несколько способов реализации memory pool и провел испытания скорости работы. 

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

Читать далее
Всего голосов 19: ↑19 и ↓0+28
Комментарии14

ML-подход к заблаговременному предотвращению оттока рекламодателей

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

В этом материале мы опишем систему для заблаговременного предотвращения оттока рекламодателей, основанную на машинном обучении (ML, Machine Learning). Прототип системы создан на основе данных организаций малого и среднего бизнеса (Small & Medium Business, SMB), с которыми работает Pinterest. Результаты изначального эксперимента говорят о том, что мы, с высокой вероятностью, можем обнаруживать возможный уход рекламодателей. Это, в свою очередь, способно помочь нашим торговым партнёрам. Система, подобная нашей, может достичь лучших результатов, чем обычный подход, когда пытаются вернуть уже ушедшего клиента.

Читать далее
Всего голосов 6: ↑4 и ↓2+8
Комментарии1

Безопасность для небезопасников

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

Анастасия Важинская — инженер по информационной безопасности, а не фронтендер, но её доклад стал самым важным для главного зала конференции FrontendConf 2024. Почему так и как меняется фронтенд-разработка и программа конференции? Что драйвит докладчиков в этом году? И какие боли терзают? Поговорим с докладчицей и узнаем всё из первых рук.

Читать далее
Всего голосов 11: ↑7 и ↓4+4
Комментарии0

Вышла в свет бета-версия Axure RP 11

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

А я, как обычно, сделал краткий обзор её новых функций и возможностей.

Если кратко: маловато нововведений для того, чтобы присваивать ей новый номер.

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

Под катом мой видеообзор и текстовый перечень основных нововведений.

Читать далее
Всего голосов 9: ↑4 и ↓5+1
Комментарии2

Браузер для Web 3.0

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

Время от времени я встречаю на страницах Хабра мысль, что современные браузеры не соответствуют современным требованиям, стали слишком сложными, делают всё не так и не туда, и вообще - ниша “забронзовела”, поделилась между игроками (Blink, WebKit, Gecko) и новичкам с новыми движками в неё стало невозможно попасть в принципе. В своей прошлой статье я коснулся основ работы с телеграм-ботами и в какой-то момент мне показалось, что я увидел прообраз “браузера будущего” - приложения, через которое люди будут подключаться к Сети совсем скоро (а некоторые подключаются уже сейчас).

Под катом я попытался формализовать словами свои субъективные ощущения (КДПВ не моя, это всё DALL-E).

Читать далее
Всего голосов 7: ↑3 и ↓40
Комментарии11

Книга: «Безопасность веб-приложений. Разведка, защита, нападение. 2-е изд.»

Время на прочтение19 мин
Количество просмотров2.1K
image Привет, Хаброжители!

Поговорим немного о безопасности? О защите, нападении и об Эндрю Хоффмане. Тем более, что вышло второе издание его известной книге о безопасности веб-приложений! Обновлённое, дополненное, актуализированное!

Три столпа безопасности приложений — разведка, нападение и защита. Во втором издании Эндрю Хоффман рассматривает десятки смежных тем — от новейших типов атак и средств защиты до моделирования угроз, жизненного цикла безопасной разработки ПО (SSDL/SDLC) и архитектуры нулевого доверия.

Вы получите подробную информацию об эксплойтах и средствах защиты от атак с использованием GraphQL, облачных технологий и доставки контента (CDN). В главы, посвященные атакам и их предотвращению, добавлены сведения для более продвинутых читателей.
Читать дальше →
Всего голосов 2: ↑2 и ↓0+4
Комментарии0

Вышел TypeScript 5.6

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

Сегодня мы рады объявить о выходе TypeScript 5.6!

Если вы не знакомы с TypeScript, то это язык, созданный на основе JavaScript и добавляющий синтаксис для типов. Типы описывают формы, которые мы ожидаем от наших переменных, параметров и функций, а программа проверки типов TypeScript помогает выявить такие проблемы, как опечатки, отсутствие свойств и неправильные вызовы функций еще до того, как мы запустим наш код. Типы также используются в редакторах TypeScript, таких как автозавершение, навигация по коду и рефакторинг, которые вы можете увидеть в таких редакторах, как Visual Studio и VS Code. На самом деле, если вы пишете JavaScript в любом из этих редакторов, этот опыт основан на TypeScript! Узнать больше можно на сайте TypeScript.

Читать далее
Всего голосов 9: ↑9 и ↓0+11
Комментарии0

Магия CSS на практике: советы по вёрстке от гика. Часть 4

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

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


Сегодня мы рассмотрим:

  • почему декоративные элементы, сделанные с помощью чистого CSS могут не отобразиться в режиме повышенной контрастности Windows;
  • чем можно заменить объявления свойства height со значением auto для изображений;
  • какой есть нюанс при установке максимальной ширины у группы элементов;
  • плавную прокрутку без неприятных ситуаций для пользователя;
  • чего не хватает при использовании фоновых изображений.

Давайте посмотрим, что я вам подготовил.

Читать дальше →
Всего голосов 27: ↑26 и ↓1+36
Комментарии31

HTTP-серверы на Fiber в Golang

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

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

Когда речь заходит о создании HTTP-серверов на Go, большинство сразу думают о привычных решениях, таких как net/http или Gin. Эти инструменты проверены временем, но что, если нужен сервер, который не просто стабилен, а работает очень быстро? Здесь помогает Fiber — лёгкий, но невероятно мощный HTTP-фреймворк, способный вывести производительность сервера на новый уровень.

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

Читать далее
Всего голосов 4: ↑3 и ↓1+3
Комментарии8

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

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
14 сентября
Конференция Practical ML Conf
МоскваОнлайн
19 сентября
CDI Conf 2024
Москва
20 – 22 сентября
BCI Hack Moscow
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
25 сентября
Конференция Yandex Scale 2024
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн

Распаковывая Valkey или миллион RPS на BSD-клоне Redis

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

В этот статье мы поделимся некоторыми результатами тестирования производительности Valkey (BSD-клон Redis). TL;DR: он действительно по ядрам скейлится лучше Redis и мы сделали миллион запросов с одного инстанаса.

В этом году Redis, “кеш с персистентностью”, мимкрирующий под СУБД и даже умеющий работать в режиме распределенного кластера – фантастически успешный проект, да и просто пример отличного продукта – сменил лицензию. Подробное рассмотрение лицензионной политики, включающее разбор лицензий Open Source и Source Available - выходит за рамки этой статьи. Скажем лишь, что это всё продолжение битвы “против облачных провайдеров”, которые “пользуются” результатами “настоящих” open source проектов, предоставляя услуги management service.

Итак, Redis cменил лицензию, и почти сразу же сотрудники AWS (Amazon Web Services, крупнейшего облачного провайдера) в сотрудничестве с другими облаками объявили о выпуске форка, Valkey: https://valkey.io/

Читать далее
Всего голосов 16: ↑15 и ↓1+19
Комментарии0

Бесплатный домен с HTTPS для локальных приложений: универсальное руководство с примером на Flask

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

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

Сегодня я продемонстрирую, как получить бесплатное доменное имя с поддержкой HTTPS, используя два популярных сервиса:

Читать далее
Всего голосов 8: ↑5 и ↓3+2
Комментарии8

Практика: фронтенд для начинающих

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

Это простое руководство для тех кто хочет развернуть локально проект и начать уже писать код.

Стек: typescript, vue, vitejs, primevue

Полетели
Всего голосов 3: ↑2 и ↓1+1
Комментарии5

Зачем нужны ключи в JavaScript фреймворках и библиотеках?

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

Всем привет! В данной статье я бы хотел рассказать о таком понятии как "ключи" в JavaScript фреймворках и библиотеках; зачем они используются и как помогают при работе с DOM.

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

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

Читать далее
Всего голосов 5: ↑3 и ↓2+1
Комментарии5

Как я создавал онлайн игру «нарды» (часть пятая). Сервер

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

Всем привет!

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

Читать далее
Рейтинг0
Комментарии0

Разработка и деплой Slack бота

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

В этой статье мы рассмотрим процесс разработки Slack-бота на Python с использованием популярных библиотек и фреймворков, таких как Flask и Slack SDK. Мы начнем с выбора инструментов, необходимых для создания бота, и шаг за шагом пройдем через все этапы разработки: от настройки окружения и написания кода до тестирования и деплоя на сервер.

Читать далее
Всего голосов 7: ↑5 и ↓2+3
Комментарии0

В помощь разработчику: 6 полезных библиотек визуализации данных

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

Привет, жители Хабра! Я Саша Пиманов, ведущий iOS-разработчик в МТС Диджитал. В прошлый раз я рассказывал, что почитать начинающим разработчикам. А сегодня поделюсь подборкой из шести библиотек, которые помогут в ежедневной работе. Среди них простые и сложные, с возможностью глубокой кастомизации и без нее. Все они могут здорово облегчить работу программиста, когда нужно визуализировать какие-то данные. Подробности — под катом.

Читать далее
Всего голосов 11: ↑10 и ↓1+13
Комментарии3
1
23 ...

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