<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
<channel>
	<title>Owocki dot com</title>
	
	<link>http://owocki.com</link>
	<description>Miscellaneous adventures in technology &amp; entrepreneurship</description>
	<lastBuildDate>Fri, 11 May 2012 20:03:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/OwockiDotCom" /><feedburner:info uri="owockidotcom" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>OwockiDotCom</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>On Identity</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/xUkMUyWNCS0/</link>
		<comments>http://owocki.com/2012/05/11/on-identity/#comments</comments>
		<pubDate>Fri, 11 May 2012 19:58:38 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Technology]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=503</guid>
		<description><![CDATA[The first thing people ask me when they haven&#8217;t seen me in a while is &#8220;How&#8217;s StepOut?&#8221;. I find it playfully amusing that, to others, I&#8217;m the &#8220;Indian online dating guy&#8221;. Not because I have any particular special amused sentiment towards India, online dating, or the web itself, just because it&#8217;s something I never thought [...]]]></description>
			<content:encoded><![CDATA[<p>The first thing people ask me when they haven&#8217;t seen me in a while is &#8220;How&#8217;s StepOut?&#8221;.  I find it playfully amusing that, to others, I&#8217;m the &#8220;Indian online dating guy&#8221;.  Not because I have any particular special amused sentiment towards India, online dating, or the web itself, just because it&#8217;s something I never thought I&#8217;d be doing professionally.  </p>
<h4>Work as Self</h4>
<p>I used to hate pitching the company.  Especially when, after the thrilling highs and sky-high expectations of being an early Techstars company, we were in <a href="http://www.avc.com/a_vc/2012/03/the-startup-curve.html">the trough of sorrow</a>.  Later, when <a href="http://www.inc.com/30under30/2011/profile-adam-sachs-kevin-owocki-and-dan-osit-founders-ignighter.html">we started to become more successful</a>, pitching the company became a source of pride for me.  Funny thing how it tickles your ego to brag about how successful your fledgling project is.  It makes you feel competent.  Successful.  Prideful.  Like a leader who, at a time when the economy is in trouble and uncertainty in the world is high, is lighting the way towards for a plausible  21st century for our country.</p>
<p>One thing I never expected when starting this company was how, when you&#8217;re the founder of a startup, so your personal identity is coupled with your project.  What&#8217;s dangerous about that is that startups, by their very definition, are extremely volatile.  If you&#8217;re not careful, you&#8217;ll be so filled with pride that you&#8217;ll be walking on sunshine on one day and the next you&#8217;ll be filled with seemingly insurmountable nervous energy and anxiety.  </p>
<p>I guess that&#8217;s why it&#8217;s so important to be <a href="http://owocki.com/2012/04/21/on-equanimity/">internally motivated</a>.  If your ego depends on your money, your success, or any other 21st century status symbols to construct your idea of yourself, you are going to end up manic depressive.  Especially since people have such an ability to normalize their personal situation with their surroundings.  The startup scene in a hot market like Palo Alto or New York is like &#8220;Keeping up with the Joneses&#8221; on crack.</p>
<h4>Immutable Identity</h4>
<p>I suppose who you end up as as an adult is not necessarily who you thought you would be when you were a child.  When I was filled with the naivety of a child, I used to think that my identity as an adult was immutable.  It wouldn&#8217;t ever change.  I&#8217;d be a grown up, and that&#8217;d be who I was.  I&#8217;d have a job.  And a car.  And I&#8217;d drive to work and work 8 hours, and then come home to my wife.  And that&#8217;d be the way it was for 40 years.   It&#8217;d be like in The Simpsons where Homer never gets any older, and Bart is always in the fourth grade.</p>
<p>But the thing is; life isn&#8217;t like that.  Identity is immutable.  It&#8217;s always changing.  It ebbs and flows.  Day over day. Month over month.   </p>
<p>In Zen Buddhism they teach the concept of the <a href="http://en.wikipedia.org/wiki/Original_face">Original Identity</a>.  A novice meditator, unable to clear his mind of thoughts, is trained to ask the question &#8220;<em>What did your face look like before you were born?</em>&#8220;.  It&#8217;s a proxy exercise for teaching understanding of the &#8216;self&#8217;.</p>
<p>Richard Linklater, director of the cult classic indie movie <a href="http://www.script-o-rama.com/movie_scripts/w/waking-life-script-transcript-linklater.html">Waking Life</a> puts it way more articulately than I ever could: </p>
<blockquote><p>
              You know that thing Benedict Anderson says about identity? No?</p>
<p>              Well, he&#8217;s talking about like, say, a baby picture.</p>
<p>              So you pick up this picture, this two-dimensional image, and you say, &#8220;That&#8217;s me.&#8221;</p>
<p>              Well, to connect this baby in this weird little image&#8230;</p>
<p>              with yourself living and breathing in the present,</p>
<p>              you have to make up a story like, &#8220;This was me when I was a year old,</p>
<p>              &#8220;and later I had long hair, and then we moved to Riverdale,</p>
<p>              and now here I am.&#8221;</p>
<p>              So it takes a story that&#8217;s actually a fiction&#8230;</p>
<p>              to make you and the baby in the picture identical to create your identity.</p>
<p>              And the funny thing is, our cells are completely regenerating every seven years.</p>
<p>              We&#8217;ve already become completely different people several times over,</p>
<p>              and yet we always remain quintessentially ourselves.
</p></blockquote>
<h4>What did your facebook look like before you were born?</h4>
<p>Do you ever feel like you&#8217;re looking in the mirror when you look at your facebook profile?  <a href="http://facebook.com/profile.php">Try it</a>. Your facebook profile is who you *choose* to present to the world.  Maintaining this page is the digital equivalent to doing your hair in the bathroom mirror in the morning.  </p>
<p>The earth-shattering thing about Facebook timeline is the explicit recognition by a major tech company of an idea as fundamentally radical as immutable identity.  The timeline interface gives you a cohesive view of your self over time.  Behind the glowing navigation on their UI is the potential for a lifetimes worth of nostalgia.  </p>
<p>No wonder people come back every day.</p>
<h4>What does postmodern personal private identity look like?</h4>
<p>If a postmodern consumer is trained to look at their Facebook profile for their public identity, where will they look to understand their personal private self?</p>
<p>That&#8217;s a good question.</p>
<p>Before you go to bed tonight.  Ask yourself:  What is your self?</p>
<p><iframe width="560" height="315" src="http://www.youtube.com/embed/zGv1Nay2z-U" frameborder="0" allowfullscreen></iframe></p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/xUkMUyWNCS0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2012/05/11/on-identity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://owocki.com/2012/05/11/on-identity/</feedburner:origLink></item>
		<item>
		<title>On Equanimity</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/u4EXBQDY0RM/</link>
		<comments>http://owocki.com/2012/04/21/on-equanimity/#comments</comments>
		<pubDate>Sat, 21 Apr 2012 22:51:20 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[Technology]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=457</guid>
		<description><![CDATA[One of the biggest challenges you&#8217;ll faces as a technical co-founder of a social startup is that of equanimity. You sit at the intersection of product and technology. The contrast in approaches in those areas is often under-stated and always under-recognized. In product, as CTO, you&#8217;re injected into the thought-stream torrent that results in strategic [...]]]></description>
			<content:encoded><![CDATA[<p>One of the biggest challenges you&#8217;ll faces as a technical co-founder of a social startup is that of equanimity.  </p>
<p>You sit at the intersection of product and technology.  The contrast in approaches in those areas is often under-stated and always under-recognized.   In product, as CTO, you&#8217;re injected into the thought-stream torrent that results in strategic decision making, yet have little-to-no influence on the decision making process.  Contrast with the technical world, where a startup CTO is given the keys to the car in regards to roadmap, technologies, and process.<br />
<img src="https://img.skitch.com/20120422-m52b5tn2a97p69f4syu8wi5kna.jpg" alt="Control Panel, envisioned from Star Trek" style="float:right; padding: 5px;" /></p>
<p>It&#8217;s a dichotomy of roles for sure.  </p>
<p>One might think that the divide between product strategy and tech is characterized by a language barrier between those that speak bits and bytes vs. those who don&#8217;t.   But I think characterizing such as a digital divide doesn&#8217;t do us justice.  Speaking code means that I am thinking about different things than those who don&#8217;t live and breath the technical minutiae of html tags, http sockets, 1s and 0s, hex color codes, if/else statements, do/while loops, free memory, and cpu utilization .</p>
<h2> When the edge cases have edge cases </h2>
<p>I am obsessed with edge cases.  What happens if feature X is used in Y way?  I&#8217;m constantly grasping with one of the core problems with running a social technology company. There is one variable that is greatly unknown to the technologist:  the user.  One&#8217;s mind is consumed with exploring the various possibilities as the blinking cursor haunts the empty source code file displayed in your IDE.  </p>
<p>Technological direction is a core challenge.  Wouldn&#8217;t it be cool if we built this feature with the latest &#038; greatest?  HTML5.  Node.js.  There&#8217;s a new ruby gem out that does that.  Can&#8217;t CSS3 do that?  Oh wait, we&#8217;re still supporting IE7.  Whats our browser penetration there?  Shit, we have a delivery deadline to meeting.    Better get coding.  Better to be wrong and ship than right and not shop, right?</p>
<h2> The other half </h2>
<p>How does the strategy team consume their time?  Your guess may be just as good as mine, but I&#8217;d like to think I&#8217;ve spent enough time with them to make an educated guess.  There are shades of grey, but I don&#8217;t think they don&#8217;t think about various edge cases as much as we do.  They speak in MBA-nglish.  Financials, legal, market share.  On one hand their work is entirely emotionally expressive of the vision of the team.  On the other extreme, supremely bland and detail oriented.  They&#8217;re immersed in e-mail, photoshop, word documents, excel spreadsheets, and management software.   Will the company have enough money to reach it&#8217;s next milestone?  Do we have enough mindshare amongst investors?  Amongst consumers?    Engineering needs to ship that *yesterday* or we&#8217;re going to go bankrupt, oh and don&#8217;t forget the reporting piece, we&#8217;ve got data to collect.</p>
<p>Which all reminds me of a supremely articulate answer to the question: <a href="http://rhizome.org/editorial/2011/may/11/seven-seven-guests-answer/">Do Artists and Technologists Create Things the Same Way</a>? by Kellan Elliot-McCrea</p>
<blockquote>
<p>I hesitate to generalize about all artists and all technologists. Which marks me right there, as an engineer by training. Trained to obsess about edge cases and tiny details — missing the forest for the trees makes no sense, the forest is just many individuals trees, repeated, at scale.</p>
<p>Which strikes to the heart of one of the key differences I’ve experienced watching and collaborating with artists.</p>
<p>As an engineer my creative act begins by removing ambiguity. What’s the simplest possible thing we can do? What’s the core of the idea? What’s the minimal viable product? When you say pigs should fly, is that sustained flight? Self powered? Do you mean flapping or simply moving through the air? Does flight imply control? Or would a porcine trebuchet get us to a version 1 beta? Maybe we could do some testing by putting a pig on top of a tall tower?</p>
<p>Artists I’ve worked with often take the opposite approach. How can we remove all the walls around this idea? How do we make the possibility space of this idea infinite? Flying pigs are really just an example of the impulse towards freedom that we’re trying to address, let’s not get too caught up on the pigs, or the flight.</p>
<p>Additionally as a technologist I’m often driven by an inner fantasy life of utility (and utopia) with a secret hope of broad impact. Artists seem compelled by the innate desire to express the inexpressible, and a secret hope of widely inspiring. Basely, the difference between being right and being true.</p>
</blockquote>
<p>What&#8217;s striking about web startups is, that as a web startup, your product *is* your art.</p>
<p>Since we founded StepOut, I&#8217;ve noticed that everyone cares deeply about the output of their time.  To some degree your identity is shaped by your hard work.  This is the same for designers, engineers, and the biz dev team.  If you&#8217;re an engineer of any level of passion, you care deeply about the product you are building, and such, emotionally connected to the design, the use, cases, the *flow* of the app.   It&#8217;s *hard* not to be extremely opinionated about it&#8217;s direction and the priorities associated with the vision.</p>
<p>Often, I try to remind myself of faith in my team to make the right decisions.  During that process, I&#8217;m remind myself of a personal trait that I&#8217;ve found encountered in a completely differently avenue of life, my daily meditation practice:</p>
<blockquote><p>Equanimity (n) : mental or emotional stability or composure, especially under tension or strain; calmness; equilibrium.</p></blockquote>
<p><img src="https://img.skitch.com/20120422-p8mmrnw21s397e1susnj2t3ecg.jpg" alt="Kirk and Spock" style="float:right; padding: 5px;" /></p>
<p>The key to equanimity as a startup CTO is to realize that you are building the knobs and levers that your co-founders are tweaking.  You are building the starship enterprise as it is being flown, but you are *not* Captain Kirk.  You&#8217;re Spock.  You provide the data that decisions are based upon.  Many times it&#8217;s delivered precisely.  But sometimes the data is wrong.  Sometimes a lever breaks.  Other times, something gets lost in translation.   </p>
<p>The curious thing about Spock is that as a Vulcan, he was *born* without emotions.   As a technologist, you *learn* to be in control of yours, have faith in your team, and be equanimitous.  It&#8217;s a skill that is not taught to engineers in trade school. </p>
<h2> Be Spock, Not Kirk</h2>
<p>It&#8217;s *hard* not to get emotionally attached to the results that the dozens of technical decisions you make daily deliver.   At the end of the day.  You&#8217;re tired.   Remind yourself that this is when you have to be equanimitous.</p>
<p>Sometimes the data you&#8217;re presenting to your co-founders validates the vision you have for your business.  Often times it doesn&#8217;t.  When it doesn&#8217;t that&#8217;s when you have to be equanimitous.  </p>
<p>We&#8217;ve made business strategy decisions based upon bad data before.  Data that I provided.  4 months into execution of a business strategy that is unbearably flawed because of a bug you introduced, you need to hang your shame at the front door.  Be equanimitous. </p>
<p>A member of your team is delivering good work.  But they have personal traits that are abhorrable.  Replacing them go would be hard.  You must need to be equanimitous.</p>
<p>Feedback is delivered in less-than-constructive language.  Take a deep breath and put the equanimity hat on.</p>
<p>Your job is to estimate specs so that your co-founders can decide what to build next.  Resources are limited, but you strongly prefer one ticket over another.  Equanimity up.  </p>
<p>Long hours wear on you.  Resources are thin.   You&#8217;re at war, your team is your army, and you&#8217;re in a trench.   Sometimes, it&#8217;s not easy to keep your cool.  But it is essential . Or, as Spock would say, &#8220;You must learn to govern your passions or they will be your undoing.&#8221;.</p>
<p><i> Note: Any information of proprietary value to my employer has been removed or approved, and this post has been approved by my employer. </i></p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/u4EXBQDY0RM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2012/04/21/on-equanimity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://owocki.com/2012/04/21/on-equanimity/</feedburner:origLink></item>
		<item>
		<title>“Create more value than you Capture”</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/ftfSH-TlAes/</link>
		<comments>http://owocki.com/2011/12/11/create-more-value-than-you-capture/#comments</comments>
		<pubDate>Sun, 11 Dec 2011 10:37:21 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=442</guid>
		<description><![CDATA[I have a new personal maxim. For myself. And a new personal standard for the people I spend time with, both socially &#038; professionally, in 2012. Create more value than you capture. ~Tim O&#8217;Reilly As we grow our business, I&#8217;m finding than the type of people that are worth my time follow this maxim, whether [...]]]></description>
			<content:encoded><![CDATA[<p>I have a new personal maxim.  For myself.  And a new personal standard for the people I spend time with, both socially &#038; professionally, in 2012.  </p>
<blockquote><p>Create more value than you capture.  ~<a href="http://www.slideshare.net/oreillylearning/create-more-value-than-you-capture-1597291">Tim O&#8217;Reilly</a></p></blockquote>
<p>As we grow our business, I&#8217;m finding than the type of people that are worth my time follow this maxim, whether consciously or unconsciously.  </p>
<p>Think about the traits of someone who creates more value than they capture..</p>
<ul>
<li>charisma (social value)</li>
<li>intellect (informational value)</li>
<li>humility (social value)</li>
<li>generosity (societal value)</li>
<li>leadership (societal value)</li>
<li>abundance (monetary &#038; otherwise)</li>
</ul>
<p>as opposed to someone that doesn&#8217;t.</p>
<ul>
<li>neediness (social non-value)</li>
<li>sloth  (monetary non-value)</li>
<li>cheapness (monetary non-value)</li>
<li>envy (emotional non-value)</li>
<li>greed (emotional non-value)</li>
</ul>
<p>Reads like a list of universally attractive / unattractive traits of human nature.</p>
<p>Take a look at businesses that create more value than they capture..</p>
<ul>
<li>search engines</li>
<li>social networks</li>
<li>NGOs</li>
<li>doctors</li>
<li>retail stores</li>
</ul>
<p>as opposed to ones that doesn&#8217;t.</p>
<ul>
<li>cable companies</li>
<li>banks companies</li>
<li>insurance companies</li>
</ul>
<p>Reads like a list of industries that are ripe for disruption huh?</p>
<p>I think that attraction to value must be something that&#8217;s deeply evolved into the psychology of all social animals.</p>
<p>After reading Steve Job&#8217;s biography this past week, I was struck at how much time he spent adding value to his products.   According to the book, his successor, John Sculley, was more interested in attempting to milk profits from Apple&#8217;s products than Steve.  When Steve came back in the late 90s, the turnaround was tremendous.  Great product = value to the user = success.</p>
<p>See you in 2012.</p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/ftfSH-TlAes" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2011/12/11/create-more-value-than-you-capture/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://owocki.com/2011/12/11/create-more-value-than-you-capture/</feedburner:origLink></item>
		<item>
		<title>#occupytheweb with us: Change the Terms of Online Contracts</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/oCaXyvBjPS8/</link>
		<comments>http://owocki.com/2011/12/03/occupytheweb-change-the-terms-of-online-agreements/#comments</comments>
		<pubDate>Sat, 03 Dec 2011 12:39:35 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[Technology]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=378</guid>
		<description><![CDATA[2 weeks ago, the #occupywallst protestors were been kicked out of zuccotti park in Manhattan. It&#8217;s time to move the protest to the web. It&#8217;s time to #occupytheweb I am announcing today the relaunch of TOSAmend with Law Professor, Zev Eigen. We&#8217;ve ironed out the kinks and now we think TOSAmend will hold up in [...]]]></description>
			<content:encoded><![CDATA[<p>2 weeks ago, the #occupywallst protestors were been kicked out of zuccotti park in Manhattan.  It&#8217;s time to move the protest to the web. It&#8217;s time to <a href="http://twitter.com/#!/search/occupytheweb">#occupytheweb</a></p>
<p>I am announcing today the relaunch of TOSAmend with  <a href="http://zeveigen.com/file/Welcome.html">Law Professor, Zev Eigen</a>.  We&#8217;ve ironed out the kinks and now we think TOSAmend <a href="#legal">will hold up in court</a> &#8211; <em> at least for some contracts </em>.  </p>
<h2 name="what" id="what"> What is TOSAmend? </h2>
<p><strong>TOSAmend</strong> is a free &#038; easy way to sign up to your favorite web-service while REJECTING their erroneous, overbearing, unreadable, terms of service.   TOS stands for Terms of Service.</p>
<p><a href="#download">Click here to to download it.</a></p>
<h2 name='wait' id="wait"> Wait, that&#8217;s legal?  </h2>
<p>After <a href="http://owocki.com/2011/09/02/tosamend-the-easy-way-to-modify-web-service-terms-of-service-agreements/">TOSAmend v1</a>, launched, we had <a href="http://www.reddit.com/r/law/comments/kqd4b/alright_rlaw_what_do_you_think_useful_tool_for/">some</a> <a href="http://tech.slashdot.org/story/11/09/24/1532258/tosamend-automates-counteroffer-terms-for-service-agreements">debate</a> about it&#8217;s legal viability. The consensus for v1 was <em>&#8220;Neat thought expiriment &#8211; but doubt it would hold up in court.&#8221;</em></p>
<p>Since that time, I teamed up with law professor <a href="http://zeveigen.com/file/Welcome.html">Zev Eigen</a> of Northwestern University School of Law, who specializes in research on online form-contracts, to improve the functionality of the applet to increase its legal viability</p>
<p><a href="#legal"> Click here to read the blog post on the legal nitty gritty, by two law professors (Zev Eigen and Florencia Marotta-Wurgler from Northwestern and NYU Law Schools respectively) </a></p>
<h2 name='whocares' id="whocares">Who cares?</h2>
<p>Take a look at any Terms of Service document.  They&#8217;re completely one-sided. When you check that &#8216;I Agree&#8217; button, you sign away even your most basic of rights.  They&#8217;re in legalise. They&#8217;re unreadable.   Even if you could read them, it would take you all day.  And you&#8217;d have to spend countless more hours just trying to understand the lawyer-talk in them.  And yet, they are REALLY important &#8211; Should any discrepancy between yourself and the other party be brought into a court of law, they will could potentially have a HUGE effect (monetary, or otherwise) on your life!</p>
<p>The #occupywallst protestors have been kicked out of zuccotti park in Manhattan.  It&#8217;s time to support the plight of average consumers everywhere by standing up to one-sided, non-negotiable terms of service documents.  It&#8217;s time to <a href="http://twitter.com/#!/search/occupytheweb">#occupytheweb</a></p>
<h2 name='download' id='download'>I want to download TOSAmend</h2>
<p>I thought you&#8217;d never ask.  </p>
<ol>
<li>Check out the <a href="http://www.scribd.com/doc/74322318/Short-Form-Consent-TOSAMEND2">terms of your use of this bookmarklet</a></li>
<li>pause to note the irony of TOS for TOSAmend, and continue only if you accept these terms.</li>
<li>Drag this link into your browser bookmark bar: <a href="javascript:(function(){document.body.appendChild(document.createElement('script')).src='http://www.tosamend.com/bookmarklet.js';})();">TOSAmend</a> </li>
<li>Visit the <a href="http://www.myspace.com/signup">signup form of your favorite websites</a> and TOSAmend it.</li>
<li>TOSAmend will auto-generate an email that will be sent to the company on the your behalf.</li>
</ol>
<p><em>I&#8217;ve tested in Chrome and Firefox.  IE version forthcoming.</em></p>
<p>When you use the TOSAmend bookmarklet, it will modify the TOS on the page, and pass the amended terms back to the site (via the &#8216;TOSAmended&#8217; GET or POST parameter), where the web-service can either accept or reject them.</p>
<p>Here&#8217;s a 15 second demo of this bookmarklet in action:</p>
<p><iframe src="http://www.screenr.com/embed/lIzs" width="650" height="396" frameborder="0"></iframe></p>
<h2 name='joinus' id="joinus">Get Involved</h2>
<ol>
<li>Follow <a href="http://twitter.com/tosamend">@TOSAmend</a> on twitter. </li>
<li>Join our <a href="http://groups.google.com/group/tosamend">google group</a>.</li>
<li>Check out <a href="http://www.facebook.com/TOSAmend">facebook.com/TOSAmend</a>. </li>
<li><a href="https://github.com/ksowocki/TOSAmend/">Contribute to the codebase</a> </li>
<li>Oh, and I&#8217;m <a href="http://twitter.com/owocki">@owocki</a> on twitter.  Happy to answer your questions there. </li>
</ol>
<h2 name='share' id="share">#OccupyTheWeb with us.  Spread The Word</h2>
<ol>
<li>
<a href="https://twitter.com/share" class="twitter-share-button" data-text="#occupytheweb with @TOSAmend - the easy way to stand up for your rights online http://www.TOSAmend.com" data-count="vertical" data-via="TOSAmend">Tweet about @TOSAmend</a><script type="text/javascript" src="//platform.twitter.com/widgets.js"></script>
</li>
<li>
Like TOSAmend on Facebook</p>
<div id="fb-root"></div>
<p><script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script></p>
<div class="fb-like-box" data-href="http://www.facebook.com/TOSAmend" data-width="292" data-show-faces="true" data-stream="false" data-header="false"></div>
</li>
</ol>
</ol>
<h2 name="legal" id="legal">Read the Blog Post</h2>
<p>Many thanks to <a href="http://zeveigen.com/file/Welcome.html">Zev Eigen</a> and collaborator <a href="https://its.law.nyu.edu/facultyprofiles/profile.cfm?personID=27875">Florencia Marotta-Wurgler</a>, who have authored a short piece about the legal issues relating to using TOSAmend.  </p>
<p>Download the paper in <a href="http://owocki.com/wp-content/uploads/2011/11/Eigen_Marotta_Wurgler_TOSAmend.pdf">.pdf</a> or <a href="http://owocki.com/wp-content/uploads/2011/11/Eigen_Marotta_Wurgler_TOSAmend_Blog.docx">.doc</a> format, or read the full text below.</p>
<p>Click HERE to download Professor Eigen&#8217;s research about form-contracts.  link:  <a href="Click HERE to download Professor Eigen's research about form-contracts.  link:  http://papers.ssrn.com/sol3/cf_dev/AbsByAuth.cfm?per_id=370999 Click HERE to download Professor Marotta-Wurgler's research about form-contracts.  link: http://papers.ssrn.com/sol3/cf_dev/AbsByAuth.cfm?per_id=370999">http://papers.ssrn.com/sol3/cf_dev/AbsByAuth.cfm?per_id=370999</a></p>
<p>Click HERE to download Professor Marotta-Wurgler&#8217;s research about form-contracts.  link: <a href="http://papers.ssrn.com/sol3/cf_dev/AbsByAuth.cfm?per_id=352742">http://papers.ssrn.com/sol3/cf_dev/AbsByAuth.cfm?per_id=352742</a></p>
<p><a title="View What if Consumers Could Change the Terms of Online Contracts? on Scribd" href="http://www.scribd.com/doc/73665819/What-if-Consumers-Could-Change-the-Terms-of-Online-Contracts" style="margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;">What if Consumers Could Change the Terms of Online Contracts?</a><iframe class="scribd_iframe_embed" src="http://www.scribd.com/embeds/73665819/content?start_page=1&#038;view_mode=list&#038;access_key=key-wwygl1v4il3h9o5z0bw" data-auto-height="true" data-aspect-ratio="0.772727272727273" scrolling="no" id="doc_4399" width="100%" height="600" frameborder="0"></iframe><script type="text/javascript">(function() { var scribd = document.createElement("script"); scribd.type = "text/javascript"; scribd.async = true; scribd.src = "http://www.scribd.com/javascripts/embed_code/inject.js"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(scribd, s); })();</script></p>
<h2 name="comments" id="comments">What do you think?</h2>
<p>Leave a comment below or <a href='http://www.twitter.com/owocki'>@reply me on twitter</a></p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/oCaXyvBjPS8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2011/12/03/occupytheweb-change-the-terms-of-online-agreements/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://owocki.com/2011/12/03/occupytheweb-change-the-terms-of-online-agreements/</feedburner:origLink></item>
		<item>
		<title>Startups @ Scale: Make the abstract actionable</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/1EatODTjdG0/</link>
		<comments>http://owocki.com/2011/10/09/startups-scale-make-the-abstract-actionable/#comments</comments>
		<pubDate>Sun, 09 Oct 2011 21:44:38 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[startups]]></category>
		<category><![CDATA[devops]]></category>
		<category><![CDATA[startupsatscale]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=337</guid>
		<description><![CDATA[This post is pretty technical. If you don&#8217;t cross your 1s or circle your 0s, then it&#8217;s probably best to move on to something more fruitful for you, business monkey. I&#8217;ve always thought that a major challenge in building a dev team is continuously improving how effectively you can respond to changes in your metrics [...]]]></description>
			<content:encoded><![CDATA[<p><i>This post is pretty technical.  If you don&#8217;t cross your 1s or circle your 0s, then it&#8217;s probably best to move on to <a href="http://cdn.pimpmyspace.org/media/pms/c/fl/lq/q8/onkey.gif">something more fruitful for you, business monkey</a>.  </i></p>
<p>I&#8217;ve always thought that a major challenge in building a dev team is continuously improving how effectively you can respond to changes in your metrics day-to-day.  One of those tasks I face is a sweep daily of our error logs.  If you, like us, run a website, and you&#8217;re <a href="http://owocki.com/2011/06/22/startups-scale-log-everything-then-you-can-manage-anything/">properly logging everything</a>, then your error logs probably look something like this:</p>
<blockquote>
<p><i>(These error logs have been scrubbed of any actual usage or error data, and their use has been approved by my employer)</i></p>
<p>Oct  7 01:34:14 10.182.41.217 httpd:	app14	JSError			http://www.DOMAIN.com/Inbox/	31732521Script error.0	Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.23) Gecko/20110920 Firefox/3.6.23	[version1.xxx]	[OnErr:]	[_GET:uerystring:EL/,E:JSError,EI:http://www.DOMAIN,EI2:31723	Script erro,type:error]</p>
<p>Oct  7 01:34:22 10.182.36.33 httpd:	app1	404		http://ww1.DOMAIN.com/http://ww1.DOMAIN.com/Referred from 	UID	Email: None	IP:66.249.171.179	Location &#8211; Los Altos, CA		[version1.xxx]</p>
<p>&#8230; etc ad nauseum  &#8230;.</p>
</blockquote>
<h1> The problem: a lack of actionable information </h1>
<p>Confusing?  Probably.  Boring? Absolutely.  I&#8217;d be willing to bet that your eyes just skipped right past those error logs to the beginning of this paragraph.  Getting one of these in my inbox every morning is pretty-much a recipe for a wild goose hunt every morning.  (and not-so-fun one at that)  It&#8217;s a real <a href=http://en.wikipedia.org/wiki/Gumption_trap>gumption trap</a> for my team.  </p>
<p><a href="http://twitter.com/#!/bbrinck/status/2540072992"><img style="width:600px" src='https://img.skitch.com/20111007-tx98sm3wwmrbe2ppbkiw4hrb63.jpg'/></a></p>
<h1> Providing Value </h1>
<p>This post is all about making that wild goose chase into an effective process.  With that in mind, I recently delivered a project to increase the effectiveness of Ignighter&#8217;s error log maintenance process.  There are some questions that I&#8217;ve set out to automatically answer for my team, and that&#8217;s what this post is about.   </p>
<ul>
<li>What&#8217;s the root cause of each error?  </li>
<li>What is it&#8217;s urgency?  </li>
<li>How often is it happening?  </li>
<li>What does the timeline for these errors look like?  </li>
<li>Who&#8217;s in charge of figuring them out?</li>
</ul>
<p>If you ever work for <a href="http://www.ignighter.com/jobs">an Ignighter development team</a>, here is an example of an error log email you might get from me.</p>
<blockquote>
<h3> Subject: Error Action Items for Thursday 10/06/2011 (109629 items) 	 </h3>
</blockquote>
<blockquote>
<h3>LEADERBOARD:</h3>
<pre>
	<strong>kevin</strong> : 941 	(801 phpErr's,140 SQL errs )
	<strong>steve</strong> : 56427 	(56408  unserializableClsoure errs, 2 Redis Errs, )		- you're way past <a href=http://imgs.xkcd.com/comics/ballmer_peak.png>your ballmer peak bro</a>
	<strong>mike</strong> : 59529 	(56468 EmailWithoutMessageException errs, 3061 404 errs)		- every day this happens, a fairy dies
	<strong>john</strong> : 353 	(353 phpOutOfMem errs )		- less than 500.  keep it up!
	<strong>joe</strong> : 20975 	(20975 JSError's )		- you MUST watch <a href=http://www.youtube.com/watch?v=oHg5SJYRHA0>this video</a> today ==>
</pre>
</blockquote>
<p>The error log aggregator is the arbitrator of cleanup responsibility.  The first thing in the email &#8216;leaderboard&#8217; which heckles a developer if a service they are maintaining has many errors!  That means I don&#8217;t need to send needy emails to a developer asking them to clean things up anymore.  It&#8217;s worth noting that heckling your team will only work if you have the kind of culture that supports lighthearted fun and constructive criticism.   ( we do )</p>
<p>Next, we display the most prevalent items in the error log.  Nothing fancy here, but I now see what the most pressing issues are.</p>
<blockquote>
<p><i>(Again, These error logs have been scrubbed of any actual usage or error data)</i></p>
<h3>LOG SUMMARY (20975 items):</h3>
<pre>	56468	<a href="#EmailWithoutMessageException">EmailWithoutMessageException</a>
	56408	<a href="#unserializableClsoure">unserializableClsoure</a>
	20975	<a href="#JSError">JSError</a>
	2466	<a href="#404">404</a>
	800	<a href="#phpErr">phpErr</a>
	353	<a href="#phpOutOfMem">phpOutOfMem</a>
	140	<a href="#SQL">SQL</a>
	2	<a href="#RedisConnectInstance">RedisConnectInstance</a> </pre>
</blockquote>
<p>From there, I aim to provide as much actionable detail about each error type as possible for the critical types.  See below example of MySQL errors (of which much Ignighter-specific information has been scrubbed).  </p>
<p><img src="https://img.skitch.com/20111009-x5c5kg4wgp2gqiaqh4k695km12.jpg"/></p>
<h1> So, what? </h1>
<p>Now that we&#8217;ve all aware of the volume/priority/assignee of each type of issue our system is encountering, we&#8217;re all much more efficient.</p>
<p><strong>Want to build your own?</strong> If you&#8217;re any good with <a href="http://en.wikipedia.org/wiki/AWK">awk</a> or <a href=http://owocki.com/2011/06/22/startups-scale-log-everything-then-you-can-manage-anything/>graphite</a>, you could probably do the same for your team with a modest hour or two investment.  </p>
<p>How does your team keep on top of application metrics and logs?  Leave a comment below.</p>
<p><i>If you&#8217;re a developer who is looking to work in an efficient, <a href="http://twitter.com/#!/ignighter/ignighter-team">fun</a>, environment that <a href=http://owocki.com/2011/06/22/startups-scale-log-everything-then-you-can-manage-anything/>empowers you</a>, check out <a href=http://www.ignighter.com/jobs/>Ignighter&#8217;s open positions.</a>.</i></p>
<p><i> Note: The usage of any information of proprietary value to my employer has been removed, and this post has been approved by my employer. </i></p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/1EatODTjdG0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2011/10/09/startups-scale-make-the-abstract-actionable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://owocki.com/2011/10/09/startups-scale-make-the-abstract-actionable/</feedburner:origLink></item>
		<item>
		<title>Techstars Bloomberg TV Show</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/WJkbeJsJ_pg/</link>
		<comments>http://owocki.com/2011/09/18/techstars-bloomberg-tv-show/#comments</comments>
		<pubDate>Sun, 18 Sep 2011 21:54:16 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=331</guid>
		<description><![CDATA[TechStars (I&#8217;m an alumni) has a 6-episode series about startups and entrepreneurship on Bloomberg TV. Watch on cable or online, below. These guys gave Ignighter it&#8217;s start, and Adam, Dan, and I are more than thankful to executive director David Cohen for the doors he&#8217;s opened for us. If you&#8217;re interested in entrepreneurship or starting [...]]]></description>
			<content:encoded><![CDATA[<p>TechStars (I&#8217;m an alumni) has a 6-episode series about startups and entrepreneurship on Bloomberg TV. Watch on cable or online, below.</p>
<p><script src="http://player.ooyala.com/player.js?embedCode=9jaG9zMjoPv3ntEdibYMghEaGEpD9W1D&#038;autoplay=0&#038;video_pcode=oza2w6q8gX9WSkRx13bskffWIuyf&#038;width=500&#038;height=360&#038;deepLinkEmbedCode=9jaG9zMjoPv3ntEdibYMghEaGEpD9W1D"></script></p>
<p>These guys gave Ignighter it&#8217;s start, and Adam, Dan, and I are more than thankful to executive director <a href="http://twitter.com/davidcohen">David Cohen</a> for the doors he&#8217;s opened for us.  If you&#8217;re interested in entrepreneurship or starting your own web company, I strongly encourage you to <a href="http://www.techstars.org/apply">apply to Techstars</a>.</p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/WJkbeJsJ_pg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2011/09/18/techstars-bloomberg-tv-show/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://owocki.com/2011/09/18/techstars-bloomberg-tv-show/</feedburner:origLink></item>
		<item>
		<title>TOSAmend: The easy way to modify web service Terms of Service agreements</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/_pyBiuLN65A/</link>
		<comments>http://owocki.com/2011/09/02/tosamend-the-easy-way-to-modify-web-service-terms-of-service-agreements/#comments</comments>
		<pubDate>Fri, 02 Sep 2011 21:02:37 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[democracy on the internet]]></category>
		<category><![CDATA[digital civil disobedience]]></category>
		<category><![CDATA[power to the users]]></category>
		<category><![CDATA[proof of concept]]></category>
		<category><![CDATA[thought experiment]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=270</guid>
		<description><![CDATA[Have you ever read any of the terms of service documents you agree to when you sign up to your favorite web apps? Of course you don&#8217;t.  Those documents are tens, sometimes hundreds, of pages long. You sign away even your most basic of rights.  They&#8217;re in legalise.  Even if you could read them, it [...]]]></description>
			<content:encoded><![CDATA[<p>Have you ever read any of the terms of service documents you agree to when you sign up to your favorite web apps?</p>
<p><a href="http://www.speedofcreativity.org/2011/03/16/terms-of-service-agreements-users-dont-read/">Of course</a> <a href="http://www.techdirt.com/articles/20100702/18344510066.shtml">you don&#8217;t</a>.  Those documents are tens, sometimes hundreds, of pages long.  You sign away even your most basic of rights.  They&#8217;re in legalise.  Even if you could read them, it would take you all day!  And you&#8217;d have to spend countless more hours just trying to understand the lawyer-talk in them!.  And yet, they are REALLY important!  Should any discrepancy between yourself and the other party be brought into a court of law, they will could potentially have a HUGE effect (monetary, or otherwise) on your life!</p>
<p>What if, instead of just blindly agreeing to a TOS document you haven&#8217;t read, you could just amend the TOS right there on the spot? Right there on the sign-up form.</p>
<p>Did you know that, when you&#8217;re signing a legal contract in the United States, you have the right to <del>strikeout</del> any clause that you do not understand or do not agree to? <a href="http://lawyerkelly.com/?p=83">[source]</a> With the TOSAmend bookmarklet, you can also easily do this with web-based contracts and terms of services.</p>
<p>With this handy little javascript bookmarklet I&#8217;ve developed, you can.   Drag and drop this bookmarklet into your browser bookmark bar to use TOSAmend.   <em>I&#8217;ve tested in Chrome and Firefox.  IE version forthcoming.</em></p>
<blockquote><p><a href="javascript:(function(e,a,g,h,f,c,b,d){if(!(f=e.jQuery)||g&gt;f.fn.jquery||h(f)){c=a.createElement(&quot;script&quot;);c.type=&quot;text/javascript&quot;;c.src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/&quot;+g+&quot;/jquery.min.js&quot;;c.onload=c.onreadystatechange=function(){if(!b&amp;&amp;(!(d=this.readyState)||d==&quot;loaded&quot;||d==&quot;complete&quot;)){h((f=e.jQuery).noConflict(1),b=1);f(c).remove()}};a.documentElement.childNodes[0].appendChild(c)}})(window,document,&quot;1.3.2&quot;,function($,L){function getSelectedText(){if(window.getSelection){return window.getSelection()}else if(document.getSelection){return document.getSelection()}else if(document.selection){return document.selection.createRange().text}};var text=getSelectedText();if(text!=''){var foundin=$('*:contains(&quot;'+text+'&quot;):last');if(foundin.length&gt;0){foundin.html('i agree that i like cheese sandwiches. (via &lt;a href=&quot;http://www.tosamend.com&quot;&gt;TOSAmend&lt;/a&gt;) &lt;input type=&quot;hidden&quot; name=&quot;TOSAmended&quot; value=&quot;1&quot;&gt; &lt;img src=&quot;http://www.owocki.com/TOSAmended.php?url='+document.location.href+'&quot; style=&quot;width:1px; height:1px;&quot;/&gt;  ');alert('TOS Amended')}}else{alert('Could not find TOS text.  Please highlight the text area you\'d like to amend.')}  });">TOSAmend</a></p></blockquote>
<p>When you use the TOSAmend bookmarklet, it will modify the TOS on the page, and pass the amended terms back to the site (via the &#8216;TOSAmended&#8217; GET or POST parameter), where the web-service can either accept or reject them.</p>
<p>Here&#8217;s a 30 second demo of this bookmarklet in action:</p>
<p><iframe src="http://www.screenr.com/embed/8hBs" width="650" height="396" frameborder="0"></iframe></p>
<p><strong>Full Disclaimer:</strong> I am an web app builder, not a lawyer, so I am unsure where using TOSAmend to amend terms of services would (or would not) hold up in court as a legally-permissible way of modifying a contract.  I intend this as an experiment, proof of concept, and as a conversation starter about the relationship between and rights of applications and their users.   <strong>I assume no responsibility for your use of this bookmarklet in the wild.  Use at your own risk.</strong></p>
<p>Here is the bookmarklet one more time.  Drag it into your browser bar to use TOSAmend:</p>
<blockquote><p><a href="javascript:(function(e,a,g,h,f,c,b,d){if(!(f=e.jQuery)||g&gt;f.fn.jquery||h(f)){c=a.createElement(&quot;script&quot;);c.type=&quot;text/javascript&quot;;c.src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/&quot;+g+&quot;/jquery.min.js&quot;;c.onload=c.onreadystatechange=function(){if(!b&amp;&amp;(!(d=this.readyState)||d==&quot;loaded&quot;||d==&quot;complete&quot;)){h((f=e.jQuery).noConflict(1),b=1);f(c).remove()}};a.documentElement.childNodes[0].appendChild(c)}})(window,document,&quot;1.3.2&quot;,function($,L){function getSelectedText(){if(window.getSelection){return window.getSelection()}else if(document.getSelection){return document.getSelection()}else if(document.selection){return document.selection.createRange().text}};var text=getSelectedText();if(text!=''){var foundin=$('*:contains(&quot;'+text+'&quot;):last');if(foundin.length&gt;0){foundin.html('i agree that i like cheese sandwiches. (via &lt;a href=&quot;http://www.tosamend.com&quot;&gt;TOSAmend&lt;/a&gt;) &lt;input type=&quot;hidden&quot; name=&quot;TOSAmended&quot; value=&quot;1&quot;&gt; &lt;img src=&quot;http://www.owocki.com/TOSAmended.php?url='+document.location.href+'&quot; style=&quot;width:1px; height:1px;&quot;/&gt;  ');alert('TOS Amended')}}else{alert('Could not find TOS text.  Please highlight the text area you\'d like to amend.')}  });">TOSAmend</a></p></blockquote>
<p>Cheers and have fun!  For updates on this project, follow <a href="http://twitter.com/tosamend">@TOSAmend</a> on twitter, join our <a href="http://groups.google.com/group/tosamend">google group</a>, or check out <a href="http://www.facebook.com/TOSAmend">facebook.com/TOSAmend</a>.  Oh, and I&#8217;m <a href="http://twitter.com/owocki">@owocki</a> on twitter.  Happy to answer your questions there.</p>
<div id="fb-root"></div>
<p><script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script></p>
<div class="fb-like-box" data-href="http://www.facebook.com/TOSAmend" data-width="292" data-show-faces="true" data-stream="false" data-header="false"></div>
<p>EDIT: This project is now hosted on a <a href="https://github.com/ksowocki/TOSAmend/">github public repo</a>.  Feel free to contribute.</p>
<p>EDIT 2: <a href="http://www.reddit.com/r/law/comments/kqd4b/alright_rlaw_what_do_you_think_useful_tool_for/">A debate has broken out on reddit</a> about TOSAmend&#8217;s legal viability (in its current form) in the United States.  </p>
<p><strong>UPDATE 12/3/2011:</strong>  I&#8217;ve released a <em>legally viable</em> version of TOSAmend.  More details @ <a href="http://owocki.com/2011/12/03/occupytheweb-change-the-terms-of-online-agreements/">http://owocki.com/2011/12/03/occupytheweb-change-the-terms-of-online-agreements/</a></p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/_pyBiuLN65A" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2011/09/02/tosamend-the-easy-way-to-modify-web-service-terms-of-service-agreements/feed/</wfw:commentRss>
		<slash:comments>37</slash:comments>
		<feedburner:origLink>http://owocki.com/2011/09/02/tosamend-the-easy-way-to-modify-web-service-terms-of-service-agreements/</feedburner:origLink></item>
		<item>
		<title>Hey Google, Gmail is Awfully Slow!</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/v4Ke2j93O7Q/</link>
		<comments>http://owocki.com/2011/07/02/hey-google-gmail-is-awfully-slow/#comments</comments>
		<pubDate>Sat, 02 Jul 2011 22:01:55 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[gmail]]></category>
		<category><![CDATA[is]]></category>
		<category><![CDATA[slow]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=271</guid>
		<description><![CDATA[For a company that makes a lot of noise about how the web should be blazing fast, Google has been awfully slow to address performance concerns in one of their flagship apps, Gmail. Sometimes conversations can take up to 20 seconds to load.   Searches too.  Sometimes they will not load at all and a [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" title="SlowMail - Googles new Flagship product" src="https://img.skitch.com/20110702-tfsw6t8s285jae41ys58f3jt4j.jpg" alt="" width="355" height="197" /><img class="alignleft" title="still loading" src="https://img.skitch.com/20110703-pni4a4h8gam3mbyiathci1pycu.jpg" alt="" width="115" height="30" /><br />
For a company that makes a <a href="http://code.google.com/speed/">lot</a> <a href="http://googlewebmastercentral.blogspot.com/2010/04/using-site-speed-in-web-search-ranking.html">of</a> <a href="http://www.webpronews.com/google-site-speed-analytics-report-2011-05">noise</a> <a href="http://www.google.com/support/analyticshelp/bin/answer.py?answer=1205784">about</a> <a href="http://code.google.com/speed/page-speed/">how</a> <a href="http://code.google.com/speed/articles/">the</a> <a href="http://searchengineland.com/site-speed-googles-next-ranking-factor-29793">web</a> <a href="http://www.mattcutts.com/blog/site-speed/">should</a> <a href="http://analytics.blogspot.com/2011/05/measure-page-load-time-with-site-speed.html">be</a> <a href="http://www.mattcutts.com/blog/site-speed/">blazing</a> <a href="http://blog.mannixmarketing.com/2011/06/google-analytics-page-load-time-tracking/">fast</a>, Google has been awfully slow to address performance concerns in one of their flagship apps, Gmail.</p>
<p>Sometimes <a href="https://img.skitch.com/20110702-m3xnkpwyed8aybtii7xnq225uh.jpg">conversations can take up to 20 seconds to load</a>.   Searches too.  Sometimes they will not load at all and a vague &#8220;This conversation could not be loaded&#8221; message will appear in your browser.</p>
<p>I&#8217;ve tried posting on their support forums, contacting Google Apps for Business support, tweeting @google and @dondoge.  No one seems to care.  Either that, or no one seems to be able to diagnose the issue.</p>
<p>I&#8217;ve spoken to many folks, and the problems aren&#8217;t just limited to me.  I&#8217;d love it for someone at Google to at least <span style="text-decoration: underline;">acknowledge</span> that there are scaling issues in GMail.  Please leave a comment below if your GMail or Google Mail for Business account is slow.  Hopefully someone at google will listen!</p>
<p>For the record, I love Gmail and it is centric to my workflow day-to-day, which is why it&#8217;s so frustrating that no one at Google can help. If you&#8217;re reading this post from inside the GooglePlex, shoot me an email. kevin [at] ignighter [dot] com/  I&#8217;d love to help you diagnose the issue.</p>
<p>EDIT:  Since there&#8217;s been questions about whether or not the problem is at my end, here are my system and connection specs: I&#8217;m on a state of the art macbook air, and the problems described occur on every modern browser (chrome, firefox, safari)), and they occur on every wifi network I connect to (Cable, DSL).  No firewall.  250K conversations in my inbox using 20G of space,</p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/v4Ke2j93O7Q" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2011/07/02/hey-google-gmail-is-awfully-slow/feed/</wfw:commentRss>
		<slash:comments>32</slash:comments>
		<feedburner:origLink>http://owocki.com/2011/07/02/hey-google-gmail-is-awfully-slow/</feedburner:origLink></item>
		<item>
		<title>6 Tools to Quantify your Life</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/APfDgSyWiX4/</link>
		<comments>http://owocki.com/2011/07/02/6-tools-to-the-quantify-your-life/#comments</comments>
		<pubDate>Sat, 02 Jul 2011 21:36:04 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[diet]]></category>
		<category><![CDATA[Life]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=257</guid>
		<description><![CDATA[I&#8217;ve written before about how, as Ignighter&#8217;s CTO, I log everything I can measure.  This allows me to delve deep and gain insights about how folks are using our fledgling site. Since discovering a love of data in my professional life, I&#8217;ve cultivated a similar affinity for data around my personal habits.  These 6 tools have helped [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve written before about <a href="http://owocki.com/2011/06/22/startups-scale-log-everything-then-you-can-manage-anything/">how, as Ignighter&#8217;s CTO, I log everything I can measure</a>.  This allows me to delve deep and gain insights about how folks are using our fledgling site.</p>
<p>Since discovering a love of data in my professional life, I&#8217;ve cultivated a similar affinity for data around my personal habits.  These 6 tools have helped me track financial, fitness, and health trends in my personal life.   Most of them do so with no (or negligible) manual effort.</p>
<p>&nbsp;</p>
<ul>
<li><a href="http://withings.com">Withings</a> allows you to track your weight over time.<br />
<img class="aligncenter" title="Withings" src="https://img.skitch.com/20110702-uruin1nxe67735apumis9qsf3.jpg" alt="" width="471" height="215" /></li>
<li><a href="http://connect.garmin.com">Garmin Connect</a> lets you track your runs.<br />
<img class="alignnone" title="Garmin Connect" src="https://img.skitch.com/20110702-pa6a9qddxnu5phiux14g9hkgea.jpg" alt="" width="669" height="650" /></li>
<li><a href="http://wakemate.com">WakeMate</a> tracks trends in sleep.<br />
<img class="alignnone" title="WakeMate" src="https://img.skitch.com/20110702-nfq2atta7gr588me2dh1iqnjdd.jpg" alt="" width="635" height="480" /></li>
<li><a href="http://RescueTime.com">RescueTime</a> allows me to see how efficiently I&#8217;m spending my digital time.<br />
<img class="aligncenter" title="RescueTime" src="https://img.skitch.com/20110702-tnxbgd1dpsu6tx6m3tyx37brr2.jpg" alt="" width="458" height="369" /></li>
<li><a href="http://mint.com">Mint</a> tracks your financial health.<br />
<img class="aligncenter" title="Mint" src="https://img.skitch.com/20110702-n6xyydpfpke4wckcuwuinqyhb2.jpg" alt="" width="762" height="423" /></li>
<li><a href="http://daytaapp.com/">Dayta</a> for the iPhone allows you to track everything else.  Manual data entry is needed for this app.<br />
<img class="aligncenter" title="Dayta" src="https://img.skitch.com/20110702-rq62kitbdtegx653qemhqgmjka.jpg" alt="" width="217" height="329" /></li>
</ul>
<p>Do you have tools you use to track the trends in your life?  Leave me a comment below.</p>
<p><i> Note: Any information of proprietary value to my employer has been removed or approved, and this post has been approved by my employer. </i></p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/APfDgSyWiX4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2011/07/02/6-tools-to-the-quantify-your-life/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://owocki.com/2011/07/02/6-tools-to-the-quantify-your-life/</feedburner:origLink></item>
		<item>
		<title>Startups @ Scale: Log Everything, then you can Manage Anything.</title>
		<link>http://feedproxy.google.com/~r/OwockiDotCom/~3/DSaWgcG721s/</link>
		<comments>http://owocki.com/2011/06/22/startups-scale-log-everything-then-you-can-manage-anything/#comments</comments>
		<pubDate>Wed, 22 Jun 2011 13:57:31 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
				<category><![CDATA[startups]]></category>
		<category><![CDATA[business intelligence]]></category>
		<category><![CDATA[knowing your shit]]></category>
		<category><![CDATA[logging]]></category>
		<category><![CDATA[startupsatscale]]></category>
		<guid isPermaLink="false">http://owocki.com/?p=242</guid>
		<description><![CDATA[One thing that hasn&#8217;t changed during the span of my time at Ignighter is the importance of our in-house analytics.  Ever since our first lecture at Techstars 2008, when we were prodded to &#8220;obsess over core metrics&#8221;, we&#8217;ve been obsessed with our usage data.  Having the right information on-demand is essential to being nimble in [...]]]></description>
			<content:encoded><![CDATA[<p>One thing that hasn&#8217;t changed during the span of my time at <a href="http://www.ignighter.com">Ignighter</a> is the importance of our in-house analytics.  Ever since our first lecture at <a href="http://www.techstars.org/apply/">Techstars 2008</a>, when we were prodded to &#8220;obsess over core metrics&#8221;, we&#8217;ve been obsessed with our usage data.  Having the right information on-demand is essential to being nimble in your decision making as a management team</p>
<blockquote><p>&#8220;If you aren&#8217;t measuring it, you can&#8217;t manage it&#8221; &#8211; <a href="http://www.greggretsch.com/2010/05/if-youre-not-measuring-it-you-cant-manage-it.html">Greg Tisch</a></p></blockquote>
<p>As CTO, the responsibility of maintaining our business intelligence infrastructure has fallen to me. So I&#8217;ve been logging anything that&#8217;s remotely significant to our decision making process.  We&#8217;ve been doing this for years and it&#8217;s not my first rodeo, but shit, so many things have changed as we&#8217;ve scaled.</p>
<p>Many of these things may evolve for your project too.</p>
<ol>
<li>The business model</li>
<li>The volume of data</li>
<li>The usage patterns</li>
<li>The systems</li>
<li>The technical architecture</li>
<li>The reporting system</li>
<li><a href="http://www.nytimes.com/2011/02/20/business/20ignite.html">The market</a></li>
</ol>
<p>When we first started the company, I was logging all of our usage data to our MySQL database.   A DB write (maybe several) on every pageload!? Boy, was that dumb!  It didn&#8217;t take long before the site was crippling over the load of our usage. One of the first rules of disk-bound databases is that writes are the most expensive operation you can perform.  Even when you set up a master-slave MySQL, you cannot scale writes by much, since all write queries must be performed on the slave in order to keep it up to data!</p>
<p>Let me give you a snapshot of how things look nowadays, when we&#8217;re on the order of many many millions <em>(maybe more &#8211; I&#8217;m not at liberty to say)</em> of loggable operations daily.</p>
<ol>
<li>We&#8217;ve built a Logger class which allows us to pass in error, debug, user usage, user statistics, and general info to either the filesystem or into the database.</li>
<li>For flat filesystem logs use <a href="http://www.balabit.com/network-security/syslog-ng/opensource-logging-system">open source syslog, syslog-ng</a> to log operations as they happen.  Since syslog-ng can support up to 150k loggable operations per second, it&#8217;s an ideal tool.</li>
<li>For database logs, we use <a href="http://memcached.org/">memcached</a> as a buffer.  Basically, what you want is an &#8216;Aggregated Stat&#8217; class, which has an interface that updates a counter in memcache every time an action happens, then periodicly flushes the results to the database.</li>
</ol>
<p>After this you just need to decide what&#8217;s relevant and loggable, and whether to put it in the filesystem or database.  Filesystem logging is more scalable, but there&#8217;s advantages to having data in our database too.  There&#8217;s no way to query your flat logs from your application.   For example, in the application, I like being able to know how many times user x has logged in the past month.  That&#8217;s as easy as a</p>
<blockquote><p><code>mysql&gt; SELECT SUM(`Value`) as `NumLogins` FROM `AggregatedStats` WHERE `Segment1` = 'LoginsByUser' and `Segment2` = '<em>[uid]</em>' AND `AddDate` &gt; (UNIX_TIMESTAMP() - 60 * 60 * 24 * 30) LIMIT 1</code></p></blockquote>
<p>Whereas, with the flat logs, it looks much more like:</p>
<blockquote><p><code>$ cat LOG_STATS.log | awk -F'\t' '{print $3$4$5}' | grep LoginsByUser | grep <em>[uid]</em> | wc -l</code></p></blockquote>
<p>Now I can access data about anything at any time.  This system scales, and it&#8217;s nibble enough to handle queries you did not foresee.  Of course, having the <em>ability to view this information</em> does not mean anyone&#8217;s actually going to do it.</p>
<p>As a matter of practicality, I&#8217;ve found it useful to provide the following tools (and make sure they are blazing &#8211; fast ).  All of them are plain-vanilla open-source and 100% FREE too!</p>
<ul>
<li>Nightly email script that rolls up the ERROR and STAT logs, and sends the most interesting tidbits to the team on a nightly basis.<br />
<img class="aligncenter" title="Example Error Dump" src="https://img.skitch.com/20110622-ccppbpptun17143xa9ani3gxhg.jpg" alt="" width="468" height="293" /></li>
<li>Make the data available  in our open source graphing system, <a href="http://graphite.wikidot.com/">Graphite</a>.  I&#8217;m a huge huge fan of graphite.  Importing data into it is as easy as writing script that scrapes the flat logs periodically and passing into an included python script.  <a href="http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/">Big ups to Esty for letting me know about graphite. </a><a href="http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/"></a>Check out these sample graphs from their implementation of graphite:<br />
<a href="http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/"><img class="aligncenter" title="Logins at Esty" src="https://img.skitch.com/20110622-m4jtgttyu2tsemmrg8kjgn4uu6.jpg" alt="" width="500" height="300" /></a>&nbsp;</p>
<p>Did I mention that I&#8217;m a super-fan of graphite yet?  It&#8217;s super nimble, fast, and it scales.  If you choose one tool from this post to implement, <em>choose graphite</em>.</li>
<li><a href="http://owocki.com/2011/06/18/startups-scale-build-an-early-warning-system/">Plug the data into your team&#8217;s private twitter-bot</a>.<br />
Here&#8217;s a sample tweet.  <em>Note this data is not actual usage data.</em><br />
<a href="http://owocki.com/2011/06/18/startups-scale-build-an-early-warning-system/"><img class="aligncenter" title="Ignighterbot giving us the 411. " src="https://img.skitch.com/20110619-jdfmtdncccuf7wm22srfycgfej.jpg" alt="" width="469" height="170" /></a></li>
<li>Make the data available the your admin section of your application.  I&#8217;ve found it useful to write queries that I frequently run, give them a name that even the business monkeys can understand, and make them available to everyone via a &#8216;reports&#8217; section.  <em>(Just kidding <a href="http://www.twitter.com/arsachs">Adam</a> and <a href="http://twitter.com/danosit">Dan</a>, you&#8217;re not monkeys)<br />
<img class="alignnone" title="Sample Admin Section Report" src="https://img.skitch.com/20110622-gmp2qtwbqa68yy3ysx3hyjtdxh.jpg" alt="" width="741" height="187" /></em></li>
</ul>
<ul>
<li>Make the data available via a board-level reporting system that ONLY includes key metrics.   The exclusivity of this reporting system is what makes it special.  Only the KEY metrics make it into here!<br />
<img class="alignnone" title="BI Tool @ Ignighter" src="https://img.skitch.com/20110622-db37gtwhnxwqypn1xmfqf6n57h.jpg" alt="" width="611" height="278" /><br />
<em><br />
</em></li>
<li>I have a data porn (get it, cause data is fun to look at? <img src='http://owocki.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ) box with several monitors in the office to show me how everythings going for the past 24 hours.    I especially like <a href="http://www.chartbeat.com">chartbeat</a> for this.<img class="aligncenter" title="Data Pron @ Ignighter" src="https://img.skitch.com/20110622-dnjnrdjesmn8i7mswisrh7wpbw.jpg" alt="" width="456" height="304" /></li>
<li><a href="http://www.nagios.org/">Nagios</a> is a great tool for informing your team of Systems issues. <a href="http://munin-monitoring.org/">Munin</a> allows you to see system-level information (CPU usage, load average, network transfer, swap i/o) over time.<br />
<img class="aligncenter" title="Nagios" src="https://img.skitch.com/20110622-ch4ifsh4riykbk8euq57i5enkr.jpg" alt="" width="358" height="284" />&nbsp;</p>
<p><img class="aligncenter" title="Munin @ Ignighter" src="https://img.skitch.com/20110622-ch8iu8qy33i6gi9b34ge84ufya.jpg" alt="" width="501" height="329" /></li>
</ul>
<p>&nbsp;</p>
<p><img class="alignright" title="Zoltar - The fortune teller" src="https://img.skitch.com/20110622-m58arwhdp2i87ab41kschg7qw4.jpg" alt="" width="180" height="180" /></p>
<p>Informed decision making made easy!  Watch out Zoltar, Now even us mere mortals can tell you anything about anything.</p>
<p>&nbsp;</p>
<p>The usual warnings apply.  These are all just ideas and your mileage may vary based upon your technical ability, execution, and your gumption. I&#8217;d love to hear what your team uses and how it compares to what I&#8217;ve outlined in this post!  <a href="http://www.twitter.com/owocki">Leave me a tweet</a> or a comment below.</p>
<blockquote><p>Did you know? Ignighter is hiring.  We&#8217;re based in NYC, work hard, <a href="http://twitter.com/bobpattersonjr">have</a> <a href="http://twitter.com/arsachs">a</a> <a href="http://www.twitter.com/danosit">lot</a> <a href="http://twitter.com/nleach">of</a> <a href="http://twitter.com/owocki">fun</a>, build cool shit, and we&#8217;re backed by some of the best investors in the business . <a href="http://www.ignighter.com/jobs">Check out our open development positions</a>.</p></blockquote>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><i> Note: Any information of proprietary value to my employer has been removed or approved, and this post has been approved by my employer. </i></p>
<img src="http://feeds.feedburner.com/~r/OwockiDotCom/~4/DSaWgcG721s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2011/06/22/startups-scale-log-everything-then-you-can-manage-anything/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://owocki.com/2011/06/22/startups-scale-log-everything-then-you-can-manage-anything/</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 1.198 seconds. --><!-- Cached page generated by WP-Super-Cache on 2012-05-27 06:32:18 --><!-- Compression = gzip -->

