{"id":1620,"date":"2010-09-18T17:46:36","date_gmt":"2010-09-18T08:46:36","guid":{"rendered":"https:\/\/regex.info\/blog\/2010-09-18\/1620"},"modified":"2010-11-25T09:14:23","modified_gmt":"2010-11-25T00:14:23","slug":"breakdown-when-good-intentions-dont-scale","status":"publish","type":"post","link":"https:\/\/regex.info\/blog\/2010-09-18\/1620","title":{"rendered":"Breakdown: When Good Intentions Don&#8217;t Scale"},"content":{"rendered":"\n\n\n<div class='resize_warning' id='arw1620'>\n<b>NOTE<\/b>: Images with an <img class='raw' width='19' height='18' src='\/i\/s\/red_zoomup.gif'\/> icon next to them have been artificially shrunk to better fit your screen; click the icon to restore them, in place, to their regular size.\n<\/div>\n\n\n<div class='ic'><a name=\"026424\" href=\"\/i\/JF7_026424.jpg\"\n><img loading=\"lazy\" decoding=\"async\" src=\"\/i\/JF7_026424_sm.jpg\" width=\"690\" height=\"459\"\nalt=\"A Little Over-Exposure works out well.... sometimes from last autumn's outing that produced &amp;#8220; Thatched Roofs and Colored Canopies at the Himukai Shrine, Kyoto Japan &amp;#8221; -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\nid=\"i026424\"\ntitle=\"A Little Over-Exposure works out well.... sometimes from last autumn's outing that produced &amp;#8220; Thatched Roofs and Colored Canopies at the Himukai Shrine, Kyoto Japan &amp;#8221; -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\/><\/a>\n<br\/><span class=\"camera-info robots-nocontent\">Nikon D700 + Nikkor 14-24mm f\/2.8 @ 14 mm &mdash; <sup>1<\/sup><big>\/<\/big>1250 sec, <span class='f'>f<\/span>\/5, ISO 200 &mdash;\n<a href=\"\/imageinfo.cgi?url=http%3A%2F%2Fregex.info%2Fi%2FJF7_026424.jpg\">map &amp; image data<\/a> &mdash; <a href=\"\/blog\/proximity\/i\/JF7_026424.jpg\">nearby photos<\/a><\/span>\n<br\/><span class='caption'><span class='nobr'>A Little<\/span> Over-Exposure<\/span>\n<br\/>works out well.... sometimes\n<br\/>from last autumn's outing that produced &#8220;<a class='pt' href=\"\/blog\/2009-12-19\/1401\">Thatched Roofs and Colored Canopies at the Himukai Shrine, Kyoto Japan<\/a>&#8221;\n<\/div>\n\n\n<div class='bg-B' style='padding:13px 1.65em;margin:40px 0'>\n\n<p>This is a long post. <span class='nobr'>The executive<\/span> summary is:<\/p>\n\n<div style='margin: 0 5em 0 2em; color:#CCC; font-size: 105%'>\n\n<p>Lightroom plugin development consumed me to the point of breakdown, and\nsomething needs to change: <span class='nobr'>I'm going to<\/span> revert back to treating it like the\nhobby it is, doing what <span class='nobr'>I find<\/span> pleasure in (developing my plugins), but\navoiding what brings me stress (being subjugated to my mail and comment\nqueues).<\/p>\n\n<p>So, the end result is that my plugin development will continue, but if\nyou send me <span class='nobr'>a note<\/span> about the plugins, <span class='nobr'>I probably<\/span>\nwon't respond. Sorry.<\/p> <\/div>\n\n<\/div>\n\n\n<p>The verb &#8220;<i>to scale<\/i>&#8221; in computer science refers to <span class='nobr'>a solution's<\/span>\nability to handle dramatically increasing demands. Filtering spam by\npersonally inspecting each message, for example, works fine if you get only\n<span class='nobr'>a few<\/span> each day, but reaches its limits when you get hundreds <span class='nobr'>a day,<\/span> and\nbecomes totally unworkable if you got thousands. Personal inspection just\ndoesn't <i>scale<\/i> to those kinds of numbers, which is why in real life\nwe need <span class='nobr'>a totally<\/span> different approach, such as automatic filtering as <span class='nobr'>a\nfirst<\/span> line of defense.<\/p>\n\n<p>When I first started writing <a\nhref=\"\/blog\/lightroom-goodies\">my plugins for Adobe\nLightroom<\/a> and giving them away, <span class='nobr'>I was thrilled<\/span> to get <span class='nobr'>a response<\/span> back,\nwhether a &#8220;thanks!&#8221; or <span class='nobr'>a bug<\/span> report or <span class='nobr'>a feature<\/span> request. Engineers like to\nbuild things that people use, and though it was just <span class='nobr'>a hobby,<\/span> the\ngratification <span class='nobr'>I got<\/span> from the response was real. <span class='nobr'>But after<\/span> several years and\nmore than <span class='nobr'>a dozen<\/span> plugins, the constant flow of feedback from users became\nfairly overwhelming, and after <a\nhref=\"\/blog\/2009-02-03\/1134\">some fretting<\/a> about what\nto do, <span class='nobr'>I decided<\/span> to move to <a\nhref=\"\/blog\/2009-02-15\/1148\">a &#8220;donationware&#8221; model<\/a>\nthat kept my plugins free for everyone to use if they wanted, but also\nallowed people to easily express &#8220;thanks&#8221; through gifts. The extra &#8220;thanks&#8221;\nwould keep me encouraged though the more dreary aspects of this hobby.<\/p>\n\n<p>Unfortunately, it didn't work because it didn't address the real problem.<\/p>\n\n<p>As my plugins got more popular (and more plentiful; I'm up to 20+\nplugins now), so did the feedback of all kinds. <span class='nobr'>The problem<\/span> is that my\noriginal idea &mdash; that <span class='nobr'>I write<\/span> and maintain these plugins, and handle\nall feedback &mdash; <b>just doesn't <i>scale<\/i><\/b> to the number of\nfolks using them. <span class='nobr'>All the thanks<\/span> and gratification in the world doesn't put\nmore hours in the day, and <span class='nobr'>I eventually<\/span> found this summer that merely doing\nan initial triage on my daily plugin-related email &mdash; reading them and\nresponding to the low-hanging fruit &mdash; consumed 100% of my hobby\ntime.<\/p>\n\n<div class='ic'><a name=\"026382\" href=\"\/i\/JF7_026382.jpg\"\n><img loading=\"lazy\" decoding=\"async\" src=\"\/i\/JF7_026382_sm.jpg\" width=\"690\" height=\"459\"\nalt=\"Reed-Thatched Roofs Look Pretty From a Distance but show their rough nature when viewed up close -- Himukai Shrine -- Kyoto, Japan -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\nid=\"i026382\"\ntitle=\"Reed-Thatched Roofs Look Pretty From a Distance but show their rough nature when viewed up close -- Himukai Shrine -- Kyoto, Japan -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\/><\/a>\n<br\/><span class=\"camera-info robots-nocontent\">Nikon D700 + Nikkor 14-24mm f\/2.8 @ 24 mm &mdash; <sup>1<\/sup><big>\/<\/big>100 sec, <span class='f'>f<\/span>\/13, ISO 400 &mdash;\n<a href=\"\/imageinfo.cgi?url=http%3A%2F%2Fregex.info%2Fi%2FJF7_026382.jpg\">map &amp; image data<\/a> &mdash; <a href=\"\/blog\/proximity\/i\/JF7_026382.jpg\">nearby photos<\/a><\/span>\n<br\/><span class='caption'>Reed-Thatched Roofs Look Pretty From <span class='nobr'>a Distance<\/span><\/span>\n<br\/>but show their rough nature when viewed up close\n<\/div>\n\n\n<p>The vast majority of messages <span class='nobr'>I got<\/span> were about problems at best\ntangential to me (e.g. people having general problems with their systems or\nLightroom that happen to affect them while trying to use <span class='nobr'>a plugin,<\/span> or\nproblems at <span class='nobr'>a photo<\/span>-hosting site that they run into while using <span class='nobr'>a plugin<\/span>),\nwhich repeated over and over and over all day, every day, and on the\n<b>best<\/b> day, my hobby time was completely saturated by email and blog\ncomments that benefit only <span class='nobr'>a relative<\/span> few. Early in the summer <span class='nobr'>I made<\/span> <a\nhref=\"\/blog\/lightroom-goodies\/faq\"><span class='nobr'>a plugin<\/span> FAQ<\/a> and\nlinked to it from everywhere, but it made no apparent dent in the flow of\nmessages, and all summer, <span class='nobr'>I got no<\/span> new development done. <span class='nobr'>I'm a geeky<\/span>\nengineer and I <i>like<\/i> new development, and so the pleasure was now\ncompletely lost, replaced by an ever-increasing stress that grew with the\nnumber of messages awaiting my response.<\/p>\n\n<div class='ic'><a name=\"026396\" href=\"\/i\/JF7_026396.jpg\"\n><img loading=\"lazy\" decoding=\"async\" src=\"\/i\/JF7_026396_sm.jpg\" width=\"466\" height=\"700\"\nalt=\"( just a pretty picture from the same outing as the others ) -- Himukai Shrine -- Kyoto, Japan -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\nid=\"i026396\"\ntitle=\"( just a pretty picture from the same outing as the others ) -- Himukai Shrine -- Kyoto, Japan -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\/><\/a>\n<br\/><span class=\"camera-info robots-nocontent\">Nikon D700 + Nikkor 85mm f\/1.4 &mdash; <sup>1<\/sup><big>\/<\/big>4000 sec, <span class='f'>f<\/span>\/1.4, ISO 200 &mdash;\n<a href=\"\/imageinfo.cgi?url=http%3A%2F%2Fregex.info%2Fi%2FJF7_026396.jpg\">map &amp; image data<\/a> &mdash; <a href=\"\/blog\/proximity\/i\/JF7_026396.jpg\">nearby photos<\/a><\/span>\n<br\/><span class='subtle'>( just <span class='nobr'>a pretty<\/span> picture from the same outing as the others )<\/span>\n<\/div>\n\n\n\n<p>The stress and pressure was taking <span class='nobr'>a toll<\/span> on my life that came\nto <span class='nobr'>a head<\/span> after the added strain of <a\nhref=\"\/blog\/2010-08-29\/1616\"><span class='nobr'>a 21<\/span>-hour trip back to\nKyoto<\/a> and the ensuing jetlag. <span class='nobr'>My body just<\/span> gave out, and <span class='nobr'>I got<\/span> sudden\nintense pains in both arms that made it <a\nhref=\"\/blog\/2010-09-04\/1618\">impossible to use <span class='nobr'>a computer<\/span><\/a>.<\/p>\n\n<p>The prospect of never being able to use <span class='nobr'>a computer<\/span> again is <span class='nobr'>a fairly<\/span> big\ndeal to someone like me, especially since the photography <span class='nobr'>I enjoy<\/span> so much\nis now all digital. <span class='nobr'>I gave up<\/span> the computer for <span class='nobr'>a while<\/span> and consulted\n<span class='nobr'>a bunch<\/span> of doctors, and it seems that it's just stress-induced muscle\ncramping that can be healed, and thankfully not something irreversible like\ncarpel-tunnel. I've settled on <span class='nobr'>a particular<\/span> sports-massage therapist whose\ntreatments are both expensive and painful, but he clearly knows what he's\ndoing and the prognosis looks good.<\/p>\n\n<p>But it was a real wake-up call... all this stress and pain for <b><span class='nobr'>a\nhobby<\/span><\/b>! Something's got to change.<\/p>\n\n<p>(The photos on this page are from the same outing that also produced\nlast year's &#8220;<a href=\"\/blog\/2009-11-28\/1379\"\nclass='pt'>Gate of Disrepair<\/a>&#8221; post, which somehow seems\nfitting.)<\/p>\n\n\n<div class='ic'><a name=\"026416\" href=\"\/i\/JF7_026416.jpg\"\n><img loading=\"lazy\" decoding=\"async\" src=\"\/i\/JF7_026416_sm.jpg\" width=\"466\" height=\"700\"\nalt=\"Looking For a New Path -- Himukai Shrine -- Kyoto, Japan -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\nid=\"i026416\"\ntitle=\"Looking For a New Path -- Himukai Shrine -- Kyoto, Japan -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\/><\/a>\n<br\/><span class=\"camera-info robots-nocontent\">Nikon D700 + Nikkor 85mm f\/1.4 &mdash; <sup>1<\/sup><big>\/<\/big>3200 sec, <span class='f'>f<\/span>\/1.4, ISO 200 &mdash;\n<a href=\"\/imageinfo.cgi?url=http%3A%2F%2Fregex.info%2Fi%2FJF7_026416.jpg\">map &amp; image data<\/a> &mdash; <a href=\"\/blog\/proximity\/i\/JF7_026416.jpg\">nearby photos<\/a><\/span>\n<br\/><span class='caption'>Looking For <span class='nobr'>a New<\/span> Path<\/span>\n<div class='dbg' id='x596298'\nonmouseover='document.getElementById(\"x596298\").style.color=\"red\"; this.style.borderColor=\"red\"'\nonmouseout= 'document.getElementById(\"x596298\").style.color=\"inherit\"; this.style.borderColor=\"\"'><b>Portrait-Mode Desktop-Background Versions<\/b>\n<br\/>\n<span style='margin-left:auto; margin-right:auto; opacity:.6; filter:alpha(opacity=60);'>\n<span style='white-space:nowrap'><small><a class='quiet'\nhref=\"\/i\/JEF_040416_1050x1680.jpg\" title=\"1050 x 1680 desktop background image\">1050<span style='margin:0 0.1em'>&times;<\/span>1680<\/a>&nbsp;&nbsp;&middot;&nbsp;&nbsp;<a class='quiet'\nhref=\"\/i\/JEF_040416_1200x1920.jpg\" title=\"1200 x 1920 desktop background image\">1200<span style='margin:0 0.1em'>&times;<\/span>1920<\/a>&nbsp;&nbsp;&middot;&nbsp;&nbsp;<a class='quiet'\nhref=\"\/i\/JEF_040416_1600x2560.jpg\" title=\"1600 x 2560 desktop background image\">1600<span style='margin:0 0.1em'>&times;<\/span>2560<\/a><\/small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span>\n<\/span><\/div>\n<\/div>\n\n\n\n<p>For some, this would be the time to turn it into <span class='nobr'>a business,<\/span> moving to <span class='nobr'>a\nsales<\/span> model, hiring developers and customer-service reps, etc. <span class='nobr'>But I never<\/span>\nwanted to make this <span class='nobr'>a business.<\/span>.. <span class='nobr'>I love Lightroom<\/span> and photography and\nsoftware development, and this is my <b>hobby<\/b>, which is why I've always\nbeen adamant about not selling anything, not having customers.<\/p>\n\n<p>So my plan is this: once my arms are fully healed, <span class='nobr'>I'm going<\/span> to return\nto what <span class='nobr'>I find<\/span> pleasure in (blogging and plugin development) and more or\nless ignore what <span class='nobr'>I don't<\/span> find pleasure in (dealing with plugin feedback). This\nis either remarkably selfish or long overdue, depending on your point of\nview. <span class='nobr'>I certainly<\/span> don't want to leave people in <span class='nobr'>a lurch,<\/span> so <span class='nobr'>I plan<\/span> to be\nattentive to bugs, but <span class='nobr'>I will<\/span> no longer take the weight of the world on my\nshoulders and feel the need to respond to every request for assistance.<\/p>\n\n<p>I'm going to flush the hundreds of pending blog comments and emails,\nand will feel free to repeat that process from time to time.<\/p>\n\n<p>I'm going to return to the pleasurable roots of plugin development.\nTaking this approach benefits me, of course, but it should actually allow\nme to get more stuff done (fix more bugs, add more features, and release\nmore plugins) thereby benefiting many. <span class='nobr'>But if I<\/span> don't respond to your\nmessage, this is why. Sorry.<\/p>\n\n\n<div class='ic'><a name=\"026442\" href=\"\/i\/JF7_026442.jpg\"\n><img loading=\"lazy\" decoding=\"async\" src=\"\/i\/JF7_026442_sm.jpg\" width=\"466\" height=\"700\"\nalt=\"Unexpected Beauty Autumn cherry blossoms, as seen in &amp;#8220; Cherry Blossoms Amid the Fall Foliage &amp;#8221; -- Himukai Shrine -- Kyoto, Japan -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\nid=\"i026442\"\ntitle=\"Unexpected Beauty Autumn cherry blossoms, as seen in &amp;#8220; Cherry Blossoms Amid the Fall Foliage &amp;#8221; -- Himukai Shrine -- Kyoto, Japan -- Copyright 2009 Jeffrey Friedl, https:\/\/regex.info\/blog\/\"\/><\/a>\n<br\/><span class=\"camera-info robots-nocontent\">Nikon D700 + Nikkor 85mm f\/1.4 &mdash; <sup>1<\/sup><big>\/<\/big>1250 sec, <span class='f'>f<\/span>\/1.4, ISO 200 &mdash;\n<a href=\"\/imageinfo.cgi?url=http%3A%2F%2Fregex.info%2Fi%2FJF7_026442.jpg\">map &amp; image data<\/a> &mdash; <a href=\"\/blog\/proximity\/i\/JF7_026442.jpg\">nearby photos<\/a><\/span>\n<br\/><span class='caption'>Unexpected Beauty<\/span>\n<br\/>Autumn cherry blossoms, as seen in &#8220;<a href=\"\/blog\/2009-12-31\/1412\" class='pt'>Cherry Blossoms Amid the Fall Foliage<\/a>&#8221;\n<div class='dbg' id='x47664'\nonmouseover='document.getElementById(\"x47664\").style.color=\"red\"; this.style.borderColor=\"red\"'\nonmouseout= 'document.getElementById(\"x47664\").style.color=\"inherit\"; this.style.borderColor=\"\"'><b>Portrait-Mode Desktop-Background Versions<\/b>\n<br\/>\n<span style='margin-left:auto; margin-right:auto; opacity:.6; filter:alpha(opacity=60);'>\n<span style='white-space:nowrap'><small><a class='quiet'\nhref=\"\/i\/JF7_026442_1050x1680.jpg\" title=\"1050 x 1680 desktop background image\">1050<span style='margin:0 0.1em'>&times;<\/span>1680<\/a>&nbsp;&nbsp;&middot;&nbsp;&nbsp;<a class='quiet'\nhref=\"\/i\/JF7_026442_1200x1920.jpg\" title=\"1200 x 1920 desktop background image\">1200<span style='margin:0 0.1em'>&times;<\/span>1920<\/a>&nbsp;&nbsp;&middot;&nbsp;&nbsp;<a class='quiet'\nhref=\"\/i\/JF7_026442_1600x2560.jpg\" title=\"1600 x 2560 desktop background image\">1600<span style='margin:0 0.1em'>&times;<\/span>2560<\/a><\/small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span>\n<\/span><\/div>\n<\/div>\n\n\n\n","protected":false},"excerpt":{"rendered":"<p>This is a long post. The executive summary is:<\/p> <p>The verb \"to scale\" in computer science refers to a solution's ability to handle dramatically increasing demands. Filtering spam by personally inspecting each message, for example, works fine if you get only a few each day, but reaches its limits when you get hundreds a day, and becomes totally unworkable if you got thousands. Personal inspection just doesn't scale to those kinds of numbers, which is why in real life we need a totally different approach, such as automatic filtering as a first line of defense.<\/p> <p>When I first started writing [...]","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14,1,13,25],"tags":[],"_links":{"self":[{"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/posts\/1620"}],"collection":[{"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/comments?post=1620"}],"version-history":[{"count":0,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/posts\/1620\/revisions"}],"wp:attachment":[{"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/media?parent=1620"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/categories?post=1620"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/tags?post=1620"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}