Zotero создавался пять лет, а не пять минут — и это его спасло
The Slow Formation of Durable Software
К 20-летию запуска Zotero его создатель Дэн Коэн рассказывает, как инструмент для сбора и цитирования исследований, которым пользуются более 20 миллионов человек, родился из многолетних разговоров историков за большим столом. Если бы AI существовал в начале 2000-х, он не ускорил бы работу: команда ещё не знала, чего именно хочет, и не смогла бы написать связные промпты для LLM. Медленное формирование дало прочную основу вместо эфемерного продукта.
Если бы AI существовал в начале двухтысячных, мы не смогли бы ускорить создание Zotero, потому что не знали точно, чего хотим, и поэтому не смогли бы написать связные промпты для LLM.
- nickledave
Для тех, кому интересно:
Этот пост о Zotero.
Если вы не академик, вы можете не знать Zotero.
Это такое удовольствие — пользоваться им. Каждое приложение должно быть таким.
Я читаю в нём всё, включая книги, которые сейчас прохожу с https://teachyourselfcs.com/
Он также отлично делает снимки постов. Я постоянно использую его, чтобы сохранять посты с HackerNews и размечать их.
И он волшебным образом синхронизируется везде на всех устройствах и позволяет мне хранить в вебе слишком много файлов, как подобает сороке с СДВГ, без малейших усилий.
Короче, эта программа просто работает, и работает хорошо.
Поэтому когда кто-то из-за Zotero говорит о том, как разрабатывать ПО, я слушаю.
И это весёлый пост с историей. Вам стоит сохранить этот пост в Zotero, а потом прочитать.
- adamddev1
> Но это медленное формирование привело к созданию программного обеспечения, которое было долговечным, а не эфемерным, с прочным фундаментом, на котором можно было строить.
Люди говорят, что агентная разработка — это здорово, потому что можно выдать так много так быстро. Но это не значит, что что-то из этого будет по-настоящему хорошим и надёжным.
То, что действительно глубоко и основательно, в итоге используется экспоненциально больше, что делает линейные затраты дополнительного времени разработки (асимптотически) незначительными в уравнении затрат и выгод.
- _fw
Как человек, отвечающий за привлечение пользователей и рост компании с точки зрения клиентов и выручки, скажу, что это ОЧЕНЬ важный момент:
> «… мы не могли ускорить зачатие Zotero, потому что не знали точно, чего хотим, и поэтому не могли написать связные промпты для LLM».
Удивительно большая доля программных продуктов, а может, даже и бизнесов сегодня — это решения в поисках проблемы.
Иногда это нормально, но только иногда. А быть решением в поисках проблемы требует, чтобы всё /остальное/ было практически идеальным, если вы хотите добиться успеха.
То, что Zotero обращала внимание на то, чего хотели люди, и давала им это, и была ориентирована на рынок, — это доказуемо большая часть их успеха.
Сделать то, что люди хотят, НАМНОГО проще, чем заставить их захотеть то, что вы сделали.
- sdevonoes
> Сегодня программное обеспечение можно создавать более или менее мгновенно с помощью ИИ, для большой пользовательской базы или для себя, для любой цели или вообще без серьёзной цели.
Я не думаю, что это правда. Я работаю над средними и крупными фичами в компаниях, где около 1000 инженеров. Эти фичи обычно включают 50% работы в вашем домене плюс 50% работы в зависимых доменах. Вы не сможете ничего сделать без предварительного согласования с такими доменами. Есть обсуждения, компромиссы, дизайн-документы, комитеты по утверждению и т.д. ИИ может (и делает) помогать на каждом шаге, но это не волшебная палочка, которая может решить всё целиком с помощью хорошо составленного промпта.
В руках неопытных людей ИИ замедляет работу (например, сгенерированные ИИ роботизированные и длинные сообщения в Slack, которые ни к чему не ведут, PR, которые реализуют то, что написано в тикете Jira… но тикеты Jira без согласования бесполезны и т.д.)
- ORDINAND_PIZZA
хорошие вещи требуют времени, потому что они вырастают из чего-то вроде семени. по мере роста этого семени оно постигает свой локальный и глобальный контекст. любопытный и терпеливый садовник этого семени потратит много времени, рассматривая его, понимая его, пытаясь найти правильный способ дать маленькому растению прочную основу. с заботой и вниманием оно может вырасти в дерево и привлечь всевозможных других насекомых, животных и всяческую жизнь.
скорость убивает качество. буквально невозможно сделать что-либо хорошее быстро.
мы знаем это, и это по-прежнему применимо к программному обеспечению. хотя мы, возможно, и можем делать вещи быстрее, они никогда не станут хорошими (или великими) без невероятного количества заботы, терпения и радости от их создателя.
нет коротких путей к качеству. всегда потребуется много времени, чтобы сделать что-либо хорошее.