Первую версию я написал в пятницу днём на работе, когда обратил внимание, как много времени коллеги тратят на копипаст текста из Word в CMS и последующее форматирование. Такие однотипные действия еженедельно забирают часы рабочего времени. Я написал утилиту для автоматизации этого процесса, с учётом нашей стройной рабочей системы конвертации стилей Word в нужные классы CSS вместо мешанины HTML-тегов, которые выдаёт нативный экспорт Word. Программка получилась не идеальной — коллегам всё равно приходилось что-то поправлять, но ускорила рутинные операции примерно на порядок.
Понятно, что аналогичная проблема с конвертацией из Word в HTML есть у многих людей, поэтому в свободное время я написал реализацию с открытым исходным кодом, сначала на JavaScript, затем портировал на Python и Java. С тех пор мне без конца приходят благодарности от пользователей. Они рассказывают, сколько времени сэкономили благодаря программе: возможно, самым приятным стало сообщение от мужчины, который написал, что сэкономленные часы каждую неделю проводит со своим сыном.
Сложно посчитать общую сумму сэкономленного времени, но наверняка она в сотни раз больше, чем я потратил на создание инструмента.
Признаться, в последние годы я не так уж много времени уделяю проекту. Стабильность формата docx означает, что основная функциональность продолжает работать без изменений. Большинство людей используют одно и то же небольшое подмножество функций, а новые юзкейсы и функции используются всё реже с каждой добавляемой фичей. Проект по своей сути не требует особой поддержки. Поскольку он пытается сохранить семантическую информацию путём преобразования стилей Word в классы CSS, а не создания точной копии в HTML, как это делает Word, то можно спокойно игнорировать большинство фактических деталей форматирования.
Если сравнить, за что мне платили деньги десять лет карьеры в IT-индустрии, то разница ошеломляющая.
Вообще, я старался выбирать компании в областях, которые кажутся важными: продуктивность работы программистов, медицина, образование. Хотя моя продуктивность отличалась — некоторыми проектами горжусь, а в других мой вклад в лучшем случае был нулевым — мне трудно сказать, что совокупное влияние было больше, чем мой маленький хобби-проект.
Иногда я задаюсь вопросом, можно ли зарабатывать на жизнь с помощью mammoth. В принципе, донаты есть и сейчас, от регулярных пожертвований приходит примерно £1,15 в неделю, но я особенно не продвигаю эту опцию. Есть специфические случаи использования, более сложные, которые я не смогу реализовать в свободное время — например, поддержка уравнений — так что потенциально здесь можно заработать.
Однако не уверен, что это сделает меня счастливее. Если работать в одиночку, будет не хватать общения с коллегами, и вряд ли у меня хватит характера столько работать, чтобы обеспечить жизнь.
Но возникает какое-то ощущение, словно жизнь проходит мимо… Работа над инструментами, от которых сразу видна польза, даёт огромное удовлетворение. Есть множество областей, где простой софт может помочь людям — без всякого машинного обучения или стартапов с инвестициями. Я просто не знаю, как человеку вроде меня лучше всего внести свой вклад в это дело.
По теме:
Тим О’Рейли. Работа, которая имеет значение: основные принципы
Комментарии (66)
JediPhilosopher
27.08.2021 13:04+21Жизненно.
Из того, что я сделал за последние годы, по факту самым полезным - то есть тем, чем люди пользуются и потом реально используют результаты его работы - оказался мой хобби-проект по моделированию пешеходных потоков.
А все проекты что я делаю на основной работе - или какие-то заказные прототипы, которые дальше прототипов обычно не уходят и тихо теряются в потоке бюрократии, или всякие proof-of-concept для научных статей. Статьи даже кто-то цитирует потом иногда, но сам код после написания уже вряд ли кому-то нужен. Такое ощущение, что я мог бы просто получать за них деньги, ничего вообще не делать (ну разве что картинки для презентаций рисовать), и ничего бы особо не изменилось.
tzlom
27.08.2021 14:55+3Прикольный проект этот ваш AntRoadPlanner
JediPhilosopher
27.08.2021 16:15+3Ну это я удачно попал в тему, понятную всем, кто хоть иногда выходит из дома.
На Хабре я про него тоже писал https://habr.com/ru/post/257563/
chelovek-jpeg
27.08.2021 17:35+4помню, читал давным-давно, засело в памяти, всегда вспоминаю, когда вижу протоптанные тропинки и угловатые нелогичные брусчатки)
JediPhilosopher
27.08.2021 17:42+5Ну мы вот потихоньку ее развиваем. Иногда у нас даже кто-то за деньги анализ заказывает. Сейчас вот с RBI договариваемся, они хотят проекты пары своих новых ЖК обработать.
Вообще в целом спрос на комфортную среду с годами неспеша но растет. Так что лет через нцать все должно стать получше
user1er
27.08.2021 20:21Мои аплодисменты! Очень нужная тема будущего возможно в более сознательном обществе. Бываю во многих провинциях, регионах и странах СНГ и вечно ругаюсь что в нашем постсоветском пешеходные маршруты как минные поля. А пешком думается лучше. Кислородом что ли мозг обогащается эффективнее при ходьбе. И порой бегло глянув на перед маршрута вроде бы и ровной и аккуратной дороги на первый взгляд, призадумаешься и уйдёшь в себя. И здравствуй торчащий кирпич, яма или другая неровность. Спотыкнешься и летишь и ловишь баланс. Не особо конечно приятно. Это ладно нам мужской половине в удобной и более защищённой обуви. За женскую половину обидно, которые на каблуках дабы нам и себе нравится это явно то ещё испытание. Вам бы в будущем ещё и работу проверки качества по итогу принимать. Да и монополистами стандарта качества этой отрасли стать. Чтоб научить как в тех же странах Европы создавать дорожки на века. А то каменщики могут так накласть, что все ваши труды сведут на нет. Дураки и дороги, классика жанра бед наших)
drWhy
27.08.2021 21:55В Германии есть специальная должность — смотритель тротуаров, его работа состоит в хождении и отмечании всех мест для удобного спотыкания (торчащий больше необходимого бордюр, выдавленная корнем дерева плитка, трещина в асфальте и т.д.) на карте и последующем контроле правильности ремонта.
В наших реалиях поможет только принудительная буксировка прорабом тачки, гружёной цементом по всей длине сдаваемого тротуара, включая все бордюры.
0xd34df00d
27.08.2021 19:08-2А я понять не могу этого всего. Какая разница, сколько людей потом пользуется результатами вашего труда? ИМХО куда круче, когда ты решил интересную задачу, а ее применимость, и так далее — да и что с них?
mapron
27.08.2021 20:31+3Не знаю, мне наоборот, пусть я сделаю полную фигню, но если ей пользуются десятки людей — такой кайф. К сожалению мне не приходит в голову простых штук вроде «пакета ltrim», потому что я изобретаю что-то нужное паре человек в мире, но что поделать :|
0xd34df00d
27.08.2021 21:46+2Ну вот я как-то работал в одной крупной компании, про которую вы наверняка слышали, и у основного продукта которой где-то тыщ 200-300 пользователей, которым она помогает, значится, мэйк дисижонс, мув маркетс и всё такое. Пилили мы командой пять лет одну штуку, которая потом выкатилась этим пользователям, стала там очень видна, была основным хайлайтом еже-полугодового релиза, и всё такое. Мне было почти никак. Ну, да, прикольно, и, наверное, лучше, чем если бы она ушла в стол. Наверное.
Потом я на другом месте работы пилил инфру для трейдинга, это было много довольно хардкорного сиплюсплюса, и это было весело и очень круто, хотя пользователей у этой инфры — ну десяток трейдеров.
Сейчас я дома для себя лично занимаюсь никому не нужной ерундой, и это вот прям вообще офигенно и в кайф.
mapron
27.08.2021 21:49о, я помню про вашу никому не нужную ерунду, я НИХРЕНАШЕНЬКИ не смог в ней понять правда, но это офигенно круто) я вообще с восторгом вашу статью по формальным методам читал.
Вообще да, удовольствие из кучи факторов складывается, и любой может помножить его на ноль. И чрезмерная простота, и отсутствие потребилей (кому оно надо?) и прочее прочее. нет рецепта «сделай сложную штуку и будет каеф»)
Я вот пока все силы трачу на github.com/mapron/FreeHeroes — это вообще не понятно пока, нужно ли будет кому-то кроме пары людей, т.к. уже есть проект VCMI. но я почему-то получаю удовольствие.0xd34df00d
27.08.2021 22:32+5Хехе, спасибо. Я как раз потихоньку пишу статью из серии «что я понял за год ежедневной работы над формальными методами».
но я почему-то получаю удовольствие.
Вот ровно потому, что общественная полезность — далеко не единственный фактор.
Олсо, когда-то давно, когда я был мелким и глупым, я тоже считал общественную полезность, количество юзеров, всякое такое — короче, считал всё это очень важным. Парился, думал, как бы что-то удобное запилить в своём личном хобби-проекте, отзывы читал, впрягался, постил анонсы на всякие форумы-сайты. Однако, негативного фидбека разного рода (от «зделой билды под винду, это задача первостепенной важности, и ты говно, если ты её не решаешь!» через «интерфейс у тебя уродливый, потратить личные N десятков тыщ рублей и найми дизайнера» до «ты занимаешься ненужной фигнёй, лучше бы ты пилил $otherproject») было достаточно много для того, чтобы это было очень выжигающим опытом. В итоге, когда я забил на всю эту полезность, количество пользователей, и так далее, и стал работать с реквестами максимум по принципу «о, эта фича имеет нетривиальную реализацию, это было бы интересно сделать», мне стало сильно проще жить.
aram_pakhchanian
28.08.2021 08:16+2Еще от возраста зависит. Где-то в районе 40 многие задумываются о том, что просто жить в кайф как-то уже не в кайф.
nsmcan
27.08.2021 22:24+1Я на работе написал код визуального маппинга пулов на F5 LTM Load Balancer, который способен парсить, в том числе, и скриптовые правила iRules на TCL. Просто потому, что мне сказали, что этого функционала у вендора нет, и сделать его практически невозможно. Ничего, сделал, работает.
Сейчас в группе доступа к сайту маппинга более 800 человек, экономится вагон времени сетевиков, которых эти 800 человек раньше терзали, требуя предоставить текущие конфигурации приложений.
Очень, знаете ли, приятно осознавать пользу и нужность своего детища!
0xd34df00d
27.08.2021 22:34+1Очень, знаете ли, приятно осознавать пользу и нужность своего детища!
Написал тут рядом, что нет, далеко не всегда.
StjarnornasFred
28.08.2021 08:25А толку-то от того, что ты решил задачу, практический смысл которой минимален? Только время потратил. Совсем другое дело, когда ты создал что-то, что стало полезным, облегчило жизнь людям и тем самым стало частичкой прогресса человечества? Задачи же по написанию кода вообще не могут приносить удовольствия - радует лишь результат, а не процесс кодинга, который у меня лично вызывает лишь желание "вот бы поскорее окончательно перейти на no-code".
0xd34df00d
28.08.2021 09:17+6А толку-то от того, что ты решил задачу, практический смысл которой минимален?
Получил удовольствие.
К слову, если вы начнёте задавать вопросы «а толку-то» рекурсивно, то в итоге вы получите, что некоторые вещи придётся принять за желательные сами по себе.
Задачи же по написанию кода вообще не могут приносить удовольствия — радует лишь результат, а не процесс кодинга
Так вы тут про себя говорите или в общем? Потому что меня радует процесс, и, более того, нередко до результата доводить лень, особенно когда там остаётся рутина, которую понятно как делать.
Moldovich
02.09.2021 09:49Мой случай! Решил сложную часть и сидишь довольный, а чтоб это стало юзабельным ещё кучу всего нужно рутинного сделать, а ты уже порадовался вознаградил себя печенькой, и становится от того скучно )
myxo
28.08.2021 15:04+2Люди разные. Кому-то сложные задачи, кому-то чтобы другие люди пользовались, кому-то чтобы пользу обществу приносило. А кому-то только денег заработать, купить игрушку и получать удовольствие уже от неё. Люди разные и нравится им разное.
klvov
27.08.2021 21:11+3Классно!
Причем у нас (в СПб) уже кое-где начинает доходить, и вот в районе Уделки несколько лет назад стихийно протоптанные тропы во дворах забрали в поребрики, и все по ним ходят и радуются, ничего нового не протаптывают. А вот в другом месте (около Смольного, скажем так), каждый год перекапывают, и засевают газонной травой. Кончается закономерно: сначала голуби с воробьями все семена выклёвывают в тот же день, а потом народ продолжает ходить как ходил. Но нет, всё же должно быть параллельно и перпендикулярно, поэтому на следующий год история повторяется :)
JediPhilosopher
27.08.2021 23:51+8Про параллельность и перпендикулярность уже мемы делают.
Причем меня всегда удивляет, насколько архитекторы, чиновники и проектировщики сами про это не думают. При том что сами потом радостно бегают по газонам напрямик.
kilokanat
28.08.2021 12:46+1Посмотрел лекцию. Это действительно крутая идея. Про критический угол так вообще неожиданно было) +100500
mikelavr
27.08.2021 14:02+11Железячникам в этом смысле проще. Изделия, в которых есть мой код или схемотехника, за ~22 года работы в индустрии проданы тиражом более двух миллионов экземпляров (точнее я просто не знаю). И что удивительно, некоторые из них до сих пор находятся в серийном производстве.
JediPhilosopher
27.08.2021 16:10+5Ну тут скорее дело в том, в какой конторе работает человек и что именно она производит. Среди железнячников, думаю, тоже хватает тех, кто делает "в стол".
mikelavr
27.08.2021 16:54Согласен, тут есть элемент везения. Я работал в конторах, выпускающих относительно крупносерийную продукцию - десятки/сотни тысяч изделий в год.
maxlilt
27.08.2021 14:02+1В свое время в Word веб странички верстали, сохраняя в htm...
Foreglance
28.08.2021 07:53И лучше было не смотреть на то нагромождение html-а, сгенерированного Word-ом. FrontPage или вроде был ещё редактор, встроенный в Netscape - значительно лучше были.
vtal007
27.08.2021 15:401. Ворд вроде уже неплохо сохраняет в htm, но
2. Давно уже есть редакторы (плагины), которые чистят код при вставке из ворда
Steely
27.08.2021 23:44+3Прекрасная статья! Обычно люди недооценивают важность маленьких дел, ведь награду мозг выдает за любое ваше достижение, не смотря на его кажущуюся важность. Если вы видите что ваш труд важен для других людей - вы получаете удовольствие и становитесь счастливее.
Protos
28.08.2021 08:55Сложно посчитать общую сумму сэкономленного времени, но наверняка она в сотни раз больше, чем я потратил на создание инструмента
Добавьте отправку запроса к вам на сервер с количеством удаленных символов или значение какой-то иной метрики, сможете оценить через некоторое время и аппроксимировать в прошлое
ARfan
28.08.2021 10:15+4Мой самый окупившийся скилл, который сэкономил и продолжает экономить массу моего времени - это десятипальцевый метод печати на клавиатуре (печать «вслепую»). Вроде не очень сложное дело, один раз надо пройти программу, а эффект экономии времени потрясающий.
vit1251
28.08.2021 23:35-2И хотя в ней ничего выдающегося, меня не покидает ощущение, что простенький проект важнее и принёс больше пользы, чем десять лет работы в индустрии программного обеспечения.
В россии сегодня по данным ФНС около 3 млн. компаний в каждой компании хотя бы один компьютер с Microsoft Windows и Microsoft Word и это 20 тыс. (~289 USD) за операционную систему и 18 тыс. за офис (~ 249 USD) в результате имеем 120 милиардов рублей оборот рынка ПО, который каждые два года необходимо обновлять и компьютры выходят из строя и лицензии слетают и т.д. а значит нужно еще это все обслуживать, так что оценка эта сделана снизу. Понятное дело, что есть еще пираты и прочие явления, но мы не об этом...
У каждой компании расчитывающей на работу в современном цифровом мире существует сайт (а то и несколько) или инструмент взаимодействия с партнерами (административная панель или выгрузки через API). Возможны разные варианты, но часто есть цифровая витрина и это витрину должен кто-то содержать или это делегировано внешниму маркет плейсу или своя собственная поддержка сайта и конечно данные для этого магазина составляют в общих инструментах доступных на компьютерах, а что это за инструменты?
Теперь давай подумаем выгодно ли крупным компаниям наличие на рынке "полезных" утилиток? Создние таких программ может решить вопрос с покупкой продуктов или другого специализированного программного обеспечения при их высокой популярности и оставить без работы многих специалистов вроде копирайтера и системного администратора. Казалось бы простая задачка написания текста приносит корпорации деньги.
Создают рабочие места для молодых ИТ специалистов все те же компании. Вот теперь вопрос создавая такую полезную и практический полезную утилиту ты потенциально решил вопрос на милионы и выкинув с рынка продукты и специалистов. Выгодно ли это компаниям выпускажщим инструменты для сайтов? Думаю, что нет.
Возможно такие компании просто создают номинальные рабочие места и загружают рутиной талантливых ИТ специалистов по поддержке их заранее проблемных систем и продуктов, а не решают фундаментальные проблемы индустрии, так как это просто не имеет смысла (выгоды).
Увы этот вопрос очень сложный и наше правительство, которое затеяло борьбу с подобными проблемными продуктами начала этим заниматься слишком позно, когда рынок уже сформировался и на нем существуют крупные игроки хорошо встроенные в экономику. Сегодня многим сотрудникам сложно даже представить жизнь без привычных и популярных им инструментов, но возможно в этом есть и большой плюс.
В заключении хотел бы скзать, что нельзя судить этих людей за их невежество или следование общей культуре общества, так как они стали заложниками сложившейся системы и не способны самостоятельно из этой системы выпрыгнуть.
Программисты же так же становяться заложниками разных продуктов, которые просто уничтожают сегодня талантливые кадры делая из специалистов просто инженеров поддержки проблемного продукта.
StVorpensi
29.08.2021 11:31-2Я хотел на XSLT подобный конвертер написать, но за 1.5 евро в неделю даже кошки не родятся
shortcat
31.08.2021 08:41Из заголовка думал что из-за популярности инструмента ему начали предлагать места с на порядки большей зарплатой.
Alxdhere
31.08.2021 10:08Имею точно такое же ощущение от своего проекта Dike. Крошечное приложение под AutoCAD. Когда-то давно, наверное, в начале 2000 написал его за пару дней, а потом добавлял функционал по мере возникающих требований, портировал под новые версии, позже переписал с C++ на C# ради поддержки примитивов AutoCAD Civil 3D.
Так вот, обратная связь от этого продукта всегда приносила только теплые чувства. Продукту уже порядка 20 лет, а он живет. Поразительно живучий!
IvanSTV
04.09.2021 18:42Мало написать что-то нужное и полезное для людей, важно внедрить. Написал я кучу примочек для облегчения жизни себе и коллегам - коллеги не спешат пользоваться ими. Это ж надо сесть и разобраться, как ей пользоваться. А основная масса офисных работников ни хрена не любит думать что-то или узнавать и внедрять новое.
Логика странная: "Я буду зашиваться и ныть, как тяжело работается, но не потрачу полчаса на то, чтобы узнать, как использовать программку"
RigelNM
Интересно, почему англоязычные блоги всегда воспринимаются, как поток сознания: малоинформативный, не структурированный, без общей цели, с повторяющимися идеями. Как будто им платят за объем.
lair
Может быть, потому, что вы не целевая аудитория?
RigelNM
При чем здесь целевая аудитория, если весь смысл текста выражен в первом абзаце, а дальше все тоже самое пережевано разными фразами. Как и в большинстве англоязычных текстов, док. фильмов и интервью. На что я и обратил внимание.
lair
При том, что разные целевые аудитории под смыслом текста понимают разное.
Наверное, все-таки, в большинстве виденных вами. Потому что в наблюдаемом мной множестве это совсем не так.
Steely
Потому что если ты хочешь что-то донести до человека, это нужно многократно повторять под разными соусами
Druu
Дык прочитал первый абзац - остальное проскроллил за пару сек. Удобно.
kAIST
С сериалами такая же беда стала происходить. В 30 минутной серии пару минут какого то экшена, остальное время вода.
justalazyman
Человек тоже на 80% состоит из воды...
nixtonixto
Потому что иначе это будет просто заметка на полях, а не полноценная статья с комментариями.
chapai22
в англомире принято сжато и ясно излагать суть, причем конкретно и по делу.
Без отсебятины. Сначала выжимка. На одну четко определенную тему - а не валить в кучу разного. время - деньги.
Затем уже пояснять, разбавлять эмоциями, прочими своими соображениями и или данными и логикой.
Это удобно - в интервью, текстах, митингах, лекциях, дайджест в книге или исследовании. Можно поглядеть как случайный свидетель события его рассказывает в новостях. Собственно превью (во всех смыслах), даже трейлер кино, ровно то же самое. Чтоб человек быстро понял о чем речь, и решал продолжать..
В русскоязычном сначала поток сознания и личные мнения, впечатления. Много всего разного стараются утрамбовать в один заход. Затем как оно должно бы быть по мнению излагающего "на самом деле.. я считаю..". И только в конце, если доведется - немного, о чем речь. Дождаться фактов часто трудно.
Справедливости ради, в финконторах в америке митинги строят по русской схеме - сначала зарядка для хвоста и клятвы бизнесу, затем песни как все отлично идет в гору, потом прения о жизни и детях - и последние пять минут, (с неким удивлением и без желания), то, что инженер, запросивший сей митинг, хотел бы обсудить, ибо дело серьезное, важное, и в одно рыло не решаемо. :-)
В софтверных конторах, где все инженеры, первый вариант обычно.
Vesh
В типичной научной статье тоже весь смысл выражен в аннотации, а дальше все то же самое пережёвано разными фразами. Интересно, зачем они так делают?
alizar Автор
дикари-с…
trak
А взять шахматы. Все есть в названии! :)
ss-nopol
В речи многих людей превалируют речевые и смысловые штампы, буквальный перевод которых приводит в лучшем случае к замусориванию текста. Украшения речи при переводе превращаются в мусор. Людей же пишущих кратко и по делу крайне мало.