Как экспортировать коллекции из Postman и сконвертировать в http/curl/wget

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

Мы будем трогать постман.

Пользователь Postman каждый день

И здесь не будет скриншотов для кретинов о том, как нажимать кнопочки в его паршивой гуйне, чтобы экспортировать за раз целую 1 коллекцию или 1 запрос в curl. Мы же не животные.

Пост пропитан лютой ненавистью к этому ржавому глюкавому дерьмодемону.

Опубликовано
В рубрике blog Отмечено , ,

Деревья без рекурсии

Привет. Статья расчитана на разработчика до мидла включительно, но в целом может оказаться полезной и другим. Так, для разминки.

Ты наверняка знаешь что такое рекурсия. Она применяется в разных местах, но, как правило, это классические графовые алгоритмы (DFS, BFS, etc.), когда надо пройтись по веткам вширь, вглубь, туда, сюда и вообще. Однако рекурсия может обойтись дорого, учитывая, помимо прочего, ограничения стека и количество данных.

Есть как минимум три относительно простые задачи, которые связаны с деревьями:

  • как узнать всех родителей некоего элемента в плоском связном списке (иными словами, восстановить иерархию без построения дерева; узнать путь до элемента);
  • как построить иерархическую структуру, имея на руках только плоский связный список его узлов;
  • как вывернуть эту иерархию обратно в плоский связный список.

Возможно, ты удивишься, но для решения всех трёх задач рекурсия не нужна. Ниже будут их решения. Они элементарны, но неочевидны (хотя казалось бы).

Быстродействие коллекций Laravel

Photo by Bruno Guerrero on Unsplash

Привет. Это небольшой пост-шпаргалка. В нём речь пойдёт о классах Illuminate\Support\{Collection, LazyCollection}.

Я обожаю коллекции Laravel. Они очень гибки и комфортны в использовании при обработке массивов данных. Однако это балует и расслабляет разработчика. Более того, вся философия Laravel и good practices вертятся вокруг гибкости и простоты написания кода. Всё это может плохо сказаться (и в итоге сказывается) на производительности бекенда.

Ниже рассмотрим несколько конкретных случаев, на которые следует обратить внимание.

Опубликовано
В рубрике blog Отмечено ,

Резервное копирование фотографий со смартфона

a person holding a smart phone in their hand
Photo by Vitalii Khodzinskyi on Unsplash

Привет. Сегодня заметка о том, как я настроил бекапинг мобильных фоток. Механизм прост, обкатан и проверен месяцами работы, так что описываю как есть.

Всё базируется на нескольких простых вещах:

  • Syncthing;
  • inotify-tools;
  • демонизированный shell-скрипт.

На десктопе — Ubuntu, на смартфоне — Android. Базовые хотелки:

  • логирование;
  • конфигурирование;
  • копирование фоток из директории Syncthing в безопасное место;
  • обработка нескопированных вовремя фоток.

В итоге все фотки и видосики с мобилы будут сами лететь на комп, мы сможем смело чистить память смартфона от лишнего, а потом спокойно сортировать слитые фотки по своему фотоархиву на компе.

План понятен, погнали делать.

Домашний сервер на Ubuntu 22.04 LTS. Часть 1: покупка, настройка, старт

a hard drive being removed from a hard drive
Photo by Andrey Matveev on Unsplash

Привет. Вообще, я не хотел писать пост об этом сюда, потому что в сети уже навалом такого добра, повторяться не хочется. Да и в моём канале уже есть некоторые выкладки по хештегу #околоNAS. Там, скорее, поток мыслей и прикидки как бы сделать дома сервачок.

Но пока разбирался с сабжем, подумал — да чё нет-то? Возьму и запилю посты в блоге, с нормальной конкретикой. Я же пишу о том, как сам решаю свои проблемы, вот и будет кому-то ещё пища для размышлений. И себе будущему, чтобы не забыть.

Зачин, как я люблю, небольшой предысторией.

Я давно возжелал домой какой-нибудь сервачок. В сущности, варианта было два: Synology DS220+ или самосборка с авиты. Оба подхода валидны и жизнеспособны, однако мне хотелось гибкости, юзер-френдливости, кастомизируемости, да подешевше и чтоб компактно. Это, знаешь ли, сложно совместить.

Дома валялся еле живой ноутбук HP Pavilion G6, прикинул палец к носу, погонял думы… Однако, долго ли, коротко ли, купил я себе б/у системник Dexp Aquilon O111.