Месяц: Январь 2023
-
Принцнипы SOLID коротко и простым языком (на JS)
SOLID это аббревиатура, которая обозначает пять принципов объектно-ориентированного программирования. Эти принципы помогают разработчикам писать качественный и поддерживаемый код. Вот как выглядят эти принципы:Single Responsibility Principle (Принцип единственной ответственности) — Каждый класс должен иметь одну ответственность (функционал) и все его методы должны быть связаны с этой ответственностью. Например:class User { constructor(name, email) { this.name = name;…
-
Работа с Веб-сокетами на PHP
PHP — едва ли первое, что придет в голову, когда стоит задача поднять сервер веб-сокетов. Практически каждая статья в интернете будет пестрить предложениями использовать для этого NodeJS, Python или Go. Но поскольку PHP — это однозначно первое, что приходит в голову, когда речь идет о веб-приложениях, почему бы не попробовать?На самом деле, запуск сервера веб-сокетов на…
-
Слепые капитаны ищут дно: почему российский бизнес – это болото, в котором барахтаются идиоты-«менеджеры»
Владельцы компаний часто жалуются на сложности ведения бизнеса: людишки уже не те, кредиты дорогие, страна тоже не та. Так ли это на самом деле? Частично да, но есть и другие нюансы. Главная проблема – совокупность негативных факторов: общество зацементировалось и развивается не потому что, а вопреки.Как часто вас подставляли или динамили разные невменяемые люди на…
-
Популяризация JSON-RPC (часть 1)
Для передачи данных по сети есть хорошо зарекомендовавшие себя стандарты. Среди основных: SOAP, gRPC, AMQP, REST, GraphQL.При создании вебсайтов малой, средней и большой сложности с потоками данных к бэкенду и обратно в JSON формате обычно используются последние два с их вариантами. Верней, только варианты, потому что REST и GraphQL — ресурсо-ориентированные протоколы. Это как бы…
-
Достигаем Product of the Day на Product Hunt с Trello доской
Достигаем Product of the Day на Product Hunt с Trello доскойНедавно я обнаружил, что на Product Hunt можно получить звание «Продукт дня» практически с чем угодно. Мне удалось занять место № 4 в списке продуктов дня на Product Hunt с помощью доски Trello. В этой статье я хотел бы поделиться некоторыми советами о том, как…
-
Интеграция Okta с Firebase через OpenId Connect без бэкенда
ПредысторияОднажды мне была поставлена задача интегрировать облачный сервис Okta с облачной базой данных пользователей Firebase. Okta включает в себя множество настроек с разными способами интеграции. Мне не удалось найти информацию о взаимодействии Okta с Firebase без реализации бэкенда, поэтому я решил поделиться своим опытом, изложенным в этом гайде. Возможно, кому-то будет полезно.В интеграции, которая здесь…
-
Как контролировать задачи в MODX Revolution — делаем TODO виджет для админки
В CMF MODX Revolution изначально не предусмотрена возможность ставить задачи и привязывать их к ресурсам. Такое дополнение я тоже не нашел, да и было интересно разобраться в создании виджетов, поэтому придумал решение, как можно быстро реализовать такой функционал на своем сайте. Собственно, в этой статье хочу им поделиться.Суть идеиПишем мы контент — статью в блог,…
-
Фишинг и история о том, как я начал с ним бороться костылями
Всем привет! Это моя попытка рассказать что-то интересное и попробовать получить новую информацию через фидбэк:)Начну с того, что расскажу, кто я вообще такой. Я — человек, который с детства хотел стать «хакером» и помогать в борьбе с мошенниками. в январе 2022 года мне предложили сменить мою низкооплачиваемую работу 3D инженера-конструктора в конструкторском бюро на специалиста…
-
Как всё успеть? | Мой тайм-менеджмент
Прежде чем начать говорить про тайм-менеджмент и как всё успевать, начну с плохой шутки про электрика. Как определить является электрик хорошим или плохим? Правильно! Любой живой электрик автоматически хороший. Теперь немного обо мне. Я работаю преподавателем в университете, учусь в магистратуре, веду YouTube-канал по программированию PyLounge, занимаюсь репетиторством, пишу статьи, выступаю на конференциях, мастер-класса, параллельно…
-
Звуковой усилитель на драйвере шагового двигателя L298 и таймере 555
Для тех, кто следит за моими публикациями, давно не секрет, что я занимаюсь схемотехникой ради схемотехники. И данный проект является тому подтверждением. Схема, которая будет рассмотрена в статье, не имеет практического смысла, но, как и прочие мои электронные поделки, позволит немного развлечься бывалому инженеру, или погрузиться в основы схемотехники новичку. Сейчас существует множество готовых недорогих…