Блог it-інженера: PHP, JS, Mysql

Блог it-інженера: PHP, JS, Mysql

Розбираємо складність світу IT: все про розробку якісних продуктів

#Русский военный корабль иди нахуй
В серці. Назавжди.
Серьёзный разговор

В серці. Назавжди.

Вчора у мене помер однокласник. А сьогодні бабуся. І хто б міг уявити, що цей рік принесе війну, смерть товариша, та смерть члена сім'ї? Це боляче... Проте це добре нагадування про те, як швидко тече час. І як його ціна збільшується кожної марно витраченої секунди. І я не
1 min read
Ось такий він, руський мир
true stories

Ось такий він, руський мир

"Руський мир" - звучить дуже сильно та виправдовуюче. Гарна обгортка виправдання слабкості, аморальності та нікчемності своїх дійсних намірів. Руський мир, який дуже солодко звучить для всіх, хто хоче закрити очі на факт повномасштабної війни. Дуже добре виправдання вбивства для купки звірів. Втім, це ж росія, в якій все
3 min read
Перехват запросов и ответов JavaScript Fetch API
JavaScript

Перехват запросов и ответов JavaScript Fetch API

Перехватчики - это блоки кода, которые вы можете использовать для предварительной или последующей обработки HTTP-вызовов, помогая в обработке глобальных ошибок, аутентификации, логирования, изменения тела запроса и многом другом. В этой статье вы узнаете, как перехватывать вызовы JavaScript Fetch API. Есть два типа событий, для которых вы можете захотеть перехватить HTTP-вызовы:
4 min read
Как сохранить sRGB изображение в Photoshop
Фотографии

Как сохранить sRGB изображение в Photoshop

По хроникам прошлой статьи по идеальному формату фотографий при публикации их в соц.сетях, сегодня я решил написать вторую статью, как это делать на практике. В этой статье я покажу, как в Photoshop сохранить любую фотографию в формате sRGB, чтобы передавать максимально достоверные цвета фотографии в соц.сетях и чтобы
3 min read
От А до Я про Event Dispatching
php

От А до Я про Event Dispatching

Впервые я столкнулся с событиями, когда работал с Symfony. Смотря обучающие уроки, я заметил, что большинство задач решаются с помощью создания (диспатчинга) и обработки определённых событий (слушателями). В то время мне показалось это сложной концепцией для понимания. Но, работая с разными проектами и фреймворками, эти вещи продолжали появляться, потому мне
9 min read
Как сравнивать даты в MySQL
MySql

Как сравнивать даты в MySQL

MySQL предоставляет возможность сравнивать различные даты между собой, или с каким-то определенным выражением. В этой статье мы обсудим, как работать с датой в Mysql, как из сравнивать и строить запросы с учетом дат. Когда вам нужно сравнить дату какого-то столбца с произвольной датой, вы можете использовать функцию DATE(), которая извлекает
4 min read
Реальный пример индексирования нескольких полей с поиском по диапазону в MySQL
MySql

Реальный пример индексирования нескольких полей с поиском по диапазону в MySQL

Работая над повышением производительности одного из самых медленных запросов к MySQL, что выполнялся в нашей системе, мы столкнулись с интересным сценарием, который привел к ценным обсуждениям и размышлениям. В этой статье я рассмотрю этот пример и покажу решение, выделив некоторые детали, которые необходимо учитывать при построении индексов для сложных запросов.
7 min read
Как экономить при покупке на Розетке
true stories

Как экономить при покупке на Розетке

Я очень часто покупаю в интернете, уверен, как и вы. И каждый раз я задаюсь вопросом, как можно сэкономить при покупке товаров в интернете. В этой статье я расскажу, как можно реально экономить, покупая на самом популярном интернет магазине Украины - rozetka.com.ua. Ни для кого не секрет, что
3 min read
Реальные примеры использования генераторов в PHP
php

Реальные примеры использования генераторов в PHP

Несмотря на то, что генераторы доступны с версии PHP 5.5, они до сих пор используются крайне редко. На самом деле, большинство разработчиков, которых я знаю, понимают, как работают генераторы, но не видят, когда они могут быть полезны в реальных ситуациях. "Да, генераторы, безусловно, выглядят здорово, но знаете... за
6 min read
Как настроить Axios в приложении Nuxt
Nuxt

Как настроить Axios в приложении Nuxt

Вы, вероятно, слышали про axios или использовали его в своих веб-приложениях. Axios - это HTTP-клиент для браузера и node.js. Он значительно упрощает работу с API-запросами. Если вы работаете с Nuxt, есть официальный модуль, который ещё больше упрощает задачу интеграции этой библиотеки в фреймворк: @nuxtjs/axios. Именно на нём я
5 min read
Начало работы с Axios в Nuxt
Nuxt

Начало работы с Axios в Nuxt

В этой статье я расскажу, как делать запросы в приложении на Nuxt.js с помощью модуля Axios. Вы также узнаете, как использовать методы asncData и fetch для получения данных на стороне сервера с помощью Axios и в чем разница между этими двумя методами. И, наконец, я покажу, как добавить аутентификацию
15 min read
Работа с Vuex в Nuxt
Nuxt

Работа с Vuex в Nuxt

В одной своей статье я уже рассказывал о лучших практиках работы с Vuex в больших приложениях. А в этой статье я покажу вам, как начать работу с Vuex в приложении Nuxt. Как создать свой первый Vuex модуль и как вы можете управлять состоянием в ваших компонентах и страницах приложения Nuxt.
6 min read
Как работать с мета-данными в Nuxt
Nuxt

Как работать с мета-данными в Nuxt

Что такое мета-данные? Сначала давайте поговорим о том, что такое метаданные. Вы можете указывать информацию о html-документе в тегах <meta>. Мета-теги располагаются внутри элемента <head> html-документа. Метатеги могут содержать информацию о следующем: * Информация для браузера о том, как отображать HTML-документ * Инструкции для поисковых систем о том,
5 min read
Генерируем пиксельные изображения с помощью PHP (генератор аватарок и пиксельных городов)
php

Генерируем пиксельные изображения с помощью PHP (генератор аватарок и пиксельных городов)

Последние несколько недель я экспериментировал с генеративным искусством, используя PHP. Генеративное искусство - это создание произведений искусства с помощью программирования. У генеративного искусства есть разные названия, такие как процедурное искусство или креативное кодирование. PHP не является распространенным языком для генеративного искусства, JavaScript - один из более распространенных вариантов, но на
7 min read
Самый честный отзыв про работу в компании Реактор Днепр
Серьёзный разговор Featured

Самый честный отзыв про работу в компании Реактор Днепр

Знаешь, бывает так, что ты ещё не успев закоммитить транзакцию нового желания, а вселенная уже даёт тебе возможность его осуществить. И хз как это правильно называется - судьба, награда, или везение. Но что-то подобное случилось и со мной, когда я только решил поменять работу, и искал, куда мне, как PHP-программисту,
4 min read
Лучшие настройки экспорта фотографий для Instagram: инструкция для Lightroom и Photoshop
Фотографии

Лучшие настройки экспорта фотографий для Instagram: инструкция для Lightroom и Photoshop

У вас наверно бывали случаи, когда вы от души редактировали фотографии в Photoshop или Lightroom, а Instagram превращал ваши великолепные фотографии в зернистую, обесцвеченную, блеклую кашу. И вот, вопрос: почему Инстаграм портит качество, и делает фотографии, отредактированные в Photoshop/Lightroom тусклыми (и чуть ли не черно-белыми)? Instagram стал ведущей платформой
3 min read
Как клонировать и копировать таблицы в MySql
MySql

Как клонировать и копировать таблицы в MySql

При работе с базами данных может возникнуть ситуация, когда вам в MySQL нужно клонировать или продублировать существующую таблицу в новую из-за их сходства в столбцах и атрибутах, или же, для проведения тестов без затрагивания исходной таблицы. Я столкнулся с подобной ситуацией, когда мне нужно было создать структурную копию одной таблицы,
2 min read
Балансировщик нагрузки Nginx с использованием Docker
docker

Балансировщик нагрузки Nginx с использованием Docker

Итак, эта фотография наглядно демонстрирует то, чем nginx балансировщик нагрузки не является. Давайте сначала вкратце поговорим об общем понятии балансировки нагрузки, и их разновидностях в nginx. И, заодно, применим на практике знания о Docker, полученные ранее. Балансировка нагрузки для многих приложений является широко используемой методикой оптимизации скорости отклика, доступности и
6 min read
9 лучших вопросов, которые вы можете задать, для начала разговора с абсолютно любым человеком
Серьёзный разговор

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

В этой статье я привёл подборку прекрасных вопросов для начала содержательной беседы с другими людьми. Сейчас самой популярной завязкой разговора, наверное, является коронавирус. И в некоторых случаях подобная тема разговора может вызывать стресс. Неважно, с кем вы говорите, вы можете перефразировать разговор, и задавать правильный вопросы, чтобы построить более глубокий
4 min read
Добавление собственных классов и методов в Query Билдеры и Коллекции Laravel Моделей
laravel

Добавление собственных классов и методов в Query Билдеры и Коллекции Laravel Моделей

В Laravel есть отличный способ добавить к вашим моделям кастомные методы билдера SQL запросов и коллекций. Этот подход отлично работает для "утоньшения" моделей и написания более чистого кода в ваших контроллерах и сервисах. Благодаря этому, вы можете вынести все scoup* методы в отдельный класс, убрав методы запросов к
1 min read
Как изменить версию composer: обновиться или откатиться на старую версию
laravel

Как изменить версию composer: обновиться или откатиться на старую версию

С выходом второй версии composer, теперь она устанавливается по-умолчанию. Однако, некоторые приложения могут быть не полностью совместимы с 2 версией композера, поэтому вам, возможно, придётся использовать первую версию до тех пор, пока все несовместимости не будут устранены. Именно из-за этого, в некоторых старых приложениях на Laravel вылетает ошибка: Laravel PackageManifest.
1 min read
Как проверить на существование таблицы модели в Laravel
laravel

Как проверить на существование таблицы модели в Laravel

Иногда, в Laravel, необходимо убедиться, существует ли какая-то конкретная таблица на момент запуска приложения. И в зависимости от результата, исполнять код, или нет. И в этой статье я покажу, как убедиться в наличии таблицы в базе данных в приложении на Laravel. Причин для подобных проверок может быть множество: * модульная структура,
2 min read
Очередь Laravel с помощью NodeJS PM2
laravel

Очередь Laravel с помощью NodeJS PM2

PM2 - это программа мониторинга процессов, написанная на NodeJs. Я часто использую её как альтернативу официальной программе мониторинга процессов Laravel - supervisor. Однако, в отличие от супервизора, это ПО мониторинга процессов имеет меньше зависимостей, меньше конфигураций и проще. В общем, его я ставлю, когда не получается по каким-либо причинам установить
2 min read
Проверка переменной среды преложения в шаблонах Laravel
laravel

Проверка переменной среды преложения в шаблонах Laravel

Очень часто приходится выполнять проверку в представлениях Laravel, и показывать данные в зависимости от конкретного условия. В этой статье разберёмся, как выполнить условный рендеринг в blade-шаблоне в зависимости от APP_ENV-перменной в Laravel приложении. Например, вам может понадобиться проверить, в какой среде работает приложение - production, или development. B в
1 min read
Как привязать методы класса к экземпляру класса с контекстом this
JavaScript

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

Есть несколько способов обеспечить доступ к this в методах класса JavaScript. В этой статье мы быстро рассмотрим наиболее распространенные способы реализации этой задачи, обсудив преимущества и недостатки каждого из них. Проблема появляется, когда у нас есть метод класса, похожий на этот: class Logger { printName (name = 'some log message'
3 min read