<?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/" version="2.0">

<channel>
	<title>Wikid Blog: by Wikid Labs</title>
	
	<link>http://www.wikidlabs.com</link>
	<description />
	<lastBuildDate>Mon, 15 Nov 2010 20:24:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/wikidlabs" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="wikidlabs" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>JavaScript Stuff: CSS Dynamic Height and Width Using jQuery</title>
		<link>http://www.wikidlabs.com/javascript-stuff-css-dynamic-height-and-width-using-jquery/</link>
		<comments>http://www.wikidlabs.com/javascript-stuff-css-dynamic-height-and-width-using-jquery/#comments</comments>
		<pubDate>Mon, 15 Nov 2010 20:24:13 +0000</pubDate>
		<dc:creator>DL</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=310</guid>
		<description><![CDATA[While working away on Haven, our online development app, I found the need to be able to dynamically set the height and width of a few elements on the projects main editor page. It&#8217;s the part of the application that will look less like a web page and more like an application. I&#8217;m still rather [...]]]></description>
			<content:encoded><![CDATA[<p>While working away on Haven, our online development app, I found the need to be able to dynamically set the height and width of a few elements on the projects main editor page. It&#8217;s the part of the application that will look less like a web page and more like an application. I&#8217;m still rather new to JavaScript and extremely new to jQuery so figuring out how to do this was a little time consuming. The end result was so freaking awesome and flexible that I thought I&#8217;d share it with the world.</p>
<p>To use this code just add the class dynamic-height or dynamic-width to the elements you want to have fill the screen. Then add the class height-offset or width-offset to any elements that have a static height or width that should be taken into account when calculating the white space left on the screen. Then add setDynamicDimensions() as the onresize event and as a script block at the bottom of the page. Just like that you will have elements that fill your page without causing scrollbars and the users screen size or resolution won&#8217;t matter.</p>
<pre class="brush: php">
/*
* Finds all elements that have a class of dynamic-height or dynamic-width and sets their
* heights and widths appropriately offset by the heights or widths of all elements that
* have a class of height-offset or width-offset.
*/
function setDynamicDimensions()
{
var heightOffset = 0;
var widthOffset = 0;

// Calculate the height offset
$(&quot;.height-offset&quot;).each(function(){
heightOffset += $(this).outerHeight();
});

// Calculate the width offset
$(&quot;.width-offset&quot;).each(function(){
widthOffset += $(this).outerWidth();
});

$(&quot;.dynamic-height&quot;).each(function(){
// Take into account this objects margin, border and padding
var myOffset = 0;
myOffset += parseInt($(this).css(&#039;padding-top&#039;));
myOffset += parseInt($(this).css(&#039;padding-bottom&#039;));
myOffset += parseInt($(this).css(&#039;margin-top&#039;));
myOffset += parseInt($(this).css(&#039;margin-bottom&#039;));
myOffset += parseInt($(this).css(&#039;border-top-width&#039;));
myOffset += parseInt($(this).css(&#039;border-bottom-width&#039;));

$(this).css(&quot;height&quot;, $(window).height() - heightOffset - myOffset + &quot;px&quot;);
});

$(&quot;.dynamic-width&quot;).each(function(){
// Take into account this objects margin, border and padding
var myOffset = 0;
myOffset += parseInt($(this).css(&#039;padding-left&#039;));
myOffset += parseInt($(this).css(&#039;padding-right&#039;));
myOffset += parseInt($(this).css(&#039;margin-left&#039;));
myOffset += parseInt($(this).css(&#039;margin-right&#039;));
myOffset += parseInt($(this).css(&#039;border-left-width&#039;));
myOffset += parseInt($(this).css(&#039;border-right-width&#039;));

$(this).css(&quot;width&quot;, $(window).width() - widthOffset - myOffset + &quot;px&quot;);
});
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/javascript-stuff-css-dynamic-height-and-width-using-jquery/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Backpack API Throttling</title>
		<link>http://www.wikidlabs.com/backpack-api-throttling/</link>
		<comments>http://www.wikidlabs.com/backpack-api-throttling/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 04:19:35 +0000</pubDate>
		<dc:creator>wikidlabs</dc:creator>
				<category><![CDATA[Reveille]]></category>
		<category><![CDATA[Product Issues]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=297</guid>
		<description><![CDATA[A few weeks ago Greg received an email from Jeremy over at 37signals asking us why we were hitting the Backpack API so frequently (we were hitting it every 10 seconds looking for reminders that were in need of attention). At that time he informed us that they would be implementing some API throttling in [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago Greg received an email from Jeremy over at <a href="http://37signals.com">37signals</a> asking us why we were hitting the <a href="http://backpackit.com">Backpack</a> <a href="http://developer.37signals.com/backpack/">API</a> so frequently (we were hitting it every 10 seconds looking for reminders that were in need of attention). At that time he informed us that they would be implementing some API throttling in order to limit how many requests could come in from one IP. We were a little unsure what the actual throttling would be so we did what any great new two man company would do&#8230;we did nothing.</p>
<p>The thought was that when 37signals finished up their API throttling implementation, our code would break and we&#8217;d fix it appropriately since then we&#8217;d know what 37signals was doing with their API. Well, it looks like that throttling was put in place because our code broke with the API returning this error.</p>
<blockquote><p><strong>WebServiceRequesterError: Error occured (503): You have exceeded 10 calendar requests in a 5-second period. Please wait 5 seconds before retrying.</strong></p></blockquote>
<p>We added some code to the <em>begin rescue</em> blocks that surround the API calls to sleep for 5 seconds when we get this error message. The end result is some uglier code and processing that&#8217;s a little sluggish but it works now.</p>
<p>If you are a Reveille customer that was impacted by this issue, then please accept our apologies. If not then check out <a href="http://www.wikidlabs.com/reveille">Reveille</a>, it&#8217;s a sweet little app that automatically creates Backpack Reminders for your Backpack Calendar events.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/backpack-api-throttling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create Reveille reminders in Backpack via SMS</title>
		<link>http://www.wikidlabs.com/create-reveille-reminders-in-backpack-via-sms/</link>
		<comments>http://www.wikidlabs.com/create-reveille-reminders-in-backpack-via-sms/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 16:37:48 +0000</pubDate>
		<dc:creator>wikidlabs</dc:creator>
				<category><![CDATA[Reveille]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=272</guid>
		<description><![CDATA[Recently, 37signals rolled out an update to Backpack that allows calendar events to be created with an SMS message from your mobile device. This is a pretty cool new feature for Backpack users on the go, just like us. The great news is you can use Reveille via SMS too. How does it work? To [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, 37signals rolled out an update to Backpack <a href="http://productblog.37signals.com/products/2010/03/new-in-backpack-sms-events-to-your-calendar-experimental.html">that allows calendar events to be created with an SMS message</a> from your mobile device.  This is a pretty cool new feature for Backpack users on the go, just like us.  The great news is you can use Reveille via SMS too.</p>
<p><strong>How does it work?</strong></p>
<p>To create a Backpack event via SMS that includes Reveille reminders, simply add the reminder hash-tags to the event description <a href="http://getsatisfaction.com/wikidlabs/topics/how_do_i_use_reveille_hashtags">as you would if you were logged into Backpack</a>.  Here&#8217;s what it looked like when I created a few:</p>
<p><a href="http://www.wikidlabs.com/wp-content/uploads/2010/04/photo1.jpg"><img src="http://www.wikidlabs.com/wp-content/uploads/2010/04/photo1.jpg" alt="Creating a Backpack calendar event via SMS with Reveille reminder hashtag" title="Backpack SMS events with Reveille hash-tags" width="320" height="480" class="alignnone size-full wp-image-281" /></a></p>
<p>You can add as many reminder hash-tags to the description as you want, but be careful to not exceed your maximum SMS message length.  Once the event is created, Reveille will do the rest to create the reminders for you.  They will also show up in your schedule view in Reveille as you would expect.</p>
<p>That&#8217;s it!  SMS event creation in Backpack enhanced with the power of Reveille reminders.  Thanks for using Reveille!</p>
<p>Learn more about <a href="http://www.wikidlabs.com/reveille">Reveille</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/create-reveille-reminders-in-backpack-via-sms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reveille Product Update: Timezone issue has been fixed</title>
		<link>http://www.wikidlabs.com/product-update-reveille/</link>
		<comments>http://www.wikidlabs.com/product-update-reveille/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 03:04:21 +0000</pubDate>
		<dc:creator>DL</dc:creator>
				<category><![CDATA[Reveille]]></category>
		<category><![CDATA[Product Issues]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=267</guid>
		<description><![CDATA[What’s New? We recently deployed an update which addresses some issues with reminders getting created at the incorrect time. In order to completely fix your account, you will need to set your timezone in Reveille. Go to your Settings page, and choose the time zone that matches what your Backpack timezone is. The change is [...]]]></description>
			<content:encoded><![CDATA[<p><strong>What’s New?</strong></p>
<p>We recently deployed an update which addresses some issues with reminders getting created at the incorrect time. In order to completely fix your account, you will need to set your timezone in Reveille. Go to your Settings page, and choose the time zone that matches what your Backpack timezone is. The change is saved automatically. After your timezone is set in Reveille, any new calendar events that include reminder hash-tags will have reminders created at the correct times.</p>
<p><strong>Will My Existing Reminders Get Fixed?</strong></p>
<p>Yes! We automatically scanned your Backpack calendar for you when you set your time zone and recreated all of the reminders that were scheduled for the wrong times.</p>
<p><strong>What Happened?</strong></p>
<p>A bug in the software that connects Reveille with Backpack was causing reminders to be created at the wrong time, sometimes off by many hours. Or, to put it in simpler terms, we screwed up and we are really sorry it happened. To make it up to you, we are going to reset the 30-day trial period on all accounts starting today. Thank you for your patience while we worked to fix this issue.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/product-update-reveille/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>QUOTE: Director JJ Abrams on how much to prep projects</title>
		<link>http://www.wikidlabs.com/jj-abrams-on-how-much-to-prep-projects/</link>
		<comments>http://www.wikidlabs.com/jj-abrams-on-how-much-to-prep-projects/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 21:52:51 +0000</pubDate>
		<dc:creator>Greg</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Quotes]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=195</guid>
		<description><![CDATA[&#8220;In general, what I tried to do, is prep as little specifics as possible in terms of shots, so I wanted to be able to go to the set and make things up as I went along, and sort of, you know, wing it. &#8230; Within the parameters of what we had, I tried to [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-206" title="startrek_jjabrams" src="http://www.wikidlabs.com/wp-content/uploads/2010/02/startrek_zaderosenthal.jpg" alt="startrek_jjabrams" width="500" height="332" /></p>
<div class="quote-container">
<div class="quote-content">&#8220;In general, what I tried to do, is prep as little specifics as possible in terms of shots, so I wanted to be able to go to the set and make things up as I went along, and sort of, you know, wing it. &#8230; Within the parameters of what we had, I tried to storyboard nothing so that the [movie] would have energy and would feel vital, and we’d get to make it up as we went along.”</div>
<div class="quote-source">- JJ Abrams, director of <a href="http://www.imdb.com/title/tt0796366/">Star Trek</a>, when asked how much of the movie was improvised versus planned ahead of time.</div>
</div>
<p>I heard this quote last week while listening to the commentary track on the latest <a href="http://www.imdb.com/title/tt0796366/">Star Trek</a> movie.  It was a great reminder for me that the process of <a href="http://en.wikipedia.org/wiki/Iterative_design">iterative design</a>, and not planning out everything ahead of time, transcends software development.  It also reiterated it’s effectiveness to me for creating inspired products that consumers really want.  When your design decisions and inspiration are based on real world feedback rather than judgements made in a vacuum, I don&#8217;t think you can help but have a better outcome.</p>
<p><a href="http://www.esquire.co.uk/2009/04/star-trek-director-jj-abrams-explains-the-allure-of-spock/" class="photo-attribution">Photo courtesy Esquire</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/jj-abrams-on-how-much-to-prep-projects/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Reveille: From Start to Finish in 85 Days</title>
		<link>http://www.wikidlabs.com/reveille-from-start-to-finish-in-85-days/</link>
		<comments>http://www.wikidlabs.com/reveille-from-start-to-finish-in-85-days/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 22:12:14 +0000</pubDate>
		<dc:creator>wikidlabs</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Reveille]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=221</guid>
		<description><![CDATA[A few weeks back we introduced Reveille as a slick new way to tie your Backpack Calendar to Backpack Reminders.  Today we&#8217;re proud to say that Reveille is now available for anyone to check out. Only 85 Days&#8230;Part time mind you We built this fairly simplistic, but extremely useful application in 85 days while maintaining [...]]]></description>
			<content:encoded><![CDATA[<div class="wp-caption aligncenter" style="width: 420px"><a href="http://www.wikidlabs.com/reveille"><img title="Screenshot of Reveille" src="http://www.wikidlabs.com/reveille/images/reveille-screenshot.png?1265922562" alt="Screenshot of Reveille" width="410" height="390" /></a><p class="wp-caption-text">Screen shot of Reveille</p></div>
<p>A few weeks back we <a href="http://www.wikidlabs.com/introducing-reveille/">introduced Reveille</a> as a slick new way to tie your <a href="http://backpackit.com/?referrer=WIKIDLABS">Backpack</a> Calendar to Backpack Reminders.  Today we&#8217;re proud to say that <a href="http://www.wikidlabs.com/reveille">Reveille</a> is now available for anyone to check out.</p>
<p><strong>Only 85 Days&#8230;Part time mind you</strong></p>
<p>We built this fairly simplistic, but extremely useful application in 85 days while maintaining our current full time jobs, keeping our wives happy, spending time with our kids and helping with homework, serving at church, etc.  So, basically while we were living our normalish lives, we whipped this product out in our spare time.</p>
<p><strong>How we 4HWW&#8217;d and Got Real with Reveille</strong></p>
<p>As a &#8220;side&#8221; project, we had to make the most of our time and efforts.   We&#8217;re avid followers of <a href="http://37signals.com/">37signals</a> and <a href="http://www.fourhourworkweek.com/blog/">Tim Ferris</a> so we applied many liberal doses of <a href="http://gettingreal.37signals.com/">Getting Real</a> and <a href="http://www.fourhourworkweek.com/">4HWW</a> to Reveille.  The end result of all the minimalist effort is that Reveille does basically one thing, it could do more, we&#8217;d  like it to do much, much more, but for the time being it simply does this one thing:  <strong>Reveille automatically creates reminders for you based on your calendar items.</strong><br />
<span id="more-221"></span></p>
<p>We&#8217;re bootstrapping the project so we are very picky about what we actually spend money on. We actually developed Reveille on a PC turned server in DL&#8217;s basement. We purchased a slice from <a title="Checkout Slicehost" href="https://manage.slicehost.com/customers/new?referrer=6ebca4f66c04c0d03a9f7b96ff6b8bf5">Slicehost</a> to run our production site on.  We used <a href="http://basecamphq.com/?referrer=WIKIDLABS">Basecamp</a> to help us manage the project so we could easily see what was left to do and make judgment calls as to the importance of those tasks.  We took advice from Guy Kawasaki and Dharmesh Shah and we tried to <a href="http://onstartups.com/tabid/3339/bid/11416/Releasing-Early-Is-Not-Always-Good-Heresy.aspx">release early</a> and send out a <a href="http://blog.guykawasaki.com/2006/01/the_art_of_inno.html#axzz0fdn1NJC5">&#8220;crappy version 1.0&#8243;</a>.   Hopefully we succeeded because it was really hard to release it before we felt ready.  To provide great service from the start, we&#8217;re using <a href="http://getsatisfaction.com/">Get Satisfaction</a> for our help  and support platform.</p>
<p><strong>What took us so long?</strong></p>
<p>Quite honestly, we probably sat on a &#8220;good enough&#8221; version of Reveille for a couple of weeks, but we were finding little bugs, and sometimes big bugs, that just &#8220;had&#8221; to be fixed.  Don&#8217;t worry though&#8230;Reveille still &#8220;shipped&#8221; with a few imperfections.  So <a href="http://www.wikidlabs.com/reveille">give Reveille a try</a> and see if you can find them.  When you do, shoot over to our <a title="Wikid Labs Help" href="http://getsatisfaction.com/wikidlabs">Get Satisfaction site</a> and tell us all about it.  If you like Reveille and find it useful, use the same Get Satisfaction site to tell us that too.  Oh..one more thing, do us a favor and tell all your friends about Reveille.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/reveille-from-start-to-finish-in-85-days/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby Stuff: Use retry to restart a begin rescue block</title>
		<link>http://www.wikidlabs.com/ruby-stuff-use-retry-to-restart-a-begin-rescue-block/</link>
		<comments>http://www.wikidlabs.com/ruby-stuff-use-retry-to-restart-a-begin-rescue-block/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 03:45:14 +0000</pubDate>
		<dc:creator>DL</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/ruby-stuff-use-retry-to-restart-a-begin-rescue-block/</guid>
		<description><![CDATA[I recently needed to be able retry a begin block and was simply nesting begins within begins, then I ran across this little Ruby gym. The retry, http://www.tutorialspoint.com/ruby/ruby_exceptions.htm. begin @calendarapi.calendars rescue Exception =&#62; ex logger.info ex switch_ssl() retry end Obviously this bit of code could end in a continuous loop so be careful to add [...]]]></description>
			<content:encoded><![CDATA[<p>I recently needed to be able retry a begin block and was simply nesting begins within begins, then I ran across this little Ruby gym. The retry, http://www.tutorialspoint.com/ruby/ruby_exceptions.htm.</p>
<pre class="brush: php">
    begin
      @calendarapi.calendars
    rescue Exception =&gt; ex
      logger.info ex
      switch_ssl()
      retry
    end
</pre>
<p>Obviously this bit of code could end in a continuous loop so be careful to add a little logic to ensure a clean exit.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/ruby-stuff-use-retry-to-restart-a-begin-rescue-block/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Introducing Reveille</title>
		<link>http://www.wikidlabs.com/introducing-reveille/</link>
		<comments>http://www.wikidlabs.com/introducing-reveille/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 19:24:09 +0000</pubDate>
		<dc:creator>wikidlabs</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[37Signals]]></category>
		<category><![CDATA[Reveille]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=132</guid>
		<description><![CDATA[We are very excited to introduce, and give you a little preview of the first application from Wikid Labs. It&#8217;s called Reveille, and it is going to add some great new features to 37signals’ Backpack application that aren’t available today. Before we tell you more about the features, we want to explain a little of [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://wikidlabs.com/reveille"><img class="alignnone size-full wp-image-140" title="reveille-logo" src="http://www.wikidlabs.com/wp-content/uploads/2010/01/reveille-logo.png" alt="reveille-logo" width="276" height="90" /></a></p>
<p><a href="http://wikidlabs.com/reveille"></a><br />
We are very excited to introduce, and give you a little preview of the first application from Wikid Labs. It&#8217;s called <a href="http://en.wikipedia.org/wiki/Reveille">Reveille</a>, and it is going to add some great new features to <a href="http://37signals.com">37signals</a>’ <a href="http://backpackit.com">Backpack</a> application that aren’t available today.</p>
<p>Before we tell you more about the features, we want to explain a little of the history behind the idea for Reveille.  We have been happy users of 37signal’s <a href="http://basecamphq.com">Basecamp</a> and Backpack for about two years.  In fact, we’ve used Basecamp to manage the development of Reveille.  The idea for Reveille came as Greg’s wife was trying to move the family calendar completely into Backpack from iCal on her Mac, but was finding the management of reminders to be a bit of a challenge.  She wanted an easier way to add the reminders she was used to having, for instance, reminders for friends birthdays, or other important appointments.  The solution hit Greg one day, late October, in the place where all good ideas seem to come, the shower.<br />
<span id="more-132"></span><br />
What we&#8217;ve ended up developing is a system for being able to automatically create reminders for Backpack calendar events by using special hashtags in the event names.  For example, you might want to create an event for an important meeting and be reminded of it two hours prior.  Today, you have two choices in Backpack for doing this.  You could use the built-in event reminders set for 30 minutes before the event, which may not remind you when you want.  Or, you could manually add a reminder for the event, which is way too much work in our opinion.  The new option, using Reveille, is to create your event and somewhere in the event name you would include &#8216;#rem2hrs&#8217;.  When Reveille scans your calendar it will pick up the hashtag and add a reminder two hours before the event for you.  And, even better, it means there&#8217;s no limit to the number of reminders per event.  You can add as many reminder hashtags as you care to.  We found this to be a great shortcut for managing calendar reminders, and we hope you will too.</p>
<p>Just to summarize, Reveille’s main features are:</p>
<ol>
<li>Automatic reminder creation for calendar events from within Backpack or any other Backpack app that allows the creation of calendar events.</li>
<li>Easily create multiple reminders for a calendar event just by using more hashtags</li>
<li>See and manage your reminders, shown in relationship to your calender events, from a simple interface within Reveille.</li>
</ol>
<p>Reveille isn&#8217;t publicly available just yet, so check out <a href="http://wikidlabs.com/reveille">our website</a> to signup for our email newsletter, and <a href="http://twitter.com/wikidlabs">follow us on Twitter</a> so that we can keep you up to date on the release of Reveille, and exclusive discount offers.  We hope you&#8217;re as excited as we are about using Reveille to streamline your calendar experience in Backpack.  We totally welcome your feedback, so please let us know what you think.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/introducing-reveille/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>What Is The Character Of Your Company?</title>
		<link>http://www.wikidlabs.com/company-character/</link>
		<comments>http://www.wikidlabs.com/company-character/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 18:14:25 +0000</pubDate>
		<dc:creator>DL</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=105</guid>
		<description><![CDATA[That may sound like a silly question at first glance since we usually associate character with people. The idea of company character makes a ton of sense once you realize that a company is it&#8217;s own entity. Any company that employs at least one person has a character and since every company employs at least [...]]]></description>
			<content:encoded><![CDATA[<dl style="width: 460px;">
<dt><img class="aligncenter" title="Bad_Customer_Service" src="http://www.smmbc.ca/images/unhappycustomer.jpg" alt="Bad Customer Service" width="450" height="282" /></dt>
</dl>
<p>That may sound like a silly question at first glance since we usually associate character with people. The idea of company character makes a ton of sense once you realize that a company is it&#8217;s own entity. Any company that employs at least one person has a character and since every company employs at least its owner then I think it could safely be said that all companies have character, be it good or bad.</p>
<p>Before you can answer the question &#8220;What is the character of my company?&#8221; it&#8217;s probably important to identify what defines the character of a company.</p>
<p><span id="more-105"></span></p>
<p>Company character IS NOT defined by a mission statement, what&#8217;s on the About Us page or by what the founder/owner says it is. Company character IS defined by the content that you put out, i.e. blog posts, Twitter and Facebook updates and public forum answers. It is also, and most importantly, defined by how you treat your customers.</p>
<p>In order to gain a better idea of how you treat your customers answer these questions. Be honest with yourself.</p>
<p>How do you treat potential customers?<br />
How do you treat your newest customer?<br />
How do you treat your oldest customer?<br />
How do you treat unhappy customers?<br />
How do you treat satisfied customers?<br />
How do you treat customers who are canceling their service?</p>
<p>Now&#8230; notice that I used the word &#8220;treat.&#8221; I didn&#8217;t ask &#8220;What do you do for&#8221; or &#8220;What do you think of&#8221;, I asked &#8220;How do you treat&#8221;. The word &#8220;treat&#8221; infers to me the attitude take towards, the level of respect given to or the amount of schmoozing laid upon any given customer, be it an individual or an organization. Think about how you use the word treat when describing how someone treated you. That&#8217;s how I want you to define it in this context.</p>
<p>Sadly the answers to these questions will probably all be different for most companies. Ideally the answers should all be pretty much the same. Your company, i.e. you and ALL of your companies representatives, should treat your potential, newest, oldest, happiest, unhappiest and previous customers with the same level of respect and charisma. It&#8217;s quite likely that if that were to occur or is occurring in your company right now the company is going to prosper because all of it&#8217;s customers will be happy and loyal customers, and those customers are the lifeblood of any company.</p>
<p>Probably the strongest indicator of company character will show up during the process of canceling a sale. No one wants a customer to cancel service, return an item, etc. but it&#8217;s going to happen. How will it be dealt with? Will your company representative be hostile or accommodating? Will the ex-customer walk away from the deal glad to get away from your poisonous life sucking excuse for a company? Or will the ex-customer be saddened that s/he won&#8217;t be doing business with such a happy, enjoyable, positive and uplifting group of individuals.</p>
<p><a title="Zappos" href="http://www.zappos.com">Zappos.com</a> has set the bar ridiculously high for this type of customer service. Zappos CEO <a title="Tony's Blog" href="http://blogs.zappos.com/blogs/ceo-and-coo-blog">Tony Hsieh</a> has driven this type of company character from the top down. I&#8217;ve heard him say in interviews that Zappos isn&#8217;t so much a shoe company, but a customer service company. I&#8217;m actually kind of sad that I&#8217;ve never ordered a pair of shoes from Zappos simply because I love the character that the company exudes. I want to do business with them.</p>
<p>Do people want to do business with your company or are they glad to get away?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/company-character/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How ‘Getting Real’ Is Helping Us Build Haven</title>
		<link>http://www.wikidlabs.com/how-getting-real-is-helping-us-build-haven/</link>
		<comments>http://www.wikidlabs.com/how-getting-real-is-helping-us-build-haven/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 04:52:54 +0000</pubDate>
		<dc:creator>Greg</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[37Signals]]></category>
		<category><![CDATA[getting real]]></category>
		<category><![CDATA[haven]]></category>
		<category><![CDATA[less]]></category>

		<guid isPermaLink="false">http://www.wikidlabs.com/?p=69</guid>
		<description><![CDATA[Photo by: J Heffner When you are a small team of developers who is building a web-based application with very limited resources, it’s very easy to get overwhelmed by the size and effort involved in bringing your idea to life. How in the world can you possibly design and build an application, make it full-featured, [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="" src="/images/blog/cross-tracks.jpg" title="Tracks Crossing" class="alignnone" width="538" height="365" /><br />
<a href="http://www.flickr.com/photos/civisi/" class="photo-attribution">Photo by: J Heffner</a><br />
When you are a small team of developers who is building a web-based application with very limited resources, it’s very easy to get overwhelmed by the size and effort involved in bringing your idea to life. How in the world can you possibly design and build an application, make it full-featured, and attract customers in a relatively short period of time? We found ourselves asking these questions, and it took us a while but we finally found an answer.</p>
<p><span id="more-69"></span></p>
<p>First, how did we find ourselves in this situation? Well, it certainly wasn’t hard. Our idea for Haven (a web-based collaborative development environment you’ll be hearing more about very soon) started small, and over time we designed more and more features that we thought we would solve some of the problems we have with traditional IDEs. It was a natural process, and we are building this application for ourselves so it was really fun to dream. We were excited and got started with development. Little did we know we were creating a huge problem for ourselves by jumping in so quickly. We very quickly got overwhelmed by all that needed to be done.</p>
<p>The kick in the pants we needed was to go back and heed some advice from <a href="http://www.37signals.com">37signals</a>’ book, <a href="http://gettingreal.37signals.com/">Getting Real</a>. In it, the authors had the answer to our problem:</p>
<div class="quotation">“The answer is less. Do less than your competitors to beat them. Solve the simple problems and leave the hairy, difficult, nasty problems to everyone else. Instead of oneupping, try one-downing. Instead of outdoing, try underdoing.</p>
<p>[..] less means:</p>
<p>Less features<br />
Less options/preferences<br />
Less people and corporate structure<br />
Less meetings and abstractions<br />
Less promises”
</p></div>
<p>We’ve read Getting Real and have followed 37signals’ Blog, <a href="http://www.37signals.com/svn/">Signal vs. Noise</a>, for quite some time. If you aren&#8217;t following them already I highly recommend you grab their <a href="http://feeds.feedburner.com/37signals/beMH">RSS feed</a>. We are familiar with the ideas they used to build their successful business. The idea of doing less was not really that new to us.  But, we still resisted the process because we were unwilling to put aside more advanced features that we thought would make us really love using Haven.  Still, during a recent planning conversation, at last we really “got real”. We agreed to focus on a short list of three key features. And it&#8217;s the best decision we&#8217;ve made to date.</p>
<p>We realized that &#8220;doing less&#8221; means the features we thought were important needed to be put aside (perhaps for a few months, perhaps forever) until we had our key features nailed.  It&#8217;s a scary proposition to turn your back on what you feel are your unique, customer attracting features. But, the wisdom in doing this is you are going to have the experience and feedback of using the application to draw from as you begin to slowly add additional features.</p>
<p>So, my advice is to sit down early and really focus on what the core functionality is for your application. Then once you’ve done than, it might help even more to do it again for good measure. It will save you time immediately and going forward because you will be adding features out of experience instead of pulling them out of thin air.</p>
<p>I hope you found this information helpful in some way. I’d love to hear your thoughts.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wikidlabs.com/how-getting-real-is-helping-us-build-haven/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

