<?xml version="1.0" encoding="UTF-8"?>
<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/"
	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/"
	>

<channel>
	<title>Bumblebee Labs Blog &#187; Developer</title>
	<atom:link href="http://blog.bumblebeelabs.com/category/developer/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.bumblebeelabs.com</link>
	<description>Official company blog for Bumblebee Labs</description>
	<lastBuildDate>Fri, 02 Jul 2010 18:07:38 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Windows, Rails 2.2+, InstantRails &amp; MySQL: bundled mysql.rb driver error</title>
		<link>http://blog.bumblebeelabs.com/windows-rails-22-instantrails-mysql-bundled-mysqlrb-driver-error/</link>
		<comments>http://blog.bumblebeelabs.com/windows-rails-22-instantrails-mysql-bundled-mysqlrb-driver-error/#comments</comments>
		<pubDate>Mon, 20 Apr 2009 00:25:05 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=628</guid>
		<description><![CDATA[If you get the error:
!!! The bundled mysql.rb driver has been removed from Rails 2.2. Please
install the mysql gem and try again: gem install mysql.
rake aborted!
Here&#8217;s what happened.
Windows, InstantRails &#38; Rails 2.2+ will not work out of the box
gem install mysql will successfully install the gem but then silently fail if the gem cannot find [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/rails-without-rails/' rel='bookmark' title='Permanent Link: Rails without Rails'>Rails without Rails</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-20-swfupload-restful-authentication/' rel='bookmark' title='Permanent Link: Rails 2.0 + SWFUpload + RESTful authentication'>Rails 2.0 + SWFUpload + RESTful authentication</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-rumble-done/' rel='bookmark' title='Permanent Link: Oct 19th (day 7): Rails Rumble done'>Oct 19th (day 7): Rails Rumble done</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>If you get the error:</p>
<blockquote><p>!!! The bundled mysql.rb driver has been removed from Rails 2.2. Please<br />
install the mysql gem and try again: gem install mysql.<br />
rake aborted!</p></blockquote>
<p>Here&#8217;s what happened.</p>
<p>Windows, InstantRails &amp; Rails 2.2+ will not work out of the box</p>
<p>gem install mysql will successfully install the gem but then silently fail if the gem cannot find MySQL. Because InstantRails is designed to install cleanly, it doesn&#8217;t modify your path and so gems cannot find the MySQL path. To fix this, go to Control Panel-&gt;System-&gt;Advanced System Settings-&gt;Environment Variables-&gt;Path and add C:InstantRailsmysqlbin &amp; C:InstantRailsrubybin to the path. Restart everything that can be restarted and try again.</p>
<p>Windows, Ruby, MySQL 5.1 &amp; Rails 2.2+ will not work out of the box.</p>
<p>Install MySQL 5.0 instead.</p>
<p>either of these should fix the problem.</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/rails-without-rails/' rel='bookmark' title='Permanent Link: Rails without Rails'>Rails without Rails</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-20-swfupload-restful-authentication/' rel='bookmark' title='Permanent Link: Rails 2.0 + SWFUpload + RESTful authentication'>Rails 2.0 + SWFUpload + RESTful authentication</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-rumble-done/' rel='bookmark' title='Permanent Link: Oct 19th (day 7): Rails Rumble done'>Oct 19th (day 7): Rails Rumble done</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/windows-rails-22-instantrails-mysql-bundled-mysqlrb-driver-error/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gmail sent mail spam</title>
		<link>http://blog.bumblebeelabs.com/gmail-sent-mail-spam/</link>
		<comments>http://blog.bumblebeelabs.com/gmail-sent-mail-spam/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 00:32:22 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Bumblebee Labs Main Blog]]></category>
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=611</guid>
		<description><![CDATA[I just noticed an interesting new spam tactic. Spammers are now injecting spam into my Gmail sent mail folder. I view all my mail through thunderbird and my sent mail folder currently has 26 unread messages. Inside the folder, I see several messages sent from me to me with typical spam contents (Hollywood stars threw [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/nov-11th-day-29-bumblebees-and-spam/' rel='bookmark' title='Permanent Link: Nov 11th (day 29): Bumblebees and Spam'>Nov 11th (day 29): Bumblebees and Spam</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I just noticed an interesting new spam tactic. Spammers are now injecting spam into my Gmail sent mail folder. I view all my mail through thunderbird and my sent mail folder currently has 26 unread messages. Inside the folder, I see several messages sent from me to me with typical spam contents (Hollywood stars threw up! is a sample subject). I&#8217;m not familiar enough with the intricacies of SMTP or IMAP to figure out exactly what&#8217;s going on here but I&#8217;d be interested to hear how this was done.</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/nov-11th-day-29-bumblebees-and-spam/' rel='bookmark' title='Permanent Link: Nov 11th (day 29): Bumblebees and Spam'>Nov 11th (day 29): Bumblebees and Spam</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/gmail-sent-mail-spam/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>no provisioned iPhone device could be found</title>
		<link>http://blog.bumblebeelabs.com/no-provisioned-iphone-device-could-be-found/</link>
		<comments>http://blog.bumblebeelabs.com/no-provisioned-iphone-device-could-be-found/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 01:26:03 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=524</guid>
		<description><![CDATA[I occasionalyl get this error in XCode. A quick reboot of the iPhone seems to fix the problem.


Related posts:Some tips for jailbreakers



Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/some-tips-for-jailbreakers/' rel='bookmark' title='Permanent Link: Some tips for jailbreakers'>Some tips for jailbreakers</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I occasionalyl get this error in XCode. A quick reboot of the iPhone seems to fix the problem.</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/some-tips-for-jailbreakers/' rel='bookmark' title='Permanent Link: Some tips for jailbreakers'>Some tips for jailbreakers</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/no-provisioned-iphone-device-could-be-found/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rails without Rails</title>
		<link>http://blog.bumblebeelabs.com/rails-without-rails/</link>
		<comments>http://blog.bumblebeelabs.com/rails-without-rails/#comments</comments>
		<pubDate>Sat, 07 Feb 2009 11:47:00 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=501</guid>
		<description><![CDATA[After working for a while on my first non-web based ruby project, I&#8217;ve tried to integrate nicely with a number of different components which I was already familiar with within the rails environment like ActiveRecord. Having struggled a bit with the pure approach, I wouldn&#8217;t reccomend it.
Instead, what I&#8217;m doing is just spinning up an [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/windows-rails-22-instantrails-mysql-bundled-mysqlrb-driver-error/' rel='bookmark' title='Permanent Link: Windows, Rails 2.2+, InstantRails &#038; MySQL: bundled mysql.rb driver error'>Windows, Rails 2.2+, InstantRails &#038; MySQL: bundled mysql.rb driver error</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-20-swfupload-restful-authentication/' rel='bookmark' title='Permanent Link: Rails 2.0 + SWFUpload + RESTful authentication'>Rails 2.0 + SWFUpload + RESTful authentication</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-rumble-done/' rel='bookmark' title='Permanent Link: Oct 19th (day 7): Rails Rumble done'>Oct 19th (day 7): Rails Rumble done</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>After working for a while on my first non-web based ruby project, I&#8217;ve tried to integrate nicely with a number of different components which I was already familiar with within the rails environment like ActiveRecord. Having struggled a bit with the <a href="http://rails.aizatto.com/2007/05/21/activerecord-without-rails/">pure</a> <a href="http://rails.aizatto.com/2007/05/27/activerecord-migrations-without-rails/">approach</a>, I wouldn&#8217;t reccomend it.</p>
<p>Instead, what I&#8217;m doing is just spinning up an empty rails instance and just ignoring all the web based stuff. That is, I&#8217;m not spinning up a passenger instance, my app folder is empty but I can still access everything else inside Rails like:</p>
<ul>
<li>ActiveRecord</li>
<li>Migrations and rake tasks</li>
<li>ruby script/console so I can interactively poke at the db</li>
<li>ruby script/runner to spin up my server</li>
<li>All the rails based testing frameworks</li>
</ul>
<p>So even though it&#8217;s a bit more messy, it ends up saving a lot of hassle in the long run. So much for modular design huh?</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/windows-rails-22-instantrails-mysql-bundled-mysqlrb-driver-error/' rel='bookmark' title='Permanent Link: Windows, Rails 2.2+, InstantRails &#038; MySQL: bundled mysql.rb driver error'>Windows, Rails 2.2+, InstantRails &#038; MySQL: bundled mysql.rb driver error</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-20-swfupload-restful-authentication/' rel='bookmark' title='Permanent Link: Rails 2.0 + SWFUpload + RESTful authentication'>Rails 2.0 + SWFUpload + RESTful authentication</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-rumble-done/' rel='bookmark' title='Permanent Link: Oct 19th (day 7): Rails Rumble done'>Oct 19th (day 7): Rails Rumble done</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/rails-without-rails/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Evidence that opt out ads aren&#8217;t harmful</title>
		<link>http://blog.bumblebeelabs.com/evidence-that-opt-out-ads-arent-harmful/</link>
		<comments>http://blog.bumblebeelabs.com/evidence-that-opt-out-ads-arent-harmful/#comments</comments>
		<pubDate>Sat, 31 Jan 2009 13:08:51 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Bumblebee Labs Main Blog]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[advertising]]></category>
		<category><![CDATA[substantiated opinion]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=496</guid>
		<description><![CDATA[A few months ago, I wrote about a better way of serving ads by replacing the ad with a donate button. A recent Wall Street Journal article reports that wikiHow also recently started doing opt out ads and their revenue dropped less than 1%. I wonder if they&#8217;ll also include a donate button?


Related posts:The tribulations [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/the-tribulations-of-success/' rel='bookmark' title='Permanent Link: The tribulations of success'>The tribulations of success</a></li>
<li><a href='http://blog.bumblebeelabs.com/not-impressed-with-the-iphone-user-interaction/' rel='bookmark' title='Permanent Link: Not impressed with the iPhone user interaction'>Not impressed with the iPhone user interaction</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>A few months ago, I wrote about <a href="http://blog.bumblebeelabs.com/a-better-way-of-serving-ads">a better way of serving ads</a> by replacing the ad with a donate button. A recent Wall Street Journal article reports that <a href="http://blogs.wsj.com/digits/2009/01/30/turning-the-ads-off/">wikiHow also recently started doing opt out ads and their revenue dropped less than 1%</a>. I wonder if they&#8217;ll also include a donate button?</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/the-tribulations-of-success/' rel='bookmark' title='Permanent Link: The tribulations of success'>The tribulations of success</a></li>
<li><a href='http://blog.bumblebeelabs.com/not-impressed-with-the-iphone-user-interaction/' rel='bookmark' title='Permanent Link: Not impressed with the iPhone user interaction'>Not impressed with the iPhone user interaction</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/evidence-that-opt-out-ads-arent-harmful/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Evaluating Languages</title>
		<link>http://blog.bumblebeelabs.com/evaluating-languages/</link>
		<comments>http://blog.bumblebeelabs.com/evaluating-languages/#comments</comments>
		<pubDate>Thu, 15 Jan 2009 19:48:11 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Bumblebee Labs Main Blog]]></category>
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=470</guid>
		<description><![CDATA[I suppose I should be writing more about the work that I&#8217;m actually doing since a) it&#8217;s the actual purpose of this blog and b) it&#8217;s far easier to write about. Today, I&#8217;ve been evaluating languages for this new project I&#8217;m working on which all I can talk about at this point is that it [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/decent-text-editor-with-rhtmlerb-syntax-highlighting/' rel='bookmark' title='Permanent Link: Decent text editor with .rhtml/.erb syntax highlighting?'>Decent text editor with .rhtml/.erb syntax highlighting?</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-without-rails/' rel='bookmark' title='Permanent Link: Rails without Rails'>Rails without Rails</a></li>
<li><a href='http://blog.bumblebeelabs.com/nov-2nd-day-21-obviously-wrong-truths/' rel='bookmark' title='Permanent Link: Nov 2nd (day 21): Obviously wrong truths'>Nov 2nd (day 21): Obviously wrong truths</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I suppose I should be writing more about the work that I&#8217;m actually doing since a) it&#8217;s the actual purpose of this blog and b) it&#8217;s far easier to write about. Today, I&#8217;ve been evaluating languages for this new project I&#8217;m working on which all I can talk about at this point is that it involves iPhones and a server. The iPhone portion obviously has to be written in Objective C (on which I&#8217;ll have more to talk about later).</p>
<p>Because I&#8217;m coding for myself, I have the luxury that my number 1 criteria for the language is that i enjoy coding in it and so I&#8217;ve narrowed the list down to a shortlist of contenders based on a number of criteria:</p>
<ul>
<li><strong>Strong and natural support for functional programming </strong>without getting in the way of actually getting work done. I&#8217;ve dabbled with functional programming on and off for a number of years and I think I&#8217;ve gotten my head sufficiently wrapped around the paradigm but I&#8217;ve yet to dive in with any serious gusto. This seems like a good project to make a serious push towards significant use of the functional paradigm</li>
<li><strong>Abstractions for elegant horizontal scaling</strong>. Tying in with the functional aspect, the ability to at least do dumb scaling in the horizontal direction without significant rework would be a major win. I don&#8217;t know how successful this application will be and my opinion is still that thinking about scaling is a case of premature optimization but it seems plausible that properly engineered, this app should be naturally built to scale.</li>
<li><strong>Rich library support. </strong>This is kind of a no brainer and one that&#8217;s unfortunately got nothing to do with the actual language itself. I&#8217;ve had to eliminate many beautiful, clever languages from the running because of this.</li>
<li><strong>Good tool support.</strong> I&#8217;ve an unavowed IDE slut. Talk all you like about how you can configure emacs to give you blowjobs on demand in only 8000 lines of elisp, I&#8217;m just not smart enough to handle that sort of thing. I love my auto complete, i love my step through debugger and I love one button source control integration. You can talk all you like about how the standard library is so small that it can be memorized in a day, I&#8217;m 3 weeks into programming Obejective C and I *still* need to Google for the command to turn a NSString to a CString and vice versa.</li>
<li><strong>Great documentation and tutorials</strong>. I happened to start working on Ruby on Rails during the great 2.0 upgrade and the mishmash of confusing 2 year old blog posts and scant API docs made it a major pain in an otherwise wonderful framework.</li>
<li><strong>Interactive console</strong>. I&#8217;ve found the best way for me to get my head fully around a concept is to play with it a bit in an interactive console with some toy examples.</li>
</ul>
<p>Based on these criteria, here&#8217;s my shortlist in order from most to least likely:</p>
<p><strong>Python</strong></p>
<p>Python is a language I&#8217;ve never touched although it&#8217;s always been one I&#8217;ve felt like I should know. From what I&#8217;ve seen of random code samples I&#8217;ve come across, it&#8217;s as nice as everyone keeps telling me it is and I doubt the learning curve will be that steep after having learnt Ruby. From what I&#8217;ve seen, Python supports functional programming just a wee bit better than Ruby does and the way it chooses to express it fits my style better. Like Ruby, it&#8217;s roots are in the hippie open source/linux world which means I have to deal with all the tireless ideological crap that comes along with it. Not a big deal but one to consider.</p>
<p><strong>Ruby</strong></p>
<p>One major advantage with Ruby is that I already know it so I can hit the ground running. Half of my current prototyping is done in Ruby already and the language attracts a lot of smart people which makes keeping up with it actually intellectually stimulating rather than overwhelming. It also seems to have the nicest testing facilities of all the languages and the most scarily powerful metaprogramming.</p>
<p><strong>C#/F#</strong></p>
<p>The other language I&#8217;ve been doing prototyping in, I have a lot of love for C# and it&#8217;s a beautifully designed language although from a completely different design philosophy for the Perl/Python/Ruby crowd. One major advantage of working with C# is that I get to work inside Visual Studio, my absolute most favourite IDE in the world. Static typing also gives me autocomplete that doesn&#8217;t suck and the corporate backing that C# has means it has absolutely staggeringly fabulous documentation. Since .NET 3.0, C# has apparently gotten some pretty nice functional support although I&#8217;m not sure how elegantly it integrates with the rest of the language. I&#8217;m curious to check out F# and leveraging the strengths of each language. I&#8217;ve downloaded the F# runtime a few times but have never worked up the incentive to learn the thing. It&#8217;s an interesting possibility.</p>
<p><strong>JRuby/Groovy/Scala/Java</strong></p>
<p>I keep on hearing Groovy and Scala are the next big thing for all the cool kids but I don&#8217;t even know what they are yet let alone what they&#8217;re good for. Still, it would be an interesting chance to learn. I dislike the wordiness of Java but the ability to use any JVM library is an intriguing possibility. I&#8217;ve also never worked on a project using multiple languages before and I&#8217;d like to see what that would be like.</p>
<p><strong>Haskell</strong></p>
<p>I have a special affinity towards Haskell as it&#8217;s the first programming language I&#8217;ve ever learnt and I became somewhat spoilt as a result of it. Still, I haven&#8217;t even scratched the surface of it and I&#8217;ve so far failed in my many attempts to grok how monads work. This <a href="http://intoverflow.wordpress.com/2009/01/13/why-haskell-is-beyond-ready-for-prime-time/">blog post </a>at Integer Overflow really sold me on the viability of Haskell as a serious albeit choice. Frankly, the ability to code search <a href="http://www.haskell.org/hoogle/">based on type signature</a> is just so nifty that it&#8217;s pushing Haskell way up on the list. I would love working in the language but my only concern is whether it&#8217;s sufficiently flexible to adapt to the kind of work I want it to do.</p>
<p><strong>Erlang</strong></p>
<p>We worked with Erlang in a distributed systems class in undergrad and my impression of it then was that it was a beautiful idea marred by poor language design. The weird syntax and lack of first class functions in Erlang was a majorly baffling design decision and made programming ugly and painful. However, it&#8217;s an intruging choice based on it being designed from the ground up to scale.</p>
<p><strong>Lisp</strong></p>
<p>I can write some lisp and understand the rudiments of the language but Lisp nerds annoy me. I would love to code something in Lisp in theory but I very much have not yet found something in practice which I would want to code.</p>
<p>Over the next couple of days, I&#8217;m going to do a lot more reading and digesting of the various languages, mainly as an excuse to take a kind of &#8220;holiday&#8221; away from coding and I&#8217;ll be updating on the various things I&#8217;m learning. Now&#8230; onto <a href="http://www.amazon.com/Real-World-Haskell-Bryan-OSullivan/dp/0596514980">Real World Haskell</a>.</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/decent-text-editor-with-rhtmlerb-syntax-highlighting/' rel='bookmark' title='Permanent Link: Decent text editor with .rhtml/.erb syntax highlighting?'>Decent text editor with .rhtml/.erb syntax highlighting?</a></li>
<li><a href='http://blog.bumblebeelabs.com/rails-without-rails/' rel='bookmark' title='Permanent Link: Rails without Rails'>Rails without Rails</a></li>
<li><a href='http://blog.bumblebeelabs.com/nov-2nd-day-21-obviously-wrong-truths/' rel='bookmark' title='Permanent Link: Nov 2nd (day 21): Obviously wrong truths'>Nov 2nd (day 21): Obviously wrong truths</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/evaluating-languages/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Some tips for jailbreakers</title>
		<link>http://blog.bumblebeelabs.com/some-tips-for-jailbreakers/</link>
		<comments>http://blog.bumblebeelabs.com/some-tips-for-jailbreakers/#comments</comments>
		<pubDate>Tue, 23 Dec 2008 15:18:27 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[jailbreak]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=437</guid>
		<description><![CDATA[I&#8217;ve been developing a few ideas for iPhone applications and the app verification process is taking so long that it was just easier to jailbreak my phone than wait for Apple to finish &#8220;verifying&#8221; me. The applications for jailbreaking the iPhone all seem very well designed and easy to use but the documentation surrounding them [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/how-to-recover-from-an-infinite-boot-loop-after-quickpwn/' rel='bookmark' title='Permanent Link: How to recover from an infinite boot loop after QuickPWN'>How to recover from an infinite boot loop after QuickPWN</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been developing a few ideas for iPhone applications and the app verification process is taking so long that it was just easier to jailbreak my phone than wait for Apple to finish &#8220;verifying&#8221; me. The applications for jailbreaking the iPhone all seem very well designed and easy to use but the documentation surrounding them is lacking. Here&#8217;s some tips that could save you a great deal of stress in case you decide to jailbreak your iPhone:</p>
<ol>
<li>If you care at all about how your apps are arranged, write down the <strong>order</strong> your apps appear on a piece of paper or something. The reason for this will be apparent later on.</li>
<li>There&#8217;s no way of irrevocably damaging your iPhone via this procedure. No matter what happens to it, there&#8217;s always a way to get back to a virgin state so take a deep breath and chill if something unexpected happens.</li>
<li>Backup your iPhone via iTunes immediately before jailbreaking it. To do this, right click on the phone and select backup</li>
<li>Run through either Pwnage Tool or QuickPWN and follow all the steps. Hopefully, you should have a fully jailbroken iPhone at this step.</li>
<li>If your phone comes out of the jailbreak at the apple boot logo screen and continually restarts, see <a href="http://devblog.bumblebeelabs.com/how-to-recover-from-an-infinite-boot-loop-after-quickpwn">this post</a> for a fix</li>
<li>If anything goes wrong with the jailbreak, you can always restore your phone to it&#8217;s original settings but the only thing that mysteriously seems to not get remembered is the order your apps are in, hence the handy cheat sheet.</li>
</ol>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/how-to-recover-from-an-infinite-boot-loop-after-quickpwn/' rel='bookmark' title='Permanent Link: How to recover from an infinite boot loop after QuickPWN'>How to recover from an infinite boot loop after QuickPWN</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/some-tips-for-jailbreakers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to recover from an infinite boot loop after QuickPWN</title>
		<link>http://blog.bumblebeelabs.com/how-to-recover-from-an-infinite-boot-loop-after-quickpwn/</link>
		<comments>http://blog.bumblebeelabs.com/how-to-recover-from-an-infinite-boot-loop-after-quickpwn/#comments</comments>
		<pubDate>Tue, 23 Dec 2008 15:16:00 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[iPhone jailbreak]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=436</guid>
		<description><![CDATA[If, after a jailbreak, you&#8217;re experiencing your iPhone continually being stuck on the Apple boot screen and restarting every 10 &#8211; 15 minutes. The problem comes from one of the apps on your phone being incompatible with the jailbreak.
Here&#8217;s what you need to do:

Press the power and home button simultaneously for 10 seconds to shut [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/some-tips-for-jailbreakers/' rel='bookmark' title='Permanent Link: Some tips for jailbreakers'>Some tips for jailbreakers</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>If, after a jailbreak, you&#8217;re experiencing your iPhone continually being stuck on the Apple boot screen and restarting every 10 &#8211; 15 minutes. The problem comes from one of the apps on your phone being incompatible with the jailbreak.</p>
<p>Here&#8217;s what you need to do:</p>
<ul>
<li>Press the power and home button simultaneously for 10 seconds to shut off the phone.</li>
<li>Hold down the home key and plug your iPhone while keeping the home key pressed</li>
<li>Go into iTunes and choose to restore your phone</li>
<li>In the Application tab of your phone in iTunes, deselect &#8220;Sync Applications&#8221; and choose apply. This will uninstall all apps from your phone</li>
<li>Run the jailbreak software again</li>
</ul>
<p>This fix worked for me but I can&#8217;t guarentee that it will work in your case. Please post a comment if you&#8217;re still experiencing this problem.</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/some-tips-for-jailbreakers/' rel='bookmark' title='Permanent Link: Some tips for jailbreakers'>Some tips for jailbreakers</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/how-to-recover-from-an-infinite-boot-loop-after-quickpwn/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>&#8220;Remember me&#8221; sucks at remembering me</title>
		<link>http://blog.bumblebeelabs.com/remember-me-sucks-at-remembering-me/</link>
		<comments>http://blog.bumblebeelabs.com/remember-me-sucks-at-remembering-me/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 02:20:13 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Bumblebee Labs Main Blog]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[design]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=345</guid>
		<description><![CDATA[Why does remember me tend to work so universally poorly? Wordpress for example, is a particularly irritating case, logging me out seemingly at random. Some sites manage to get it right, facebook almost never logs me out. Is there some subtle issue with cookie management that most sites manage to get wrong?
Coupled with this, what&#8217;s [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/this-is-why-the-new-facebook-sucks/' rel='bookmark' title='Permanent Link: This is why the new facebook sucks'>This is why the new facebook sucks</a></li>
<li><a href='http://blog.bumblebeelabs.com/why-the-drudge-report-is-bad-design/' rel='bookmark' title='Permanent Link: Why the Drudge Report is Bad Design.'>Why the Drudge Report is Bad Design.</a></li>
<li><a href='http://blog.bumblebeelabs.com/oct-21st-day-8-test-driven-management/' rel='bookmark' title='Permanent Link: Oct 21st (day 9): Test driven management'>Oct 21st (day 9): Test driven management</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Why does remember me tend to work so universally poorly? Wordpress for example, is a particularly irritating case, logging me out seemingly at random. Some sites manage to get it right, facebook almost never logs me out. Is there some subtle issue with cookie management that most sites manage to get wrong?</p>
<p>Coupled with this, what&#8217;s the basis for remember me only lasting a few weeks? Is this a legitimate security feature? I don&#8217;t really see the basis for it. If I check remember me, I want the site to remember me until I am old and grey (or at least until 2038).</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/this-is-why-the-new-facebook-sucks/' rel='bookmark' title='Permanent Link: This is why the new facebook sucks'>This is why the new facebook sucks</a></li>
<li><a href='http://blog.bumblebeelabs.com/why-the-drudge-report-is-bad-design/' rel='bookmark' title='Permanent Link: Why the Drudge Report is Bad Design.'>Why the Drudge Report is Bad Design.</a></li>
<li><a href='http://blog.bumblebeelabs.com/oct-21st-day-8-test-driven-management/' rel='bookmark' title='Permanent Link: Oct 21st (day 9): Test driven management'>Oct 21st (day 9): Test driven management</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/remember-me-sucks-at-remembering-me/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Oct 21st (day 9): Test driven management</title>
		<link>http://blog.bumblebeelabs.com/oct-21st-day-8-test-driven-management/</link>
		<comments>http://blog.bumblebeelabs.com/oct-21st-day-8-test-driven-management/#comments</comments>
		<pubDate>Tue, 21 Oct 2008 20:55:51 +0000</pubDate>
		<dc:creator>Hang</dc:creator>
				<category><![CDATA[Bumblebee Labs Main Blog]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[30 day experiment]]></category>
		<category><![CDATA[management]]></category>

		<guid isPermaLink="false">http://blog.bumblebeelabs.com/?p=207</guid>
		<description><![CDATA[Mike Burns has some interesting thoughts on how non-testing code is trivial and it lead me to thinking about placing testing above development in the corporate heirarchy. In a normal organization, people start off in testing and maintenence and then only move up to development once they&#8217;ve proven their chops.
What I am envisioning is that [...]


Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/oct-20th-day-7-programming-as-artisanship/' rel='bookmark' title='Permanent Link: Oct 20th (day 8): Programming as artisanship'>Oct 20th (day 8): Programming as artisanship</a></li>
<li><a href='http://blog.bumblebeelabs.com/the-5-guerrilla-user-test/' rel='bookmark' title='Permanent Link: The $5 Guerrilla User Test'>The $5 Guerrilla User Test</a></li>
<li><a href='http://blog.bumblebeelabs.com/lean-software-development-really-isnt-lean/' rel='bookmark' title='Permanent Link: Lean software development really isn&#8217;t lean'>Lean software development really isn&#8217;t lean</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Mike Burns has some interesting thoughts on <a href="http://giantrobots.thoughtbot.com/2008/10/17/non-test-code-is-trivial">how non-testing code is trivial</a> and it lead me to thinking about placing testing above development in the corporate heirarchy. In a normal organization, people start off in testing and maintenence and then only move up to development once they&#8217;ve proven their chops.</p>
<p>What I am envisioning is that everybody starts out as a developer and the development work is considered trivial and mindless because it&#8217;s aimed solely at passing tests. Once you&#8217;ve proven yourself as a good developer, you get promoted into testing. Once you start testing, you can&#8217;t ever write code again on that project and the job of the testers is to make the developer&#8217;s lives hell by making sure the code base is rock solid.</p>
<p>This has a number of nice features that I can see: First of all, it replicates the common &#8220;hazing&#8221; pattern that we know reinforces group solidarity. The job of the senior members is to make the lives of junior members horrible and junior members put up with it because they know some day they will get to do the same. (As an aside, there&#8217;s an interesting educational theory which says that bullying is a product of an age segregated education system. Before mass public education, children mainly interacted in mixed age groups with status based on age which was far more egalatarian because everyone at some point got to be the alpha of a group)</p>
<p>By forbidding testers and developers to communicate except through a chinese wall, it encourages both groups to form a unique culture and language which further enhances solidarity and cohesion. Additionally, the develop&#8211;&gt;test heirarchy naturally encourages an evolution into develop &#8211;&gt; test &#8211;&gt; design which can allow for a much more organic growth into a design oriented company.</p>
<p>Of course, there&#8217;s a few downsides to this management structure as well: Development inherently requires more technical skill than testing and so it&#8217;s an inefficient use of expertise as those most competent at developing will be siphoned off. Additionally, not everyone is equally adept at both soft skills and hard skills and having a promotion path that moves from hardcore technical skills to people skills is only suitable for some people.</p>
<p>Say you&#8217;re a hardcore algorithms guy who loves working on scalability problems. You don&#8217;t want to move up to testing, testing is boring to you. Whats more, even if we let you become a senior developer, you&#8217;re going to get frustrated because all the smart programmers under you are going to move on.</p>
<p>Test driven management seems like an interesting way to structure a company and I&#8217;d be interested in hearing examples of people who are using something similar to this sort of approach.</p>


<p>Related posts:<ol><li><a href='http://blog.bumblebeelabs.com/oct-20th-day-7-programming-as-artisanship/' rel='bookmark' title='Permanent Link: Oct 20th (day 8): Programming as artisanship'>Oct 20th (day 8): Programming as artisanship</a></li>
<li><a href='http://blog.bumblebeelabs.com/the-5-guerrilla-user-test/' rel='bookmark' title='Permanent Link: The $5 Guerrilla User Test'>The $5 Guerrilla User Test</a></li>
<li><a href='http://blog.bumblebeelabs.com/lean-software-development-really-isnt-lean/' rel='bookmark' title='Permanent Link: Lean software development really isn&#8217;t lean'>Lean software development really isn&#8217;t lean</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.bumblebeelabs.com/oct-21st-day-8-test-driven-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
