Topics

Software development · System Dynamics · Independent Web · Podcasts · User Experience · Computer History

Posts

22 октября

·

Websites are meant to be indexed by Google and only incidentally for humans to read.

2 октября

Веб для исследований

Веб это граф, страницы это узлы, а ссылки — связи между ними. Помимо этого есть измерение времени — вчера я ссылался на такую-то страницу, а теперь — нет, или самой страницы больше нет (с этим иногда помогает Internet Archive Wayback Machine).

Я как человек никогда не вижу сеть целиком, я путешествую по её узлам, мой взгляд локален. Более того, у моего путешествия есть контекст, благодаря которому я выбираю на какие ссылки нажать, а какие проигнорировать. Параллельно может существовать несколько контекстов: в одной из вкладок открыт Твиттер, но он не входит в контекст исследования.

Мейнстримные браузеры уплощают мой опыт исследования: список вкладок плоский, по истории можно ходить только вперёд и назад (в вебките соответствующая структура так и называется: WKBackForwardList). Это не означает, что контекста путешествия не существует, он есть — но он хранится только в моей голове. Компьютеры помогают человеку, когда позволяют не держать что-то в голове.

История браузера — тоже граф.


В своё время Гугл придумал как ранжировать результаты в выдаче, ориентируясь на ссылки сайтов друг на друга (PageRank). Довольно быстро это стали абьюзить через мусорные «покупные» ссылки.

Подобные идеи не могут работать для всех в глобальном масштабе — всегда есть акторы, желающие извлечь прибыль из обмана алгоритма и попадания в выдачу. Из этого не следует, что они не могут работать в малых масштабах: представление веба в виде графа могло бы работать в локальном уголке веба, который ты исследуешь. Более того, когда мы переходим к хотя бы двумерной организации материала, перед нами открывается много дополнительных возможностей упорядочить информацию:

Constructing hypertext maps based on geography is always tempting; when we are looking for a two-dimensional organizing principle, conventional mapping naturally suggests itself. Avoid falling back on geography by habit, but don’t overlook occasions where it may provide fresh insight.

— Mark Bernstein, The Tinderbox Way

Можно копировать страницы из браузера в другие программы, позволяющие это делать (тот же Tinderbox), но это создаёт трение, а значит это будет мало кем использоваться.

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

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

Веб сегодня — территория потребителей, пассивно поглощающих контент, относящиеся к вебу как к чему-то данному извне. Это рационально: пользователь действительно не может повлиять на контент сайта. Но при помощи разных User Agents consumer может превратиться в prosumer.

30 сентября

·

Old Git master prepares to die and calls his sons to the deathbed.

“Take these branches one-by-one, and break them.”

Sons obliged, effortlessly breaking the build in single branches.

“Now take the repo as a whole, every branch together, and break it.”

Sons took the whole repo and broke it.

“You idiots! You’ve ruined my metaphor”, said the old master, and merged himself with the remote “heaven”.

5 августа

4 августа

·

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

  • Трекинг сна 🔥 За полчаса до начала сна включает Do not Disturb, напоминает зарядить часы, если их не хватит.
  • Пару раз айфон просто перезагружался 🤷‍
  • Виджет с шорткатами 🔥 Можно поставить четыре важных шортката прямо на хоумскрин, чтобы запускать в один клик.
  • На макоси есть баг с системными попапами — иногда улетают за пределы экрана, блокируя окно.
  • Очень жду виджеты от OmniGroup
  • Можно удалить приложения с домашнего экрана, не удаляя с телефона 🔥
  • Поиск на телефоне стал медленнее и зачастую тупее 🤷‍ Раньше по запросу «tink» мгновенно находился «Тинькофф», теперь приходится набирать «tinkoff» целиком.

Кстати, поиск на айфоне — фича, про которую как будто никто не подозревает. Нужно свайпнуть на хоумскрине вниз, появится спотлайт. Большую часть приложений я открывал только так и до возможности удалять приложения с хоумскрина.

28 июля

·

Последнее время я часто решаю судоку на айфоне.

Два лучших приложения для этого: Classic Sudoku от Cracking the Cryptic и Good Sudoku от любимого многими Zach Gage.

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

Зак выпустил Good Sudoku буквально несколько дней назад, но я знаю его творчество по предыдущим играм (Really Bad Chess и лучший солитёр вообще). В этом приложении есть глобальный лидерборд, ежедневные новые пазлы, и симпатичная музыка (тут же отключил), но на мой вкус слишком много автоматики — в одном из режимов приложение само заполняет отметки, когда не осталось других вариантов. Из интересного — приложение пытается в том числе научить тому, как решать судоку.

Cracking the Cryptic также выпустили Chess Sudoku, где добавляются новые ограничения — King Sudoku, Queen Sudoku, Knight Sudoku.

14 июня

Рассылочка

Я делаю в дополнение к сайту рассылку. Если сразу всё понятно, и хочется подписаться, то можно перейти сразу к форме.

А теперь расскажу, почему я решил это сделать, и что в этом для тех, кто подпишется. Это такой эксперимент, посмотрим, что из этого получится.

Мне: лучше понимать

Я уже писал о том, что начинаю понимать многие вещи только в процессе написания связного текста. Этот же эффект известен как «чтобы разобраться, научи кого-то ещё».

Разобраться в том, что я думаю, ценно и само по себе, и ведёт к принятию более эффективных решений, что тоже приятно. Поэтому же я рекомендую всем писать и публиковать — особенно если вы не согласны со мной, потому что…

Читателю: увидеть точку зрения другого

Confirmation bias довольно липкая штука: нам приятнее читать то, что уже подтверждает наши убеждения. В то же время, нельзя прочитать то, чего нет, что неопубликовано.

Мне кажется, что мои взгляды (например, попытки представлять штуки в виде систем) не так сильно представлены, особенно на русском языке.

В то же время…

Мне: формат и дедлайн

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

Например, твиттер ограничивает длину поста — это ограничение, которое улучшает многие шутки, но делает невозможным рассмотреть что-то глубоко. Треды на самом деле не решают этой проблемы, они подталкивают автора сделать каждый параграф панчлайном; и в последнее время твиттер часто разрушает тред в интерфейсе.

Ограничение, которое мне нравится: писать к дедлайну. Бен Томпсон пишет свою рассылку ежедневно, я же пока ставлю себе цель попроще: пост каждую неделю, в пятницу.

Я могу публиковать каждую неделю и на моём сайте — тексты из рассылок рано или поздно на него попадут. Но рассылка здесь выступает в роли дополнительного мотиватора писать, потому что…

Читателю: подписка!

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

Если хочется подписаться, то вот формочка. Если не хочется (или вы уже читаете уже через читалку) – that's okay too.

Рассылочка

Рецензии на прочитанные книги, советы про продуктивность, интересные ссылки, черновики текстов.

    We respect your privacy. Unsubscribe at any time.
    Powered By ConvertKit

    10 июня

    "Your Data" is Broader Than You Think

    On the weekend, publisher Pragmatic Programmers migrated to a new system, which is noticeably faster than the previous one. That's good. But the new version lacks the wish list.

    Now, I don't know if it's an artifact of migration and wish list is to be reinstated, or if it was a deliberate decision to drop the feature that probably isn't used by the majority of buyers. But it made me aware, that my "data" is way broader then I thought before.

    I've blogged about Indieweb movement at length the last year (in Russian), but even then I mostly thought about my data as data that I consciously create: photos, essays, lame jokes, et cetera. Turns out, my wish list was also useful to me, and I miss it. The same is true, say, about my YouTube watch history and Watch Later list, I regularly refer to it to find some weird video I watched a few days ago.

    I don't think that any decision in the chain of events that led to me missing my wish list was malicious, but such is the nature of complex systems, especially web services, that they produce unintended outcomes. That's okay, losing wish list is not a big deal.

    This incident made me even more aware that the only data I'm guaranteed to be able to access is the data hosted under my control, either on my own disks, or on the disks of my hosting provider.

    What other data I'm not thinking of? That's hard to tell, because this data is produced reactively, as a side effect of using web services normally. Message archives in proprietary services (Telegram, FB, VK, and others), upvoted links to research later on Lobsters and others websites, the set of subscriptions.

    I also store my "books to buy" lists at Amazon.com as Wish Lists, which could also disappear at any moment, and in the Cart, which may get emptied. These lists act as my own bibliography of things I'm interested to learn more about, so they do have value on their own.

    I'm planning to migrate these lists to my web server as a simple HTML file. HTML files do not require maintenance and also have zero marginal costs.

    As to PragProg wish list, I guess I'd have to buy every book they have, 'cause every book published by them that I've read was great.

    7 июня

    Немного про политику

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

    Я понял, что я не знаю своих взглядов, и думаю это исправить. Но начнём издалека.

    Люди часто стараются не говорить о политике: запрещают обсуждать её в технических сообществах, это тема, которой лучше не касаться. Интернеты полны кремлеботами, навальноботами, западные интернеты заполнены Russian bots.

    Почему из всех тем избегают именно её? Люди способны ожесточенно спорить о чём угодно:

    Блины без муки

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

    Этот шорткат служил мне хорошо, но как и все эвристики, он не совсем точно описывает реальность.

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

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

    Но эта дихотомия ложная, каждый человек гораздо сложнее чем один любой выбор, тем более такой «пакетный».

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

    Это невозможно. Из этого ресторана выйти невозможно, а чтобы не умереть с голода, что-то съесть всё-таки придётся. Непринятие решения — тоже решение (об этом чуть ниже).

    Если вы живете среди других людей, то политика будет влиять на вашу жизнь так или иначе. Действия и бездействия государства — следствие политики.

    Даже, казалось бы, нейтральные вещи навроде технологий на поверку оказываются политическими: Uber и проблема трудоустройства; SpaceX поднимает вопросы о националистичности освоения космоса (они по закону не могут нанять не-американцев, если хотят работать с NASA).

    Правильное решение — расширить меню мнений, или даже создать «шведский стол» мнений. Здесь метафора ломается, в обычном ресторане повлиять на формат ресторана довольно сложно, и люди там чаще голосуют ногами.

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

    Когда таких партий нет, то перед нами рисуют выбор, как в серии Доктора Кто про космического кита: продолжить всё как есть (Forget), или рискнуть всем (Protest). Если, говорит запись, 1% выберет протест, то программа будет прекращена и не поздоровится всем. Как оказывается в финале серии, выбор ложный, и никакого риска не было изначально. (Spoilers!)

    Protest or forget

    Молчание — это поддержка status quo. «Молчание — знак согласия» только потому, что вопрос формулируют те, кто сейчас у руля.

    Приведу бытовой пример из до-карантинных времён: вы с друзьями решаете в какую настолку сыграть. Скажем, трём из пяти всё равно, вы хотите Манчкин, а пятый — Ticket to Ride.

    Если задать вопрос «кто за манчкин?», то поднимется одна рука, ваша, и вроде как манчкин проиграл. Но если вы спросите «кто против манчкина?», то поднята будет по-прежнему одна рука, но в этот раз все усядутся играть в вашу игру.

    Фраза «политика — дело грязное» играет на руку тем, кто уже находится в политике: у них становится меньше конкурентов, меньше шанс проиграть.

    Это становится самосбывающимся пророчеством: если политика дело грязное, то хороший человек туда не пойдёт, а это значит, что там будут находиться только те, кого не смущают эта грязь, и именно так они будут обделывать дела. Люди в политике принимают решения о том, как придётся жить всем нам, поэтому ставить туда подлецов кажется особенно вредным. Грязными могут быть методы и конкретные люди, но не политика в целом.

    Один из моментов, которые я уже успел подметить, в том числе и в себе, заключается в фокусе на личностях. Это тоже ментальный шорткат — сложно изучить всё, но я доверяю А, А сказал, что это хорошо/плохо, значит так оно и есть.

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

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

    И если кто-то эксперт в чём-то одном, это не делает его экспертом во всех остальных областях автоматически. Людям нравятся люди, и когда нам кто-то нравится, то поверить гораздо проще. Так работает реклама, где знаменитости изображают, что им нравится какой-то продукт.

    Этот эффект, в свою очередь, не делает конкретные аргументы не-эксперта автоматически неправильными (скорее просто снижает вероятность правоты, не-эксперт рискует упустить факторы, о существовании которых он не подозревает), их надо оценивать отдельно от личности. В том числе и этот пост — я не эксперт в политике.

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

    На меня большое влияние оказывало то, с кем я говорил; поскольку своего мнения не было толком сформировано, то оно получалось очень зыбким: поговорил с этим, так надо революцию, поговорил с тем, так вроде и нормально, реформировать просто надо.

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

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

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

    Скоро грядёт «пакетное» голосование по поправкам в Конституцию, где Путину обнуляют сроки, чтобы тот смог «избираться» ещё и ещё.

    Екатерина Шульман говорит, что если вы против, то стоит приходить голосовать: минимального порога явки нет, а подделать бюллетень, в котором отмечено «против», сложнее, чем если такого бюллетеня нет изначально. Похожего мнения придерживается Максим Кац.

    Как, я надеюсь, очевидно из поста, мне нравится, когда есть дискуссия, и когда она не сводится к «я хороший, ты плохой», к одним эмоциям. Буду рад прочитать ваши мнения: публикуйте и присылайте ссылку.

    3 июня

    ·

    Эксперт не знает гораздо больше вещей, чем начинающий, — это и делает его экспертом.

    1 июня

    ·

    The Real Cause of the Sign In with Apple Zero-Day

    Аарон Пареки написал краткий анализ недавнего бага в Sign in With Apple, за который Apple выплатили $100 000.

    At the end of the day, this was a problem with Apple not verifying external input from a form submission.

    Just remember, this bug was a lack of form validation.

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

    I've never seen Apple apps using Sign in with Apple themselves, typically they use their own built in Apple ID authentication directly. However it’s certainly possible that Apple is moving towards Sign in with Apple even for their own apps, as that would be a huge step up in security compared to what they have now, for all the same reasons that entering passwords directly in applications is dangerous.

    Веб-сервисы Apple зачастую оставляют желать лучшего, и UX логина в icloud.com или appleid.apple.com стал бы сильно приятнее, если его заменить на Sign in with Apple (с опцией ввести логин/пароль, когда заходишь не со своих устройств).

    28 мая

    ·

    Вышел новый выпуска журнала Increment, в этот раз — про фронтенд!

    Это толстый журнал про технологии. Практически New Yorker или там NY Review of Books, но для нас. Можно читать бесплатно онлайн или же заказать себе настоящий бумажный.

    Порекомендую отдельно эссе When frontend means full stack Криса Койера, создателя CSS-Tricks.com и CodePen, про меняющуся роль фронтендера.

    Впрочем, заказать в Россию пока не удалось, но я написал им на почту. Такое встречал и раньше, многие магазины по-прежнему не доверяют российской почте. Если не выйдет, то закажу через пересылку. Историческая фигня!

    ·

    Если в redux-observable невнимательно следить, то легко получить эпик, который умрёт:

    const dyingEpic = (action$, state$, _) =>
      action$.pipe(
        filter(isActionOf(API_REQUEST)),
        switchMap(action => apiCallThatReturnsObservable(action.payload.id)),
        map(result => API_SUCCESS(result)),
        catchError(err => of(API_ERROR(err)))
      );
    

    Дело в том, что ошибка в таком случае дойдёт до .pipe, и он благополучно завершится, и новых экшенов обрабатывать не будет.

    const resilientEpic = (action$, state$, _) =>
      action$.pipe(
        filter(isActionOf(API_REQUEST)),
        switchMap(action => apiCallThatReturnsObservable(action.payload.id)
          .pipe(
            map(result => API_SUCCESS(result)),
            catchError(err => of(API_ERROR(err)))
          )
        );
    

    Здесь мы создаём вторую, независимую цепочку observable, и когда она упадёт с ошибкой, то switchMap всё равно сможет переключиться на новый.

    21 мая

    Всё равно опубликуй

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

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

    Никто не читает опровержений, и никто не пойдёт пересматривать архив с мыслью «может Тим сделал тот текст нормальным». Такой текст не пошарят, поэтому дальше первого круга читателей он не пойдёт, и интерес угаснет, как оранжевая линия на этом графике (а хочется как зелёная, конечно же).

    Как кажется / как хочется

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

    Проще всего это увидеть на примере с программистскими статьями: их часто находят через поисковики, и многие из них не теряют актуальности с годами.

    Я читаю много статей, не зная их автора: кто-то сослался, статья попала на Hacker News или Lobsters, или просто попалась в выдаче поисковика.

    И если читатель извлекает какую-то пользу из статьи, то чем дольше она опубликована, тем больше пользы приносит миру в целом.

    Польза растёт со временем

    (Конечно, всё не так просто, и здесь по-хорошему надо бы обсудить фильтрацию-до старых медиа и фильтрацию-после интернета)

    Поэтому если в тексте есть что-то ценное, но перфекционизм («эта статья ещё не отвечает моим высоким стандартам качества») мешает, то стоит заткнуть его на секунду и опубликовать «как есть».

    Возможно, окажется, что статья уже достаточно хороша и приносит пользу.

    Возможно, читатели и сами посоветуют, что стоит улучшить.

    Возможно, что статья полностью неправильна! И тогда потратить ещё несколько недель на «полировку» было бы неэффективным приложением сил.

    Многие ошибки и опечатки становятся очевидными только тогда, когда уже нажал кнопку Publish, поэтому стоит её нажимать пораньше и почаще.

    20 мая

    Будущее подкастов под угрозой

    О, это любопытные новости для мира подкастов: Джо Роган переносит свой подкаст в Спотифай, и в будущем тот будет доступен только там.

    Джо Роган ведёт один из крупнейших подкастов Joe Rogan Experience, многочасовые интервью со знаменитыми гостями (что подарило нам Маска с косяком и потрясающее видео Jordan Peterson vs Peter Jordanson). Топ-1 по статистике Stitcher. На Ютубе выпуски набирают миллионы просмотров. Это big deal.

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

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

    Мы видели разные стартапы, чьей основной идеей было сделать какой-нибудь подкаст Эксклюзивом, но пока что это были подкасты от звёзд, не имеющих отношения к подкастам. Такие подкасты могут привнести новую аудиторию в мир подкастов за счёт star power, но не очень хорошо конвертируют тех, кто уже слушает подкасты.

    Но у Джо очень лояльная аудитория, которую он растил больше десяти лет, — кто ж ещё будет терпеть ежедневные многочасовые подкасты, — поэтому есть риск, что большая часть из них последуют за Роганом, и всё получится.

    Проблема не в деньгах — я не против монетизации как таковой. Проблема в том, что Spotify — проприетарная платформа. Это плохо, потому что подрывает открытость экосистемы подкастов.

    Подкасты — один из немногих уголков интернета, живущий по правилам «старого» открытого Веба: а) кто угодно может создать подкаст (выложить RSS-фид и mp3-файлы на хостинг), и б) на него можно будет подписаться в любом подкаст-плеере. Есть общий каталог, которым владеет Apple, он помогает в discovery и никак не монетизируется ими.

    Успех Спотифая может превратить открытый веб в закрытую платформу, сродни тому, что произошло с блогами: авторы ушли в твиттер, фейсбук, инстаграм, и через пару лет Facebook выкрутил ручку монетизации на максимум (включая «плати, чтобы твой пост увидели подписчики»). Spotify — это walled garden, и подписаться из другого подкаст-плеера на подкасты, которые хостятся на их платформе, невозможно.

    Fuck Spotify, and fuck any “podcast” that’s only playable in one app.

    Marco Arment, подкастер и владелец подкаст-плеера Overcast, в твиттере

    Но подкасты могут зарабатывать деньги, оставаясь в открытой экосистеме. Многие подкасты монетизируются через дополнительный контент на Патреоне: он даёт приватный RSS, который втыкается в любой подкаст-плеер. Так делают Do by Friday и Chapo Trap House. Другой интересный вариант это полностью платный подкаст, с чем сейчас экспериментируют Бен Томпсон и Джон Грубер. Томпсон, по понятным причинам, недавно много писал, что open != free (открытый не равно бесплатный).

    Даже половинчатый успех Спотифая создаст проблемы подкастам, оставшихся вне: если 3 из 5 подкастов, которые слушаешь, монетизированы подпиской на Спотифай (чей UX биллинга отполирован огромной венчурной командой), а два свёрстаны обычными людьми, то бесить интерфейсом и в банковской выписке будут эти два. Это создаст дополнительное давление «не выделывайся и полезай в кузовок Спотифая» на подкастеров.

    Выстроить заново открытую платформу на выжженном поле будет крайне сложно, если вообще возможно. Так что буду с тревогой следить за успехами Джо Рогана.

    18 мая

    ·

    Бен Томпсон (Stratechery) сделал публичным свой ежедневный пост от 14 мая: Media, Regulators, and Big Tech; Indulgences and Injunctions; Better Approaches.

    Пост хорош целиком (как и остальные посты Томпсона), меня больше всего зацепил один эпизод:

    Google executives thought they’d found a way to dodge European regulation when, in Spain in 2014, they simply removed Google News from search results there rather than respond to regulators’ demands for compensation. But, in a sign of how things are shifting, when they tried a similar maneuver in response to France’s new regulation requiring payment for copyrighted “snippets” of news, Ms. de Silva pounced, ruling that the company’s take-it-or-leave-it approach was itself an abuse of market power. “We looked at what happened in Spain,” she said. “This is not really an avenue that is open to them because in our decision we asked them to maintain the content is as it is today.”

    Let’s be crystal clear about what is happening here: Google is being compelled to do business in France against its will, precisely because news publishers need Google more than Google needs them, upsetting the entire premise of this article. Moreover, in Smith’s telling, this is the alternative to simply paying up voluntarily. It sounds radical to suggest this is blackmail, but at what point is it lying to say otherwise?

    «Compelled to do business against its will» звучит как пассаж из Айн Ренд.

    14 мая

    ·

    Первые ощущения от deno, тезисно:

    • ранний восторг — как когда нода только появилась, освоение Дикого Запада
    • подходит для API-сервисов и особенно для консольных команд
    • deno install и один бинарник это киллер-фича
    • подходит для обучения программированию на джаваскрипте — один и тот же код можно запустить в браузере и консоли, включая импорты
    • плоский неймспейс Deno, не надо импортировать fs, path, etc.
    • вдохновлён Go, а написан всё-таки на расте
    • тайпскрипт из коробки — медленно, но правильно
    • версии либо прибиты гвоздями, либо не прибиты вовсе — semver не работает

    Написал на радостях пятьсот строк тайпскрипта в новом небольшом проекте.

    13 мая

    ·

    Процедура поиска возвращает -1, если элемента нет в массиве, -2, если совсем нет.

    4 мая

    ·

    Запишу очевидный вывод из лекции Хэмминга: роботы делают работу иначе, чем люди; вера, что результатом работы роботов, пишущих программы, будет код из читабельных for и if, близка к вере, что робот, делающий таблетки, будет перемещаться по аптеке, доставать травки из банок и толочь их в ступе.