<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	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/"
	>

<channel>
	<title>Owocki dot com</title>
	<link>http://owocki.com</link>
	<description>miscellaneous adventures in technology &#38; entrepeneurship</description>
	<pubDate>Mon, 22 Jun 2009 01:53:47 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
	<language>en</language>
			<item>
		<title>Eliminate Inefficiency with Automation</title>
		<link>http://owocki.com/2009/06/21/eliminate-inefficiency-with-automation/</link>
		<comments>http://owocki.com/2009/06/21/eliminate-inefficiency-with-automation/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 01:53:47 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<category><![CDATA[automate]]></category>

		<category><![CDATA[eliminiate]]></category>

		<category><![CDATA[inefficiency]]></category>

		<category><![CDATA[save time]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/06/21/eliminate-inefficiency-with-automation/</guid>
		<description><![CDATA[ &#8212; This post is part of a series of ongoing tips on lessons learned &#038; experiences I&#8217;ve had as the lead developer of the online dating startup, at Ignighter.com.  Though these tips are focused primary at consumer startups, they ring true elsewhere too.  For a full list of these tips, see 10 [...]]]></description>
			<content:encoded><![CDATA[<p><i> &#8212; This post is part of a series of ongoing tips on lessons learned &#038; experiences I&#8217;ve had as the lead developer of the online dating startup, at <a href="http://www.ignighter.com">Ignighter.com</a>.  Though these tips are focused primary at consumer startups, they ring true elsewhere too.  For a full list of these tips, see <a href="http://owocki.com/2009/05/20/10-things-i-wish-i-knew-as-a-lead-developer-at-techstars/">10 things I&#8217;d wish I&#8217;d known as a lead developer at Techstars</a>.   &#8212;  </i></p>
<p>I spend a lot of time building and reading reports.  I also spent a lot of time shuffling files around, and formatting data.  </p>
<p>If you&#8217;re like me, you probably also spend a great deal of time doing simple, mindless, monotonous tasks like normalizing data, working with log files, or transferring files from one development region to another.  While they are completely necessary, these simple mindless tasks take a ~long~ time.</p>
<p>One of my favorite things to do when executing these types of tasks is to figure out where I can eliminate the inefficiencies in my process.  Since I&#8217;m running a startup, and am not subject to the process of some large bureaucracy, the power (and responsibility) to optimize time-inefficient tasks falls with me.</p>
<p><strong>What types of tasks I automate</strong><br />
Most of the time, this process starts with a task that I have to do twice.  The first time I do it, I groan, but I suck it up and do it the brute force way.  The second time, I look for a pattern to emerge, and if one exists, I write a script to do the bulk of the work for me.</p>
<p>Part of the fun with this approach is that, while you are performing a mindless task, you can let your mind wander about the ways you could be improving your workflow. </p>
<p><strong>Tools of the trade</strong><br />
If you aren&#8217;t familiar with shell scripting, you probably should be.    If you&#8217;re on the LAMP stack, get to know your cron tab.  Also, <a href="http://en.wikipedia.org/wiki/HP_QuickTest_Professional">QTP</a> is a great tool for Windows UI automation.</p>
<p><strong>Some Use Cases</strong><br />
Here are a few examples of time-saving scripts I&#8217;ve written.  In the past, I&#8217;ve written scripts that<br />
- Build Regions.<br />
- Normalize Data into JSON, MySQL, or XML formats.<br />
- Build cached versions of my codebase.<br />
- Find Database Integrity issues, correct them, and notify me so I can investigate deeper.<br />
- Backup my codebase and database.<br />
- Comb my log files for a search query.<br />
- Email daily, weekly, and monthly statistics reports to my team.</p>
<p><strong>Bottom Line</strong><br />
It&#8217;s a best-practice to always be looking for ways to optimize your processes.</p>
<p>How much time could you save if you automated your repetitive tasks today?</p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/06/21/eliminate-inefficiency-with-automation/feed/</wfw:commentRss>
		</item>
		<item>
		<title>First Time Startup CTO Tips #3 - Develop Code Standards (and Stick To Them)</title>
		<link>http://owocki.com/2009/06/10/first-time-startup-cto-tips-3-develop-code-standards-and-stick-to-them/</link>
		<comments>http://owocki.com/2009/06/10/first-time-startup-cto-tips-3-develop-code-standards-and-stick-to-them/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 12:14:07 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<category><![CDATA[cto tips]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[ignighter]]></category>

		<category><![CDATA[startup]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/06/10/first-time-startup-cto-tips-3-develop-code-standards-and-stick-to-them/</guid>
		<description><![CDATA[ &#8212; This post is part of a series of ongoing tips on lessons learned &#038; experiences I&#8217;ve had as the lead developer (CTO if you want to be fancy) of the online dating startup, Ignighter.com.  Though these tips are focused primary at consumer startups, they ring true elsewhere too.  For a full [...]]]></description>
			<content:encoded><![CDATA[<p><i> &#8212; This post is part of a series of ongoing tips on lessons learned &#038; experiences I&#8217;ve had as the lead developer (CTO if you want to be fancy) of the online dating startup, <a href="http://www.ignighter.com">Ignighter.com</a>.  Though these tips are focused primary at consumer startups, they ring true elsewhere too.  For a full list of these tips, see <a href="http://owocki.com/2009/05/20/10-things-i-wish-i-knew-as-a-lead-developer-at-techstars/">10 things I&#8217;d wish I&#8217;d known as a lead developer at Techstars</a>.   &#8212;  </i></p>
<p>One of the biggest differences between writing code at school and writing code today has been the need to work with, interpret, modify and/or rewrite code that my teammates have implemented.</p>
<p>It&#8217;s been a humbling experience, to say the least.</p>
<p>Everyone has their own habits, their own rhythms, and their own way of thinking about code patterns &#038; implementations. </p>
<p>And when you don&#8217;t draw a line in the sand upfront, things can get messy, really, really quick.</p>
<p>So, one of the biggest boons to team morale (not to mention, my sanity), in the last 12 months, was when the team, together, developed coding standards to adhere to.</p>
<p>And the biggest boon was when we actually started following them. </p>
<p>Here are the standards that, in my experience, have been the most helpful in keeping both team morale &#038; team sanity up:</p>
<p>- <strong> Introduce indentation standards. </strong> It&#8217; really simple. Just nest if statements, loops, and function declarations with tab indents.  It allows my eyes to scan code 3x faster than when for loops, if statements, and methods aren&#8217;t indented. And that&#8217;s just fantastic.  </p>
<p>- <strong> Comment every method you create.</strong> We list the preconditions, postconditions, return variables, and input variables for each method in our code base.  We have a standard comment template that is already formatted to receive these values.  Here&#8217;s what it looks like:</p>
<p><code>/*********************************************************/<br />
// - Input vars:<br />
// - Preconditions:<br />
// - Postconditions:<br />
// - Returns:<br />
// - Comments:<br />
// -<br />
// -<br />
function Name($InputA,$InputB,$InputC,...) {<br />
	//Method code goes here<br />
}<br />
</code></p>
<p>- <strong> Introduce variable &#038; method naming standards.</strong> Simple standards around how you name your variables can help code readability a lot.  Start with simple things like what to do with individual words in variable names ($AVar or $avar?), whitespace ($A_Var or $AVar?), upper &#038; lower limits on length.  </p>
<p>- <strong> Make code granular &#038; reusable.</strong>  This is another one that sounds like a no-brainer, but in practice sometimes it&#8217;s a hard one to stick to.  There&#8217;s an entire body of academic research on why your code should be de-coupled and <a href="http://en.wikipedia.org/wiki/Cohesion_(computer_science)">cohesive</a>.</p>
<p>- <strong> Find &#038; follow a standard design pattern.</strong> The nice thing about design patterns is that someone has thought out the common issues and written rules for you to follow. For me, Model-View-Controller has made my life so much easier.  If you&#8217;re writing a web app, that&#8217;s probably the main design pattern you&#8217;ll want to familiar with. </p>
<p>- <strong> Peer architect.</strong> I like the practice of talking over solutions with teammates before I implement them.  It&#8217;s a useful way to lay out your design theory and test your assumptions, before you actually write a lick of code</p>
<p>There you have it.  I&#8217;d be interested in hearing what standards your team has developed, and how you enforce them / make sure you stick with them.</p>
<p>Oh, and if you want to follow musings of the awesome development team I work with, please do so here: <a href="http://twitter.com/nleach">@nleach</a> <a href="http://twitter.com/aycaaksu">@aycaaksu</a> <a href="http://twitter.com/maxstoller">@maxstoller</a> <a href="http://twitter.com/maxmeyers">@maxmeyers</a>, and <a href="http://twitter.com/zeve">@zeve</a> .</p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/06/10/first-time-startup-cto-tips-3-develop-code-standards-and-stick-to-them/feed/</wfw:commentRss>
		</item>
		<item>
		<title>First Time Startup CTO Tips #2 - Develop a rhythm</title>
		<link>http://owocki.com/2009/06/03/first-time-startup-cto-tips-2-develop-a-rhythm/</link>
		<comments>http://owocki.com/2009/06/03/first-time-startup-cto-tips-2-develop-a-rhythm/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 11:53:11 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<category><![CDATA[cto]]></category>

		<category><![CDATA[rhythm]]></category>

		<category><![CDATA[startup]]></category>

		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/06/03/first-time-startup-cto-tips-2-develop-a-rhythm/</guid>
		<description><![CDATA[ &#8212; This post is part of a series of ongoing tips on lessons learned &#038; experiences I&#8217;ve had as the lead developer (CTO if you want to be fancy) of the online dating startup, at Ignighter.com.  Though these tips are focused primary at consumer-focused startups, they ring true elsewhere too.  For a [...]]]></description>
			<content:encoded><![CDATA[<p><i> &#8212; This post is part of a series of ongoing tips on lessons learned &#038; experiences I&#8217;ve had as the lead developer (CTO if you want to be fancy) of the online dating startup, at <a href="http://www.ignighter.com">Ignighter.com</a>.  Though these tips are focused primary at consumer-focused startups, they ring true elsewhere too.  For a full list of these tips, see <a href="http://owocki.com/2009/05/20/10-things-i-wish-i-knew-as-a-lead-developer-at-techstars/">10 things I&#8217;d wish I&#8217;d known as a lead developer at Techstars</a>.   &#8212;  </i></p>
<p>One of the most crucial things our team did over the last year was adhere to a rhymic development schedule:</p>
<p>Every Monday, we release code from our development region, to our production region.  For the rest of the week, we analyze our business requirements, design accordingly, and implement new features in our development region.</p>
<p>This allows us draw a line in the sand when it comes to prioritizing features.  It allows you set firm targets and deadlines. Abstract questions like &#8220;Is feature X more important than feature Y?&#8221; become more practical. The conversation becomes: &#8220;Can you get both feature X AND feature Y into the release on Monday?&#8221; , &#8220;No? Ok, how about just feature Y, then?&#8221;.  </p>
<p>It also allows us to break projects into manageable chunks to iterate on week over week.  Iterating, measuring results, and repeat.  It&#8217;s a fantastic way to stay agile.  And staying nimble &#038; agile is the goal for the development team when you&#8217;re trying to find the ~right~ product for your market.</p>
<p>On to the details:</p>
<p><strong>What day do you release?</strong><br />
We&#8217;ve had a lot of internal debate on what day of the week to release.  We chose Monday because it allows us to start fresh and focus on new priorities for the week (Provided there were no issues with the push). </p>
<p><strong>How long should your iteration cycle be? </strong><br />
My team releases weekly. I&#8217;ve heard stories of many other startups who release weekly.  Some release daily.  I&#8217;ve found that the overhead involved with pushing code live is too great when pushing on a daily schedule.  Anything over a week, and I&#8217;m concerned that we aren&#8217;t iterating fast enough.  </p>
<p><strong>How much effort do you contribute to QA? </strong><br />
Quality assurance is a major concern when you&#8217;re developing a consumer app.  In my opinion, it&#8217;s best to design multiple levels of QA into your process, executed throughout the week.  A suite of unit tests helps to catch bugs introduced throughout the course of a week. Next, each team member is expected to troubleshoot and certify their own features by release time.  We also do a weekly QA session in which we catch bugs before we do the push.</p>
<p><strong>Do you follow any &#8216;<a href="http://en.wikipedia.org/wiki/Software_development_process">development methodologies</a>&#8216;?</strong><br />
No.  For now, we&#8217;re wary of adding too much process too early in our company.  Though, we do regularly study our process and evolve it as needed.  Agile looks like an interesting option for the future.  As does Lean Programming.</p>
<p>All in all, your release rhythm will probably depend a lot on your product, market, and most importantly, your team.  When making decisions about your development rhythm, start with the low hanging fruit, like &#8216;How long do we want our cycles to be?&#8217;, and &#8216;What time of the day/week/month/quarter do we want to release?&#8217;, and move on from there.</p>
<p>Oh, and don&#8217;t forget to have a fun through the process.  One of my favorite parts of being in a small team are the fun little events (LAN parties, dinners, lunches, etc..) that we schedule to celebrate a big release.</p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/06/03/first-time-startup-cto-tips-2-develop-a-rhythm/feed/</wfw:commentRss>
		</item>
		<item>
		<title>StartupComix : Lessons Learned from a Failed Side Project</title>
		<link>http://owocki.com/2009/05/30/startupcomix-lessons-learned-from-a-failed-side-project/</link>
		<comments>http://owocki.com/2009/05/30/startupcomix-lessons-learned-from-a-failed-side-project/#comments</comments>
		<pubDate>Sat, 30 May 2009 14:47:18 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Life]]></category>

		<category><![CDATA[failed]]></category>

		<category><![CDATA[side project]]></category>

		<category><![CDATA[startupcomix]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/05/30/startupcomix-lessons-learned-from-a-failed-side-project/</guid>
		<description><![CDATA[It&#8217;s been about 4 months since I discontinued StartupComix.com, a side project where I had created daily comics about startup-isms, technology, and hacker life.

Initially, the idea was the share ideas, make jokes, and be involved in the hacker community. The idea was heavily inspired by Awkward Rules, xKcd, and Abtruse Goose.  It was way [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been about 4 months since I discontinued <a href="http://www.StartupComix.com">StartupComix.com</a>, a side project where I had created daily comics about startup-isms, technology, and hacker life.
<div style="float:right;"><img src='http://owocki.com/wp-content/uploads/2009/05/startupcomixguy1.thumbnail.png' alt='startupcomixguy1.png' /></div>
<p>Initially, the idea was the share ideas, make jokes, and be involved in the hacker community. The idea was heavily inspired by <a href="http://www.awkwardrules.net/">Awkward Rules</a>, <a href="http://xkcd.com/">xKcd</a>, and <a href="http://abstrusegoose.com/">Abtruse Goose</a>.  It was way harder than I thought it&#8217;d be.  Especially as a side project.  In the end, I discontinued the project as a result of a) a lack of motivation and b) a lack of inspiration.</p>
<p>Here&#8217;s a few unexpected things that happened, and the lessons I learned from it:</p>
<p><strong>I overcommitted.</strong> From the start, I promised new comics 5 days a week.  That turned out to be too much, especially for a newbie author who has little experience creating creative content.  I found myself running out of energy to create good content, and  I think I settled for some punch-lines that weren&#8217;t my best.  I think, next time, a better strategy may be to just publish as the content comes to me.</p>
<p><strong>Good content is not easy to create.</strong>  I&#8217;ve come to think that humour is one of those things that is easy to understand, but hard to create.  It&#8217;s really really tough to create good content on a consistent basis.  To do so, you need to continually search for inspiration, even when you don&#8217;t want to.</p>
<p><strong>It&#8217;s hard to fight a war on two fronts.</strong> My work at Ignighter comes first.  When you&#8217;re giving 100% to something, it&#8217;s difficult to contribute more energy to a side project.</p>
<p>All in all, I&#8217;m glad I did it.  I had some fun times and shared some laughs.  </p>
<p><strong>Here&#8217;s some of my favorite startupcomix:</strong><br />
<i>Please forgive the formatting. I wanted them to be readable here, but couldn&#8217;t find a way to do that and still make them fit within the content area.</i></p>
<p>- <a href="http://startupcomix.com/2008/12/02/0x-just-be-careful-you-dont-get-a-pwi/">0&#215;13 - Be careful you don&#8217;t get a PWI</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/11/pui.png"></p>
<p>- <a href="http://startupcomix.com/2008/11/26/0x9-svn-revert/">0&#215;9 - SVN Revert</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/11/0x91.png"></p>
<p>- <a href="http://startupcomix.com/2008/11/24/0x7-precisely-how-long-until-google-controls-everything-around-us/">0×7 - Precisely, how long until Google controls everything around us?</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/11/0x7.png"></p>
<p>- <a href="http://startupcomix.com/2008/11/21/0x6-strangely-hypnotic/">0&#215;6 - Strangely Hypnotic</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/11/0x6.png"></p>
<p>- <a href="http://startupcomix.com/2008/11/17/0x2-im-a-pc-and-i-insert-quippy-remark-here/">0×2 - I’m a PC, and I (insert quippy remark here)</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/11/0x2.png"></p>
<p>- <a href="http://startupcomix.com/2008/12/03/0x14-top-ramen-the-food-of-kings/">0×14 - Top Ramen, the food of kings.</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/12/ramennoodles.png"></p>
<p>- <a href="http://startupcomix.com/2008/12/09/0x17-e-true-interview-story-the-awkward-interview-question/">0×18 - E! True Interview Story. The Awkward Interview Question.</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/12/awkwardinterview.png"></p>
<p>- <a href="http://startupcomix.com/2008/12/10/did-you-hear-about-the-guy-who-was-born-on-january-1-1970/">0×19 - Did you hear about the guy who was born on January 1 1970?</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/12/january1970realzero.png"></p>
<p>- <a href="http://startupcomix.com/2008/12/12/0x1b-twittles-of-existence/">0&#215;1b - Twittles of Existence</a><br />
<img src="http://startupcomix.com/wp-content/uploads/2008/12/whentheinternetisdowndoesatweetmakeasound.png"></p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/05/30/startupcomix-lessons-learned-from-a-failed-side-project/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How to Interview for a Development Job at (our) Startup</title>
		<link>http://owocki.com/2009/05/29/how-to-interview-for-a-development-job-at-our-startup/</link>
		<comments>http://owocki.com/2009/05/29/how-to-interview-for-a-development-job-at-our-startup/#comments</comments>
		<pubDate>Fri, 29 May 2009 20:38:51 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Life]]></category>

		<category><![CDATA[Technology]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[job]]></category>

		<category><![CDATA[lead developer]]></category>

		<category><![CDATA[startup]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/05/29/how-to-interview-for-a-development-job-at-our-startup/</guid>
		<description><![CDATA[Over the last year I&#8217;ve found myself in an exciting new situation.  I&#8217;m interviewing candidates to be the developers &#038; designers of a team that&#8217;s looking to turn online dating upside down.  As with many first-time Lead Developers, at first I wasn&#8217;t completely sure what to look for in a new hire.  [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last year I&#8217;ve found myself in an exciting new situation.  I&#8217;m interviewing candidates to be the developers &#038; designers of <a href="http://www.ignighter.com/">a team that&#8217;s looking to turn online dating upside down</a>.  As with many first-time Lead Developers, at first I wasn&#8217;t completely sure what to look for in a new hire.  But, after sitting in on 20 or so interviews, some good, most bad, I have a reasonable idea of what separates the great from the &#8220;Oh my God, how did this guy get past security?&#8221; ones.</p>
<p>In my experience, a lot of young developers don&#8217;t seem to do a lot of research on the company they&#8217;re interviewing with.  And, they also don&#8217;t understand or haven&#8217;t fully contemplated the differences between their current corporate job and the startup environment that they <i>want</i> to work in.</p>
<p>Inspired by Brad Feld, who recently wrote a post called <a href="http://www.feld.com/wp/archives/2009/05/preparing-for-a-first-meeting-with-me.html">Preparing For a First Meeting With Me</a>, I thought I&#8217;d lay out some of the things that are most common interviewee patterns I look for.  Luckily, a few of these patterns correlate nicely with success on our team, even more than a candidate&#8217;s resume, or technological know-how.</p>
<p>Here we go:</p>
<p><strong>Be a self-starter.</strong>  Though the term &#8217;self-starter&#8217; may be an overused buzzword, actually being a self-starter is the #1 leading indicator of success for a prospective team member, in my opinion.  If you&#8217;re excited about work, and like working hard in order to better yourself, your skill set, and your company&#8217;s product, you&#8217;re going to find a way to do a great job.  In contrast, there&#8217;s no bigger turn-off than a team member who calculates how little they can do and still get by.  </p>
<p><strong>Don&#8217;t make outrageous compensation demands.</strong>  Like many things, working for a startup is all about balance.  We&#8217;re an early stage shop, work is challenging, but it&#8217;s a lot of fun for us, and we aren&#8217;t made of money.  If you want a 6-figure salary, you&#8217;ll probably be better off interviewing at one of the banks down on Wall st. EDIT: I should note that, while we don&#8217;t pay a base salary that&#8217;s comparable to a late stage, well-established company, we do offer generous stock options, which are designed to be <i>very</i> profitable when you help the company grow.</p>
<p><strong>Do a little homework on us.</strong>  Our team is kind-of like an open book, if you know how to use Google, Twitter, or Facebook. Spend a little time checking out our site, our about page, team page, blog, and magazine.  It&#8217;ll give you an idea of what working with us will be like.  Plus, it&#8217;ll give you something to talk about with the interviewer. If you can figure out what my biggest problem is, and position yourself to be the solution to it, then let&#8217;s just say.. you&#8217;re in great shape, to say the least.</p>
<p><strong>Be sharp.</strong>  Just because we don&#8217;t have a dress code doesn&#8217;t mean we tolerate sloppy thinking. Give thoughtful, honest, and engaging answers, and please please pleeaseee have a few questions for your interviewer.  </p>
<p><strong>Have a track record.</strong>  The old adage, &#8216;actions speak louder than words&#8217;, speaks very true to me.  If you are coming from a corporate IT job, have no record of entrepreneurship, and want a job with a startup, then you&#8217;ll probably do better to a) evaluate why you want to make the switch, b) whether you have the energy, and c) if so, why haven&#8217;t you tried something on your own?  It&#8217;s never been easier to start a web shop out of your apartment than it is today.  And even if you try and fail, you&#8217;ll at least have shown that you&#8217;ve tried.</p>
<p><strong>Establish that you&#8217;re trustworthy</strong> Eye contact, strong references,  and a balanced demeanor are all good ways to start. </p>
<p><strong>Be yourself.</strong>  We&#8217;re a startup, not the borg (yes, I saw the new Star Trek movie).  Don&#8217;t be an automaton.  There must be <i>something</i> interesting about you.  If you have a drop of personality in your body, don&#8217;t be afraid to show it, it will help us get to know you, and may even help your chances of getting the job.</p>
<p>Welp, that&#8217;s my shortlist.  How about you?  Entrepreneurs, what indicators of success do you look for when selecting new teammates?  Job hunters, what strategies do you use to convince interviewers that you&#8217;d make a good fit on their team?</p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/05/29/how-to-interview-for-a-development-job-at-our-startup/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ignight-ing Boulder</title>
		<link>http://owocki.com/2009/05/26/ignight-ing-boulder/</link>
		<comments>http://owocki.com/2009/05/26/ignight-ing-boulder/#comments</comments>
		<pubDate>Tue, 26 May 2009 13:42:00 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Life]]></category>

		<category><![CDATA[Boulder]]></category>

		<category><![CDATA[community]]></category>

		<category><![CDATA[ignighter]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/05/26/ignight-ing-boulder/</guid>
		<description><![CDATA[Team @ignighter spent this past weekend in Boulder, visiting our mentors &#038; friends from last summers Techstars program.  It&#8217;s been exactly one year since we made the trek from the east coast to Boulder, joining the 2008  mentorship program.

Wow. what a weekend.
I&#8217;d forgotten how much Boulder is the type of place that will [...]]]></description>
			<content:encoded><![CDATA[<p>Team <a href="http://www.twitter.com/ignighter">@ignighter</a> spent this past weekend in Boulder, visiting our mentors &#038; friends from last summers <a href="http://techstars.org">Techstars</a> program.  It&#8217;s been exactly one year since we made the trek from the east coast to Boulder, joining the 2008  mentorship program.</p>
<p><a href="http://www.flickr.com/photos/ksowocki/sets/72157618705524819/"><img src=http://farm4.static.flickr.com/3334/3563614779_006621c592_m.jpg></a></p>
<p>Wow. what a weekend.</p>
<p>I&#8217;d forgotten how much <a href="http://boulder.me">Boulder</a> is the type of place that will just humble you.  Beyond the natural beauty in the town &#038; the energy of the hundreds of people hanging out on Pearl st for the Boulder Creekfest and BolderBoulder this weekend, I was completely re-envigorated &#038; energized by the technology community in this town.</p>
<p>We kicked off the weekend by meeting with <a href="http://davidgcohen.com">David Cohen</a>, <a href="http://www.davemorin.com">Dave Morin</a>, and speaking on a panel about do&#8217;s &#038; don&#8217;ts for the Techstars summer program.   Afterwards, the team went out to dinner with <a href="http://www.eventvue.com">EventVue</a>, <a href="http://www.foodzie.com">Foodzie</a>, <a href="http://twitter.com/brjackson">Brett Jackson</a>, and <a href="http://Occipital.com">Occipital</a>.  Other highlights of the weekend were the <a href="http://www.flickr.com/photos/ksowocki/sets/72157618705524819/">Tee &#038; Cakes Cupcake eating contest</a>, in which Boulder&#8217;s own <a href="http://twitter.com/micah">Micah Baldwin</a> placed 3rd, and hanging out with the 2009 Techstars teams on Saturday afternoon.</p>
<p><a href="http://www.flickr.com/photos/ksowocki/sets/72157618705524819/"><img src=http://farm4.static.flickr.com/3356/3564423894_648922a56f_m.jpg></a> <a href="http://www.flickr.com/photos/ksowocki/sets/72157618705524819/"><img src=http://farm4.static.flickr.com/3597/3563614005_6d831f0b3b_m.jpg></a></p>
<p>I&#8217;d forgotten how fantastic it is to just connect with people who are <i>doing what you&#8217;re doing</i>, starting a new web community from scratch.  The tech community here is passionate and energetic.  They are humble, but they are bold.  It&#8217;s amazing how much the tech community in Boulder has grown over the past several years, given the leadership of some of the established folks in the area.</p>
<p>I&#8217;m thinking a lot about community, lately.  I think that, maybe, technology&#8217;s biggest offering in a globalized world could be it&#8217;s ability to connect us to others around common interests, hobbies, or passions.  I&#8217;m thrilled to be building a platform for a community of people who are passionate about meeting new interesting people at Ignighter.  And, it&#8217;s a lot of fun.</p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/05/26/ignight-ing-boulder/feed/</wfw:commentRss>
		</item>
		<item>
		<title>First Time Startup CTO Tips #1 - Log Everything</title>
		<link>http://owocki.com/2009/05/25/first-time-startup-cto-tips-1-log-everything/</link>
		<comments>http://owocki.com/2009/05/25/first-time-startup-cto-tips-1-log-everything/#comments</comments>
		<pubDate>Mon, 25 May 2009 13:39:06 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<category><![CDATA[cto]]></category>

		<category><![CDATA[lead developer]]></category>

		<category><![CDATA[log]]></category>

		<category><![CDATA[mysql]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[startup]]></category>

		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/05/25/first-time-startup-cto-tips-1-log-everything/</guid>
		<description><![CDATA[ &#8212; This post is part of a series of tips on lessons learned &#038; experiences I&#8217;ve had as the lead developer (CTO if you want to be fancy) of the online dating startup, at Ignighter.com.  Though these tips are focused primary at consumer startups, they ring true elsewhere too.  For a full [...]]]></description>
			<content:encoded><![CDATA[<p><i> &#8212; This post is part of a series of tips on lessons learned &#038; experiences I&#8217;ve had as the lead developer (CTO if you want to be fancy) of the online dating startup, at <a href="http://www.ignighter.com">Ignighter.com</a>.  Though these tips are focused primary at consumer startups, they ring true elsewhere too.  For a full list of these tips, see <a href="http://owocki.com/2009/05/20/10-things-i-wish-i-knew-as-a-lead-developer-at-techstars/">10 things I&#8217;d wish I&#8217;d known as a lead developer at Techstars</a>.   &#8212;  </i></p>
<p>My 3nd week on the job, I discovered a major bug in our app.  One of the main flows was broken.  And it wasn&#8217;t pretty.  </p>
<p>So, what did I do?  Simple. I did what any competant developer would do: I fixed the bug.  </p>
<p>Though it only took me 15 minutes to fix the bug, it had taken me 3 weeks to figure out it had even existed.  </p>
<p>Although the bug had been fixed, I faced a major problem.  I couldn&#8217;t let this happen again!  How could I prevent something like this from happening again on the app? Or, at the very least, how can I make sure I&#8217;m aware that it&#8217;s happening if it does?  That part wasn&#8217;t so straightforward.  But, over time, I&#8217;ve developed a system. First, I capture what&#8217;s going right,  wrong, or part-right and part-wrong, in the system. Then, I built reporting tools to notify me when things are going badly, and to give my team data to help us lay the foundation for making decisions on what features to build, iterate on, or decommission.</p>
<p>Here&#8217;s the solution I devised.  I have a method that I can call to log an event anywhere in the system:</p>
<p><code>MetricLog::LogEvent($EventName,$EventMetaData,$User);<br />
</code><br />
Doesn&#8217;t look like a lot of code, does it?  It isn&#8217;t.  It should be stupid simple to track anything in the system. </p>
<p>Though the logging code may be minimalist, the table that I record my events on is anything but.  It&#8217;s several million rows of data, each with 20 columns of metadata about that event.</p>
<p>At a high level, here is the list of data I track for each event on our system:</p>
<blockquote><p>- Unix Timestamp<br />
- Event Name<br />
- Event Metadata<br />
- User who performed event<br />
- User metadata (age, sex, location, etc..)<br />
- Group who performed event (We&#8217;re a group dating site, remember)<br />
- Group metadata<br />
- Client metadata (IP address, user-agent, physical location, signup source, re-engagement source)<br />
- URL that event was performed on.<br />
- A hash that uniquely identifies the session.<br />
- The split the user was on, if event was performed on an A/B test.
</p></blockquote>
<p>I track everything from 404 errors, to major technical hiccups, to pageviews , to new registrations through this system.  Building the reporting system in house allows me to build whatever reports I want on top of the data.  Tracking <i>EVERY aspect</i> of each event allows me to split the data in my reporting system.  Imagine if you could build reports that could be spliced by age, sex, location, timeframe, visitor location, visitor referral, and user-agent. Another thing this allows me to do is track the exact flow of a user who encountered an error, or evaluate how many users an error has effected.  It&#8217;s pretty freakin&#8217; useful.</p>
<p>After you&#8217;ve got the basic system setup, it&#8217;s trivial to set up a cron job that emails you if something&#8217;s amiss.  Our team receives daily, weekly, and monthly reports of all relevant activity on the system.</p>
<p>It&#8217;s nice to know what&#8217;s going on in your product.  It helps you build a data-driven decision process.</p>
<p>Also - I should note that your privacy policy or TOS must state up-front that you&#8217;re tracking what happens on your system, that this data will be used to make the app better, and won&#8217;t be shared with anyone outside the team.  It&#8217;s an important disclaimer.</p>
<p>Good luck, and feel free to leave a comment if you have a question.</p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/05/25/first-time-startup-cto-tips-1-log-everything/feed/</wfw:commentRss>
		</item>
		<item>
		<title>10 Things I wish I knew as a Lead Developer at Techstars</title>
		<link>http://owocki.com/2009/05/20/10-things-i-wish-i-knew-as-a-lead-developer-at-techstars/</link>
		<comments>http://owocki.com/2009/05/20/10-things-i-wish-i-knew-as-a-lead-developer-at-techstars/#comments</comments>
		<pubDate>Thu, 21 May 2009 03:16:19 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<category><![CDATA[adam sachs]]></category>

		<category><![CDATA[ayca aksu]]></category>

		<category><![CDATA[bunker]]></category>

		<category><![CDATA[coder]]></category>

		<category><![CDATA[dan osit]]></category>

		<category><![CDATA[designer]]></category>

		<category><![CDATA[ignighter]]></category>

		<category><![CDATA[lead developer]]></category>

		<category><![CDATA[mentorship]]></category>

		<category><![CDATA[mvc]]></category>

		<category><![CDATA[nicky leach]]></category>

		<category><![CDATA[rhythm]]></category>

		<category><![CDATA[standards compliant]]></category>

		<category><![CDATA[startup]]></category>

		<category><![CDATA[technical]]></category>

		<category><![CDATA[techstars]]></category>

		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/05/20/10-things-i-wish-i-knew-as-a-lead-developer-at-techstars/</guid>
		<description><![CDATA[Last summer, I had the pleasure of joining Adam &#038; Dan from Ignighter, at Techstars.  Techstars is a seed-stage mentorship driven startup incubator, and it was my job to get Ignighter.com off the ground, and into the hands of 20-somethings everywhere. In the spirit of passing along what I&#8217;ve learned, I&#8217;d like to share [...]]]></description>
			<content:encoded><![CDATA[<p>Last summer, I had the pleasure of joining Adam &#038; Dan from Ignighter, at Techstars.  <a href="http://www.techstars.org/">Techstars</a> is a seed-stage mentorship driven startup incubator, and it was my job to get <a href="http://www.ignighter.com/">Ignighter.com</a> off the ground, and into the hands of 20-somethings everywhere. In the spirit of passing along what I&#8217;ve learned, I&#8217;d like to share a few things I wish I&#8217;d known about starting my startup as the youngest  (and, in hindsight, least experienced, and maybe the most humbled) technical co-founder at Techstars 2008.  Although many of these lessons I&#8217;d learned the hard way, maybe they will serve as a checklist of action items for you, to avoid the mistakes I&#8217;ve made.</p>
<p>This post&#8217;s intended audience is current &#038; future Techstars technical co-founders, though many of these lessons apply equally to any technical folks who&#8217;re launching their own consumer web startup.</p>
<p>These are some of the practical software-development best practices that I somehow missed during the first 3 months at Ignighter:</p>
<p><strong>1. Use source control. </strong> If there&#8217;s one thing I&#8217;ve learned, it&#8217;s that sometimes, you just gotta revert what you&#8217;ve done.  Sometimes, you may need branch your source code in two directions.  It&#8217;s best to have source control in place now, rather than waiting until you need it.  I recommend <a href="http://www.subversion.tigris.org/">subversion</a>, but have good things about <a href="http://www.git-scm.com/">Git</a>.</p>
<p><strong>2. <a href="http://owocki.com/2009/05/25/first-time-startup-cto-tips-1-log-everything/">Log everything</a>. </strong> If you&#8217;re only human like me and are on an <i>intense</i> delivery timeframe, you&#8217;re bound to make a mistake or overlook something.  404 errors, user input, slow scripts, or any other sticks-in-the-spokes problems.  I log it all.</p>
<p><strong>3. Get a designer. </strong> A lot of programmers just can&#8217;t wear both the design hat and the coding hat.  Myself included.  I try to adopt the mantra: &#8217;suck less every day&#8217;.  But, in the meantime, find someone who knows what they&#8217;re doing, and use their stuff.  I recommend Techstars Sponsor, <a href="http://www.sliceoflime.com/">Slice of Lime</a></p>
<p><strong>4. Don&#8217;t open up your system to the public until you&#8217;re ready. </strong> Two words: brand dillution.  Ignore it like the plague, at least until your shit works.</p>
<p><strong>5. Use standards compliant patterns. </strong> I can&#8217;t tell you how many times I tried to take a shortcut at the expense of learning &#038; using the standards-compliant way of implementing a solution.  Save yourself the hassle.  Just do it the accepted way, erhm, the right way, the first time.</p>
<p><strong>6. Don&#8217;t get attached to your code. </strong> There&#8217;ve been a few times when a business reason developed in which a certain area of our site wasn&#8217;t needed anymore.  I&#8217;ve found that it&#8217;s less painless to let go.  Just&#8230; let&#8230; go.  I always try to remember: Biz dev sets the strategy. Development executes.</p>
<p><strong>7. A/B Test. </strong>  At many times, our team would find ourselves at an impasse over the direction to take a feature or design.  Sometimes, rather than a spirited debate among ourselves, implementing features both ways and testing how actual visitors respond is best.</p>
<p><strong>8. Find good help.</strong>  Whether it&#8217;s through the techstars mentor network, the Boulder community, or a new hire in your company.  If there&#8217;s a skillset you&#8217;re missing, look to fill it.  You&#8217;ll never have a better network of talented young developers than you will this summer.</p>
<p><strong>9. Develop code quality standards, and stick to them. </strong> I was nearly driven insane until our team adopted a strict MVC pattern.  &#8217;nuff said.</p>
<p><strong>10. Develop a rhythm.</strong>  It helps build a sense of progress and a weekly deadline to shoot for.  Product meetings on monday.  Log review day is on friday. QA is on friday.  We release on Mondays. </p>
<p>Good luck with everything. Oh, and don&#8217;t forget to enjoy it.  2008 was a landmark summer for me, in no small way.  </p>
<p>I&#8217;ll see you around the bunker.  Oh, and you can follow the musings of the ignighter team on twitter at <a href="http://www.twitter.com/ksowocki">@ksowocki</a>, <a href="http://www.twitter.com/danosit">@danosit</a>, <a href="http://www.twitter.com/arsachs">@arsachs</a>, <a href="http://www.twitter.com/aycaaksu">@aycaaksu</a>, and <a href="http://www.twitter.com/nleach">@nleach</a>. </p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/05/20/10-things-i-wish-i-knew-as-a-lead-developer-at-techstars/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Why do so many entrepreneurs run?</title>
		<link>http://owocki.com/2009/05/17/why-do-so-many-entrepreneurs-run/</link>
		<comments>http://owocki.com/2009/05/17/why-do-so-many-entrepreneurs-run/#comments</comments>
		<pubDate>Sun, 17 May 2009 20:51:04 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Life]]></category>

		<category><![CDATA[entrepeneurship]]></category>

		<category><![CDATA[running]]></category>

		<category><![CDATA[startups]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/05/17/why-do-so-many-entrepreneurs-run/</guid>
		<description><![CDATA[Reading a post by Rustin Banks on the parallels between Entrepeneurship &#038; Tennis got me thinking.  Just like Tennis, there sure are a lot of parallels between Running and Entrepeneurship.  That must be why so many startup folks I&#8217;ve met over the past year are runners too!  And, by running, I mean [...]]]></description>
			<content:encoded><![CDATA[<p>Reading a post by <a href="http://blog.rustinbanks.com/2009/05/why-do-so-many-entrepreneurs-play.html">Rustin Banks on the parallels between Entrepeneurship &#038; Tennis</a> got me thinking.  Just like Tennis, there sure are a lot of parallels between <strong>Running</strong> and Entrepeneurship.  That must be why so many startup folks I&#8217;ve met over the past year are runners too!  And, by running, I mean distance running.  5 miles and over.</p>
<p>Come to think of it, many of my favorite folks from <a href="http://www.techstars.org">Techstars</a> last summer were runners. <a href="http://www.kristapaul.com">Krista Paul</a>, <a href="http://www.feld.com">Brad Feld</a>, &#038; <a href="http://www.awkwardrules.net">Vikas Reddy</a> to name a few.</p>
<p>Distance Running is all about not giving up. So is starting a startup.  Here are some other parallels I see between being a good entrepreneur and being a good runner:</p>
<p> - You&#8217;ve got to take it one foot at a time.</p>
<p> - You might now know where exactly you&#8217;re going when you set out, but you have to have faith in your ability to get there.</p>
<p> - Though the lifestyle is a lot of work, the payoff is worth it.</p>
<p> - Intellectual honesty is key.  Know your abilities, and learn to tell the different between when you&#8217;re getting burnt out, and when you can push yourself harder.</p>
<p> - Both are excellent exercises in learning to marginalize your self doubt.</p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/05/17/why-do-so-many-entrepreneurs-run/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Twitter IS Human-Powered Search</title>
		<link>http://owocki.com/2009/03/22/twitter-is-human-powered-search/</link>
		<comments>http://owocki.com/2009/03/22/twitter-is-human-powered-search/#comments</comments>
		<pubDate>Sun, 22 Mar 2009 23:30:47 +0000</pubDate>
		<dc:creator>owocki</dc:creator>
		
		<category><![CDATA[Life]]></category>

		<category><![CDATA[google]]></category>

		<category><![CDATA[human]]></category>

		<category><![CDATA[search]]></category>

		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://owocki.com/2009/03/22/twitter-is-human-powered-search/</guid>
		<description><![CDATA[While Google is my go-to for almost everything search, there are some situations when keyworded-search just doesn&#8217;t do.  Google&#8217;s Pagerank algorithm may find answers that are most relevant to the entire web, but sometimes I want to know what people in my field, in my area, or from my past, are using.  Those [...]]]></description>
			<content:encoded><![CDATA[<p>While Google is my go-to for almost everything search, there are some situations when keyworded-search just doesn&#8217;t do.  Google&#8217;s Pagerank algorithm may find answers that are most relevant to the entire web, but sometimes I want to know what people in my field, in my area, or from my past, are using.  Those people know my tastes, or at least seem to have similar tastes to me.  In short, I want to know what my network thinks of that query.</p>
<p>I&#8217;ve had some fun results using twitter to find recommended applications.  In my experience, tweeps respond to queries only if they are specific and easily relateable.   (see screenshots below)</p>
<h3>Pandora vs. Last.FM.  In this case, Last.FM won.</h3>
<p><a href='http://owocki.com/wp-content/uploads/2009/03/q11.png' title='q11.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/q11.png' alt='q11.png' /></a><br />
<a href='http://owocki.com/wp-content/uploads/2009/03/r1.png' title='r1.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/r1.png' alt='r1.png' /></a></p>
<h3>Do people recommend delicious? The answer is a resounding YES.</h3>
<p><a href='http://owocki.com/wp-content/uploads/2009/03/q2.png' title='q2.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/q2.png' alt='q2.png' /></a><br />
<a href='http://owocki.com/wp-content/uploads/2009/03/r2.png' title='r2.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/r2.png' alt='r2.png' /></a></p>
<h3>This one was just for fun.  Turns out, many people who use Twitter have dual-monitors.</h3>
<p><a href='http://owocki.com/wp-content/uploads/2009/03/q3.png' title='q3.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/q3.png' alt='q3.png' /></a><br />
<a href='http://owocki.com/wp-content/uploads/2009/03/r3.png' title='r3.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/r3.png' alt='r3.png' /></a></p>
<h3>Twitter is great for web nerd questions.  Below, JQuery vs. MooTools.  Turns out it was JQuery 2 to 1.</h3>
<p><a href='http://owocki.com/wp-content/uploads/2009/03/q4.png' title='q4.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/q4.png' alt='q4.png' /></a><br />
<a href='http://owocki.com/wp-content/uploads/2009/03/r4.gif' title='r4.gif'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/r4.gif' alt='r4.gif' /></a></p>
<h3>4/4 of the people who responded this twitpoll respond to, welll&#8230; twitpolls. Go Figure.  Must be some sort of implicit bias. <img src='http://owocki.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </h3>
<p><a href='http://owocki.com/wp-content/uploads/2009/03/q5.png' title='q5.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/q5.png' alt='q5.png' /></a><a href='http://owocki.com/wp-content/uploads/2009/03/r5.png' title='r5.png'><img width=500px src='http://owocki.com/wp-content/uploads/2009/03/r5.png' alt='r5.png' /></a></p>
<p>Have YOU had any luck finding interesting new applications, new hobbies, new workflows, or new people on twitter?</p>
]]></content:encoded>
			<wfw:commentRss>http://owocki.com/2009/03/22/twitter-is-human-powered-search/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
