<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Simon Says</title>
    <link>http://simonwoodside.com</link>
    <language>en</language>
    <webMaster>sbwoodside@yahoo.com (S. Woodside)</webMaster>
    <copyright>Copyright 2007-2012</copyright>
    <ttl>60</ttl>
    <pubDate>Tue, 10 Jan 2012 02:12:00 +0000</pubDate>
    <description>Weblog</description>
    <item>
      <title>xRIM: The Virtuous Cycle</title>
      <link>http://simonwoodside.com/weblog/2012/1/10/xrim_the_virtuous_cycle/</link>
      <pubDate>Tue, 10 Jan 2012 01:56:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2012/1/10/xrim_the_virtuous_cycle/</guid>
      <description>&lt;p class=&quot;p1&quot;&gt;What would happen if a handful of ex-RIM employees started up new companies? Food for thought. Thousands have been laid off, we could get dozens of new startups. The groups would be experienced, knowledgeable, compatible, the ideal for a founding team. They would be connected to former colleagues wealthy from stocks from RIM's early days, making it easy to raise seed capital.&lt;/p&gt;&lt;p class=&quot;p2&quot;&gt;On the other hand, the RIM &quot;diaspora&quot; could drift away, getting jobs in the US, seattle, silicon valley&#8230; pulling valuable human connections, knowledge, and experience out of the local loop.&lt;/p&gt;&lt;p class=&quot;p2&quot;&gt;It's not hard to see that the first scenario is better for the region. The existing cluster grew because individuals, once they get a taste of the industry, cycle through many companies. In fact, this region has been an entrepreneurial centre since the industrial age. Electrohome for example, a major electronics company in the mid-20th century, was founded in Kitchener. While Toronto has more tech and sheer scale, KW has a greater concentration, and it's concentrated groups of entrepreneurs that create the upwards spiral.&lt;/p&gt;&lt;p class=&quot;p2&quot;&gt;I can't go without mentioning silicon valley, because I spent a significant part of my formative career time there. Around the time of Electrohome, there started a lovely chain of diasporas and virtuous cycles in the bay area. Shockley left Bell Labs to start his new company. The &quot;Traitorous Eight&quot; left Shockley to form National Semi. More left to start Intel and AMD. At SRI, Engelbart's employees skipped out to join PARC. PARC people left in many directions&#8211;including the Mac division at Apple, as well as Adobe and 3Com. Ex-3Com people are all over the place. More recently, there's the Xoogler effect, leading even to specialized ex-google-only VCs.&lt;/p&gt;&lt;p class=&quot;p2&quot;&gt;&lt;strong&gt;My point is this: if we can keep the xRIM in the area, then cool tech will be created, the cluster will expand, and new startups will grow. That's a good thing. So, let's see if we can see the silver lining in the cloud and open up some doors.&lt;/strong&gt;&lt;/p&gt;&lt;p class=&quot;p2&quot;&gt;Oh yeah, and come out to &lt;a href=&quot;http://startupcampwaterloo.org/&quot;&gt;StartupCampWaterloo12&lt;/a&gt;.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a80ec20&gt;">#&lt;Tag:0x7f278a80ec20&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a80eb58&gt;">#&lt;Tag:0x7f278a80eb58&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a80ea90&gt;">#&lt;Tag:0x7f278a80ea90&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a80e9c8&gt;">#&lt;Tag:0x7f278a80e9c8&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a80e900&gt;">#&lt;Tag:0x7f278a80e900&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a80e838&gt;">#&lt;Tag:0x7f278a80e838&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a80e770&gt;">#&lt;Tag:0x7f278a80e770&gt;</category>
    </item>
    <item>
      <title>How to interview well at Google</title>
      <link>http://simonwoodside.com/weblog/2011/8/29/how_to_interview_well_at/</link>
      <pubDate>Mon, 29 Aug 2011 22:11:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2011/8/29/how_to_interview_well_at/</guid>
      <description>&lt;p&gt;Some friends of mine have been interviewing at Google and I've been helping them prepare. After some practice interviews, I drew up this flowchart for them to take with them (mentally) to the interviews.&lt;/p&gt;&lt;p&gt;Google uses &quot;oral exam&quot; type interviews:&lt;/p&gt;&lt;ul&gt;&lt;li&gt; The &lt;a href=&quot;http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html&quot;&gt;best preparation guide is by Steve Yegge&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;You can pretty much ignore all the official guides that Google provides.&lt;/li&gt;&lt;li&gt;Expect tough questions of the type that you would have received in your advanced CS classes.&lt;/li&gt;&lt;li&gt;You can also mine programming contests for good questions.&lt;/li&gt;&lt;li&gt;Another good source of questions is &lt;a href=&quot;http://www.mathnews.uwaterloo.ca/Issues/mn10704/googlequestions.php&quot;&gt;this &lt;em&gt;math&lt;/em&gt;News question list&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;For another strategy, pull out your copy of &lt;a href=&quot;http://en.wikipedia.org/wiki/Introduction_to_Algorithms&quot;&gt;CLR(S)&lt;/a&gt; (you do have a copy, right?) and re-learn everything. It's all fair game in a google interview.&lt;/p&gt;&lt;p&gt;After you start reviewing, you must do practice interviews. Invite a friend over to ask you questions. Here is what they have to do:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Pick a challenging question and read it to you.&lt;/li&gt;&lt;li&gt;Not give you any help at all. &lt;/li&gt;&lt;li&gt;Ask for a solution in pseudo-code. When you provide it, ask for the &lt;a href=&quot;http://en.wikipedia.org/wiki/Big_O_notation&quot;&gt;order of magnitude runtime&lt;/a&gt; analysis.&lt;/li&gt;&lt;li&gt;If you make a mistake, after a while, they should say &quot;are you sure that's correct?&quot;&lt;/li&gt;&lt;li&gt;If you don't give the optimal solution, they should let you develop it, and when you're done, say &quot;do you think there's a better way to do it?&quot;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Believe it or not, interviewing someone isn't a fun as you think, so provide them with beer and/or pizza. Meanwhile you must do your work on a whiteboard. If you don't have one, use a flip-chart or as a last resort paper.&lt;/p&gt;&lt;p&gt;Trust me, answering questions in real time on a white board isn't like doing them in your head. You must practice this or you're going to mess up the interview. Practice with a friend!&lt;/p&gt;&lt;p&gt;Finally, use the interview flowchart to answer the questions:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The first, simplest solution just has to work. Don't worry about runtime at this point.&lt;/li&gt;&lt;li&gt;Start with pseudocode. Only real code if they ask for it.&lt;/li&gt;&lt;li&gt;Do a bunch of examples. Make up some sample data and run through it by hand. This will help you understand the problem better, even if you think you already do.&lt;/li&gt;&lt;li&gt;Once you complete a simple (slow) solution, prove it works and then move on to making it faster.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you do well, the interviewer will tell you you're done before you run out of time. Good luck!&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a807060&gt;">#&lt;Tag:0x7f278a807060&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a806f98&gt;">#&lt;Tag:0x7f278a806f98&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a806ed0&gt;">#&lt;Tag:0x7f278a806ed0&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a806e08&gt;">#&lt;Tag:0x7f278a806e08&gt;</category>
    </item>
    <item>
      <title>Scientific American infographics or chartjunk?</title>
      <link>http://simonwoodside.com/weblog/2011/7/29/scientific_american_infographics_or_chartjunk/</link>
      <pubDate>Fri, 29 Jul 2011 20:35:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2011/7/29/scientific_american_infographics_or_chartjunk/</guid>
      <description>&lt;p&gt;This data graphic isn't just crazy, it's misleading.&lt;/p&gt;&lt;p&gt;Enhanced information graphics are part &lt;a href=&quot;http://www.scientificamerican.com/&quot;&gt;Scientific American&lt;/a&gt; magazine's refresh effort. They probably feel the pressure from &lt;a href=&quot;http://seedmagazine.com/&quot;&gt;Seed&lt;/a&gt; magazine's &lt;a href=&quot;http://scimaps.org/static/images/SciMethod.jpg&quot;&gt;great imagery&lt;/a&gt;. Right now they're they're just flailing around and showing how to do it wrong.&lt;/p&gt;&lt;p&gt;When I first looked &quot;&lt;a href=&quot;http://www.scientificamerican.com/article.cfm?id=babys-life-mothers-schooling&quot;&gt;Baby's Life, Mother's Schooling&lt;/a&gt;&quot; I thought it was a periodic table of the elements with psychedelic colours. My first intuition was the blue arrows would show the increase in child survival in each country as mother's education grew. But the colour gradients and line thickness changes confused me.&lt;/p&gt;&lt;p&gt;So I read the accompanying text. It purports to explain:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&quot;Mortality drops in proportion to the years of schooling that women attain &#8230; as seen above in each rising line.&quot;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;(this is wrong).&lt;/p&gt;&lt;p&gt;The legend clarifies what the colour gradients mean. It seems that the thickness and colour of each line shows the rate of infant mortality. The rising arrow, on the other hand,&amp;#160;shows how much, between 1970 and 2009, education levels have gotten better for women. That's not what was advertised.&lt;/p&gt;&lt;p&gt;I thought I was looking at improvements in child health, not improvements in parental schooling. Where's the real data? Try to read the thickness of each line from left to right. It's not easy to quantify the thickness change by eye, and yet this is the key chart data.&lt;/p&gt;&lt;p&gt;Examples:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Things seem to be going well in Guyana. But in fact, the change in infant survival has been minimal. Line thickness stays the same.&lt;/li&gt;&lt;li&gt;Yemen appears to be doing poorly, but in fact, infant survival got better, even as women's education stagnated, contradicting the central theme. Line thickness decreases, even though the angle is flat.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;a href=&quot;http://www.scientificamerican.com/article.cfm?id=babys-life-mothers-schooling&quot;&gt;(See the full chart.)&lt;/a&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;The irrelevant time data obscures the relevant correlation data. On the basis of this evidence, I claim that the chart is not only ugly but actually misleading.&lt;/p&gt;&lt;p&gt;In addition to these massive flaws there are also some only major flaws such as:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The table of elements style obscures the geographic layout.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;The grid layout distorts actual continent shapes beyond identification.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;The colours surrounding each continent are unnecessary non-data ink and clash with the data colours.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;The extra world map in the legend adds to the confusion about geography.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Since the arrows point  up, the title should say that &quot;child survival rates go up&quot; rather than mortality going down.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;That's a load of complaining, and it would be inappropriate if I didn't end by showing how to fix it. So. If I had been involved in the editorial design, I would have suggested that the artist replace the grid with a real world map, which can easily contain the data elements in free-form layout on top of the relevant country. Next, I would have made each arrow a mini-graph keyed to education in the X dimension and survival in the Y dimension. I would have calmed or eliminated the colouring, since it adds no information.&lt;/p&gt;&lt;p&gt;Multivariate charts are tough to implement, all infographic designers are aware of that. However, that's no excuse. Scientific American should be a beacon of good data graphics, not a disseminator of &lt;a href=&quot;http://en.wikipedia.org/wiki/Chartjunk&quot;&gt;chartjunk&lt;/a&gt;. They need to get their game in shape before they consider themselves serious purveyors of data visualizations.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a800c60&gt;">#&lt;Tag:0x7f278a800c60&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a800b98&gt;">#&lt;Tag:0x7f278a800b98&gt;</category>
    </item>
    <item>
      <title>Amazing comment spam</title>
      <link>http://simonwoodside.com/weblog/2011/7/24/amazing_comment_spam/</link>
      <pubDate>Sun, 24 Jul 2011 18:24:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2011/7/24/amazing_comment_spam/</guid>
      <description>&lt;p&gt;I got some really awesome comment spam recently. Here's an example, from my post on &lt;a href=&quot;http://simonwoodside.com/weblog/2011/2/13/cs_rap_geeksta_rap_nerdcore/&quot;&gt;Nerdcore music&lt;/a&gt; (I deleted the comment because it contained a spam link):&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;LOL. I think you may have missed your calling. What you need to do now is get some oversized pants and some dark shades. Add a little bling, and they go on tour. You'll pull geeks out of the woodwork. Heck, I bet you could fill a decent sized coffee shop. On second thought, maybe you should stick to your day job.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;If this was written by a human, they put some actual thought and energy into it. If it was written by a chatterbot, I'm seriously impressed. Either way, great work, whoever you are!&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a7fb760&gt;">#&lt;Tag:0x7f278a7fb760&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a7fb698&gt;">#&lt;Tag:0x7f278a7fb698&gt;</category>
    </item>
    <item>
      <title>How to buy speakers</title>
      <link>http://simonwoodside.com/weblog/2011/6/3/how_to_buy_speakers/</link>
      <pubDate>Fri, 03 Jun 2011 23:42:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2011/6/3/how_to_buy_speakers/</guid>
      <description>&lt;p&gt;A friend just asked me for some advise on buying speakers &#8212; should she get Bose or Paradigm? Well, I had a few words to about that, so here's my response:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Here's an answer that's probably much longer than you wanted but you've hit a personal obsession! Maybe I'll turn this into a blog post :-)&lt;/p&gt;&lt;p&gt;I'm going to throw you a curveball with a totally unorthodox opinion. Speakers are funny, there's no trade secrets or patents that big brands have to make better speakers. It's basically heavy metal and the more expensive the components the better the speaker. And the components are all commodity parts, so big companies have no real edge or benefit. Ads will tout the benefit of odd designs and so on but really what you want is a big, heavy box with good metal inside. MDF (yes, fibreboard) is a great material for the case because it doesn't vibrate.&lt;/p&gt;&lt;p&gt;But&amp;mdash;if you get a good pair with a good system, you're going to &lt;strong&gt;hear the difference&lt;/strong&gt; and you'll never go back!&lt;/p&gt;&lt;p&gt;I would stay away from the big brands, because you're paying for marketing, not parts. Bose spends a ton amount of money to convince people that their speakers are awesome, so when you buy the speaker, you're paying for all that marketing. They also use tricks like compression and bass boosting that psychologically make people think it &quot;sounds better&quot; or louder but break down the fidelity of the audio to the original recording. If you want to stick with a known name try B&amp;amp;W.&lt;/p&gt;&lt;p&gt;But you don't need or necessarily want to get a brand name. Instead go for &lt;strong&gt;some tiny company in some guy's shed&lt;/strong&gt;. A friend of mine bought a pair of speakers made by a guy in a shed in Hamilton and they're awesome. My speakers are &lt;a href=&quot;http://audioengineusa.com/Store/Audioengine-5&quot;&gt;AudioEngine 5&lt;/a&gt;'s and they're made by some tiny company in Mississippi and they're very very good. They put the system in my car to shame. Guys in sheds make great speakers because they buy the best parts and have no overhead and there's no magic&amp;mdash;what you want is totally dedicated craftsmanship.&lt;/p&gt;&lt;p&gt;When you decide to invest in speakers the first thing to do is head to a proper audiophile level shop and listen to as many as you can. Check out for example &lt;a href=&quot;http://www.alternativeaudio.ca/&quot;&gt;Alternative Audio&lt;/a&gt;. Turn the system way up to find out what happens to the sound. There's big difference in how they sound just like different instrument makers (they are effectively instruments). For example here's &lt;a href=&quot;http://forums.audioholics.com/forums/showthread.php?t=11123&quot;&gt;a comparison of two brands on audioholics&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;The audio forums are the best place to get unbiased opinions from people who really know what they're talking about. Most reviewers (like on gadget sites) will be judging based on features which don't matter. What you want to know is, do people who have good ears think they sound good. One fun forum for people who really know their hardware (like which crossover is best?) is &lt;a href=&quot;http://www.diyaudio.com/forums/multi-way/&quot;&gt;diyaudio&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;You can also trust true audiophile sites because those people are just obsessed. For example have a look at &lt;a href=&quot;http://www.stereophile.com/&quot;&gt;stereophile.com&lt;/a&gt;. They have &lt;a href=&quot;http://www.stereophile.com/category/budget-component-reviews/&quot;&gt;just reviewed for example&lt;/a&gt; a pair of bookshelf speakers from a Canadian company called Totem Dreamcatcher. They loved them and they're about $600.&lt;/p&gt;&lt;p&gt;You should be able to get a really good set for under $1000. Don't go higher because you get into stupid money territory and the law of diminishing returns kicks in real fast. Also seriously consider buying used, because they don't degrade over time. No moving parts, and the good ones have good components. You can save a ton of money used. &lt;a href=&quot;http://cgi.audiogon.com/cgi-bin/cl.pl?spkrfull&amp;amp;1312119968&quot;&gt;For example look on Audiogon&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;If you want to read a really awesome and trippy description of one person's highly convincing theory, check out &lt;a href=&quot;http://www.mother-of-tone.com/mother.htm&quot;&gt;Mother of Tone&lt;/a&gt; ... it's worth checking out as a musician and makes a lot of sense. Start back at the beginning if you have time.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Regarding surround&lt;/strong&gt;: first get a good stereo pair, and then add the other three, which don't matter nearly as much, simply to add the surround experience.&lt;/p&gt;&lt;p&gt;Finally, &lt;strong&gt;speakers are only a part of the chain&lt;/strong&gt;. All audio hardware follows the general rules above: there's no special magic, don't believe what brands tell you, it's all about components, heavy metal is good, listen before you buy.&lt;/p&gt;&lt;p&gt;In summary &lt;strong&gt;there is no &quot;best speaker manufacturer&quot;&lt;/strong&gt;. Go to a high end shop, listen and find out what you like, and then buy used or online from a guy in a shed.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;(Pictured is Altec Lancing Voice of the Theatre&amp;mdash;a true classic)&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a7f6260&gt;">#&lt;Tag:0x7f278a7f6260&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a7f6198&gt;">#&lt;Tag:0x7f278a7f6198&gt;</category>
    </item>
    <item>
      <title>How to embed a 480p YouTube video</title>
      <link>http://simonwoodside.com/weblog/2011/4/19/how_to_embed_a_480p/</link>
      <pubDate>Tue, 19 Apr 2011 22:17:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2011/4/19/how_to_embed_a_480p/</guid>
      <description>&lt;p&gt;Google doesn't provide any &quot;official&quot; way to embed a YouTube video in 480p. It always drops you down to 360p by default, and that just looks crap. You can embed in HD so why not 480p? No one knows. But don't despair, there is a way!&lt;/p&gt;&lt;p&gt;Here's some code for you:&lt;/p&gt;&lt;pre&gt;&amp;lt;object width=&quot;853&quot; height=&quot;505&quot;&amp;gt;
  &amp;lt;param value=&quot;http://www.youtube.com/v/MOVIE_ID&amp;amp;amp;hl=en_US&amp;amp;amp;fs=1&amp;amp;amp;rel=0&quot; name=&quot;movie&quot;&amp;gt;
  &amp;lt;param value=&quot;true&quot; name=&quot;allowFullScreen&quot;&amp;gt;
  &amp;lt;param value=&quot;always&quot; name=&quot;allowscriptaccess&quot;&amp;gt;
  &amp;lt;embed width=&quot;853&quot; height=&quot;505&quot; allowfullscreen=&quot;true&quot;
    allowscriptaccess=&quot;always&quot;
    type=&quot;application/x-shockwave-flash&quot;
    src=&quot;http://www.youtube.com/v/MOVIE_ID&amp;amp;amp;hl=en_US&amp;amp;amp;fs=1&amp;amp;amp;rel=0&quot;&amp;gt;
&amp;lt;/object&amp;gt;&lt;/pre&gt;&lt;p&gt;That will give you an &quot;HD width&quot; 480p video. Just change &quot;MOVIE_ID&quot; to the ID of your video (e.g. &quot;J-lHxxToCfo&quot;) in both places. The width of the embed will be 853px, which is 16:9 for HD video.&lt;/p&gt;&lt;p&gt;What if your video is 4:3, i.e. 640x480? I can't find any clean way to embed at exactly that size, if you use the above code you'll get black bars on either side. However you can use a negative margin to get a box of the right shape. Just wrap your object like this:&lt;/p&gt;&lt;pre&gt;&amp;lt;div style=&quot;width: 640px; overflow: hidden;&quot;&amp;gt;
  &amp;lt;div style=&quot;margin-left: -107px;&quot;&amp;gt;
    &amp;lt;object etc ... &amp;gt;&amp;lt;/object&amp;gt;
  &amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;&lt;/pre&gt;&lt;p&gt;The controls will go off the screen but at least the user will still be able to click the centre of the video to start and stop it. Here's an example:&lt;/p&gt;&lt;div style=&quot;width: 640px; overflow: hidden; z-index: 999;&quot;&gt;&lt;div style=&quot;margin-left: -107px;&quot;&gt;&lt;object height=&quot;505&quot; width=&quot;853&quot;&gt;
  &lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/J-lHxxToCfo&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;rel=0&quot; /&gt;
  &lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;
  &lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot; /&gt;
  &lt;embed src=&quot;http://www.youtube.com/v/J-lHxxToCfo&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;rel=0&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; height=&quot;505&quot; width=&quot;853&quot; /&gt;&lt;/object&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;My column width is less than 640px but hopefully you get the idea.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a960678&gt;">#&lt;Tag:0x7f278a960678&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278a963030&gt;">#&lt;Tag:0x7f278a963030&gt;</category>
    </item>
    <item>
      <title>CS Rap / Geeksta Rap / Nerdcore</title>
      <link>http://simonwoodside.com/weblog/2011/2/13/cs_rap_geeksta_rap_nerdcore/</link>
      <pubDate>Sun, 13 Feb 2011 22:50:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2011/2/13/cs_rap_geeksta_rap_nerdcore/</guid>
      <description>&lt;p&gt;I'm not convinced by gamer nerdcore but good CS Geeksta Rap is cool. Finally some street beats that talk to me!&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=Fow7iUaKrq4&quot;&gt;Monzy's Kill -9 (video)&lt;/a&gt; is pretty entertaining. Check out &lt;a href=&quot;http://www.youtube.com/watch?v=B-m6JDYRFvk&quot;&gt;Dale Chase Coder Girl&lt;/a&gt;. &quot;She's not another shallow copy I can sudo&quot; heheh.&lt;/p&gt;&lt;p&gt;I found a few new lines in a dream recently. Don't know if they'll ever fit into a rap though.&lt;/p&gt;&lt;pre&gt;Java or Scala it doesn't matter to me
If you want I'll even write your app in PHP

10 PRINT &quot;HELLO&quot;
20 GOTO ONE-OH

Your bytecode is subject to my interpretation

Use my RJ-45 I'll put a packet right into your ass

If you don't do what I want then I will fork your git
I'm fully dedicated but you just can't commit&lt;/pre&gt;</description>
    </item>
    <item>
      <title>Why condition your battery once when you can do it three times?</title>
      <link>http://simonwoodside.com/weblog/2010/10/13/why_condition_your_battery_once/</link>
      <pubDate>Wed, 13 Oct 2010 21:46:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/10/13/why_condition_your_battery_once/</guid>
      <description>&lt;p&gt;MacBook users have started to discover over the last few years that their batteries can take a total nosedive into uselessness in just a few months. The first battery on my 2008 MacBook Pro was dead by the end of 2009, flat dead, and out of warranty too. Damn. Cause of death? Lack of &quot;battery conditioning&quot; also known as &quot;calibration&quot;.&lt;/p&gt;&lt;p&gt;If you want to know how to calibrate your battery, you can refer to this &lt;a href=&quot;http://docs.info.apple.com/article.html?path=mac/10.4/en/mh2339.html&quot;&gt;hard to find guide from Apple&lt;/a&gt;:&lt;/p&gt;&lt;blockquote&gt;
            &lt;h2&gt;To calibrate the battery:&lt;/h2&gt;
            &lt;ol&gt;&lt;li&gt;Plug in the MagSafe power adapter and fully charge 
the MacBook or MacBook Pro battery until the light on the MagSafe 
connector changes to green and the Battery icon in the menu bar 
indicates that the battery is fully charged.  &lt;/li&gt;&lt;li&gt;Allow the battery to rest in the fully charged state 
for two hours or longer. You may use your computer during this time as 
long as the power adapter is plugged in.  &lt;/li&gt;&lt;li&gt;Disconnect the power adapter with the computer on and
 start using it with battery power. When the battery's charge gets low, 
you&#8217;ll see the low battery warning dialog on the screen.  &lt;/li&gt;&lt;li&gt;Continue to keep your computer turned on until it 
goes to sleep. Save your work and close all applications when the 
battery's charge gets low and before the computer goes to sleep.  &lt;/li&gt;&lt;li&gt;Turn off the computer or allow it to sleep for five hours or longer.&lt;/li&gt;&lt;li&gt;Reconnect the power adapter and leave it connected 
until the battery is fully charged. You may use your computer during 
this time.  &lt;/li&gt;&lt;/ol&gt;
         &lt;/blockquote&gt;&lt;p&gt;Pretty easy to understand, right? Yeah, the only problem is that even though you're supposed to this every month or two, there's no facility on the mac that actually, you know, prompts you to do it. Nothing, nada, zap diddly doo. You'd think that Apple with their vaunted usability standards would pop up a message at the right time saying &quot;hey, now would be a good time to condition the old battery, here's how to do it&quot;.&lt;/p&gt;&lt;p&gt;Also, Apple's instructions are missing two other key pieces of information. The first is that you should immediately download a wonderful app called &lt;a href=&quot;http://www.coconut-flavour.com/coconutbattery/&quot;&gt;Coconut Battery&lt;/a&gt;. Go ahead, I'll wait. It will tell you how crap your battery is and you can save the data to get a history over time.&lt;/p&gt;&lt;p&gt;Second is that that condition is not something you can overdo. Don't just do it once. Do it twice, three times even. Keep doing it until you stop seeing&amp;#160; capacity gains in coconut battery. Most recently, my first condition went from 71% to 76%, and the second brought me up to 80%. I'm going to see how high I can get.&lt;/p&gt;&lt;p&gt;All in all this is a bit of a failure on Apple's part, and it makes you wonder if perhaps they are making a load of money from selling replacement batteries. It doesn't seem in character for the company. More likely, they just haven't put the time into designing a proper monitoring system that detects when you need to condition. Hopefully we'll get that soon.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278af54ac0&gt;">#&lt;Tag:0x7f278af54ac0&gt;</category>
    </item>
    <item>
      <title>Warning: May Cause Earthquakes</title>
      <link>http://simonwoodside.com/weblog/2010/9/13/warning_may_cause_earthquakes/</link>
      <pubDate>Mon, 13 Sep 2010 14:04:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/9/13/warning_may_cause_earthquakes/</guid>
      <description>&lt;p&gt;It seems like things that cause earthquakes are the ultimate in evil or hyperbole. But now we've achieved that end: human technology can cause earthquakes. Hurray!&lt;/p&gt;&lt;p&gt;A recent Scientific American article discussed a new way to generate free power called &lt;a href=&quot;http://en.wikipedia.org/wiki/Enhanced_geothermal_system&quot;&gt;enhanced geothermal&lt;/a&gt;. It works great, there's just one minor drawback, it causes constant earthquakes. The project in Oregon is far enough from settlements that it merely annoys the neighbours with the small rattles. But still. A technology that causes earthquakes? That's fantastic!&lt;/p&gt;&lt;p&gt;Here's another one: geologists are worried that Taipei 101 may have torqued the earth so much that &lt;a href=&quot;http://www.guardian.co.uk/environment/2005/dec/02/naturaldisasters.climatechange&quot;&gt;it opened up a new fault&lt;/a&gt;. Cool! The residents of the building will be OK because it's highly earthquake resistant.&lt;/p&gt;&lt;p&gt;All new technology presents benefits and dangers. People say that the atomic bomb is purely a danger. But think about the upside. Major international conflicts have ceased because they're too dangerous. And if we ever find a giant asteroid coming our way, we're probably going to need nukes to blow it up, right?&lt;/p&gt;&lt;p&gt;So I think we can actually measure our progress by the sheer destructive power of our technologies. Now that we can cause earthquakes, can the colonization of other planets be far away?&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278af47b40&gt;">#&lt;Tag:0x7f278af47b40&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278af47a78&gt;">#&lt;Tag:0x7f278af47a78&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278af479b0&gt;">#&lt;Tag:0x7f278af479b0&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278af47898&gt;">#&lt;Tag:0x7f278af47898&gt;</category>
    </item>
    <item>
      <title>How Apple could fix Mac OS X</title>
      <link>http://simonwoodside.com/weblog/2010/5/26/what_will_mac_os_x/</link>
      <pubDate>Wed, 26 May 2010 00:01:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/5/26/what_will_mac_os_x/</guid>
      <description>&lt;p&gt;Mac OS X 10.7&amp;mdash;the OS that no one is talking about&amp;mdash;should be the next major release of the venerable Mac OS X (&lt;a href=&quot;http://en.wikipedia.org/wiki/NeXTSTEP&quot;&gt;since 1989&lt;/a&gt;!) So, what will it look like? Seems like nobody knows. All of the focus has been iPhone and iPad for so long that it seems like everyone has forgotten about the old desktop/laptop computers.&lt;/p&gt;&lt;p&gt;Frankly, although Mac OS X is easier to use than Windows or Linux, it's still not what I would call &quot;easy to use&quot;. I see not only my parents but even programmers bumble around with trying the locate the right window, the invisible application with no windows open, and lots of UI fragmentation (for example, should you have a &quot;start screen&quot;, or open a blank document, or open the last document, or what).&lt;/p&gt;&lt;p&gt;As far as things went in the past, Apple was stuck with that system. For example, if they had moved the menu bar from the top of the screen to the top of the window (like every other operating system ever) there would have been howls of protest from the Mac clan back when they introduced OS X. Believe it or not, OS X was actually a step backwards from &lt;a href=&quot;http://www.guidebookgallery.org/screenshots/openstep42&quot;&gt;OpenStep&lt;/a&gt; in many ways. Steve Jobs and the NextStep clan were forced to adopt many old Mac conventions even when they didn't work particularly well.&lt;/p&gt;&lt;p&gt;Remember that the Mac interface was designed for a strictly one-app-at-a time system. That's right, the first Macs did not have multi-tasking, not even fake &quot;&lt;a href=&quot;http://burks.bton.ac.uk/burks/foldoc/34/25.htm&quot;&gt;co-operative&lt;/a&gt;&quot; multi-tasking. So the whole idea of having menu and windows separated wasn't so confusing at first. But then &lt;a href=&quot;http://en.wikipedia.org/wiki/System_6&quot;&gt;System 6&lt;/a&gt; came along with the MultiFinder and things started to go a little wacky (and note, that was after Jobs left the company).&lt;/p&gt;&lt;p&gt;The iPhone was a blank slate, and so Jobs and the UX gurus at Apple could go back to square one and design an OS that was well and truly proper. Don't doubt that they spent many years on it prior to the public even hearing about the iPhone touch UI, probably since circa 2003, maybe sooner. There were always &lt;a href=&quot;http://www.engadget.com/2010/01/26/the-apple-tablet-a-complete-history-supposedly/&quot;&gt;tablet dreams&lt;/a&gt; circulating in the company. I had conversations about it there in 2001.&lt;/p&gt;&lt;p&gt;The blank slate meant they could get rid of all the broken things in Mac OS X. And indeed in all window-based operating systems. Like, floating windows. The original &quot;windows&quot; designs at Xerox PARC &lt;a href=&quot;http://en.wikipedia.org/wiki/Tiling_window_manager&quot;&gt;didn't float, they were just arranged in a grid&lt;/a&gt;. Much simpler to understand. And that indeed is the paradigm used on the iPad, where they are called panels instead.&lt;/p&gt;&lt;p&gt;So... what comes next? I predict that the next step for Mac OS is going to be a major revamp of the UX for desktops and laptops to bring back the best ideas from the Touch UI. I would personally be glad to see the last of the Apple Menu, the File menu, all of the submenus. Most of the Finder I could scrap as well (keep the column view of course :-). No application should ever NOT have a window visible&amp;mdash;that's just crazy. It would be nice if they could sort things out so that I don't have to care which applications are running vs. not running. Maybe they could even&amp;mdash;somehow&amp;mdash;eliminate floating windows. Maybe that's too much to ask.&lt;/p&gt;&lt;p&gt;Since they've been able to break with the past in the iPhone/iPad, I hope that they'll be able to find a way to bring the best parts of the new and integrate them with the old Mac OS X ... the user interface that hasn't changed in any major way in 20 years.&lt;/p&gt;&lt;p&gt;&lt;em&gt;(PS: and I wouldn't count on it being called 10.7 either...)&lt;/em&gt;&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278af19ec0&gt;">#&lt;Tag:0x7f278af19ec0&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278af19df8&gt;">#&lt;Tag:0x7f278af19df8&gt;</category>
    </item>
    <item>
      <title>Another job opening :-) iPhone developer &#8212; learn on the job</title>
      <link>http://simonwoodside.com/weblog/2010/5/4/another_job_opening_iphone_developer/</link>
      <pubDate>Tue, 04 May 2010 16:32:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/5/4/another_job_opening_iphone_developer/</guid>
      <description>&lt;p&gt;My iPhone custom software development business is expanding yet again and we need more part-time programmers. The &lt;a href=&quot;/weblog/2010/2/11/job_opening_iphone_parttime_contract/&quot;&gt;last round&lt;/a&gt; I hired two people, now we need more. Our recent apps include Unitron's uHear to test your hearing, OurKids, the Kik chat app, and others.&lt;/p&gt;&lt;p&gt;You must:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;know C, C++, pointers, object and object-relational patterns already&lt;/li&gt;&lt;li&gt;be ready to learn the iPhone SDK fast (we'll help)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I've personally been programming on the Cocoa SDK since 1998 back when it was called OpenStep, so if you can pick things up, we can get you up to speed in a few weeks.&lt;/p&gt;&lt;p&gt;Demonstrate your qualifications by answering 2 out of these 3 tricky questions:&lt;/p&gt;&lt;p&gt;[Question 1] (C Pointers) Here is some slightly odd C code, but it will produce an (int) result, provided that you make some small changes in order to make it compile. What is the result going to be, and why?&lt;/p&gt;&lt;pre&gt;int * a = 1990;
int result = &amp;amp;5[a];&lt;/pre&gt;&lt;p&gt;[Question 2] (Database design) Create an entity-relationship diagram for a small subset of the Facebook database. In particular, include in your diagram:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;User&lt;/li&gt;&lt;li&gt;Photo (including who is tagged in the photo)&lt;/li&gt;&lt;li&gt;Wall Post&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Focus on the relationships/associations between these three objects, and only include one or two of the most important static fields (like a person's name). Make sure to indicate the cardinality of a relationship e.g. one-to-one/one-to-many/etc.&lt;/p&gt;&lt;p&gt;To get an idea of what I'm looking for see: &lt;a href=&quot;http://en.wikipedia.org/wiki/Entity-relationship_model&quot;&gt;http://en.wikipedia.org/wiki/Entity-relationship_model&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Here's a tool you can use to draw it online: &lt;a href=&quot;http://www.gliffy.com/&quot;&gt;Gliffy&lt;/a&gt;. Then just send me a screenshot. Or feel free to use ASCII art or draw on a piece of paper and photograph/scan, as long as it's very clear.&lt;/p&gt;&lt;p&gt;[Question 3] (C++ Objects) The C++ program below has just 2 compile time errors, 1 runtime error, and there is 1 single line missing. Send us a fixed version that compiles and runs correctly. The errors will test your knowledge of object use and management in C++, and the missing line will test you on abstract/virtual inheritance.&lt;/p&gt;&lt;p&gt;SEND TO: simon@semacode.com. Include your answer(s) and some source code that you have written, whether it's open source, for assignments, for fun, or whatever.&lt;/p&gt;&lt;p&gt;REMUNERATION: Competitive.&lt;/p&gt;&lt;p&gt;MORE INFO: &lt;a href=&quot;http://simonwoodside.com/pages/consulting&quot;&gt;http://simonwoodside.com/pages/consulting&lt;/a&gt;&lt;/p&gt;&lt;p&gt;(PS Please keep the answers to yourself)&lt;/p&gt;&lt;pre&gt;//// File: futurama.cpp ////
#include &amp;lt;iostream&amp;gt;

class Drinker {
public: Drinker(); void drink( int potency ); int _numberOfDrinksSoFar;
private: virtual int cantDrinkAnyMoreThan() = 0;
}; Drinker::Drinker() { _numberOfDrinksSoFar = 0; }
class Robot : public Drinker { int cantDrinkAnyMoreThan() { return INT_MAX; } };
class Human : public Drinker {
};
void Drinker::drink( int potency ) {
&amp;#160; _numberOfDrinksSoFar += potency;
&amp;#160; if( _numberOfDrinksSoFar &amp;gt; cantDrinkAnyMoreThan() ) { std::cout &amp;lt;&amp;lt; &quot;I'm all done.&quot; &amp;lt;&amp;lt; endl; }
}

int main (int argc, char * const argv[]) {
&amp;#160; int beer = 5, coffee = 3;
&amp;#160; Human fry;
&amp;#160; Robot * bender;
&amp;#160; for( int i=0; i&amp;lt;6283; i++ ) { bender.drink(beer); }
&amp;#160; for( int i=0; i&amp;lt;100; i++ ) { fry.drink(coffee); }
&amp;#160; std::cout &amp;lt;&amp;lt; &quot;Bender: &quot; &amp;lt;&amp;lt; bender-&amp;gt;_numberOfDrinksSoFar &amp;lt;&amp;lt; &quot;&amp;#160; Fry: &quot; &amp;lt;&amp;lt; fry._numberOfDrinksSoFar &amp;lt;&amp;lt; std::endl;
&amp;#160; fry.drink(1);
&amp;#160; return 0;
}&lt;/pre&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278aee08c8&gt;">#&lt;Tag:0x7f278aee08c8&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278aee00a8&gt;">#&lt;Tag:0x7f278aee00a8&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278aedfd60&gt;">#&lt;Tag:0x7f278aedfd60&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278aedfc20&gt;">#&lt;Tag:0x7f278aedfc20&gt;</category>
    </item>
    <item>
      <title>Maybe Nokia just can't make good software?</title>
      <link>http://simonwoodside.com/weblog/2010/4/28/maybe_nokia_just_cant_make/</link>
      <pubDate>Wed, 28 Apr 2010 16:20:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/4/28/maybe_nokia_just_cant_make/</guid>
      <description>&lt;p&gt;Nokia looks to be in serious trouble. They've &lt;a href=&quot;http://www.techradar.com/news/phone-and-communications/mobile-phones/symbian-3-delayed-until-later-in-2010-685359&quot;&gt;delayed Symbian^3,&lt;/a&gt; which was supposed to be the sort or basic catch-up version of their main smartphone OS. Symbian^4 is supposed to be the move ahead again version and who knows when they'll release it. Meanwhile, Maemo or &lt;a href=&quot;http://meego.com/&quot;&gt;whatever they're calling it these days&lt;/a&gt; is more like vaporware even though theoretically it's out on a couple of devices.&lt;/p&gt;&lt;p&gt;Hey, you know what? Maybe Nokia just can't write good software.&lt;/p&gt;&lt;p&gt;Think about it ... when was the last great release of software from Nokia. The first version of Symbian S60. Which, if you remember your history, was actually written by &lt;a href=&quot;http://en.wikipedia.org/wiki/Psion#Recent_developments&quot;&gt;PSION&lt;/a&gt;. Symbian has not improved in any major way since then. The first Symbian smart phones were epic&amp;mdash;the &lt;a href=&quot;http://en.wikipedia.org/wiki/Nokia_7650&quot;&gt;Nokia 7650&lt;/a&gt; was way ahead of its time in 2002 and make Nokia the smartphone kings. But after that they didn't seem to be able to put out a really substantial upgrade.&lt;/p&gt;&lt;p&gt;Big companies have a long history of not being able to complete operating system upgrades. Back in the late 80s early 90s Apple managed to fail to create a new OS not once but twice&amp;mdash;&lt;a href=&quot;http://lowendmac.com/orchard/05/1026.html&quot;&gt;Pink&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Copland_%28operating_system%29&quot;&gt;Copland&lt;/a&gt;&amp;mdash;were both epic failures of massive proportion. Making software is hard.&lt;/p&gt;&lt;p&gt;The question is, can Nokia learn how to do it. One option - which I have advocated in the past - is to simply ditch Symbian and get on to the Maemo train full stop. But it's not clear if Nokia has the guts to do something so drastic.&lt;/p&gt;&lt;p&gt;Well, they'd better grow some, because they haven't put out a competitive smartphone since the &lt;a href=&quot;http://en.wikipedia.org/wiki/Nokia_N95&quot;&gt;N95&lt;/a&gt; three years ago. Their current offerings are jokes. Android, Blackberry and iPhone are way ahead of them. And, the investors are starting to figure it out. Hopefully Nokia's shareholders will beat them up until they take the drastic measure before it's too late.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ae9dac8&gt;">#&lt;Tag:0x7f278ae9dac8&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ae9bb60&gt;">#&lt;Tag:0x7f278ae9bb60&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ae9afa8&gt;">#&lt;Tag:0x7f278ae9afa8&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ae9a030&gt;">#&lt;Tag:0x7f278ae9a030&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ae99f68&gt;">#&lt;Tag:0x7f278ae99f68&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ae995e0&gt;">#&lt;Tag:0x7f278ae995e0&gt;</category>
    </item>
    <item>
      <title>Review of Resonance by Daniel Stepp (mac os x/windows)</title>
      <link>http://simonwoodside.com/weblog/2010/4/25/review_of_resonance_by_daniel/</link>
      <pubDate>Sun, 25 Apr 2010 21:51:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/4/25/review_of_resonance_by_daniel/</guid>
      <description>&lt;p&gt;Once upon a time while tripping across the 'net I stumbled upon a piece of software called &lt;a href=&quot;http://resonance-asm.com&quot;&gt;Resonance&lt;/a&gt;. The web site is cryptic:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;resonance includes a mathematically-precise binaural tone generator, capable of producing fifteen hundred unique binaural frequencies.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;What is a binaural tone? Why would I want to listen to one? I downloaded it to find out.&lt;/p&gt;&lt;p&gt;The interface is equally mysterious, but fortunately it has some presets which immerse you into audio soundscape that defies clear description. Those binaural tones were pulsating, interacting stereo waves that gave me a tingly feeling, the kind of feeling that you get when you're learning something profound. Maybe some people would call it a spiritual feeling.&lt;/p&gt;&lt;p&gt;If you look up &lt;a href=&quot;http://en.wikipedia.org/wiki/Binaural_beats&quot;&gt;binaural tones, the great wiki&lt;/a&gt; has some descriptions of odd and perhaps unbelievable effects they can have on your body and brain. I don't know if I believe a word of it. But I do believe there is something odd happening when I listed to Resonance.&lt;/p&gt;&lt;p&gt;The author does because he created the program to help him concentrate:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;I personally use it when I am programming or writing, basically whenever I need a lot of concentration. Others use it for relaxation, sleep aid, meditation, yoga, background noise...etc. [via email]&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;He also pointed out that for best effect you should use headphones with no other sound or music playing. Even though, Resonance does include a variety of natural sounds effects from the &lt;a href=&quot;http://faculty.virginia.edu/fieldrecording/&quot;&gt;Earth Recordings library&lt;/a&gt;&amp;mdash;which accounts for the large size.&lt;/p&gt;&lt;p&gt;This is definitely an odd program, but I have a feeling that it would be a great candidate for conversion to the iPhone, where I think it could gain a cult following.&lt;/p&gt;&lt;p&gt;Bottom line: if you're interested in audio phenomena or unusual interface design, check it out. &lt;a href=&quot;http://resonance-asm.com&quot;&gt;Resonance&lt;/a&gt;.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278adefb30&gt;">#&lt;Tag:0x7f278adefb30&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278adef4f0&gt;">#&lt;Tag:0x7f278adef4f0&gt;</category>
    </item>
    <item>
      <title>Bug Points</title>
      <link>http://simonwoodside.com/weblog/2010/3/27/bug_points/</link>
      <pubDate>Sat, 27 Mar 2010 03:34:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/3/27/bug_points/</guid>
      <description>&lt;p&gt;An incomplete list.&lt;/p&gt;&lt;p&gt;Per:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;line of code: 1 point&lt;/li&gt;&lt;li&gt;line of generated code: 5 points&lt;/li&gt;&lt;li&gt;repeated line of code: 50 points&lt;/li&gt;&lt;li&gt;repeated comment: 10 points&lt;/li&gt;&lt;li&gt;TODO note: -10 points&lt;/li&gt;&lt;li&gt;comment explaining hack: -10 points&lt;/li&gt;&lt;li&gt;hack: 50 points&lt;/li&gt;&lt;li&gt;clever hack: -50 points&lt;/li&gt;&lt;li&gt;memory leak: 10 points&lt;/li&gt;&lt;li&gt;ignored warning: 100-1000 points&lt;/li&gt;&lt;li&gt;public but should be private: 100 points&lt;/li&gt;&lt;li&gt;unreadable line of code: 50 points&lt;/li&gt;&lt;li&gt;whitespace at the end of a line of code: 15 points&lt;/li&gt;&lt;li&gt;a tab: 25 points&lt;/li&gt;&lt;li&gt;incorrect indentation: 5 points&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Compare: &lt;a href=&quot;http://www.google.com/search?q=technical+debt&amp;amp;hl=en&quot;&gt;technical debt&lt;/a&gt;.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278adccb58&gt;">#&lt;Tag:0x7f278adccb58&gt;</category>
    </item>
    <item>
      <title>Job Opening: iPhone part-time / contract coder wanted -- we'll teach you</title>
      <link>http://simonwoodside.com/weblog/2010/2/11/job_opening_iphone_parttime_contract/</link>
      <pubDate>Thu, 11 Feb 2010 03:07:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/2/11/job_opening_iphone_parttime_contract/</guid>
      <description>&lt;p&gt;My iPhone custom software development business is expanding and we need more part-time programmers. Our recent apps include Unitron's uHear to test your hearing, OurKids, an upcoming app for Kik, and others.&lt;/p&gt;&lt;p&gt;You must:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;know C, C++, pointers, object and object-relational patterns already&lt;/li&gt;&lt;li&gt;be ready to learn the iPhone SDK fast (we'll help)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I've personally been programming on the Cocoa SDK since 1998 back when it was called OpenStep, so if you can pick things up, we can get you up to speed in a few weeks.&lt;/p&gt;&lt;p&gt;Demonstrate your qualifications by answering 2 out of these 3 tricky questions:&lt;/p&gt;&lt;p&gt;[Question 1] (C Pointers) Here is some slightly odd C code, but it will produce an (int) result, provided that you make some small changes in order to make it compile. What is the result going to be, and why?&lt;/p&gt;&lt;pre&gt;int * a = 1990;
int result = &amp;amp;5[a];&lt;/pre&gt;&lt;p&gt;[Question 2] (ORM) Draw an relational/DB model that would work for the Twitter database or the Facebook database. You don't have to cover all of the features, just the basics. You can use ascii art if you like.&lt;/p&gt;&lt;p&gt;[Question 3] (C++ Objects) The C++ program below has just 2 compile time errors, 1 runtime error, and there is 1 single line missing. Send us a fixed version that compiles and runs correctly. The errors will test your knowledge of object use and management in C++, and the missing line will test you on abstract/virtual inheritance.&lt;/p&gt;&lt;p&gt;SEND TO: simon@semacode.com. Include your answer(s) and some source code that you have written, whether it's open source, for assignments, for fun, or whatever.&lt;/p&gt;&lt;p&gt;REMUNERATION: Competitive.&lt;/p&gt;&lt;p&gt;MORE INFO: &lt;a href=&quot;http://www.simonwoodside.com/pages/consulting&quot;&gt;http://simonwoodside.com/pages/consulting&lt;/a&gt;&lt;/p&gt;&lt;p&gt;(PS Please keep the answers to yourself)&lt;/p&gt;&lt;pre&gt;//// File: futurama.cpp ////
#include &amp;lt;iostream&amp;gt;

class Drinker {
public: Drinker(); void drink( int potency ); int _numberOfDrinksSoFar;
private: virtual int cantDrinkAnyMoreThan() = 0;
}; Drinker::Drinker() { _numberOfDrinksSoFar = 0; }
class Robot : public Drinker { int cantDrinkAnyMoreThan() { return INT_MAX; } };
class Human : public Drinker {
};
void Drinker::drink( int potency ) {
  _numberOfDrinksSoFar += potency;
  if( _numberOfDrinksSoFar &amp;gt; cantDrinkAnyMoreThan() ) { std::cout &amp;lt;&amp;lt; &quot;I'm all done.&quot; &amp;lt;&amp;lt; endl; }
}

int main (int argc, char * const argv[]) {
  int beer = 5, coffee = 3;
  Human fry;
  Robot * bender;
  for( int i=0; i&amp;lt;6283; i++ ) { bender.drink(beer); }
  for( int i=0; i&amp;lt;100; i++ ) { fry.drink(coffee); }
  std::cout &amp;lt;&amp;lt; &quot;Bender: &quot; &amp;lt;&amp;lt; bender-&amp;gt;_numberOfDrinksSoFar &amp;lt;&amp;lt; &quot;  Fry: &quot; &amp;lt;&amp;lt; fry._numberOfDrinksSoFar &amp;lt;&amp;lt; std::endl;
  fry.drink(1);
  return 0;
}&lt;/pre&gt;&lt;p&gt;(Update Feb 14: updated code to make my intentions clearer)&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278adabca0&gt;">#&lt;Tag:0x7f278adabca0&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278adab930&gt;">#&lt;Tag:0x7f278adab930&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278adab4a8&gt;">#&lt;Tag:0x7f278adab4a8&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278adab070&gt;">#&lt;Tag:0x7f278adab070&gt;</category>
    </item>
    <item>
      <title>Real or Fake?</title>
      <link>http://simonwoodside.com/weblog/2010/2/5/real_or_fake/</link>
      <pubDate>Fri, 05 Feb 2010 01:37:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/2/5/real_or_fake/</guid>
      <description>&lt;p&gt;It's getting harder to tell. Be sure to watch it in fullscreen:&lt;/p&gt;&lt;object height=&quot;225&quot; width=&quot;400&quot;&gt;&lt;param name=&quot;allowfullscreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot; /&gt;&lt;param name=&quot;movie&quot; value=&quot;http://vimeo.com/moogaloop.swf?clip_id=7809605&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1&quot; /&gt;&lt;embed src=&quot;http://vimeo.com/moogaloop.swf?clip_id=7809605&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; height=&quot;225&quot; width=&quot;400&quot; /&gt;&lt;/object&gt;&lt;p&gt;&lt;a href=&quot;http://vimeo.com/7809605&quot;&gt;The Third &amp;amp; The Seventh&lt;/a&gt; from &lt;a href=&quot;http://vimeo.com/user1337612&quot;&gt;Alex Roman&lt;/a&gt; on &lt;a href=&quot;http://vimeo.com&quot;&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Not only that but Alex Roman did a fantastic job on this. &lt;a href=&quot;http://www.thirdseventh.com/&quot;&gt;The Third &amp;amp; the Seventh homepage&lt;/a&gt;. Thanks to &lt;a href=&quot;http://tinselman.typepad.com/tinselman/2010/01/real-fake-worlds.html&quot;&gt;Tinselman&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Previous related entry: &lt;a href=&quot;http://simonwoodside.com/weblog/2006/5/21/fake_or_real/&quot;&gt;Fake or Real?&lt;/a&gt;&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ad5b3e0&gt;">#&lt;Tag:0x7f278ad5b3e0&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ad5b1b0&gt;">#&lt;Tag:0x7f278ad5b1b0&gt;</category>
    </item>
    <item>
      <title>14 Errors in anti-Light Rail thinking</title>
      <link>http://simonwoodside.com/weblog/2010/2/1/errors_in_antilight_rail_thinking/</link>
      <pubDate>Mon, 01 Feb 2010 21:46:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/2/1/errors_in_antilight_rail_thinking/</guid>
      <description>&lt;p&gt;I'm part of a group called &lt;a href=&quot;http://hamiltonlightrail.com/&quot;&gt;Hamilton Light Rail&lt;/a&gt; which has been pushing for the development of a european-style light rail (aka Tram) in Hamilton. Recently the Hamilton newspaper &lt;a href=&quot;http://www.thespec.com/article/714840&quot;&gt;The Spectator published &lt;/a&gt;&lt;a href=&quot;http://www.thespec.com/article/714840&quot;&gt;an anti-LRT rant&lt;/a&gt; by a businessman who owns, among other things, a car wash. His opinion piece is so full of factual errors that I couldn't resist making a list. I actually found 14 factual errors (that is errors that require no argument, simply a correction of information from easy to access sources). So, without further adieu (sic) here it is:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Chicago does not have a light rail. (It does have a heavy / commuter rail system. There was an LRT proposal in Chicago which was cancelled at an early stage.)&lt;/li&gt;&lt;li&gt;Detroit does not have a light rail. (There is discussion underway to develop one.) (It does have a medium/heavy rail rapid transit line which loops overhead, running the same system as Scarborough RT.)&lt;/li&gt;&lt;li&gt;Hamilton employment in &lt;a href=&quot;http://www.thespec.com/article/507865&quot;&gt;2008 was 362,000&lt;/a&gt;. I don't know how much of that is downtown.&lt;/li&gt;&lt;li&gt;The LRT project in Hamilton began moving in 2007, whereas issues related to the Pan Am games did not arise until 2009. Metrolinx plans, and LRT in Hamilton in particular, were already firmly developed, including routes and support statements from different government levels, before the Pan Am games began to influence planning.&lt;/li&gt;&lt;li&gt;The 2007 Pan Am Games in Rio attracted in the range of a billion viewers, so it's difficult to assert that people haven't watched it.&lt;/li&gt;&lt;li&gt;When you drive to downtown and park you face the same issues of finding a parking location as you do if you drive to an LRT terminal.&lt;/li&gt;&lt;li&gt;The US Department of Energy projects that gasoline prices could double in the next decade (AEO2009).&lt;/li&gt;&lt;li&gt;Downtown will not be closed off. One recent proposal suggests a pedestrian zone for one block (TODO I can't find the source) of King Street.&lt;/li&gt;&lt;li&gt;Downtown parking garages will still be accessible by cars either from the reduced lanes, or in the case of a pedestrian zone, from the opposite street. For example, Denningers (outdoor) parking lot is accessible from both King and Main.&lt;/li&gt;&lt;li&gt;Statements regarding access to business assume that shoppers drive to a parking lot in front of their target business, make a purchase, get in their car and drive to the next business. In fact today even with our current car centric model that is not the case in downtown Hamilton. Many shoppers drive to the vicinity of the business, park, and then visit multiple stops on foot.&lt;/li&gt;&lt;li&gt;LRT plans do not include removing sidewalks. Pedestrian areas would increase.&lt;/li&gt;&lt;li&gt;Parking provisions should naturally be different in areas with different densities of population and business, including differences between the mountain and downtown.&lt;/li&gt;&lt;li&gt;An overhead railway proposal for Hamilton in the early 80s was roundly and appropriately dismissed due to the effect it would have on the street environment. The few overhead railways that have been built worldwide do not share the success of on-street LRT. Manhattan recently converted its defunct Elevated railway platforms into garden parks.&lt;/li&gt;&lt;li&gt;LRT does not require 20 metres width. Each direction requires the width of one standard lane of traffic, which is 11-12 feet wide (3.5 metres).&lt;/li&gt;&lt;/ol&gt;</description>
    </item>
    <item>
      <title>Reise Zum Mars film</title>
      <link>http://simonwoodside.com/weblog/2010/1/30/reise_zum_mars_film/</link>
      <pubDate>Sat, 30 Jan 2010 19:53:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/1/30/reise_zum_mars_film/</guid>
      <description>&lt;p&gt;Mucho thanks to &lt;a href=&quot;http://zeigermann.com/cartoonist/&quot;&gt;The Cartoonist&lt;/a&gt; for &lt;a href=&quot;http://zeigermann.com/cartoonist/2010/01/28/fabulous-steampunk/&quot;&gt;discovering&lt;/a&gt; this lovely Steampunk film &quot;Reise Zum Mars&quot; (journey to mars, in german). Made by german film student Sebastian Binder, along with Fabien Grodde and &lt;a href=&quot;http://www.alexanderschumann.info/&quot;&gt;Alexander Schumann&lt;/a&gt;, it's a short film based on a draft screenplay by &lt;a href=&quot;http://www.google.com/search?q=Walter+Dexel&quot;&gt;Walter Dexel&lt;/a&gt;, an early 20th Century Constructivist. But don't worry, it's just music and action, so there's no need to know any german to watch it. And what's more, the lyrics to the song are in english anyway.&lt;/p&gt;&lt;p&gt;And you can &lt;a href=&quot;http://www.reisezummars.de/&quot;&gt;watch it at their cool web site&lt;/a&gt;, which also has some interesting making-of videos.&lt;/p&gt;&lt;p&gt;Unfortunately they only show the video at the original size. So, if you want to watch it full screen, here is a direct download link that I hacked out of their SWF file: &lt;a href=&quot;http://www.frankylove.com/mars/movies/Reise_zum_Mars_480.flv&quot;&gt;Reise Zum Mars direct FLV download&lt;/a&gt; (106MB).&lt;/p&gt;&lt;p&gt;Overall I have only two criticisms: one, that it needs an increase in brightness, it's quite difficult to make out what's happening. This is a simple post-production blunder. Second, the music is a little heavy. On the other hand, the silent-movie farce kind of atmosphere/acting works well.&lt;/p&gt;&lt;p&gt;I love steampunk, and I love this film.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ad26d70&gt;">#&lt;Tag:0x7f278ad26d70&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ad26c58&gt;">#&lt;Tag:0x7f278ad26c58&gt;</category>
    </item>
    <item>
      <title>Full lyrics to Yazoo (Yaz) song &quot;I Before E Except After C&quot;</title>
      <link>http://simonwoodside.com/weblog/2010/1/13/full_lyrics_to_yazoo_yaz/</link>
      <pubDate>Wed, 13 Jan 2010 18:14:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/1/13/full_lyrics_to_yazoo_yaz/</guid>
      <description>&lt;p&gt;The full lyrics for this great &lt;a href=&quot;http://en.wikipedia.org/wiki/Yazoo_%28band%29&quot;&gt;Yazoo&lt;/a&gt; song are not to be found on the entire internet. I did some fun audio processing to extract all the different voices... some of the words are a bit tricky.&lt;/p&gt;&lt;pre&gt;There would, stop because
there will always be, because
there will always be, for two
there will always

inside, you can feel the
outside, you can see the difference
inside, stop, inside, difference
outside, out stop, inside, you can feel the difference
feel the
you can difference, difference, difference
you can see the, feel the difference
you can stop, stop, and see the, you can stop, you can see the difference

Dragons, the policeman knew,
were supposed to breathe, to breath fire, fire, to breathe fire
and occasionally get themselves, get themselves
slaughtered, slaughtered, slaughtered
he decided.

That would definitely not he decided
stop, stop
definitely not
stop, stop
not
definitely
That would that would that would
stop
definitely decided
decided decided decided
not not
stop
he decided

(repeat)

[old woman 1]
the basis of the all important process
involved in the mixing, and regeneration, of a person's voice
incapable of any distinction, between frequency response
is such that the entire output, is revealed in the voice
is the actual voice itself, and the voice being used
is the voice being used, is the voice being used
used voice being used
being used voice
being voice

(repeat)


[young woman, with laughter]
this type of formation can only be explained
when two or more separate units are linked together
thus forming a string only detectable
through specially designed equipment
or at least that's what I thought
stop.

is that enough?

(repeat)


[old woman 2]

despite the pure outlook
which have been forced upon me
stop stop upon me
force the tools available
I decided to use the tools available
mainly because the function of the stop the stop
available being used
demanded an experience which I did not fully understand

(repeat)

Yes, I'm all right [laughter]&lt;/pre&gt;&lt;p&gt;The only word I'm not 100% sure about is &quot;pure&quot; for old woman 2. Aside from that it's solid.&lt;/p&gt;&lt;p&gt;Is the man &lt;a href=&quot;http://en.wikipedia.org/wiki/Vince_Clarke&quot;&gt;Vince Clarke&lt;/a&gt;? Is the young laughing woman &lt;a href=&quot;http://en.wikipedia.org/wiki/Alison_Moyet&quot;&gt;Alison Moyet&lt;/a&gt;?&lt;/p&gt;&lt;p&gt;What I want to know is, where did they get the text these people are reading? Did they make it up? None of it seems to search in google.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278acf6f30&gt;">#&lt;Tag:0x7f278acf6f30&gt;</category>
    </item>
    <item>
      <title>Mobile phones access agricultural market price information in developing nations</title>
      <link>http://simonwoodside.com/weblog/2010/1/9/mobile_phones_access_agricultural_market/</link>
      <pubDate>Sat, 09 Jan 2010 21:46:00 +0000</pubDate>
      <guid>http://simonwoodside.com/weblog/2010/1/9/mobile_phones_access_agricultural_market/</guid>
      <description>&lt;p&gt;The most critical piece of information for any farmer is what to grow.
What grains are going for good prices at the market. What is
overproduced and what is underproduced. What is in demand. Farmers must
know this information in order to make a living, hopefully a profit.&lt;/p&gt;&lt;p&gt;Let's say you're a farmer in rural part of western Africa. You have very little in the way of communications&amp;mdash;the roads are poor, telephone lines are poor or non-existent, internet access is not there. In fact, your village may only contain a few people with literacy to even use the internet. Aside from travelling for hours or days the only way to access market information could be through a shared mobile phone.&lt;/p&gt;&lt;p&gt;Then you need a trust-worthy source of information on the other end. Preferably one that can communicate via SMS text messaging, because it's much cheaper than making a voice call. I've been collecting some information about these kinds of services in Africa and intending to write up what I found for quite a while, so here it is, a summary of the agricultural market information providers operating in Africa that I am aware of.&lt;/p&gt;&lt;h1&gt;Esoko&lt;/h1&gt;&lt;p&gt;&lt;a href=&quot;http://www.esoko.com/&quot;&gt;&lt;strong&gt;Esoko&lt;/strong&gt;&lt;/a&gt; is the easiest to find on the internet. It was founded by &lt;a href=&quot;http://markdavies.net/&quot;&gt;Mark Davies&lt;/a&gt;, a serial entrepreneur who started up a number of successful internet companies including CitySearch in the UK before transplanting to Ghana where he founded BusyInternet, an internet caf&#233;, ICT centre, and business incubator in Accra. In 2005 he started TradeNet which is now renamed to Esoko.&lt;/p&gt;&lt;p&gt;I've played around a bit with Esoko and it looks like the real deal. I viewed prices for a variety of produce for a wide variety of markets in Ghana, for example. The data seemed to be fairly up to date. I was able to set up an alert for myself on prices for certain commodities in certain markets, so the system would SMS the prices to me on certain days of the week. You can also 2-way SMS into the system with different code and they will send you back the info you are looking for by return text message.&lt;/p&gt;&lt;p&gt;I couldn't actually test the SMS because I don't have an African cell phone # but assuming that works (and I'm sure it does) this looks like a great system with tons of accessible and useful information. They currently have at least some data for Afghanistan, Burkina Faso, &lt;span xml:lang=&quot;fr&quot; lang=&quot;fr&quot;&gt;C&#244;te d'Ivoire&lt;/span&gt;, Cameroon, Mali, Mozambique, Ghana, South Africa, and Sudan so if you're operating in any of those countries, check it out.&lt;/p&gt;&lt;p&gt;They also seem to be looking to expand their platform as a service into other parts of the world, see: &lt;a href=&quot;http://www.esokonetworks.com/&quot;&gt;esokonetworks&lt;/a&gt;.&lt;/p&gt;&lt;h1&gt;Others&lt;/h1&gt;&lt;p&gt;Another service is &lt;a href=&quot;http://www.intracen.org/trade-at-hand/&quot;&gt;Trade at Hand&lt;/a&gt;, which operates in Senegal, Mali and Burkina Faso. I haven't been able to try this service, but their representative Rapha&#235;l Dard tells me via email that they are oriented towards international exporters in those countries, and provide prices in the major agricultural market in &lt;a href=&quot;http://en.wikipedia.org/wiki/March%C3%A9_d%27Int%C3%A9r%C3%AAt_National_de_Rungis&quot;&gt;Rungis&lt;/a&gt;, France. They distribute information via SMS to farmers who sign up at federated agencies within the country.&lt;/p&gt;&lt;p&gt;Hans Hesse &lt;a href=&quot;http://atdaybreak.wordpress.com/2009/07/24/price-signals-or-smoke-signals/&quot;&gt;tells me on his blog&lt;/a&gt; that Zambian National Farmers Union runs a service for that country at &lt;a href=&quot;http://www.farmprices.co.zm/&quot;&gt;http://www.farmprices.co.zm/&lt;/a&gt;, unfortunately the site is down as I write. There is &lt;a href=&quot;http://www.znfu.org.zm/index.php?option=com_content&amp;amp;view=article&amp;amp;id=87:znfu-4455-price-information&amp;amp;catid=50:commodity-prices&amp;amp;Itemid=81&quot;&gt;some information&lt;/a&gt; on the ZNFU site, which appears to be right up to date, and have an SMS interface with short-code 4455 (from inside Zambia). Good stuff.&lt;/p&gt;&lt;p&gt;Last but not least, Engineers Without Borders's &lt;a href=&quot;http://volunteers.ewb.ca/Meg&quot;&gt;Megan Putnam &lt;/a&gt;shared with me a report from an EWB volunteer who examined a project called &lt;a href=&quot;http://www.netsquared.org/projects/ecamic-project-using-icts-innovatively-to-promote-market-access-for-farmers&quot;&gt;ECAMIC&lt;/a&gt; which facilitated the use of Esoko. One issue they noted was charging the phones in the many locations where no grid power is available. Another is dealing with the metrics for quantity and quality of each commoditiy, which may not be easy to transmit over SMS (some might be weighed, others rated by size and quality).&lt;/p&gt;&lt;p&gt;To summarize. It's important to be skeptical of any technologically driven development initiative. That said, I'm quite keen on this one because it is based on mobile phones, which are a huge and expanding business concern in Africa, a huge force for development, and probably the continent's biggest success story right now. They are also durable, cheap, and run on very little power. The information systems I've mentioned here are early days, but they seem to work and provide value to their users. I won't link to testimonials and success stories because I'm too skeptical about them as marketing for development agencies. But reading between the lines there are enough different people trying this out and getting positive results that I would encourage everyone involved to stick with it and keep pushing the boundaries.&lt;/p&gt;</description>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ace2e18&gt;">#&lt;Tag:0x7f278ace2e18&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ace2d28&gt;">#&lt;Tag:0x7f278ace2d28&gt;</category>
      <category domain="http://simonwoodside.com/weblog/tags/#&lt;Tag:0x7f278ace2c10&gt;">#&lt;Tag:0x7f278ace2c10&gt;</category>
    </item>
  </channel>
</rss>

