OAuth 2.0 простым и понятным языком

На хабре уже писали про OAuth 1.0, но понятного объяснения того, что такое OAuth 2.0 не было. Ниже я расскажу, в чем отличия и преимущества OAuth 2.0 и, как его лучше использовать на сайтах, в мобильных и desktop-приложениях. Что такое OAuth 2.0 OAuth 2.0 — протокол авторизации, позволяющий выдать одному […]

Чек-лист: что нужно было делать до того, как запускать микросервисы в prod

Эта статья содержит краткую выжимку из моего собственного опыта и опыта моих коллег, с которыми мне днями и ночами доводилось разгребать инциденты. И многих инцидентов не возникло бы никогда, если бы всеми любимые микросервисы были написаны хотя бы немного аккуратнее. К сожалению, некоторые невысокие программисты всерьёз полагают, что Dockerfile с […]

Введение в OAuth 2

OAuth 2 представляет собой фреймворк для авторизации, позволяющий приложениям осуществлять ограниченный доступ к пользовательским аккаунтам на HTTP сервисах, например, на Facebook, GitHub и DigitalOcean. Он работает по принципу делегирования аутентификации пользователя сервису, на котором находится аккаунт пользователя, позволяя стороннему приложению получать доступ к аккаунту пользователя. OAuth 2 работает в вебе, […]

МОНИТОРИНГ ПРИЛОЖЕНИЙ (APM)

ОБЗОР ПРОДУКТА CISCO APPDYNAMICS AppDynamics – это единый набор приложений и решений в сфере мониторинга бизнес производительности который гарантирует, что каждая часть даже самых сложных мульти-облачных средах будет хорошо видима и оптимизирована для обеспечения роста бизнеса. Данное решение предлагает инновационные технологии, которые вы не найдете в любых других решениях систем […]

Правила жизни Solution-архитектора

Сотрудник отдела Travel Solutions компании EPAM Николай Зенькевич уверен: главное в Solution-архитектуре — это не просто найти решения, но и доказать — самому себе, в первую очередь, — что эти решения наиболее оптимальны для поставленной задачи. Чем руководствоваться и как добиться этого на практике? Николай разложил всё по полочкам. — […]

How To Use Laravel Model Observers

Laravel’s Eloquent ORM is the rock-solid implementation of Active Record. Apart from other awesome features offered by Laravel Eloquent, Laravel implements Observer Pattern to fire some events, which can be listened to hook into, when various actions are performed on a model. The observer pattern is a software design pattern […]

How to Create a Package in Laravel

An indication of good software design is how modular and maintainable your code is. Grouping several pieces of code into one logical module that can be reused is called a “package” in Laravel. And today, we’ll take a look at creating our very own package in Laravel 5.6 from scratch. […]

Сервисы для аналитики Telegram-каналов

С ростом популярности Telegram число каналов растет в «геохренистической» прогрессии. И порой их создатели пусткаются во все тяжкие с единственной целью – количество подписчиков и просмотров. Накрученные каналы не предствляют угрозы для рядового пользователя Telegram. Опасаться стоит админам, которые продвигаются по-белому, покупая рекламу для своего канала у других. Качественная аналитика […]

Динамическое программирование. Классические задачи

Здравствуй, Хабрахабр. В настоящий момент я работаю над учебным пособием по олимпиадному программированию, один из параграфов которого посвящен динамическому программированию. Ниже приведена выдержка из данного параграфа. Пытаясь объяснить данную тему как можно проще, я постарался сложные моменты сопроводить иллюстрациями. Мне интересно ваше мнение о том, насколько понятным получился данный материал. […]

Бинарное дерево поиска на PHP

Этот пост явился следствием прочтения вот этого перевода статьи о структурах данных для PHP-прогрммистов. В посте было рассказано о некоторых структурах данных, в том числе о бинарном дереве поиска, но самую интересную часть, то есть удаление узлов бинарного дерева, автор обошел стороной.После прочтения перевода у меня появилось жгучее желание реализовать […]