Рубрика «Программирование» - 590

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

Информации по этой теме в интернете полно, но она фрагментирована, разбросана по разным ресурсам и перемешена с уведомлениями для мобильных устройств с примерами на Java, C++ и Python. Нас же, как веб-разработчиков, интересует JavaScript. В этой статье я постараюсь саккумулировать всю необходимую и полезную информацию.

Web PUSH Notifications

Я думаю, вы уже знаете что такое push-уведомления, но я всё же напишу коротко о главном.

Пользователь, заходя на сайт, вытягивает (pull) с него данные. Это удобно и безопасно, но с развитием интернет ресурсов, появилась необходимость оперативно доставлять информацию пользователям не дожидаясь пока те сами сделают запрос. Так и появилась технология принудительной доставки (push) данных с сервера клиенту.

Читать полностью »

image Всем привет! Это уже пятый выпуск дайджеста на Хабрахабр о новостях из мира Python. В сегодняшнем выпуске вы найдёте интересные материалы, касающиеся машинного обучения, особенностей работы Python, инструментов (Docker, Celery и тд), тестирования и многого другого. Присылайте свои актуальные материалы, а также любые замечания и предложения, которые будут добавлены в ближайший дайджест.

А теперь к делу!
Читать полностью »

Архитектура Enterprise на Yii2. Абстракция, инверсия зависимости, инкапсуляция бизнес-логики и управление изменчивостью - 1 Большинство сайтов в вебе работают исключительно с простой информацией: страница, статья, категория статей. При генерации HTML, на стороне сервера происходят некоторые простые процессы: подключение к базе, получение статьи по ID, привязка к статье комментариев и т.д.

Однако, с развитием Интернета и бизнеса в нем, на сайте нередко начинают происходить сложные бизнес-процессы, для которых никакие CMS не предназначаны.

Пример бизнес-процессов:

  • Применить промокод
  • Отменить заказ
  • Рассчитать размер вознаграждения продавцу

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

Моделирование электрической цепи - 1
В данной публикации представлена инструкция по моделированию электрической цепи методом переменных состояния.
Читать полностью »

Часть 1. Функциональная

Эта статья (если быть до конца честным — набор заметок) посвящена ошибкам, которые совершают новички, ступая на путь Scala: не только джуниоры, но и умудренные опытом программисты с сединами в бороде. Многие из них до этого всегда работали лишь с императивными языками такими как C, C++ или Java, поэтому идиомы Scala оказываются для них непонятными и, более того, неочевидными. Поэтому я взял на себя смелость предостеречь новообращённых и рассказать им об их типичных ошибках — как совсем невинных, так и тех, что в мире Scala караются смертью.

Читать полностью »

Вносите изменения в код понемногу - 1

Всегда было любопытно узнать, что и как думают кодеры за океаном? Логично предположить, что техническое мышление и основные процессы должны быть схожими с российскими разработчиками. Под катом возможность сравнить наши походы с «тамошними». Если у вас все хорошо с английским, оригинал публикации и самого автора можно найти по ссылкеЧитать полностью »

Мемы и шутки из архивов ЦРУ - 1
В ЦРУ правильно понимают набор практик DevOps

В опубликованных документах ЦРУ много сугубо технической информации для программистов. Как работать с Git, как скрыть характерные метки в коде, применять шифрование, использовать вредоносные компоненты из других программ. В архиве есть подсказки с «горячими клавишами» vi/vim, справочный курс Git Immersion. Технические рекомендации ЦРУ в ближайшее время следует внимательно проанализировать, тем более что скоро опубликуют вторую порцию документов. Джулиан Ассанж сказал, что в первый архив на ≈600 МБ (Year Zero) — это всего лишь 1% полученных от информатора документов.

Но уже сейчас ясно одно. Разработчики эксплойтов из подразделения Engineering Development Group (EDG) — такие же простые парни, как все. Они тоже отпускают программистские шуточки и обмениваются мемами, вирусными картинками с текстом, анимированными «гифками», с отсылками к поп-культуре, аниме и компьютерным играм. Пусть это и не самая ценная часть архива, но она там есть.
Читать полностью »

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

image
Читать полностью »

Ищем спикеров на Go meetup 14 апреля - 1

Наше внутреннее сообщество Go-разработчиков в Mail.Ru Group активно развивается, коллеги регулярно встречаются для обмена опытом и полезными ресурсами. Мы знаем, как важно общаться с людьми из других команд и проектов, иметь возможность спросить совета, обсуждать только что появившиеся технологии и поделиться опытом. Около полугода назад в нашем офисе уже проходила встреча разработчиков на Go, и сейчас этот язык все еще вызывает большой интерес. Поэтому 14 апреля мы организуем очередной Go meetup. Приглашаем спикеров! От Mail.Ru Group уже заявлен один доклад. Подробности под катом.
Читать полностью »

enter image description here

В феврале мы провели наш второй митап для лидов, руководителей отделов, СТО и неравнодушных. Для всех, кто не смог прийти и посмотреть выступления живьем, публикуем видео (и, конечно, слайды). Тема всего митапа: как создать и сохранить динамичную разработку в условиях постоянного роста команды и изменений в компании.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js