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-прогрммистов. В посте было рассказано о некоторых структурах данных, в том числе о бинарном дереве поиска, но самую интересную часть, то есть удаление узлов бинарного дерева, автор обошел стороной.После прочтения перевода у меня появилось жгучее желание реализовать […]

How to Build Your Own Laravel Package

Hello coders, do you usually finding some Laravel’s libraries inside packagist? For example do you want to export your data into Excel format, you can search it inside packagist and will found this amazing package that you can use. Amazingly we can build our own Laravel package / library and […]

Как работает реляционная БД

Реляционные базы данных (РБД) используются повсюду. Они бывают самых разных видов, от маленьких и полезных SQLite до мощных Teradata. Но в то же время существует очень немного статей, объясняющих принцип действия и устройство реляционных баз данных. Да и те, что есть — довольно поверхностные, без особых подробностей. Зато по более […]

Индексы и селективность (PostgreSQL)

Индекс по полю в БД потенциально может ускорить SELECT операцию с условием по данному полю, может ускорить запрос вида: ORDER BY поле LIMIT 20, но индекс существенно замедляет операции изменения таблицы и т.п.Когда нужен индекс, когда он поможет и будет использован при SELECTах? Всё зависит от селективности индекса, т.е. от […]

Portainer on Windows 10

Here I have 2 methods for running portainer on windows, a quick, preferred method only requiring a fairly recent version of docker, or a more complicated method to try if that does not work. Using docker.for.win.localhost This setup will let you run Portainer on windows by using the docker.for.win.localhost endpoint. […]