Как стать автором
Обновить
-1
0

Пользователь

Отправить сообщение

Как я делаю и продаю камни на маркетплейсах на 1,35 млн в месяц

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров168K

В статье я расскажу, почему я работаю не на себя, а на Озон, как я победил алкоголизм у сотрудников, и сколько стоит сделать и продать камень.

В 2016-м году я встретил женщину. И вон он я с ипотекой, кредитом на бытовую технику и зарплатой в 25 000 ₽. Чтобы как-то сводить концы с концами я, версии 2017-го, решил взять ещё один кредит на бизнес по производству декоративных камней. Их используют для внутренней отделки помещений.

Оказалось, это огромный рынок, а для производства такого камня требуется только вода и гипс. Но есть нюансы.

Читать далее
Всего голосов 148: ↑128 и ↓20+108
Комментарии297

Docker + php-fpm + PhpStorm + Xdebug

Время на прочтение8 мин
Количество просмотров63K
Не так давно тимлид нашей команды сказал: ребята я хочу, чтобы у всех была одинаковая среда разработки для наших боевых проектов + мы должны уметь дебажить всё — и web приложения, и api запросы, и консольные скрипты, чтобы экономить свои нервы и время. И поможет нам в этом docker.

Сказано — сделано. Подробности под катом.
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии80

Оболочка и терминал Unix — это одно и то же?

Время на прочтение18 мин
Количество просмотров20K

Сегодня любой уважающий себя разработчик не только программирует, но и так или иначе эксплуатирует свой код. А значит, с вероятностью 99,99% сталкивается с такой штукой, как «терминал». Хотя чаще это называют «консолью» или «командной строкой». 

А как же правильно? И почему эта штука местами такая странная? Без исследования древних машин, принципов общения с ними и легаси ПО тут никак не разобраться.

Осторожно: very long read!
Всего голосов 76: ↑75 и ↓1+74
Комментарии20

Магия ssh

Время на прочтение12 мин
Количество просмотров63K

Разве что ленивый не писал про ssh и несмотря на это, данный протокол и его возможности не перестают меня восхищать. Здесь я хочу поделиться исключительно своим опытом использования сего замечательного инструмента в своих задачах (При этом активно применяю его даже при разработке на Windows).

Поскольку я программист, то инструментарий ssh часто нужен мне в разработке и для личных нужд. Самые частые задачи, которые я выполняю с его помощью (по частоте использования):

  • Удалённый доступ — логично, ведь для этого он и предназначался.
  • Монтирование папок по сети — очень удобно для работы с кодом на удалённой машине.
  • Удалённое выполнение команд — нечастая, но используемая мной операция. Удобно получать выхлоп команды в канал другой команды на текущей машине.
  • Запуск графических приложений на удалённой машине.
  • Проксирование трафика — способ перенаправления трафика. Этакий быстрый и простой аналог VPN.
  • Обратный ssh — использую для проброса портов к системам, находящимися за NAT, когда лень настраивать firewall.

Далее вкратце разберу каждый пункт, и особенно пути эффективного и простого использования под Windows.
Читать дальше →
Всего голосов 105: ↑97 и ↓8+89
Комментарии131

Коля и его истории про фулфилмент

Время на прочтение11 мин
Количество просмотров10K
Фулфилмент — весь путь вещи, заказанной вами в интернете, до порога вашего дома. Он начинается где-то на далёком складе: вещь нужно найти, собрать и упаковать. Этот этап не всегда простой, он гораздо менее заметен, чем доставка, но не менее интересен. Сейчас я постараюсь вам это доказать.


Эффективность процесса зависит от его устройства, но если я сходу попробую объяснить, как устроены склады большого маркетплейса, мой рассказ вызовет много вопросов «Почему так сложно?». Поэтому я начну с основ процесса сборки, а потом постепенно, в несколько шагов, увеличу сложность и покажу, какую задачу решает каждое из усложнений. Мне понравились посты на Хабре про стажёра Васю, поэтому добавлю нового вымышленного персонажа — Колю. Он пройдёт с нами весь путь и настроит процессы на складе. Поехали!
Читать дальше →
Всего голосов 41: ↑40 и ↓1+39
Комментарии12

PHP-SPX простой профайлер трейсер для PHP

Время на прочтение4 мин
Количество просмотров12K
Работая с различными PHP проектами часто приходится дебажить приложение чтобы найти и исправить ошибку. Во многих случаях вполне хватает xDebug, однако он не подходит для всех задач. Иногда нужно понять почему та или иная страница долго загружается, что съедает так много памяти или просто как работает большой и запутанный код.
php-spx logo webmageic
Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии3

Сохраняем архивы виртуального хостинга на Yandex object storage

Время на прочтение3 мин
Количество просмотров3.3K

В статье показан простой метод сохранения архивов на Yandex Object Storage с помощью PHP.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии4

Кунг-фу стиля Linux: расшаривание терминала в браузере

Время на прочтение7 мин
Количество просмотров11K
В заголовке этого материала уже сказано о самой главной возможности программы, о которой я хочу рассказать. Речь идёт о GoTTY. Эта программа позволяет организовывать общий доступ к приложениям командной строки через браузер. Это — простой веб-сервер, написанный на Go. Он запускает программы, не обладающие графическим пользовательским интерфейсом, и умеет так представить их данные, пользуясь сокетами, что оказывается возможным показать результаты их работы в браузере. GoTTY, кроме того, может даже позволить пользователю взаимодействовать с такими программами.



В наши дни все помешаны на безопасности. Поэтому идея о «расшаривании терминала» вполне может вас насторожить. Да и, в конце концов, кому понадобится пользоваться командной оболочкой Linux через браузер? Но сразу хочу сказать, что беспокоиться вам особо не о чем. Хотя это и возможно, а иногда и полезно, реальная ценность GoTTY заключается в возможности запуска некоторых программ, работающих в командной строке, и в выводе генерируемых ими данных в окно браузера. Вот пример использования подобной системы. Вам нужно, чтобы пользователи могли бы удалённо мониторить систему, используя утилиту top (или, если хотите, htop). Но при этом вам не нужно, чтобы пользователям приходилось бы логиниться в системе. Вам, кроме того, хотелось бы, чтобы они могли бы работать без необходимости установки ssh-клиентов. При этом устанавливать дополнительные средства мониторинга вам тоже ни к чему. Вас вполне устроят стандартные инструменты.
Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии0

Закроем тему прокрастинации

Время на прочтение4 мин
Количество просмотров78K

Лет 20 назад люди тоже ленились. Но термин «прокрастинация» хоть уже существовал (с 1970-х), но не был знаком абсолютно всем, как сейчас. Мне кажется, у нас эпидемия. И, кажется, я знаю почему и что с ней можно сделать. Во всяком случае, у меня работает. И откладывать чтение на потом не придётся – всего 3 правила, уложусь в 5-7 минут Вашего времени

Читать далее
Всего голосов 134: ↑121 и ↓13+108
Комментарии184

Вебсокеты на php. Выбираем вебсокет-сервер

Время на прочтение6 мин
Количество просмотров120K
Давным-давно я публиковал статью на хабре, как написать свой вебсокет-сервер с нуля. Статья переросла в библиотеку. Несколько месяцев я занимался её развитием, ещё несколько лет — поддержкой и багфиксом. Написал модуль интеграции с yii2. Какой-то энтузиаст написал интеграцию с laravel. Моя библиотека совместима с php7. Недавно я решил отказаться от её дальнейшей поддержки (причины ниже), поэтому хочу помочь её пользователям перейти на другую библиотеку.


Читать дальше →
Всего голосов 18: ↑14 и ↓4+10
Комментарии58

Redis на практических примерах

Время на прочтение11 мин
Количество просмотров105K

Redis — достаточно популярный инструмент, который из коробки поддерживает большое количество различных типов данных и методов работы с ними. Во многих проектах он используется в качестве кэшируещего слоя, но его возможности намного шире. Мы в ManyChat очень любим Redis и активно используем его в нашем продукте для решения огромного количества задач. Про некоторые интересные кейсы использования этой in-memory key-value базы данных я расскажу на примерах. Надеюсь, вам они будут полезны, и вы сможете применить что-то в своих проектах.

Рассмотрим следующие кейсы:

  • Кэширование данных (да, банально и скучно, но это классный инструмент для кэширования и обойти стороной этот кейс, кажется будет не правильно)
  • Работа с очередями на базе redis
  • Организация блокировок (mutex)
  • Делаем систему rate-limit
  • Pubsub — делаем рассылки сообщений на клиенты

Буду работать с сырыми redis командами, чтобы не завязываться на какую-либо конкретную библиотеку, предоставляющую обертку над этими командами. Код буду писать на PHP с использованием ext-redis, но он здесь для наглядности, использовать представленные подходы можно в связке с любым другим языком программирования.


Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Комментарии14

Изучаем Docker, часть 1: основы

Время на прочтение6 мин
Количество просмотров510K
Технологии контейнеризации приложений нашли широкое применение в сферах разработки ПО и анализа данных. Эти технологии помогают сделать приложения более безопасными, облегчают их развёртывание и улучшают возможности по их масштабированию. Рост и развитие технологий контейнеризации можно считать одним из важнейших трендов современности.

Docker — это платформа, которая предназначена для разработки, развёртывания и запуска приложений в контейнерах. Слово «Docker» в последнее время стало чем-то вроде синонима слова «контейнеризация». И если вы ещё не пользуетесь Docker, но при этом работаете или собираетесь работать в сферах разработки приложений или анализа данных, то Docker — это то, с чем вы непременно встретитесь в будущем.

Часть 1: основы
Часть 2: термины и концепции
Часть 3: файлы Dockerfile
Часть 4: уменьшение размеров образов и ускорение их сборки
Часть 5: команды
Часть 6: работа с данными

image

Если вы пока не знаете о том, что такое Docker, сейчас у вас есть шанс сделать первый шаг к пониманию этой платформы. А именно, освоив этот материал, вы разберётесь с основами Docker и попутно приготовите пиццу.
Читать дальше →
Всего голосов 62: ↑52 и ↓10+42
Комментарии26

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность