<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>josh.wilsdon.ca</title>
 <link href="http://josh.wilsdon.ca/atom.xml" rel="self"/>
 <link href="http://josh.wilsdon.ca/"/>
 <updated>2010-07-27T00:00:00-07:00</updated>
 <id>http://josh.wilsdon.ca/</id>
 <author>
   <name>Josh Wilsdon</name>
   <email>josh@wilsdon.ca</email>
 </author>
 
 
 <entry>
   <title>Where'd the Internet go?</title>
   <link href="http://josh.wilsdon.ca/2010/07/27/whered-my-internet-go/"/>
   <updated>2010-07-27T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/07/27/whered-my-internet-go</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;a href=&quot;http://www.tech-faq.com/images/Article%20Images/The%20Meaning%20of%20Network%20cable%20is%20unplugged.jpg&quot;&gt;&lt;img src=&quot;/images/network-unplugged.jpg&quot; class=&quot;noborder&quot; title=&quot;Unplugged Network Cable!&quot; alt=&quot;Unplugged Network Cable!&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;For reason&amp;#8217;s I&amp;#8217;ll explain next week, I&amp;#8217;ve had really spotty access to the Internet most of the past week.  I have been able to connect about 10% of the times I&amp;#8217;ve tried, and even then it&amp;#8217;s not worked very well (unless you count 50+% packet loss as working well).  Right now it seems to be working somewhat, so I&amp;#8217;m going to try to write up this quick post before it stops working again.&lt;/p&gt;
&lt;p&gt;Anyway, what I was going to write about is how much it sucks when you can&amp;#8217;t get on the Internet.  I&amp;#8217;ve realized just how dependent I&amp;#8217;ve become on using the Internet to do such things as:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;check the weather forecast&lt;/li&gt;
	&lt;li&gt;lookup some information about some thing or place&lt;/li&gt;
	&lt;li&gt;find directions&lt;/li&gt;
	&lt;li&gt;compare products before buying&lt;/li&gt;
	&lt;li&gt;stay in touch with friends and co-workers&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;It&amp;#8217;s possible to do all of these things without the Internet, (people survived quite a while to get us here) but now that we&amp;#8217;ve got it, it&amp;#8217;s really hard to go back.  There&amp;#8217;s just so much information available online trying to compare products by reading the boxes in a store just really seems frustrating.&lt;/p&gt;
&lt;p&gt;In the future, I imagine Internet access will be so ubiquitous that it will be hard to get offline.  Until then I guess I&amp;#8217;ll just have to look at some options to make sure that I always have Internet access wherever I go, if I need it.  I&amp;#8217;ll let you know how that goes &amp;#8212; assuming that my Internet connection works.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Programming Languages</title>
   <link href="http://josh.wilsdon.ca/2010/07/21/history-of-languages/"/>
   <updated>2010-07-21T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/07/21/history-of-languages</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;a href=&quot;http://larvalsubjects.files.wordpress.com/2009/01/2f4df0324760b79935b80ea340398d82_matrix_code_emulator.jpg&quot;&gt;&lt;img src=&quot;/images/matrix.jpg&quot; class=&quot;noborder&quot; title=&quot;The Matrix!&quot; alt=&quot;The Matrix!&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;I figured this would be a good time to talk about the programming languages I&amp;#8217;ve used, am using and will use in the near future.&lt;/p&gt;
&lt;p&gt;I recently overheard &lt;a href=&quot;http://yinkei.com&quot;&gt;Kevin&lt;/a&gt; telling someone: &amp;#8220;You&amp;#8217;re old, you must be what? 30?&amp;#8221;.  I&amp;#8217;m sure to him I&amp;#8217;m ancient.  Never does that feel more true than around my birthday.&lt;/p&gt;
&lt;p&gt;Birthdays seem like a reasonable time for reflection so I&amp;#8217;ve decided this time around I&amp;#8217;ll reflect here on the programming languages I&amp;#8217;ve used and the programming languages I&amp;#8217;ve been using recently at work and the programming languages I&amp;#8217;m interested in spending more time with soon.&lt;/p&gt;
&lt;p&gt;I think the first program I wrote was on a &lt;a href=&quot;http://en.wikipedia.org/wiki/Texas_Instruments_TI-99/4A&quot;&gt;TI-99A/4A&lt;/a&gt;.  My dad got one and I thought it was amazing.  You could hook this machine up to your TV and write programs that actually made the computer do stuff.  I&amp;#8217;m pretty sure my first program looked something like:&lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;span class=&quot;mi&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;PRINT&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;JOSH IS AWESOME&amp;quot;&lt;/span&gt;
&lt;span class=&quot;mi&quot;&gt;20&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;GOTO &lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;10&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;p&gt;after that, I was hooked.&lt;/p&gt;
&lt;p&gt;I remember spending some time playing with &lt;span class=&quot;caps&quot;&gt;BASIC&lt;/span&gt;, but I think most of what I was doing until Jr. High was just messing around.  It was around that point I started using &lt;a href=&quot;http://en.wikipedia.org/wiki/Bulletin_board_system&quot;&gt;BBSes&lt;/a&gt; and learning C (on my own) and Pascal (in school).  These two languages let me do way more complicated stuff than what I could do with &lt;span class=&quot;caps&quot;&gt;BASIC&lt;/span&gt;.  It was around this time (1994/1995) that I also started using Linux and &lt;span class=&quot;caps&quot;&gt;BSD&lt;/span&gt;.  It was also around this time that I started using the Internet via a shell account at &lt;a href=&quot;http://www.cyberport.net/&quot;&gt;CyberPort Montana&lt;/a&gt;.  It was awesome!&lt;/p&gt;
&lt;p&gt;Since then I&amp;#8217;ve used C on and off (on as my primary language for quite a few years, then off more at Layerboom) and Linux or other &lt;span class=&quot;caps&quot;&gt;UNIX&lt;/span&gt;-like OSes almost exclusively.  Before working at &lt;a href=&quot;http://www.layerboom.com&quot;&gt;Layerboom&lt;/a&gt;, I think I spent time working in (roughly from most amount of time spent to least):&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;C&lt;/li&gt;
	&lt;li&gt;&lt;span class=&quot;caps&quot;&gt;PHP&lt;/span&gt;&lt;/li&gt;
	&lt;li&gt;Perl&lt;/li&gt;
	&lt;li&gt;Bash&lt;/li&gt;
	&lt;li&gt;Python&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/TI-BASIC&quot;&gt;TI-&lt;span class=&quot;caps&quot;&gt;BASIC&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;span class=&quot;caps&quot;&gt;BASIC&lt;/span&gt;&lt;/li&gt;
	&lt;li&gt;C++&lt;/li&gt;
	&lt;li&gt;Assembly&lt;/li&gt;
	&lt;li&gt;ColdFusion&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;and probably a few others that I spent a little bit of time with.&lt;/p&gt;
&lt;p&gt;Since I started at Layerboom, I have been coding almost exclusively in Ruby.  I have spent a little bit of time using Bash or C, or reading through someone&amp;#8217;s Perl, but it was mostly Ruby.  Sometime I&amp;#8217;ll write another whole post about my experience with Ruby.&lt;/p&gt;
&lt;p&gt;As you can tell from the fact that the &lt;a href=&quot;http://smart.joyent.com/docs&quot;&gt;Smart platform&amp;#8217;s&lt;/a&gt; written in it, Joyent&amp;#8217;s big into Javascript among other things.  So, for the foreseeable future, while it seems like I&amp;#8217;ll probably continue to be spending the majority of my time using Ruby, I think I&amp;#8217;ll also need to start using Javascript as well.  Specifically, what I&amp;#8217;m interested in getting started with is server-side Javascript using &lt;a href=&quot;http://nodejs.org/&quot;&gt;Node.js&lt;/a&gt;.  As such, I&amp;#8217;m going to try to spend some time over the next while getting myself up to speed on Javascript and Node.  I hope to post more in the future regarding my progress!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Joyent!</title>
   <link href="http://josh.wilsdon.ca/2010/07/14/joyent-ftw/"/>
   <updated>2010-07-14T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/07/14/joyent-ftw</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;a href=&quot;http://joyent.com&quot;&gt;&lt;img src=&quot;/images/joyent.jpg&quot; class=&quot;noborder&quot; title=&quot;Joyent Logo&quot; alt=&quot;Joyent Logo&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;For the past year and a bit I&amp;#8217;ve been working with an awesome team on awesome stuff at &lt;a href=&quot;http://layerboom.com&quot;&gt;Layerboom.&lt;/a&gt;  It&amp;#8217;s been a lot of work but I&amp;#8217;m proud of what we managed to build, and proud of our team.  Apparently I&amp;#8217;m not the only one who thinks both our team and the stuff we&amp;#8217;ve made is awesome because &lt;a href=&quot;http://www.joyent.com/2010/07/joyent-acquires-layerboom-systems&quot;&gt;Joyent decided to buy Layerboom.&lt;/a&gt; This means I&amp;#8217;m officially a &amp;#8220;&lt;a href=&quot;http://joyeur.com&quot;&gt;Joyeur&lt;/a&gt;&amp;#8221; now.  We have joined the &lt;a href=&quot;http://joyent.com&quot;&gt;Joyent&lt;/a&gt; team and will continue to build awesome stuff.&lt;/p&gt;
&lt;p&gt;The people I&amp;#8217;ve met from Joyent so far are also awesome.  That means that surely the stuff we&amp;#8217;ll produce together will be extremely awesome.  You might think I&amp;#8217;m exaggerating.  I mean, how many times can I use the word awesome in a post?  In reality though, it&amp;#8217;s pretty amazing.  I&amp;#8217;m really excited about what we will be able to build along side and on top of what both companies have already built.  Keep watching, I&amp;#8217;ll be awesome.&lt;/p&gt;
&lt;p&gt;I can&amp;#8217;t really go into any more detail than what&amp;#8217;s already been stated elsewhere, so this post will be shorter than usual.  This is exciting enough though, that I couldn&amp;#8217;t not write about it!&lt;/p&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;http://gigaom.com/2010/07/15/joyent-buys-layerboom-to-offer-enterprises-easier-transition-to-the-cloud/&quot;&gt;Gigaom Article&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://blog.bootuplabs.com/2010/07/15/layerboom-acquired-by-joyent/&quot;&gt;Bootup Labs Blog&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://blog.layerboom.com/2010/07/15/joyent-buys-layerboom&quot;&gt;Layerboom Blog Post&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>
 </entry>
 
 <entry>
   <title>The Future</title>
   <link href="http://josh.wilsdon.ca/2010/07/08/the-future/"/>
   <updated>2010-07-08T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/07/08/the-future</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;a href=&quot;http://www.ikoncollectables.com.au/TV_/_Movie-Fifth_Element/c4_126/p3499/Fifth_Element_-_Flying_Car_Diorama/product_info.html&quot;&gt;&lt;img src=&quot;/images/flying_taxi.jpg&quot; title=&quot;Flying Taxi&quot; alt=&quot;Flying Taxi&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;It seems like many people&amp;#8217;s vision of the future has included flying cars for some time now.  For some reason though it seems flying cars are still not that close to reality.  The problem, I think, is not with the technology but rather with people.  There are &lt;a href=&quot;http://en.wikipedia.org/wiki/Flying_car_(aircraft)#Current_development_examples&quot;&gt;several companies working on flying cars&lt;/a&gt; and in fact there are working vehicles. Getting these released to the public and in widespread use seems like a disaster waiting to happen.  At least until people aren&amp;#8217;t allowed to drive them.  If you&amp;#8217;re a regular reader, you&amp;#8217;ll already know &lt;a href=&quot;/2010/02/02/the-problem-with-cars-is-people&quot;&gt;what I think about cars,&lt;/a&gt; and I think that people can be trusted even less to drive flying cars.  Unless they&amp;#8217;re &lt;a href=&quot;http://www.imdb.com/character/ch0003667/&quot;&gt;Korben Dallas.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve been thinking about this recently due to the giant &lt;a href=&quot;http://en.wikipedia.org/wiki/Deepwater_Horizon_oil_spill&quot;&gt;oil spill&lt;/a&gt; that seems to have been caused by a combination of incompetence, corner-cutting and operating near (or beyond) the limits of current human capability.&lt;/p&gt;
&lt;p&gt;I think in general, the future seems full of things that could be very powerful but also potentially dangerous for people to be involved with.  Beyond flying cars, these include (off the top of my head):&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Genetic Manipulation (bio-weapons: on purpose or accidental)&lt;/li&gt;
	&lt;li&gt;Life extension (you think it&amp;#8217;s crowded now?)&lt;/li&gt;
	&lt;li&gt;Attempts to correct climate change&lt;/li&gt;
	&lt;li&gt;Nanotech (think &lt;a href=&quot;http://en.wikipedia.org/wiki/Grey_goo&quot;&gt;Grey goo&lt;/a&gt;)&lt;/li&gt;
	&lt;li&gt;Commercialized Space (oops, dropped asteroids on &lt;span class=&quot;caps&quot;&gt;NYC&lt;/span&gt;)&lt;/li&gt;
	&lt;li&gt;Surveillance everywhere (1984!)&lt;/li&gt;
	&lt;li&gt;&lt;span class=&quot;caps&quot;&gt;DRM&lt;/span&gt; / Intellectual Property (you can&amp;#8217;t think that!)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I could go on, but the point I&amp;#8217;m trying to make is that the thing all of these technologies have in common is that they&amp;#8217;re generally things that are considered by someone to be a good idea, but each of them has potential to cause a lot of problems.  I can personally see good reasons to pursue almost all of these (except the last one).  I even think work on most of them will lead to really good things.  I&amp;#8217;m just worried because I see so many people running things who seem to be &lt;a href=&quot;http://www.bp.com/&quot;&gt;criminally incompetent.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Maybe I tend to have too little faith in humanity.&lt;/p&gt;
&lt;p&gt;Maybe others have too much.&lt;/p&gt;
&lt;p&gt;Either way, I expect the future will be interesting!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Happy Canada Day!</title>
   <link href="http://josh.wilsdon.ca/2010/07/01/happy-canada-day/"/>
   <updated>2010-07-01T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/07/01/happy-canada-day</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Beaver&quot;&gt;&lt;img src=&quot;/images/beaver.jpg&quot; title=&quot;Canada == Beavers&quot; alt=&quot;Canada == Beavers&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Happy Canada Day!&lt;/p&gt;
&lt;p&gt;I hope everyone is enjoying doing Canadian things like eating &lt;a href=&quot;http://en.wikipedia.org/wiki/Poutine&quot;&gt;poutine&lt;/a&gt;, playing hockey, watching or listening to the &lt;a href=&quot;http://www.cbc.ca/&quot;&gt;&lt;span class=&quot;caps&quot;&gt;CBC&lt;/span&gt;&lt;/a&gt; and going to &lt;a href=&quot;http://www.timhortons.com/ca/en/index.html&quot;&gt;Tim Hortons&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This post is my 26th this year.  That means we&amp;#8217;re now exactly halfway through the &lt;a href=&quot;/2010/01/04/first-post&quot;&gt;project 52 challenge,&lt;/a&gt; so I figured it&amp;#8217;s about time to post an update on the progress so far.  It&amp;#8217;s been tough some weeks to come up with either ideas or time to write something, but I&amp;#8217;ve found a way to get it done.&lt;/p&gt;
&lt;p&gt;In case you haven&amp;#8217;t checked the &lt;a href=&quot;/scoreboard&quot;&gt;scoreboard&lt;/a&gt; recently, the current status at the time of this post going live (Howie and Kevin still have a few more hours to make a post this week) is:&lt;/p&gt;
&lt;div class=&quot;scoreboard&quot;&gt;
&lt;table&gt;
	&lt;tr&gt;
		&lt;td&gt;&amp;nbsp;&lt;/td&gt;
		&lt;th&gt;&lt;a href=&quot;http://yinkei.com&quot;&gt;Kevin&lt;/a&gt;&lt;/th&gt;
		&lt;th&gt;&lt;a href=&quot;http://howiewu.com&quot;&gt;Howie&lt;/a&gt;&lt;/th&gt;
		&lt;th&gt;&lt;a href=&quot;/&quot;&gt;Josh&lt;/a&gt;&lt;/th&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;Pass&lt;/td&gt;
		&lt;td&gt;10&lt;/td&gt;
		&lt;td&gt;14&lt;/td&gt;
		&lt;td&gt;26&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;Fail&lt;/td&gt;
		&lt;td&gt;16&lt;/td&gt;
		&lt;td&gt;12&lt;/td&gt;
		&lt;td&gt;0&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;Weeks&lt;/td&gt;
		&lt;td&gt;26&lt;/td&gt;
		&lt;td&gt;26&lt;/td&gt;
		&lt;td&gt;26&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;% Pass&lt;/td&gt;
		&lt;td&gt;38%&lt;/td&gt;
		&lt;td&gt;54%&lt;/td&gt;
		&lt;td&gt;100%&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;As you can see, after challenging Howie and I to do this, Kevin&amp;#8217;s the one who has failed the most.&lt;/p&gt;
&lt;p&gt;The only people who have failed more than Kevin are the &lt;a href=&quot;http://project52.info&quot;&gt;Project 52&lt;/a&gt; team themselves.  They&amp;#8217;ve even posted a semi-apology on their site to people who have actually been keeping up with the challenge since January 1.  Since then (that post was March 18th) they haven&amp;#8217;t posted anything on their site.  I find that amusing.&lt;/p&gt;
&lt;p&gt;Despite the fact that I have pretty much guaranteed myself a winning position, I&amp;#8217;m still planning to post every week for the rest of the year.  It seems like a good challenge, so I&amp;#8217;ll try to push myself to keep it up.  Even if I have to stretch some weeks to come up with topics.  Who knows?  Maybe after the 52 weeks are up, I&amp;#8217;ll keep going.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Enough About Bob.</title>
   <link href="http://josh.wilsdon.ca/2010/06/23/enough-about-bob/"/>
   <updated>2010-06-23T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/06/23/enough-about-bob</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/bob_asof_20100623_sm.jpg&quot; title=&quot;Bob as of 2010-06-23&quot; alt=&quot;Bob as of 2010-06-23&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I found &lt;a href=&quot;/2010/06/16/bobs-got-bugs&quot;&gt;Bob&amp;#8217;s Bug&lt;/a&gt;.  It turned out that the issue was not with either the hardware or the software directly but with the Servo library.  For some reason the Arduino Servo library needs to use two clocks from the Arduino.  That means that when you start using any servos, immediately &lt;span class=&quot;caps&quot;&gt;PWM&lt;/span&gt; output stops working on pins 9 and 10.  This is not what I expected.  It&amp;#8217;s even &lt;a href=&quot;http://www.arduino.cc/en/Reference/Servo&quot;&gt;documented&lt;/a&gt;.  Unfortunately I didn&amp;#8217;t read that documentation and instead relied on copying an example I found somewhere and modifying it in a way that I thought reasonable.&lt;/p&gt;
&lt;p&gt;With that bug fixed (I moved everything except the servo off pins 9+10), Bob can now use both his servo and motors without a problem.  Unfortunately this means I&amp;#8217;m now using all of the &lt;span class=&quot;caps&quot;&gt;PWM&lt;/span&gt; pins on Bob&amp;#8217;s Ardweeny.  I&amp;#8217;m also using a lot of the other pins.  Because of this I think I&amp;#8217;m about done adding stuff to Bob.  If I wanted more pins I&amp;#8217;d have to mess around with some more shift registers and some other &lt;span class=&quot;caps&quot;&gt;PWM&lt;/span&gt; chips.  This seems like just too much work for Bob, so I&amp;#8217;m going to take a break from Bob for now and start thinking about my next project.  If I do anything more with him it&amp;#8217;ll likely just be software tweaks.&lt;/p&gt;
&lt;p&gt;At this point I think Bob is pretty much a success.  He can successfully drive forward, stop before running into something (see the video below) and then back up and go a different direction.  This works at least as well as I hoped.  I&amp;#8217;ve learned a lot building Bob.  Some of these lessons at random include:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;building a robot frame is a lot of work if you do it with a hacksaw and hand file&lt;/li&gt;
	&lt;li&gt;making PCBs on protoboard using the green-wire technique takes a long time&lt;/li&gt;
	&lt;li&gt;shift registers are useful&lt;/li&gt;
	&lt;li&gt;parts with weak connectors need extra protection&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://www.hvwtech.com/products_view.asp?ProductID=1257&quot;&gt;Ardweeny&lt;/a&gt; is cool (and cheap!)&lt;/li&gt;
	&lt;li&gt;isolating the power from the programming is a good idea&lt;/li&gt;
	&lt;li&gt;connect all the grounds&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;overall I think I have a lot more appreciation for what it takes to make a robot.  Now for my next one I hope to use these lessons to make something a little more advanced.  I&amp;#8217;ll write about some of my ideas in a future post.&lt;/p&gt;
&lt;p&gt;In the meantime, here&amp;#8217;s a quick video of Bob not running into stuff:&lt;/p&gt;
&lt;p&gt;&lt;object width=&quot;640&quot; height=&quot;385&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/FCDH-IJ25mU&amp;hl=en_US&amp;fs=1&amp;&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/FCDH-IJ25mU&amp;hl=en_US&amp;fs=1&amp;&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;640&quot; height=&quot;385&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Bob's Got Bugs!</title>
   <link href="http://josh.wilsdon.ca/2010/06/16/bobs-got-bugs/"/>
   <updated>2010-06-16T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/06/16/bobs-got-bugs</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/bob_asof_20100616.jpg&quot; title=&quot;Bob as of 2010-06-16&quot; alt=&quot;Bob as of 2010-06-16&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Bob&amp;#8217;s parts have all been mounted together now.  Some are more solidly mounted than others, but he&amp;#8217;s staying together so far.  Since I got everything together I was able to finally run a test where he moved!  He can actually move faster than I expected.  You can see his first &amp;#8220;steps&amp;#8221; in the video at the bottom of this post.  Note that this is at 20% power.  At full speed he zips along pretty well.  Oh, and you can see part of my new floor in this video too.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve not actually done anything about the motor that I wrecked the connector on.  For now I&amp;#8217;ve just adjusted the software to handle the different rotation on this motor and it seems to be working well enough.&lt;/p&gt;
&lt;p&gt;Individually, Bob can control all of his parts.  He can move his servo left and right 90 degrees either direction.  He can measure distance with his &lt;a href=&quot;http://www.parallax.com/tabid/768/ProductID/92/Default.aspx&quot;&gt;&lt;span class=&quot;caps&quot;&gt;PING&lt;/span&gt;)))&lt;/a&gt; sensor (Bob only wants to think in metric, so he measures distance in centimeters).  He can move any combination of his motors forward or backward (with individual speed control) or set them to coast or brake.  All of this works just fine when it&amp;#8217;s run once (eg. start all motors going forward).&lt;/p&gt;
&lt;p&gt;Bob&amp;#8217;s not perfect yet though.  There is a bug hiding somewhere and I&amp;#8217;m still trying to track it down.  After sending a few commands to the motors it seems something is eventually getting corrupted.  If I keep sending commands eventually motors are going when I don&amp;#8217;t want them to be and not going when I want them to be.  This is obviously a problem.  I&amp;#8217;m not sure yet whether this is a hardware or software problem.  If it&amp;#8217;s a hardware problem my best guess is that I wired something wrong when connecting the two shift registers.  If it&amp;#8217;s a software problem I&amp;#8217;m also suspecting my code that&amp;#8217;s working with the shift registers.  In either case I hope to track it down soon, fix it, and be able to explain it next week.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s the video of Bob&amp;#8217;s first trip:&lt;/p&gt;
&lt;p&gt;&lt;object width=&quot;640&quot; height=&quot;385&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/mJioT1xdKrE&amp;hl=en_US&amp;fs=1&amp;&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/mJioT1xdKrE&amp;hl=en_US&amp;fs=1&amp;&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;640&quot; height=&quot;385&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;p&gt;Hopefully my next video will be of him going toward a wall/object and stopping before running into it.  If I can get his bugs worked out.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Bob's In Control</title>
   <link href="http://josh.wilsdon.ca/2010/06/09/bobs-in-control/"/>
   <updated>2010-06-09T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/06/09/bobs-in-control</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/bob_asof_20100609.jpg&quot; title=&quot;Bob as of 2010-06-09&quot; alt=&quot;Bob as of 2010-06-09&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I made lots of progress on Bob finally in the past week!&lt;/p&gt;
&lt;p&gt;The power supply that I wrote briefly about in &lt;a href=&quot;/2010/06/02/micro-bob-update&quot;&gt;my last post&lt;/a&gt; has been working pretty well so far.  I&amp;#8217;ve been testing both with a 9v wall-wart power supply and with 6 NiMH  1.2v batteries.  In both cases it has done what I needed.&lt;/p&gt;
&lt;p&gt;I did a lot more testing and prototyping and then I built a working motor controller.  It&amp;#8217;s pretty ghetto looking, but it is now working!  It is able to control all 4 motors independently.  There are a number of things I would do differently next time, so I guess it was good experience.  I especially think it will be worth my time to get setup to make custom PCBs instead of green-wiring the whole thing on a prototype board.  Anyway, this is what the board looks like now:&lt;/p&gt;
&lt;div class=&quot;blockimg&quot;&gt;&lt;img src=&quot;/images/bobs_motor_controller_v2_back.jpg&quot; title=&quot;Motor controller view from back&quot; alt=&quot;Motor controller view from back&quot; /&gt;&lt;img src=&quot;/images/bobs_motor_controller_v2_side.jpg&quot; title=&quot;Motor controller side view&quot; alt=&quot;Motor controller side view&quot; /&gt;&lt;/div&gt;
&lt;p&gt;So put together with the frame, the power supply, the battery pack and the Ardweeny, Bob now looks like this:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/bob_topview_20100609.jpg&quot; title=&quot;Bob from the top&quot; alt=&quot;Bob from the top&quot; /&gt;&lt;/p&gt;
&lt;p&gt;and more importantly, it&amp;#8217;s possible to actually program him now!&lt;/p&gt;
&lt;p&gt;The first program I wrote simply flashes the LEDs on his motor controller and then sets all 4 motors to go at about 50% speed.  When I first got all the motors spinning using my controller (this was when I just had the parts sitting on my desk &amp;#8212; I hadn&amp;#8217;t mounted them to the frame yet), I was pretty excited!  Unfortunately, once I got everything all mounted together though I had a problem.  Only 3 of Bob&amp;#8217;s motors were moving!&lt;/p&gt;
&lt;p&gt;On further inspection, it turned out that one of the connectors on the back of the motor had broken off.  These are extremely tiny and fragile.  In trying to fix this I got the wires reconnected, but ended up making a bit of a mess of it.  The long and short of it is that the motor sort of works now, but it spins the opposite way that I tell it to and I&amp;#8217;m not entirely sure that it&amp;#8217;s going to have as much power as the others.  One tiny washer seems to have fallen out and I couldn&amp;#8217;t get it back in place.  I might end up replacing it eventually but for now I&amp;#8217;ll compensate for it in software.  I&amp;#8217;ve also got to see if I can think up some sort of protection for the other motors so their connectors don&amp;#8217;t also get broken.&lt;/p&gt;
&lt;p&gt;Anyway, for the next while I&amp;#8217;ll probably be focusing on getting the software working how I want it to.  Once I get the software written to let me do things like forward, reverse, turn left and turn right, then I&amp;#8217;ll hook up the wheels and start running some more tests with him actually going somewhere.  I hope to take a video of Bob&amp;#8217;s &amp;#8220;first steps&amp;#8221; when that happens.  Stay tuned!&lt;/p&gt;
&lt;p&gt;After moving is taken care of, I&amp;#8217;m still planning to:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;mount the boards a little more solidly to the frame&lt;/li&gt;
	&lt;li&gt;connect and write code for the servo&lt;/li&gt;
	&lt;li&gt;connect and write code for the &lt;a href=&quot;http://www.parallax.com/tabid/768/ProductID/92/Default.aspx&quot;&gt;&lt;span class=&quot;caps&quot;&gt;PING&lt;/span&gt;)))&lt;/a&gt; sensor&lt;/li&gt;
	&lt;li&gt;possibly add some bottom and top protection to the frame&lt;/li&gt;
	&lt;li&gt;have Bob detect and avoid obstacles&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Other things I&amp;#8217;m still considering adding Xbee wireless for remote commands, but I&amp;#8217;m not sure I&amp;#8217;ll even have enough pins left for that without some serious juggling.  I think pretty quickly I&amp;#8217;m going to run up to some limits with Bob that are going to require more and more work to get around.  I could use more shift registers and one or more &lt;a href=&quot;http://www.arduino.cc/playground/Learning/TLC5940&quot;&gt;TLC5940 chips&lt;/a&gt; to work around the pin shortage for example, but that would require rebuilding a lot of the components I have already built and it seems I&amp;#8217;d be better off just working on the next robot at that point.  So I plan to push the existing hardware as far as I can, and try to get him to do some interesting things in software, but I don&amp;#8217;t think I&amp;#8217;ll add too much more hardware to him at this point.  I&amp;#8217;m even debating whether it&amp;#8217;s even worth it to replace his gimped motor.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s it for this week!  Lots of other exciting (non-Bob) stuff going on that I hope to be able to write about eventually.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Mini Bob Update</title>
   <link href="http://josh.wilsdon.ca/2010/06/02/micro-bob-update/"/>
   <updated>2010-06-02T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/06/02/micro-bob-update</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/bob_powersupply_rev_2.jpg&quot; title=&quot;New Power Supply&quot; alt=&quot;New Power Supply&quot; /&gt;&lt;/div&gt;
&lt;p&gt;If &lt;a href=&quot;http://howiewu.com&quot;&gt;Howie&lt;/a&gt; can blog &lt;a href=&quot;http://howiewu.com/iped&quot;&gt;2 sentences and a video&lt;/a&gt; and &lt;a href=&quot;http://yinkei.com&quot;&gt;Kevin&lt;/a&gt; can blog &lt;a href=&quot;http://yinkei.com/v-lock&quot;&gt;2 pictures of something&lt;/a&gt; that solves a problem I don&amp;#8217;t understand, without any text (I&amp;#8217;m not sure I can even give full points for that on the &lt;a href=&quot;/scoreboard&quot;&gt;scoreboard&lt;/a&gt;), then certainly I can make a short blog post about Bob even though I&amp;#8217;ve not done very much.&lt;/p&gt;
&lt;p&gt;So, since my last Bob post there are really 2 things I made progress on.  One is Bob&amp;#8217;s new power supply.  I &lt;a href=&quot;/2010/05/11/bob-is-screwed&quot;&gt;wrote before&lt;/a&gt; that I had built a prototype but since then I actually soldered the thing together.  You can see a picture of it at the top of this post.  I&amp;#8217;ve tested with both 9v and ~7.2v input and it can output 5v and 6v.  The 6v can actually be adjusted, so that I can reuse this board on other projects in the future too.  It&amp;#8217;s not very pretty, but hopefully it works.&lt;/p&gt;
&lt;p&gt;The other thing I&amp;#8217;ve done some work with is the shift registers and motor controllers.  I put together the shift registers on a couple breadboards and managed to control 13 LEDs with 3 I/O pins from the Arduino.  This is perfect for what I need.  It will allow me to control all 4 motors using just 1 &lt;span class=&quot;caps&quot;&gt;PWM&lt;/span&gt; pin per motor and 3 digital out pins total. This leaves me lots of pins (though only 2 &lt;span class=&quot;caps&quot;&gt;PWM&lt;/span&gt;) on my Ardweeny to control other stuff.  I&amp;#8217;ve even started work on a more permanent board for this.  If I&amp;#8217;m lucky, by keeping this post short this week I&amp;#8217;ll save myself some time tonight to be able to work on finishing up this board.  This is what the setup I built to test the shift registers looks like:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/shift_registers_initial_testing.jpg&quot; title=&quot;Shift Registers Mess&quot; alt=&quot;Shift Registers Mess&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Once I&amp;#8217;m finished the motor controller board, I&amp;#8217;m going to attach the three boards I&amp;#8217;ve built so far (Ardweeny, power supply and motor controller) to Bob&amp;#8217;s frame and I should be able to start testing some control software!  My goal is to get the control working correctly for the motors first and then attach the servo and &lt;a href=&quot;http://www.parallax.com/tabid/768/ProductID/92/Default.aspx&quot;&gt;&lt;span class=&quot;caps&quot;&gt;PING&lt;/span&gt;)))&lt;/a&gt; sensor once I&amp;#8217;ve got that figured out.  Hopefully there&amp;#8217;ll be more updates (and pictures) next week.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Colliding Priorities</title>
   <link href="http://josh.wilsdon.ca/2010/05/25/colliding-priorities/"/>
   <updated>2010-05-25T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/05/25/colliding-priorities</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;a href=&quot;http://knowledge.allianz.com/en/globalissues/energy_co2/top_climate_stories/key_2008_cars.html&quot;&gt;&lt;img src=&quot;/images/crash_test.jpg&quot; title=&quot;Head on collision&quot; alt=&quot;Head on collision&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;My plan for the &lt;a href=&quot;http://en.wikipedia.org/wiki/Victoria_Day&quot;&gt;Victoria Day&lt;/a&gt; long weekend was to spend most of it:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;working on &lt;a href=&quot;/bob&quot;&gt;Bob&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;doing stuff with my kids&lt;/li&gt;
	&lt;li&gt;relaxing&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;What I didn&amp;#8217;t count on was that my wife planned for me to work on installing a new laminate floor in our family room over the weekend.  &lt;br /&gt;
When it comes to a conflict between my plans and my wife&amp;#8217;s plans, usually my plans need to change.&lt;/p&gt;
&lt;p&gt;While we were working my wife told me &amp;#8220;We should [renovate and] flip houses.  We make a good team.  I can paint, and you can do everything else.&amp;#8221;&lt;/p&gt;
&lt;p&gt;As such, instead of working on Bob, I spent most of the weekend doing such things as:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;tearing out our old carpet and underlay&lt;/li&gt;
	&lt;li&gt;taking the old carpet and underlay to the dump&lt;/li&gt;
	&lt;li&gt;redoing some poor wiring on the TV cables in the wall/floor&lt;/li&gt;
	&lt;li&gt;chiseling out the bottom of the fireplace mantel&lt;/li&gt;
	&lt;li&gt;chiseling out the bottom of the door frame&lt;/li&gt;
	&lt;li&gt;getting started putting in the new laminate floor&lt;/li&gt;
	&lt;li&gt;taking everything off the wall so it can be painted&lt;/li&gt;
	&lt;li&gt;putting everything back on the wall&lt;/li&gt;
	&lt;li&gt;mowing the grass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;On top of that, I found out on Saturday that there was a meeting I&amp;#8217;d need to attend Monday at work.  That ended up taking most of the afternoon and evening on Monday.  So, no update on Bob this week, but hopefully I&amp;#8217;ll be done with the flooring soon and maybe then I&amp;#8217;ll get some work done on Bob again.  No promises though.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://howiewu.com&quot;&gt;Howie&lt;/a&gt; tells me I should stop being so handy.  Then I&amp;#8217;d have more time to work on fun stuff.  The fact that there&amp;#8217;s a lot I can do combined with the fact that I&amp;#8217;m too cheap to hire anyone to do something I can do sure does seem to lead to me doing more work.  I think Howie&amp;#8217;s on to something there.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Mickey Mouse and Pluto</title>
   <link href="http://josh.wilsdon.ca/2010/05/19/mickey-and-pluto/"/>
   <updated>2010-05-19T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/05/19/mickey-and-pluto</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/pluto-mickey.jpg&quot; title=&quot;Mickey + Pluto&quot; alt=&quot;Mickey + Pluto&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I didn&amp;#8217;t get enough done on &lt;a href=&quot;/bob&quot;&gt;Bob&lt;/a&gt; that I could write a whole post about.  I did some work, but I&amp;#8217;ll write it next week, combined with the work I do between now and then.  Some readers might be tired of reading about him every week anyway.  What I&amp;#8217;ll do this week is attempt to answer (or at least discuss) a random question submitted by one of my readers.  The question is: &amp;#8216;Why is Mickey Mouse bigger than his dog Pluto?&amp;#8217;&lt;/p&gt;
&lt;p&gt;The first thing I tried to determine is whether or not the premise buried in this question is true.  In the image above, it&amp;#8217;s not so easy to tell that their sizes are so different.  However in this picture from Disney World, it appears Pluto is actually bigger:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/striderv/2708367030/&quot;&gt;&lt;img src=&quot;/images/pluto-mickey-disneyworld.jpg&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;in this one I think you could argue he&amp;#8217;s smaller:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.animatedheroes.com/classicdisney.html&quot;&gt;&lt;img src=&quot;/images/pluto-mickey-beach.jpg&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;this could be a trick of perspective and/or pose.  Since I think the real question is why doesn&amp;#8217;t the proportion between the two match what one would expect a priori &amp;#8212; which would leave the mouse much smaller than the dog &amp;#8212; I&amp;#8217;ll not worry about whether Pluto is smaller or slightly larger and focus on why they don&amp;#8217;t match proportions you&amp;#8217;d expect.&lt;/p&gt;
&lt;p&gt;I think this picture might shed some light on the subject:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.deshow.net/cartoon/2008/mickey_mouse_cartoon.html&quot;&gt;&lt;img src=&quot;/images/mickey-chipmunks.jpg&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In anthropomorphizing Mickey it seems Disney intended for him to approximate a slightly shorter than average human.  I think Disney probably originally thought to make Pluto the same size as their other characters.  However, as Pluto is supposed to be Mickey&amp;#8217;s pet, he therefore had to be caninomorphized slightly in order to be distinguished from the anthropomorphic characters.&lt;/p&gt;
&lt;p&gt;In conclusion: It is my contention that if Pluto is slightly smaller it&amp;#8217;s because they made a compromise between making him approximately the size of the other Disney characters (human size) and making him dog sized which would have been even more strange.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Bob's been screwed!</title>
   <link href="http://josh.wilsdon.ca/2010/05/11/bob-is-screwed/"/>
   <updated>2010-05-11T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/05/11/bob-is-screwed</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/screwed_bob.jpg&quot; title=&quot;Screwed Bob&quot; alt=&quot;Screwed Bob&quot; /&gt;&lt;/div&gt;
&lt;p&gt;My new tap works better than the old one, especially since it&amp;#8217;s not broken.  So I was able to complete the remaining motor mounts and Bob&amp;#8217;s been screwed together.  The main pieces that make up his frame have also been reinforced, so he shouldn&amp;#8217;t fall apart anymore. You can see the screws holding his frame together in the image at the left.&lt;/p&gt;
&lt;p&gt;In my previous post I also talked briefly about Bob&amp;#8217;s new wheel mounts.  The new design required some careful manufacturing, but I think I pulled off an acceptable job.  Hopefully they work well.  Here&amp;#8217;s a picture that gives you some idea of what the new ones look like:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/new_wheel_mounts.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Those are screws holding on the small aluminum pieces at the bottom.  Those will tighten and hold the motors on.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve also prototyped Bob&amp;#8217;s new dual output power supply.  Using an LM317 and a 7805 I have both 5v and 6v rails that I can use for the Ardweeny and motors respectively.  The 6v rail can actually be adjusted via a pot to output a voltage anywhere from about 1.2v to just about 1v under the input voltage (theoretically up to about 36v).  The prototype looks like this, but less blurry in real life:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/new_power_supply_prototype.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
&lt;p&gt;and I&amp;#8217;ll have to clean it up a bit and solder it together onto a more permanent board.&lt;/p&gt;
&lt;p&gt;Two of the other tasks I listed in my last post also came to some level of completion.  I finished adding the wires and connectors to the remaining motors, and I got started playing with the shift registers.  I&amp;#8217;ll probably try to get them hooked up with the motor controllers after I finish with the new power supply.&lt;/p&gt;
&lt;p&gt;So, I got a few things done again.  Maybe if I make a new list I&amp;#8217;ll get some of them done too.  Here&amp;#8217;s what I&amp;#8217;d like to get started on by next week:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Attach the connectors to the second motor controller&lt;/li&gt;
	&lt;li&gt;Get the motor controllers working with the shift registers&lt;/li&gt;
	&lt;li&gt;Finalize the new dual output power supply&lt;/li&gt;
	&lt;li&gt;Mount the battery holders and power supply to the frame&lt;/li&gt;
	&lt;li&gt;Mount the motor controllers and shift registers to the frame&lt;/li&gt;
	&lt;li&gt;Mount the motors and put on the wheels&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Hopefully I&amp;#8217;ll have lots of updates and pictures next week!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Is Bob just about done?</title>
   <link href="http://josh.wilsdon.ca/2010/05/04/wheres-bob/"/>
   <updated>2010-05-04T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/05/04/wheres-bob</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/broken-tap.jpg&quot; title=&quot;Broken 6-32 tap&quot; alt=&quot;Broken 6-32 tap&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Some people might be thinking to themselves, &amp;#8220;Is Bob just about done?&amp;#8221;&lt;/p&gt;
&lt;p&gt;If you are one of those people, the answer is: No!&lt;/p&gt;
&lt;p&gt;It would appear to the casual reader that Bob might be nearing completion.  After all, last week I already had the motors and wheels spinning independently and I had the Ardweeny controlling them.  The whole thing even ran from battery power.  This past weekend I spent many more hours working on him, so one might assume that I&amp;#8217;m even further along, maybe even with a robot that moves.  Such an assumption would be wrong.&lt;/p&gt;
&lt;p&gt;In fact, Bob&amp;#8217;s probably less together than he was the weekend before last.&lt;/p&gt;
&lt;p&gt;A number of factors have combined to cause me to need to redo some of the parts that were already &amp;#8220;working&amp;#8221;.  The main issues I&amp;#8217;ve run into in the past week are:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;I found that the motor mounts I designed and built were not stable or sturdy enough.&lt;/li&gt;
	&lt;li&gt;I found out that the JB Quik I used for the frame was not strong enough. (possibly due to not enough roughening)&lt;/li&gt;
	&lt;li&gt;I took apart Bob&amp;#8217;s motor controller so I could work on using the shift registers. (not started yet though)&lt;/li&gt;
	&lt;li&gt;The other motors, controller, and shift registers came in the mail.&lt;/li&gt;
	&lt;li&gt;I broke my 6-32 tap. (see image attached to this post)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;While testing the motor mounts, I pulled one right off.  This alerted me to two problems with my motor mount design.  First, getting the motors mounted turned out to be a lot trickier than it should have been.  Most of the problems were in getting the aluminum shims to stay in place while I tightened the set screws.  After several tries, the motor mount in question came right off the frame.  The second problem I was alerted to was that JB Quik wasn&amp;#8217;t holding the frame together as tightly as I expected.  I suspect this is mostly due to the fact that the aluminum was not roughened up enough before I applied the JB Quik.  I&amp;#8217;ll have to do some testing.  The difficulty in actually mounting the motors though led me to review other options.&lt;/p&gt;
&lt;p&gt;Over the course of the weekend I designed and built 5 new prototypes for mounting the motors.  Each of these was made primarily of aluminum that I cut and filed using a hand file and a hacksaw.  This took many, many hours and all but one of the designs I came up with were either too complex for me to build accurately or were still not sufficiently sturdy.  Finally I came up with a pretty simple design that also seems pretty stable.  I only have one prototype though, so I&amp;#8217;ll need to see if I can make 3 more that also work.&lt;/p&gt;
&lt;p&gt;The reason I only have one prototype of the new motor mounts is that in the process of redoing the frame, my tap broke.  I had decided to screw the whole frame together to make it stronger than the JB Quik alone made it.  Screws also play a prominent role in the new motor mount design, so I need the tap in order to finish the other 3.  Luckily I was able to get one today from &lt;a href=&quot;http://canadiantire.ca&quot;&gt;Canadian Tire&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where does this leave Bob now?  I am hoping to make some progress on the several of the following before next week:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Finish reinforcing the frame&lt;/li&gt;
	&lt;li&gt;Finish the other 3 motor mounts&lt;/li&gt;
	&lt;li&gt;Begin testing with the shift registers&lt;/li&gt;
	&lt;li&gt;Finish the new dual output power supply I&amp;#8217;m building (6v and 5v)&lt;/li&gt;
	&lt;li&gt;Attach the wire and connectors to the two new motors&lt;/li&gt;
	&lt;li&gt;Attach the connectors to the second motor controller&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For me, most of the fun is in designing and building Bob.  I&amp;#8217;m not in a hurry.  In fact I&amp;#8217;d probably rather not finish too soon.  Since this is a hobby project, I have the time to keep working and reworking components until I get them to work to my satisfaction.  And then I can still tweak some more!  I&amp;#8217;m learning a lot from both the things that work and the things that don&amp;#8217;t.  If everything worked the first time and I didn&amp;#8217;t need to take things apart or redesign pieces I&amp;#8217;d say I haven&amp;#8217;t challenged myself enough.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Bob's Brain</title>
   <link href="http://josh.wilsdon.ca/2010/04/26/bobs-brain/"/>
   <updated>2010-04-26T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/04/26/bobs-brain</id>
   <content type="html">&lt;p&gt;I&amp;#8217;ve made more progress on Bob.  It&amp;#8217;s taken a lot more work to get to this point than I expected, but I&amp;#8217;ve learned a lot.  Here&amp;#8217;s a really blurry picture of what he looks like right now:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/bob_as_of_20100426.jpg&quot; title=&quot;Bob earlier today&quot; alt=&quot;Bob earlier today&quot; /&gt;&lt;/p&gt;
&lt;p&gt;In that picture you can see 3 new components that weren&amp;#8217;t there in the last update.  The one on the lower right is the Ardweeny.  This is what it looks like close up:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/bobs_brain.jpg&quot; title=&quot;Bob&amp;#39;s Brain&quot; alt=&quot;Bob&amp;#39;s Brain&quot; /&gt;&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s basically Bob&amp;#8217;s Brain.  It came as a package of parts that I had to solder together.  It was pretty straightforward, though I would have liked to make a neater job of it and get the microcontroller closer to the &lt;span class=&quot;caps&quot;&gt;PCB&lt;/span&gt;.  Next time&amp;#8230;&lt;/p&gt;
&lt;p&gt;After I put the Ardweeny together, I needed to power it.  When I have it connected to my computer via &lt;span class=&quot;caps&quot;&gt;USB&lt;/span&gt; it gets power from the computer, but I don&amp;#8217;t want to leave it connected to the computer all the time.  The 6 AA batteries I plan to use can&amp;#8217;t be connected directly to the Ardweeny though since their voltage adds up to significantly more than the 5.0 volts that the Ardweeny wants.  In order to resolve this issue I needed to build a voltage regulator circuit.  I built mine based on the second last schematic in &lt;a href=&quot;http://www.sparkfun.com/commerce/tutorial_info.php?tutorials_id=57&quot;&gt;this Sparkfun tutorial&lt;/a&gt;.  It seems to work pretty well so far, though I do want to modify it to have a 6v output as well.  This is approximately what it looks like:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/bob_powersupply_rev_1.jpg&quot; title=&quot;Bob&amp;#39;s Power Supply&quot; alt=&quot;Bob&amp;#39;s Power Supply&quot; /&gt;&lt;/p&gt;
&lt;p&gt;except brighter.  You can also see it in the first picture in this post, on the center-right.&lt;/p&gt;
&lt;p&gt;After building the controller and power boards I was able to power up Bob&amp;#8217;s Ardweeny and make it blink some LEDs, so I knew it worked.  Blinking LEDs is great, but I think Bob wants to be able to do more than that so my next step was to hook up some pins and test out the motor controller.  The controller board as I mentioned in &lt;a href=&quot;/2010/04/20/introducing-bob&quot;&gt;my last post&lt;/a&gt; is a TB6612FNG based board.  Here&amp;#8217;s a close up with all the headers soldered on and wires connected:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/bobs_motor_controller.jpg&quot; title=&quot;Bob&amp;#39;s Motor Controller&quot; alt=&quot;Bob&amp;#39;s Motor Controller&quot; /&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve now got that board connected to the Ardweeny and done some initial testing.  At this point Bob can:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Spin his front wheels clockwise or counterclockwise (independently)&lt;/li&gt;
	&lt;li&gt;Vary the speed of his front wheels&lt;/li&gt;
	&lt;li&gt;Blink his &lt;span class=&quot;caps&quot;&gt;LED&lt;/span&gt;&lt;/li&gt;
	&lt;li&gt;Be powered via battery, wall-wart adaptor or &lt;span class=&quot;caps&quot;&gt;USB&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But he doesn&amp;#8217;t actually go anywhere by himself yet.  Nor can he stand up, or speak Japanese (sorry kids).&lt;/p&gt;
&lt;p&gt;Building the control mechanisms and other related pieces took longer than I expected so far but I think I&amp;#8217;ve made pretty good progress.  I did however run across a couple more issues though that I&amp;#8217;ll need to resolve:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;The TB6612FNG requires 7 pins to control and the Ardweeny&amp;#8217;s only got 14 total.  I plan to solve this using some 74HC595 shift registers (already ordered) to get some extra I/O pins.&lt;/li&gt;
	&lt;li&gt;The motors seem to work best with 6v but I&amp;#8217;m currently using the 5v regulator circuit I built.  I plan to build a new improved power supply which will have both 5v and 6v outputs and hopefully current protection as well.&lt;/li&gt;
	&lt;li&gt;The motor mounts don&amp;#8217;t seem as stable vertically as I had hoped.  I&amp;#8217;m still thinking about this one.  Hopefully I can find a solution.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Otherwise, my plan was to get the first 2 motors controlled first so I could tell if this motor controller, Ardweeny and motor combination would work for me and it seems it will.  So I&amp;#8217;ve ordered the other 2 motors and a second motor controller.  Once I get these and deal with the other issues listed above, Hopefully Bob will be mobile!&lt;/p&gt;
&lt;p&gt;Once he&amp;#8217;s able to actually move, I need to setup the servo and &lt;span class=&quot;caps&quot;&gt;PING&lt;/span&gt;))) sensor.  At that point I think the hardware portion of the project will be complete (for now) and I&amp;#8217;m going to have to move on to writing and debugging his software.&lt;/p&gt;
&lt;p&gt;After that?  Who knows!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Introducing Bob!</title>
   <link href="http://josh.wilsdon.ca/2010/04/20/introducing-bob/"/>
   <updated>2010-04-20T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/04/20/introducing-bob</id>
   <content type="html">&lt;p&gt;Last week I finally managed to get some wheels for my robot.  They&amp;#8217;re a lot smaller than the wheels I originally planned, so I had to scale back my other plans accordingly.  My original plan was to build something similar to &lt;a href=&quot;http://letsmakerobots.com/node/14156&quot;&gt;Oddot&amp;#8217;s Wild Thumper&lt;/a&gt;.  Plans change.  Instead of 6 giant wheels with a custom suspension system, this robot will have 4 smaller (42mm) wheels attached directly to the frame.  Since this is my first robot, simpler is probably better anyway.  Over the past weekend I had some time to work on it, so this post is an update of my progress so far.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve decided to call my robot Bob.  This is what he looks like right now:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/first_pic_of_bob.jpg&quot; title=&quot;Picture of Bob&quot; alt=&quot;Picture of Bob&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Notice that the wheels aren&amp;#8217;t even attached yet.  When they are the wheelbase will be slightly wider and he&amp;#8217;ll have a bit more ground clearance.  He&amp;#8217;ll also be able to move!  At least theoretically.&lt;/p&gt;
&lt;p&gt;His whole frame is made out of aluminum held together by &lt;a href=&quot;http://jbweld.net/products/jbkwik.php&quot;&gt;JB Kwik&lt;/a&gt; (this stuff&amp;#8217;s awesome).  This means he&amp;#8217;s really light and pretty sturdy.  I had all the aluminum pieces left over from previous (non-robot) projects.  All the pieces were cut with a hacksaw and filed by hand.  The couple places where I needed to use screws, I used a drill and a 6-32 tap to make the screw holes.  The frame&amp;#8217;s approximately 6.5 &amp;#215; 4 inches.&lt;/p&gt;
&lt;p&gt;The only somewhat complicated part so far was designing a mount for the motors.  As mentioned previously, &lt;a href=&quot;/2010/03/10/very-tiny-motors&quot;&gt;these motors are tiny&lt;/a&gt; and the screws I&amp;#8217;d need to use if I was going to just use the built in screw holes are even smaller.  I wanted to mount them directly to the frame to make it more sturdy, but I want to be able to remove the motors later if I want to borrow them for another project.  Just JB Kwiking them on is out of the question then.&lt;/p&gt;
&lt;p&gt;The solution I came up with was to attach a small piece of square aluminum tubing to the frame and add set screws and some small aluminum shims to hold the motors in place.  This is what the motor mounts look like:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/bobs_first_motor_mounts.jpg&quot; title=&quot;Bob&amp;#39;s motor mounts&quot; alt=&quot;Bob&amp;#39;s motor mounts&quot; /&gt;&lt;/p&gt;
&lt;p&gt;In the picture you can see one of the shims in place.  There will be one on the other side as well, then the set screws on the side can be tightened to clamp the motor in place.  Only time and testing will tell if it works well enough or not.&lt;/p&gt;
&lt;p&gt;Bob&amp;#8217;s &amp;#8220;eyes&amp;#8221; are actually a &lt;a href=&quot;http://www.parallax.com/tabid/768/ProductID/92/Default.aspx&quot;&gt;&lt;span class=&quot;caps&quot;&gt;PING&lt;/span&gt;))) Ultrasonic Sensor&lt;/a&gt;.  It is mounted on a servo which will allow him a 180 degree field of &amp;#8220;vision&amp;#8221;.  I may add some additional sensors later.  Possibly infrared.&lt;/p&gt;
&lt;p&gt;Power will come from 6 NiMH 1.2v &amp;#8220;AA&amp;#8221; batteries.&lt;/p&gt;
&lt;p&gt;To drive the motors I decided that I&amp;#8217;ll try a &lt;a href=&quot;http://www.hvwtech.com/products_view.asp?ProductID=1266&quot;&gt;TB6612FNG-based driver board&lt;/a&gt; mostly because it&amp;#8217;s cheap and seems like it will be good enough.  The wheels aren&amp;#8217;t going to turn side-to-side so I need to be able to control the motors independently to enable skid steering.&lt;/p&gt;
&lt;p&gt;To control the motors, servo and sensor(s) I&amp;#8217;m going to be using an &lt;a href=&quot;http://www.hvwtech.com/products_view.asp?ProductID=1257&quot;&gt;Ardweeny&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The next steps are:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;finish the rear motor mounts&lt;/li&gt;
	&lt;li&gt;build and test the Ardweeny&lt;/li&gt;
	&lt;li&gt;hookup the TB6612FNG board&lt;/li&gt;
	&lt;li&gt;test the motor control&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If the motor controller works well, I&amp;#8217;m going to order another one (one can control 2 wheels) and 2 more motors.  Then I&amp;#8217;ll need to wire the whole thing up and start working on the &lt;span class=&quot;caps&quot;&gt;PING&lt;/span&gt;))) and servo controls.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ll post more updates as the Bob progresses!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Forget About the Moon (Think Bigger!)</title>
   <link href="http://josh.wilsdon.ca/2010/04/14/forget-about-the-moon/"/>
   <updated>2010-04-14T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/04/14/forget-about-the-moon</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/man_on_the_moon.jpg&quot; title=&quot;Man on the moon&quot; alt=&quot;Man on the moon&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I read today that Obama is going to announce &lt;a href=&quot;http://www.cbsnews.com/stories/2010/04/14/tech/main6394612.shtml&quot;&gt;further changes to NASA&amp;#8217;s mission tomorrow&lt;/a&gt;.  Earlier this year he already announced that he was going to be cancelling the &lt;a href=&quot;http://en.wikipedia.org/wiki/Constellation_program&quot;&gt;Constellation Program&lt;/a&gt; that Bush announced in 2005.&lt;/p&gt;
&lt;p&gt;The most important part of the program was the development of heavy lifting capabilities as a stepping stone to future projects including a permanent base on the Moon.  This is important because the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Shuttle#Retirement&quot;&gt;Space Shuttle&lt;/a&gt; is being retired and there&amp;#8217;s nothing ready to replace it.  For near future, the US will have to rely on &lt;a href=&quot;http://en.wikipedia.org/wiki/Russian_Federal_Space_Agency&quot;&gt;Roscosmos&lt;/a&gt; to launch anything.&lt;/p&gt;
&lt;p&gt;From what I&amp;#8217;ve read, Obama&amp;#8217;s plan seems to include another new heavy lifting rocket but the focus really seems to be on three things:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Letting private companies handle more of the work&lt;/li&gt;
	&lt;li&gt;Keeping and creating jobs (even if their projects &lt;a href=&quot;http://www.popsci.com/technology/article/2010-04/nasas-orion-capsule-reborn-escape-pod-space-station&quot;&gt;don&amp;#8217;t make much sense&lt;/a&gt;)&lt;/li&gt;
	&lt;li&gt;Not committing to any specific goals&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I&amp;#8217;m a big fan of having private companies doing more in space.  They have more motivation to be efficient and they&amp;#8217;re also likely to be able to do things that aren&amp;#8217;t so much research but are important for other long-term projects.  Asteroid mining, orbital manufacturing and other similar projects are important but don&amp;#8217;t really fall into the purview of &lt;span class=&quot;caps&quot;&gt;NASA&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Keeping and creating jobs is important politically.  Especially in the current economic environment.  Not much else to say about that one, though it&amp;#8217;d be nice if they were all working on something important.&lt;/p&gt;
&lt;p&gt;Not committing to any specific goals seems to be a big problem.  I think the idea of having private companies doing the day-to-day tasks like launching stuff into orbit could actually be a really good thing for &lt;span class=&quot;caps&quot;&gt;NASA&lt;/span&gt; if they focus their effort on the more ambitious projects that push the envelope of science and engineering.  But they need to set a target.  Something difficult enough that it&amp;#8217;s not certain that it can be done.  Don&amp;#8217;t say: &amp;#8220;We&amp;#8217;re going to Mars eventually.&amp;#8221;  Instead say: &amp;#8220;Permanent colony on Mars by 2020&amp;#8221;.&lt;/p&gt;
&lt;p&gt;John F. Kennedy made it a national goal in 1961 to have a man on the Moon in by the end of the decade.  The &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_program&quot;&gt;Apollo program&lt;/a&gt; not only landed 12 people on the Moon in 6 trips there, but created many advances in the state of the art in a variety of fields in order to meet that goal.&lt;/p&gt;
&lt;p&gt;If the &lt;span class=&quot;caps&quot;&gt;USA&lt;/span&gt; can&amp;#8217;t come up with their own motivation, my hope is that &lt;a href=&quot;http://en.wikipedia.org/wiki/Russian_Federal_Space_Agency&quot;&gt;Russia&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/China_National_Space_Administration&quot;&gt;China&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/European_Space_Agency&quot;&gt;Europe&lt;/a&gt; or even &lt;a href=&quot;http://en.wikipedia.org/wiki/Indian_Space_Research_Organization&quot;&gt;India&lt;/a&gt; will be bolder and start a new space race.  Maybe having the Chinese flag painted across the whole face of the moon would motivate the US into action.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>When You Get Stuck, Keep Digging</title>
   <link href="http://josh.wilsdon.ca/2010/04/07/keep-digging/"/>
   <updated>2010-04-07T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/04/07/keep-digging</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/backhoe-stuck-in-the-mud.jpg&quot; title=&quot;Backhoe Stuck in the Mud&quot; alt=&quot;Backhoe Stuck in the Mud&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I just read &lt;a href=&quot;http://www.pragprog.com/magazines/2010-04/tangled-up-in-tools&quot;&gt;a great article&lt;/a&gt; expressing frustrations that I think a lot of developers have had but haven&amp;#8217;t been able to express as well.  One of the choice quotes:&lt;/p&gt;
&lt;p&gt;&amp;#8220;Libraries are a win. But they are not as big a win as they want you to think, and sometimes they are the kind of win that make you wish you’d lost.&amp;#8221;&lt;/p&gt;
&lt;p&gt;The 2 &amp;#8220;prongs&amp;#8221; of his manifesto are both really good things for developers to keep in mind.  I&amp;#8217;ve complained about these same issues many times.  I&amp;#8217;m sure other people have also had exactly the same issues in relation to my code.  Hopefully improvements can be made all around.&lt;/p&gt;
&lt;p&gt;If you&amp;#8217;ve worked as a developer very long at all, I&amp;#8217;m sure you&amp;#8217;ll immediately think of a few other projects which have exactly the same sort of useless documentation he describes in &amp;#8220;Prong 1&amp;#8221;.  I&amp;#8217;m glad I&amp;#8217;m not the only one fed up with useless automatic documentation ala rdoc, javadoc, phpdoc, etc.  It&amp;#8217;s often a lot easier to just look at the source and/or try a library out than it is to parse through a lot of the &amp;#8220;documentation&amp;#8221; some projects make available.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve also seen first hand that it&amp;#8217;s quite common to spend most of your time &lt;a href=&quot;http://en.wiktionary.org/wiki/yak_shaving&quot;&gt;yak shaving&lt;/a&gt; while you&amp;#8217;re trying to fit a solution to a problem it wasn&amp;#8217;t quite designed for.  It&amp;#8217;s true that it&amp;#8217;s better use of your time to fit someone else&amp;#8217;s library that almost does what you want to your problem, but it&amp;#8217;s definitely not as much fun as building something new.  I guess that&amp;#8217;s why there are so many different &lt;a href=&quot;http://www.igvita.com/2009/11/20/state-of-ruby-vms-ruby-renaissance/&quot;&gt;Ruby VMs&lt;/a&gt;.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>In Transition</title>
   <link href="http://josh.wilsdon.ca/2010/03/31/in-transition/"/>
   <updated>2010-03-31T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/03/31/in-transition</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/file-transfer.jpg&quot; title=&quot;Transfering Files&quot; alt=&quot;Transfering Files&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I work at &lt;a href=&quot;http://www.layerboom.com/&quot;&gt;Layerboom&lt;/a&gt; building awesome stuff.  Layerboom started and ran &lt;a href=&quot;http://www.geovps.com/&quot;&gt;GeoVPS&lt;/a&gt; for a while using our awesome virtualization platform.  It has however taken resources away from working on the platform itself and is therefore being shut down.&lt;/p&gt;
&lt;p&gt;This site has been hosted so far on GeoVPS, but today is the last day for GeoVPS, so the whole thing has to be moved immediately.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m using &lt;a href=&quot;http://jekyllrb.com/&quot;&gt;Jekyll&lt;/a&gt; to basically generate this as a static site and thus I don&amp;#8217;t really need a full &lt;span class=&quot;caps&quot;&gt;VPS&lt;/span&gt; instance to host it.  I was originally just going to move my files to either Rackspace&amp;#8217;s &lt;a href=&quot;http://www.rackspacecloud.com/cloud_hosting_products/files&quot;&gt;Cloudfiles&lt;/a&gt; or Amazon&amp;#8217;s &lt;a href=&quot;http://aws.amazon.com/s3/&quot;&gt;S3&lt;/a&gt;, since I would just be able to upload the new files when I make them and forget about it.  When I looked into this I found there&amp;#8217;s a problem that prevents people from hosting their website entirely in either of these.&lt;/p&gt;
&lt;p&gt;The problem is that it&amp;#8217;s not possible to have a default handler for /index.html.  This means that I can&amp;#8217;t have people go to &lt;a href=&quot;http://josh.wilsdon.ca&quot;&gt;http://josh.wilsdon.ca&lt;/a&gt;, they&amp;#8217;d need to include a trailing &amp;#8220;index.html&amp;#8221;.  I really don&amp;#8217;t want that since people who went to the front page without the index.html would just get an error.&lt;/p&gt;
&lt;p&gt;So I kept looking around.  It seems that there&amp;#8217;s now a tool that makes a &lt;a href=&quot;http://github.com/bry4n/rack-jekyll&quot;&gt;Jekyll site into a Rack app&lt;/a&gt;.  So I think I might give that a try.  If that works well, I&amp;#8217;m going to try deploying to &lt;a href=&quot;http://www.heroku.com/&quot;&gt;Heroku&lt;/a&gt;.  Heroku looks pretty cool and I&amp;#8217;ve been meaning to try it out anyway.  If it works out I&amp;#8217;ll get free hosting for my blog and perhaps I can start using some of the other nifty features of Heroku to eventually make some dynamic content.&lt;/p&gt;
&lt;p&gt;We&amp;#8217;ll see.&lt;/p&gt;
&lt;p&gt;In the mean time I&amp;#8217;ve moved all my files to a temporary location so there should be no disruption in your ability to view &lt;a href=&quot;/scoreboard&quot;&gt;the scoreboard&lt;/a&gt; and see how badly Kevin&amp;#8217;s failing.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span class=&quot;caps&quot;&gt;UPDATE&lt;/span&gt;&lt;/strong&gt;: If you&amp;#8217;re seeing this, the site&amp;#8217;s been moved to Heroku!  It was actually really easy.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Sledge Hockey FTW!</title>
   <link href="http://josh.wilsdon.ca/2010/03/23/sledge-hockey/"/>
   <updated>2010-03-23T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/03/23/sledge-hockey</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/sledge-hockey.jpg&quot; title=&quot;Sledge Hockey&quot; alt=&quot;Sledge Hockey&quot; /&gt;&lt;/div&gt;
&lt;p&gt;The Olympics are all over!  I managed to go and see Sweden defeat Belarus in the men&amp;#8217;s hockey.  It was pretty exciting going to see some big &lt;span class=&quot;caps&quot;&gt;NHL&lt;/span&gt; stars playing some pretty good hockey.  I also managed just last week to see &lt;span class=&quot;caps&quot;&gt;USA&lt;/span&gt; vs. Japan in sledge hockey (no, not &lt;a href=&quot;http://www.vancouver2010.com/paralympic-games/ice-sledge-hockey/schedule-and-results/gold-medal-game---game-20_ihx400101poy.html&quot;&gt;the gold medal game&lt;/a&gt;) during the Paralympics, and I have to say that I think the sledge hockey was a much better value.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;d never seen sledge hockey before.  I read a bit about it before I went, enough to know that the rules were pretty similar to regular hockey and that the guys playing it are pretty tough.  Actually watching it is pretty incredible.  Some of these guys have no legs but they&amp;#8217;re in way better shape than the average Joe.  Their upper bodies are huge and they really smash each other into the boards.  I watched some video afterward where one of the athletes was talking about how they get hit all the time with the ice picks on the end of other players&amp;#8217; sticks and it really hurts.  Yeah, I bet!&lt;/p&gt;
&lt;p&gt;Anyway, I have a whole lot of respect for those guys who go out there and go like mad.  The &lt;span class=&quot;caps&quot;&gt;NHL&lt;/span&gt; players I watched in the Olympics are amazing athletes but it felt different watching players who get paid millions of dollars to play hockey and the Paralympians who I can&amp;#8217;t imagine are getting paid as much as they deserve.  They really are an inspiration and I&amp;#8217;m glad to have had the opportunity to experience watching them play.  Even though team Japan didn&amp;#8217;t manage to score a goal against team &lt;span class=&quot;caps&quot;&gt;USA&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Is it possible to watch sledge hockey when the Olympics aren&amp;#8217;t on?&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Apple is awesome (and sucks)</title>
   <link href="http://josh.wilsdon.ca/2010/03/17/apple-is-awesome-and-sucks/"/>
   <updated>2010-03-17T00:00:00-07:00</updated>
   <id>http://josh.wilsdon.ca/2010/03/17/apple-is-awesome-and-sucks</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/iphone-borked.jpg&quot; title=&quot;Broken iphone&quot; alt=&quot;Broken iphone&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Yesterday Fido and Apple conspired to break my phone (for now).  I&amp;#8217;ve got a 3GS and I was happy with the 3.1.2 firmware and my old baseband since I could jailbreak/unlock whenever I want to in case I&amp;#8217;m tired of what&amp;#8217;s in the Apple store or want to write my own apps.  Anyway, I tried installing some Fido app and my phone crashed.  I figured all I&amp;#8217;d have to do was restore since I&amp;#8217;d rejected all the updates to firmware 3.1.3 previously.&lt;/p&gt;
&lt;p&gt;Unfortunately I found out that&amp;#8217;s no longer so easy.  Apple decided to &lt;a href=&quot;http://www.iphoneincanada.ca/unlocking/warning-apple-stops-signing-firmware-3-1-2-for-iphone-3gs/&quot;&gt;stop signing 3.1.2&lt;/a&gt; for the 3GS so that I can only restore to the newer 3.1.3 firmware.  This newer firmware also forces an update of the baseband which so far is not jailbreakable and not unlockable.  Technically my phone&amp;#8217;s not broken, it&amp;#8217;s just less flexible now than it used to be.&lt;/p&gt;
&lt;p&gt;There&amp;#8217;s a lot of good stuff in the App Store, so this is not really the end of the world.  I just like to have the choice to install stuff Apple doesn&amp;#8217;t like.  I also appreciate the right to free speech even when I don&amp;#8217;t have anything offencive to say.  That&amp;#8217;s why I was so disheartened when I found out that Apple was going to force me to upgrade.  All of this made me start thinking more seriously about the ipad, which I was previously thinking would be a pretty cool device to have.&lt;/p&gt;
&lt;p&gt;I really enjoy using Apple products generally and at first glance the ipad is pretty attractive.  It&amp;#8217;s a beautiful looking device and seems like it will be a pretty powerful machine for a number of tasks.  With the ipad though, apps are going to be controlled in the same draconian fashion as they are for the iphone.  This means Apple decides which apps I can and can&amp;#8217;t use and I have to &lt;a href=&quot;http://developer.apple.com/programs/iphone/&quot;&gt;pay Apple&lt;/a&gt; for the privilege of writing apps if I want to put them on my phone.  Webapps have some ability to bridge the gap here I think.  Especially with things like &lt;a href=&quot;http://www.jqtouch.com/&quot;&gt;JQTouch&lt;/a&gt;.  But I don&amp;#8217;t think that&amp;#8217;s a full solution.&lt;/p&gt;
&lt;p&gt;The end result of my thinking on this issue so far is that I&amp;#8217;ll probably hold out on getting an ipad until either I get one for free (or really cheap) or until Apple fixes the issues surrounding app distribution.  I&amp;#8217;m hoping that someone else comes out with a decent tablet computer that&amp;#8217;s close to being as cool, but much more open.  Hopefully that would eventually put Apple in the position where they need to be more open to compete.  I&amp;#8217;m hoping Android does the same thing on the phone front.  Especially if that can happen by the time my contract is up for this phone.&lt;/p&gt;
&lt;p&gt;Until then, I&amp;#8217;ll just have to hope someone comes up with a &amp;#8220;fix&amp;#8221; for the 3.1.3 firmware and the new baseband and that Apple doesn&amp;#8217;t remove &lt;a href=&quot;http://www.donutgames.com/iphone_games.php&quot;&gt;Cows in Space&lt;/a&gt; from the App Store.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Very tiny motors!</title>
   <link href="http://josh.wilsdon.ca/2010/03/10/very-tiny-motors/"/>
   <updated>2010-03-10T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/03/10/very-tiny-motors</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/gm20-motor.jpg&quot; title=&quot;Pic of the GM20 motor&quot; alt=&quot;Pic of the GM20 motor&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I got the first 2 motors for my robot!&lt;/p&gt;
&lt;p&gt;I ordered two &lt;a href=&quot;http://www.solarbotics.com/products/gm20/&quot;&gt;GM20&lt;/a&gt; motors from &lt;a href=&quot;http://www.solarbotics.com&quot;&gt;Solarbotics&lt;/a&gt; on Saturday and they came in the mail today.  Though I&amp;#8217;ve not tested these or any of the parts I ordered, I&amp;#8217;m pretty happy with the pricing and ordering experience so far with Solarbotics.  I&amp;#8217;ve ordered electronics parts from a few places now: &lt;a href=&quot;http://sparkfun.com&quot;&gt;Sparkfun&lt;/a&gt;, &lt;a href=&quot;http://robotshop.ca&quot;&gt;Robotshop&lt;/a&gt; and now Sparkfun.  These parts were shipped quickly and because I ordered enough stuff I got free shipping!  I imagine the fact that Solarbotics is in Calgary helped with the shipping time.  Their prices are pretty comparable and they also own &lt;a href=&quot;http://www.hvwtech.com/&quot;&gt;&lt;span class=&quot;caps&quot;&gt;HVW&lt;/span&gt; Technologies&lt;/a&gt; they&amp;#8217;ve got a pretty good selection of parts.  Overall, assuming that these parts all work I&amp;#8217;ll definitely consider ordering from these guys again, even if only for the shipping.&lt;/p&gt;
&lt;p&gt;I knew before I ordered them that these motors were small (the specs say 14mm) but when I opened the box they looked even smaller than I expected.  These motors are tiny!  Here&amp;#8217;s an image showing a comparison to a nickel:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/images/gm20-motor-nickel.jpg&quot; title=&quot;Pic of the GM20 motor with a nickel for comparison&quot; alt=&quot;Pic of the GM20 motor with a nickel for comparison&quot; /&gt;&lt;/p&gt;
&lt;p&gt;this motor is supposed to have a fair amount of torque though (37.70 in*oz), so we&amp;#8217;ll have to see if it can drive my robot or not.  My plan is to test with these two motors and get some wheels and see how things go.  If tests show that these are powerful enough for my purposes I&amp;#8217;ll be ordering 4 more and 4 more wheels.&lt;/p&gt;
&lt;p&gt;P.S. I&amp;#8217;ve updated my &lt;a href=&quot;/books&quot;&gt;book list&lt;/a&gt; and rearranged it somewhat.  I decided to try to add a list of books I&amp;#8217;ve read in the past slowly.  I figure this will help out for those who are either looking for a book to read, or trying to figure out which books &lt;strong&gt;not&lt;/strong&gt; to get for me.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Now with archives!</title>
   <link href="http://josh.wilsdon.ca/2010/03/03/now-with-archives/"/>
   <updated>2010-03-03T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/03/03/now-with-archives</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/archive.jpg&quot; title=&quot;Fisheye view of the archive&quot; alt=&quot;Fisheye view of the archive&quot; /&gt;&lt;/div&gt;
&lt;p&gt;This is my 9th post since &lt;a href=&quot;/2010/01/04/first-post&quot;&gt;I started in on this&lt;/a&gt; blogging thing.  Since I haven&amp;#8217;t missed any weeks so far in the challenge, my front page was starting to get cluttered.  Since &lt;a href=&quot;http://yinkei.com&quot;&gt;Kevin&lt;/a&gt; has managed to miss 4 weeks already, I even got free lunch today!&lt;/p&gt;
&lt;p&gt;In order to make the front page a little less cluttered, I&amp;#8217;ve moved older posts to the &lt;a href=&quot;/archive&quot;&gt;new archive page.&lt;/a&gt;  The 5 most recent posts will still be on this front page, but older posts will be available in the archive.  I&amp;#8217;ve also added a link on the menu to the &lt;a href=&quot;/scoreboard&quot;&gt;scoreboard&lt;/a&gt; page.  That will help you keep track of how I&amp;#8217;m doing in comparison to &lt;a href=&quot;http://yinkei.com&quot;&gt;Kevin&lt;/a&gt; and &lt;a href=&quot;http://howiewu.com&quot;&gt;Howie&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Other things I&amp;#8217;m thinking about changing sometime in the not too distant future include:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;make the scoreboard auto-updating (I&amp;#8217;m currently updating it manually)&lt;/li&gt;
	&lt;li&gt;add project pages/sections for some of my ongoing projects (with pics/code)&lt;/li&gt;
	&lt;li&gt;add an about page saying something about me&lt;/li&gt;
	&lt;li&gt;comments (I tried to make this work already, but &lt;a href=&quot;http://intensedebate.com&quot;&gt;intense debate&lt;/a&gt; was way too slow)&lt;/li&gt;
	&lt;li&gt;add more awesome&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So keep checking back.&lt;/p&gt;
&lt;p&gt;If you have any feedback let me know!  Just email &amp;lt;josh@wilsdon.ca&amp;gt;.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Wheels or Tracks?</title>
   <link href="http://josh.wilsdon.ca/2010/02/24/wheels-vs-treads/"/>
   <updated>2010-02-24T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/02/24/wheels-vs-treads</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/mars-rover.jpg&quot; title=&quot;NASA&amp;#39;s Mars Rover&quot; alt=&quot;NASA&amp;#39;s Mars Rover&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I&amp;#8217;ve still not ordered some of the parts I need to get started building the body for my robot.  The main reason I&amp;#8217;ve not yet ordered the parts is that I still have a few design decisions to make first.  One of the bigger design decisions outstanding is what sort of propulsion system this robot will be using.&lt;/p&gt;
&lt;p&gt;My first thought was to make it use tracks like a tank.  I thought this would give it the most mobility over the widest range of terrain and be simpler to build.  Plus, tanks are way cool!  After some reading though, it seems that may not be the best choice.  Tracks are not simpler to build (more parts!) and there are a number of other factors which I had not considered.&lt;/p&gt;
&lt;p&gt;It turns out that tracks do in fact have better mobility over many types of terrain.  This is because they spread the weight of the vehicle over a larger contact area and small obstacles are no problem because while some parts of the track may be off the ground, the remaining portion still in contact with the ground continues to propel the vehicle forward.  This larger contact area however also has a number of drawbacks.&lt;/p&gt;
&lt;p&gt;One big drawback of a track-based design is the fact that the additional contact with the ground also slows your vehicle down.  Another drawback, probably more critical for some applications, is that the track is a single point of failure.  If your vehicle has multiple wheels, it&amp;#8217;s possible for it to keep going if one fails.  If a track fails you can only go in circles.  This fault-tolerance is one of the reasons that both &lt;a href=&quot;http://marsrover.nasa.gov/home/index.html&quot;&gt;&lt;span class=&quot;caps&quot;&gt;NASA&lt;/span&gt;&lt;/a&gt; and the &lt;a href=&quot;http://www.esa.int/esaMI/Aurora/SEM1NVZKQAD_0.html&quot;&gt;&lt;span class=&quot;caps&quot;&gt;ESA&lt;/span&gt;&lt;/a&gt; are using wheel-based designs for their rovers.&lt;/p&gt;
&lt;p&gt;When I first thought of a wheeled design, I was thinking 4 wheels.  I might even have chosen tracks over a 4-wheel design.  But it seems 6 or 8 wheel designs give you many of the advantages of tracks while mitigating the drawbacks.  A 6-wheeled vehicle can still go relatively fast since the contact area is lower than that of a pair of tracks, but it can also keep multiple wheels in contact with the ground when overcoming obstacles.  Especially when coupled with a decent suspension system.&lt;/p&gt;
&lt;p&gt;At this point then, I&amp;#8217;ve pretty much decided to build a 6 wheel robot.  This seems to be the best compromise between all of the factors mentioned above.  I think I&amp;#8217;ll order 2 motors for now in order to test the size, torque, and speed.  This will also let me build and test the control circuitry.  Once I have the motors in hand and have done some testing, I&amp;#8217;ll begin the next stage which is the design of the chassis and possibly the suspension system.  Then I can start building.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Cucumbers - Scourge of the galaxy</title>
   <link href="http://josh.wilsdon.ca/2010/02/17/cucumbers-scourge-of-the-galaxy/"/>
   <updated>2010-02-17T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/02/17/cucumbers-scourge-of-the-galaxy</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/cucumber.jpg&quot; title=&quot;vomit inducing cucumber&quot; alt=&quot;vomit inducing cucumber&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Most people who read this probably already know about my intense dislike of the disgusting fruit known as the &amp;#8220;cucumber&amp;#8221;.  The mere smell is enough to cause me to expend great effort to keep my lunch where it belongs.  I seem to be able to sense its evil presence from a significant distance.  I imagine it is the same feeling Obiwan felt when Alderaan was destroyed.  A great well of evil rolled into an ugly green fruit.  Something that truly does not belong in any reasonable universe.&lt;/p&gt;
&lt;p&gt;I have long wondered why it is only I that can sense the inherent evil of this fruit so many pretend to enjoy.  A little bit of research (read: Wikipedia) indicates that the reason is that most people are simply not very good at detecting &lt;a href=&quot;http://en.wikipedia.org/wiki/Phenylthiocarbamide&quot;&gt;Phenylthiocarbamide&lt;/a&gt;.  Related to that might be the fact that I hang around people who drink a lot of coffee and tea, and those people are statistically less likely to be able to taste &lt;span class=&quot;caps&quot;&gt;PTC&lt;/span&gt;.  Apparently I am part of &amp;#8220;a small but vocal minority&amp;#8221; of people who experience cucumbers as &amp;#8220;a highly repugnant taste&amp;#8221;.  I am being oppressed by the tyrannical silent majority!&lt;/p&gt;
&lt;p&gt;So I&amp;#8217;ve come up with a few &amp;#8220;facts&amp;#8221; that I hope will help you realize just how dangerous cucumbers really are.  The majority of people who:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;get bitten by sharks&lt;/li&gt;
	&lt;li&gt;are involved in plane crashes&lt;/li&gt;
	&lt;li&gt;listen to &lt;a href=&quot;http://www.youtube.com/watch?v=dQw4w9WgXcQ&quot;&gt;Rick Astley&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;are part of this majority for whom cucumbers are not repugnant, and have likely even enjoyed eating them.  So please consider that next time you think it&amp;#8217;s a good idea to eat a cucumber.  The more cucumbers you eat the more likely you are to have some sort of horrific accident.  Especially if you&amp;#8217;re anywhere near me.  Also be aware that I&amp;#8217;m not afraid to crank up the Rick Astley in order to get you and your cucumbers to leave!&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m sure that now that you&amp;#8217;ve seen the light, you&amp;#8217;ll never eat another cucumber.  On behalf of those of us non-&lt;span class=&quot;caps&quot;&gt;PTC&lt;/span&gt;-challenged: thank you!  We appreciate it!  I suggest you eat a non-repugnant carrot instead.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Hope you brought your rain jacket</title>
   <link href="http://josh.wilsdon.ca/2010/02/11/hope-you-brought-your-rainjacket/"/>
   <updated>2010-02-11T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/02/11/hope-you-brought-your-rainjacket</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/images/olympic-rain.png&quot; title=&quot;winter weather = rain&quot; alt=&quot;winter weather = rain&quot; /&gt;&lt;br /&gt;
So&amp;#8230;  I&amp;#8217;ve been really really busy with work.  We&amp;#8217;re building the awesome.  In the meantime, everyone is coming to Vancouver.  Yesterday I saw some of team Sweden walking in front of my office window.  They looked lost and confused.  I hope they found the pub or whatever they were looking for.&lt;/p&gt;
&lt;p&gt;Anyway, if you&amp;#8217;re coming to Vancouver, my suggestion is to bring a rain jacket.  I imagine a lot of people out there are planning to bring earmuffs, parkas and mittens because they&amp;#8217;re thinking &amp;#8216;Winter Olympics&amp;#8217; = &amp;#8216;cold&amp;#8217;.  Well, that&amp;#8217;s not going to help you here.  All you&amp;#8217;re going to end up with is wet mittens.  The thing some people don&amp;#8217;t realize is that not all of Canada is cold.  I&amp;#8217;ve lived in cold parts of Canada.  This is not it, it&amp;#8217;s the wet part.  If you don&amp;#8217;t believe me, &lt;a href=&quot;http://en.wikipedia.org/wiki/Climate_of_Vancouver#Precipitation&quot;&gt;go read about it.&lt;/a&gt;  If you got to Whistler, it might get a little bit colder.  I&amp;#8217;m talking about Vancouver.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s about all I have to say for now.  Oh, except don&amp;#8217;t bring an umbrella.  I really don&amp;#8217;t like umbrellas.  There&amp;#8217;s no room for them and they just end up getting in the way!  Especially when the streets are packed with people.  Instead bring a rain jacket.&lt;/p&gt;
&lt;p&gt;P.S. It seems as though Kevin&amp;#8217;s &lt;a href=&quot;/scoreboard&quot;&gt;now failed twice&lt;/a&gt; since he &lt;a href=&quot;http://yinkei.com/2010/01/the-start-of-a-new-year&quot;&gt;promised us free lunch for a week&lt;/a&gt;.  Does that mean 2 weeks of free lunch?&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>The problem with cars is people</title>
   <link href="http://josh.wilsdon.ca/2010/02/02/the-problem-with-cars-is-people/"/>
   <updated>2010-02-02T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/02/02/the-problem-with-cars-is-people</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/car-fail.jpg&quot; title=&quot;car FAIL&quot; alt=&quot;car FAIL&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I dislike cars.  Actually, it would probably be more accurate to say that I dislike most personal transportation that is human-controlled but not human-powered.  This mostly means I don&amp;#8217;t like cars, vans, trucks, taxis, etc.  But here I&amp;#8217;ll lump them all together as &amp;#8216;cars&amp;#8217;.&lt;/p&gt;
&lt;p&gt;I own a car and even drive, but when possible I avoid cars.  When I can&amp;#8217;t avoid being in a car, I try to avoid driving.  If it&amp;#8217;s the only viable way to get somewhere, I&amp;#8217;ll drive but I&amp;#8217;d much prefer taking a train or walking when it&amp;#8217;s reasonable to do so.  If it were possible I&amp;#8217;d gladly give up my car and rely entirely on non-powered transportation.  Unfortunately, in the time and place I currently live, not having a car is a difficult option to justify.&lt;/p&gt;
&lt;p&gt;The reasons I don&amp;#8217;t like cars are manifold but they include (random generalizations):&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;cars are loud&lt;/li&gt;
	&lt;li&gt;cars are expensive&lt;/li&gt;
	&lt;li&gt;gas is expensive&lt;/li&gt;
	&lt;li&gt;cars stink up the environment&lt;/li&gt;
	&lt;li&gt;cars run on oil which is difficult politically and environmentally to obtain&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/File:Traffic_related_deaths_-_Road_fatalities_per_capita.svg&quot;&gt;people driving cars are dangerous&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Illusory_superiority#Driving_ability&quot;&gt;people think they&amp;#8217;re better at driving than they are&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;cars are slow (compared to eg. &lt;a href=&quot;http://en.wikipedia.org/wiki/Shinkansen&quot;&gt;Shinkansen&lt;/a&gt;)&lt;/li&gt;
	&lt;li&gt;driving requires concentration (which I&amp;#8217;d like to use for other things)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The largest of these problems revolve around people (myself included).  If I were the only person on the road and I didn&amp;#8217;t need to worry about other cars or the drunk guy stumbling across the street, I might even enjoy driving.  I could drive much faster while paying less attention.  I&amp;#8217;d never get stuck in traffic or at a red light.  Unfortunately, in the real world there are lots of other people and vehicles sharing space with cars.&lt;/p&gt;
&lt;p&gt;Once again robots could save the day!  Imagine even a personal transportation option that looked exactly like your car but travelled much faster and was able to get you somewhere while you read a book.  You&amp;#8217;d just get in and tell it where you want to go and it&amp;#8217;d take you there as fast as possible while you enjoy your novel.  &lt;a href=&quot;http://en.wikipedia.org/wiki/Driverless_car&quot;&gt;People are even working on this&lt;/a&gt;, but it seems to me that they&amp;#8217;re not expending as much money or effort on that as people are spending on &lt;a href=&quot;http://en.wikipedia.org/wiki/Iraq_War&quot;&gt;protecting the ability to drive cars&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Even if the technology were perfect though, the bigger problems that need to be overcome before I can stop driving for good are again people problems.  The unsolved problems include:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Getting people to trust computer control.&lt;/li&gt;
	&lt;li&gt;Building proper failsafes.&lt;/li&gt;
	&lt;li&gt;If a computer-controlled car &lt;strong&gt;does&lt;/strong&gt; crash, who do I sue?!&lt;/li&gt;
	&lt;li&gt;Everyone needs to adopt it before it can really work optimally.&lt;/li&gt;
	&lt;li&gt;Where would highway patrol get all their revenue without speeding tickets?&lt;/li&gt;
	&lt;li&gt;Some people think their &amp;#8220;freedom to be in control&amp;#8221; is more important than other people&amp;#8217;s safety.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So&amp;#8230; I guess I&amp;#8217;ll need to have a car for a while longer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;UPDATE1:&lt;/strong&gt; &lt;a href=&quot;http://www.vancouversun.com/health/Driving+shorten+life/2517346/story.html&quot;&gt;Research shows every hour you drive shortens your life by 20 minutes.&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;UPDATE2:&lt;/strong&gt; That doesn&amp;#8217;t mean you gain 40 minutes.  Driving 60 minutes, you waste 80!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Robots!</title>
   <link href="http://josh.wilsdon.ca/2010/01/23/robots/"/>
   <updated>2010-01-23T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/01/23/robots</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/r2d2.jpg&quot; title=&quot;R2D2&quot; alt=&quot;R2D2&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Since I was a kid I&amp;#8217;ve wanted to build my own robots.  While I&amp;#8217;ve built simple machines with motors none of them have had enough complexity to really meet my definition of a robot.  As technology advances, making robots that do complex things is getting easier all the time.  Maybe I could just wait it out and 10 years from now buy $10 worth of parts to put together to make a robot with human-analog intelligence, but I figure if I get started building robots now, I&amp;#8217;ll be able to build even cooler robots by then.  Since robots are going to be taking over anyway, I might as well get on their good side as soon as possible.&lt;/p&gt;
&lt;p&gt;For my first robot, I&amp;#8217;m planning to use an Atmel ATmega328 microcontroller in the form of an Arduino Duemilanove (which I already have) and some full rotation servos (which I&amp;#8217;m going to order) to drive it.  I&amp;#8217;ll add some sensors and then work on upgrading it to do more complex stuff.  My initial goals for this project are:&lt;/p&gt;
&lt;h3&gt;Phase 1&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;build the basic drive mechanism (I&amp;#8217;m planning just to attach wheels to the servos for now) and platform&lt;/li&gt;
	&lt;li&gt;have the robot drive forward and stop before running into something&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Phase 2&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;add steering&lt;/li&gt;
	&lt;li&gt;add Xbee radio so I can control the robot remotely&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Ideas for future enhancement&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;add a camera&lt;/li&gt;
	&lt;li&gt;have the robot drive itself autonomously&lt;/li&gt;
	&lt;li&gt;add sensors to avoid obstacles&lt;/li&gt;
	&lt;li&gt;add an arm to manipulate the environment&lt;/li&gt;
	&lt;li&gt;upgrade to a more powerful microcontroller&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I&amp;#8217;m sure my ideas of what will work best will change soon after I get started, and I&amp;#8217;ll come up with new ideas for what to make it do in the future.  As my work on this progresses, I&amp;#8217;ll post updates here!&lt;/p&gt;
&lt;p&gt;P.S. I&amp;#8217;ve also created &lt;a href=&quot;/scoreboard&quot;&gt;a scoreboard page&lt;/a&gt; to keep track of the status of the &lt;a href=&quot;http://project52.info/&quot;&gt;Project 52&lt;/a&gt; challenge.  This shows that &lt;a href=&quot;http://yinkei.com/&quot;&gt;Kevin&lt;/a&gt; already &lt;a href=&quot;http://yinkei.com/2010/01/the-start-of-a-new-year&quot;&gt;owes Howie and I lunch for a week&lt;/a&gt;.  I feel like steak!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Listing my books.</title>
   <link href="http://josh.wilsdon.ca/2010/01/17/list-of-books/"/>
   <updated>2010-01-17T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/01/17/list-of-books</id>
   <content type="html">&lt;div class=&quot;floatyimg&quot;&gt;&lt;img src=&quot;/images/books.jpg&quot; title=&quot;Books&quot; alt=&quot;Books&quot; /&gt;&lt;/div&gt;
&lt;p&gt;I could write here about how &lt;a href=&quot;http://www.howardwu.com&quot;&gt;Howie&lt;/a&gt; failed the &lt;a href=&quot;http://project52.info/&quot;&gt;Project 52&lt;/a&gt; challenge in week 2 after &lt;a href=&quot;http://yinkei.com&quot;&gt;Kevin&lt;/a&gt; failed in week 1 and just call that my post for this week.  But I think that all this meta discussion is starting to get redundant, so I&amp;#8217;ll spare you and write about my books instead.&lt;/p&gt;
&lt;p&gt;One of the things I really like to do is read books.  Now that I&amp;#8217;m taking public transit to work, I&amp;#8217;ve got almost 2 full hours to read during my commute each day.  Combined with the other time I spend reading, this means I&amp;#8217;ve been going through more books.  An hour or so ago I finished reading the 3rd and final book of Peter F. Hamilton&amp;#8217;s &amp;#8220;Night&amp;#8217;s Dawn&amp;#8221; trilogy (pretty good by the way, but ~4000 pages).  Then I started thinking that I should put up a list of books I&amp;#8217;ve read.  There are a couple motivations for this.  I figure it will:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;help me remember which books I&amp;#8217;ve read&lt;/li&gt;
	&lt;li&gt;allow other people who are interested keep track of what I&amp;#8217;m reading&lt;/li&gt;
	&lt;li&gt;allow people who want to buy/lend me books to know which ones I&amp;#8217;ve already read&lt;/li&gt;
	&lt;li&gt;increase the amount of content on this site&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In order to make it easy to keep this list up to date, I wanted to find a service I could use that would let me just select books I&amp;#8217;ve read or am planning to read or want to get and it would sort things out for me.  When I looked, the 3 best options I could find seemed to be &lt;a href=&quot;http://reader2.com&quot;&gt;reader2&lt;/a&gt;, &lt;a href=&quot;http://www.bookwormr.com&quot;&gt;bookwormr&lt;/a&gt; and &lt;a href=&quot;http://www.shelfari.com&quot;&gt;shelfari&lt;/a&gt;.  I tried to look at these and none of them seem to work for me:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;reader2 is currently not accepting new registrations (blaming spammers)&lt;/li&gt;
	&lt;li&gt;bookwormr doesn&amp;#8217;t seem to have an &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; that lets me pull out my data and integrate with this site&lt;/li&gt;
	&lt;li&gt;shelfari doesn&amp;#8217;t seem to have an &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; and seems a bit weird with their &amp;#8220;virtual shelf&amp;#8221; concept&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Does anyone else have any recommendations?  If so email them to &amp;lt;josh@wilsdon.ca&amp;gt;.&lt;/p&gt;
&lt;p&gt;Until I find a service that I like I&amp;#8217;ve just created a &lt;a href=&quot;/books&quot;&gt;simple list page&lt;/a&gt; which includes the books I could remember reading recently.  I&amp;#8217;ll update it as I read or remember other books.  This new page has also been added to my new menu/sidebar.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>I won already!</title>
   <link href="http://josh.wilsdon.ca/2010/01/12/i-win/"/>
   <updated>2010-01-12T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/01/12/i-win</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/images/royal-fail.jpg&quot; title=&quot;Royal Fail&quot; alt=&quot;Royal Fail&quot; /&gt;&lt;br /&gt;
It seems &lt;a href=&quot;http://yinkei.com&quot;&gt;Kevin&lt;/a&gt; challenged me and then proceeded to fall down on the job.  He never posted anything and it&amp;#8217;s well past the first week.  Oh well, I&amp;#8217;ve got to keep going now or &lt;a href=&quot;http://www.howardwu.com&quot;&gt;Howie&lt;/a&gt; will beat me, and we can&amp;#8217;t have that.&lt;/p&gt;
&lt;p&gt;With that out of the way, what sort of stuff will I be writing about in the future?  Good question.  Some of the ideas I&amp;#8217;ve got so far include:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Electronics (I&amp;#8217;m trying to teach myself to build robots)&lt;/li&gt;
	&lt;li&gt;Computers (I spend a lot of time with them)&lt;/li&gt;
	&lt;li&gt;Books (I love to read books)&lt;/li&gt;
	&lt;li&gt;Building, breaking and fixing stuff&lt;/li&gt;
	&lt;li&gt;Go (the game &amp;#8211; though I&amp;#8217;ve not played for a long time)&lt;/li&gt;
	&lt;li&gt;My dog (because the rest of my family won&amp;#8217;t let me write about them)&lt;/li&gt;
	&lt;li&gt;Other random stuff&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We&amp;#8217;ll see how it goes.  It&amp;#8217;ll be an adventure!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>First Post!</title>
   <link href="http://josh.wilsdon.ca/2010/01/04/first-post/"/>
   <updated>2010-01-04T00:00:00-08:00</updated>
   <id>http://josh.wilsdon.ca/2010/01/04/first-post</id>
   <content type="html">&lt;p&gt;So &lt;a href=&quot;http://yinkei.com&quot;&gt;Kevin&lt;/a&gt; challenged me to do this &lt;a href=&quot;http://project52.info&quot;&gt;Project 52&lt;/a&gt; thing where I have to write something on this site 52 times this year.  I guess I&amp;#8217;ll see how that works out.  I figure by starting with not much here, I can count some of my changes to this site toward the 52 updates if I write about them.&lt;/p&gt;
&lt;p&gt;I started this site with &lt;a href=&quot;http://github.com/mojombo/jekyll&quot;&gt;jekyll&lt;/a&gt;.  This was Kevin&amp;#8217;s recommendation.  It seems pretty straight forward since it just generates plain files which suits me fine.  I guess over the next 52 weeks (if I make it) you&amp;#8217;ll get a chance to find something out about me.&lt;/p&gt;</content>
 </entry>
 
 
</feed>
