Программирование для гуманитариев

Сегодня в беседе про базовые вопросы программирования родилась интересная аналогия. Одним из основных требований к современному коду является удобство чтения, и у гуманитариев с навыками сторителлинга внезапно появляются свои преимущества в профессии.

Любая функция изнутри — это рассказ о каком-то действии. То, что для технаря звучит как «функция должна включать шаги одного уровня абстракции», для сторителлинга — «не перегружайте рассказ деталями, если надо — расскажите о них отдельно». Рассказ должен быть кратким, понятным, желательно максимально очевидным, в идеале окидываться взглядом за полсекунды. Для технаря это звучит как «никаких побочных действий и эффектов в функциях, говорящие имена функций и переменных, делать код понятным без добавления текстовых комментариев».

Читать далее

Сверхкороткий обзор blockchain

Попробую подбить своё текущее понимание экосистемы blockchain после лекции в Сбербанке и последующего разговора с Nitin Gaur, директором лаборатории блокчейна в IBM.

Итак, грубо говоря, есть три разных вещи, на которые вешают ярлык «блокчейн». Описываю в порядке убывания значимости.

Первая — идеология взаимодействия больших групп без выделенных игроков-регуляторов. Интересно ровно постольку, поскольку это часть будущего мира. А ещё интересно выводом вопросов прозрачности и приватности на новый уровень. Совершенно эволюционный, а не революционный момент оптимизации бизнес-процессов. На самом деле даже не требует применения блокчейна как технологии. Шальных денег там нет. Наоборот, как любая оптимизация, приведёт к вылету с рынка большого количества людей и компаний-посредников. В том числе и закрытию большей части подразделений Сбербанка, кстати. Зарабатывать тут будут те, кто экономит, и те, кто внедряет.

Вторая — технологии блокчейна. Штука, удобная для реализации первого пункта. Интересна как задачки по математики. Тем более что нерешённых задачек там ещё много.

Третья — хайп. Все эти биткоины, ICO, теплоходы и конференции по $1k+ за вход, новая мировая экономика, «долой правительства» и прочее. Типичный МММ. Интересно как площадка для экспериментирования с разными технологиями из второго пункта. Спойлер от меня: они все умрут. Настоящие долгосрочные системы придут из мира глобальных компаний, экономических институтов и аналитических центров, развивающих первый пункт. И они будут ужасно скучными.

Кстати, интересный момент, что в новой парадигме встроенные в блокчейн какие-то новые фиатные деньги всё-таки нужны. Но не могу себе представить настолько упоротую организацию или государство, которое возьмёт для этого что-то существующее из мира крипто-хайпа, даже если оно будет лишено всех текущих детских болезней. Ведь стоимость создания новой валюты пренебрежительно мала.

Мобильное приложение для медитации

Ссылка

Покопавшись в различных приложениях для медитаций хочу подсветить одно, понравившееся больше всех: https://www.stopbreathethink.com/. К недостаткам его можно отнести отсутствие поддержки русского языка.

Ключевые преимущества, замеченные мной:

  • Не требует возможности присылать уведомления, а значит не будет отвлекать в неподходящий момент
  • Спрашивает и сохраняет статистику физического, ментального и эмоционального состояния перед и после каждой медитации
  • Предлагает разные медитации в зависимости от текущего состояния
  • Неплохой набор медитаций в бесплатном пакете
  • Не пытается тащить по придуманному авторами «курсу молодого бойца»

Итого это удобное приложение когда есть 3-10 минут свободного времени на улучшение медитации. И когда оказываешься в некомфортном состоянии и хочешь из него переключиться. Советую попробовать недельку им попользоваться.

Вебинар Дэвида Аллена

Понравившиеся мысли:

  • Не держать ничего в голове, выгружать в хранилища, которым доверяешь
  • Пять важных этапов работы с хранилищем: сбор, обработка входящих, организация информации, обзор, выполнение
  • Система нужна не для того, чтоб сделать больше. Она для того, чтоб знать, что готов не делать сейчас.
  • Ещё одна цель системы — управление стрессом. Исчерпывающий список всех задач с принятыми по ним решениям сводит стресс практически с нулю. Что с непривычки тоже вызывает дискомфорт =)
  • И ещё одна цель системы — готовность к изменениям. Планы обязательно будут меняться под воздействием внешних и внутренних факторов. Возможность встретить их во всеоружии — бесценна.

Музыкальный будильник в macOS

Способ для тех, кто не боится консоли. Плюс — ничего дополнительного устанавливать не придётся.

Есть такой UNIX-сервис под названием at, позволяющий запустить любую команду в любое время. Им и воспользуемся. Все действия производятся в терминале.

Сначала подключим этот сервис, команду достаточно выполнить всего один раз, повторять никогда не потребуется: sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.atrun.plist

Подготовительный этап сделан, ставим себе будильник в виде окошка браузера Chrome с радио Яндекс. Обратите внимание на два символа «\\» перед пробелами в пути команды.
echo /Applications/Google\\ Chrome.app/Contents/MacOS/Google\\ Chrome --app=https://radio.yandex.ru/activity/wake-up | at 10:00

Посмотреть список запланированных запусков можно командой atq

Собственно, всё =) Разумеется, лучше первый раз протестировать будильник на очень коротком временном промежутке.