<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/&quot;DEAGRnc9fyp7ImA9WhRaFE0.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229</id><updated>2012-02-16T15:38:47.967Z</updated><category term="embedded" /><category term="hack" /><category term="chillies" /><category term="human computer interaction" /><category term="Microsoft" /><category term="Internet" /><category term="Dare To Dream Different" /><category term="Wario" /><category term="Mozilla" /><category term="Moonlight" /><category term="Halloween" /><category term="Family" /><category term="Micro Framework" /><category term="random" /><category term=".Net" /><category term="gardening" /><category term="affordance" /><category term="hardy heron" /><category term="Ubuntu" /><category term="Nintendo Wii" /><category term="open source" /><category term="Facebook" /><category term="Silverlight" /><category term="electronics" /><title>Blog | Luke Orehawa</title><subtitle type="html">Ideas and thoughts of an embedded software engineer with interests in the environment, growing vegetables, and general geekery.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/BlogLukeOrehawa" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="bloglukeorehawa" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;C0cEQ3k-fSp7ImA9WxVVF0s.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-7534675961080091824</id><published>2009-03-11T07:58:00.007Z</published><updated>2009-03-11T08:43:22.755Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-11T08:43:22.755Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="embedded" /><category scheme="http://www.blogger.com/atom/ns#" term=".Net" /><category scheme="http://www.blogger.com/atom/ns#" term="Micro Framework" /><title>StringBuilder for Micro Framework</title><content type="html">Although in the documentation for Micro Framework V3.0, the StringBuilder class has gone AWOL, until it's hunted down I created my own version so that there would be little changes to code to revert to a library version of the class.&lt;br /&gt;&lt;br /&gt;It is not optimised, but does offer a common interface with the full library class, although I have only implemented required methods.&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;div class="csharpcode"&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; Microsoft.SPOT&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Collections;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; LukeOrehawa.Utility&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;{&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;    &lt;span class="rem"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;    &lt;span class="rem"&gt;/// My crude StringBuilder class as a library class is not available.&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;    &lt;span class="rem"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; StringBuilder&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;    {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;        ArrayList mCharList;&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; StringBuilder()&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;            mCharList = &lt;span class="kwrd"&gt;new&lt;/span&gt; ArrayList();&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  19:  &lt;/span&gt;            mCharList.Capacity = 16;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  20:  &lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  21:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  22:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; StringBuilder(String &lt;span class="kwrd"&gt;value&lt;/span&gt;)&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  23:  &lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  24:  &lt;/span&gt;            mCharList = &lt;span class="kwrd"&gt;new&lt;/span&gt; ArrayList();&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  25:  &lt;/span&gt;            mCharList.Capacity = 16;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  26:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  27:  &lt;/span&gt;            Append(&lt;span class="kwrd"&gt;value&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  28:  &lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  29:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  30:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt; Length&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  31:  &lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  32:  &lt;/span&gt;            get&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  33:  &lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  34:  &lt;/span&gt;                &lt;span class="kwrd"&gt;return&lt;/span&gt; mCharList.Count;&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  35:  &lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  36:  &lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  37:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  38:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; StringBuilder Append(String &lt;span class="kwrd"&gt;value&lt;/span&gt;)&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  39:  &lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  40:  &lt;/span&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; Append(&lt;span class="kwrd"&gt;value&lt;/span&gt;, 0, &lt;span class="kwrd"&gt;value&lt;/span&gt;.Length);&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  41:  &lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  42:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  43:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; StringBuilder Append(String &lt;span class="kwrd"&gt;value&lt;/span&gt;, &lt;span class="kwrd"&gt;int&lt;/span&gt; startIndex, &lt;span class="kwrd"&gt;int&lt;/span&gt; count)&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  44:  &lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  45:  &lt;/span&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; Append(&lt;span class="kwrd"&gt;value&lt;/span&gt;.ToCharArray(), startIndex, count);&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  46:  &lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  47:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  48:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; StringBuilder Append(Char[] &lt;span class="kwrd"&gt;value&lt;/span&gt;, &lt;span class="kwrd"&gt;int&lt;/span&gt; startIndex, &lt;span class="kwrd"&gt;int&lt;/span&gt; count)&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  49:  &lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  50:  &lt;/span&gt;            &lt;span class="rem"&gt;// Add each character of the string, one at a time.&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  51:  &lt;/span&gt;            &lt;span class="rem"&gt;//&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  52:  &lt;/span&gt;            &lt;span class="kwrd"&gt;for&lt;/span&gt; (&lt;span class="kwrd"&gt;int&lt;/span&gt; i = 0; i &amp;lt; count; i++)&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  53:  &lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  54:  &lt;/span&gt;                mCharList.Add(&lt;span class="kwrd"&gt;value&lt;/span&gt;[i]);&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  55:  &lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  56:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  57:  &lt;/span&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;this&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  58:  &lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  59:  &lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  60:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;override&lt;/span&gt; String ToString()&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  61:  &lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  62:  &lt;/span&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; String((&lt;span class="kwrd"&gt;char&lt;/span&gt;[])mCharList.ToArray(&lt;span class="kwrd"&gt;typeof&lt;/span&gt;(&lt;span class="kwrd"&gt;char&lt;/span&gt;)));&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  63:  &lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  64:  &lt;/span&gt;    }&lt;/pre&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  65:  &lt;/span&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-7534675961080091824?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/7534675961080091824/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2009/03/stringbuilder-for-micro-framework.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/7534675961080091824?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/7534675961080091824?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2009/03/stringbuilder-for-micro-framework.html" title="StringBuilder for Micro Framework" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;A08HSXs8fip7ImA9WxVWGEg.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-5292759332583058284</id><published>2009-02-28T21:49:00.003Z</published><updated>2009-02-28T22:23:58.576Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-28T22:23:58.576Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Facebook" /><category scheme="http://www.blogger.com/atom/ns#" term="embedded" /><category scheme="http://www.blogger.com/atom/ns#" term="Dare To Dream Different" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft" /><category scheme="http://www.blogger.com/atom/ns#" term="Micro Framework" /><title>Facebook API for Micro Framework</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_h2AyGkN7EVM/Sam5aAUkq0I/AAAAAAAAALk/q6uN3G2QqDs/s1600-h/facebook-logo.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 102px; height: 120px;" src="http://4.bp.blogspot.com/_h2AyGkN7EVM/Sam5aAUkq0I/AAAAAAAAALk/q6uN3G2QqDs/s200/facebook-logo.jpg" alt="" id="BLOGGER_PHOTO_ID_5307977492246866754" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I am currently working on my entry for the &lt;a href="http://dreamdifferentcontest.com/over.aspx"&gt;Microsoft Dare to dream different challenge&lt;/a&gt;, which requires access to &lt;a href="http://www.facebook.com/"&gt;Facebook &lt;/a&gt;using it's API. There are currently .NET implementations of the API for the Desktop, Web and Compact Framework but none of these can be directly ported to the Micro Framework due to their un-optimised use of resources and the dependencies on .NET libraries which do not exist in the stripped down Micro Framework. So, I have created a new Micro Framework API interface based on other Facebook libraries but using minimal .NET libraries and optimised for embedded targets. Compromises on functionality were made and to date only functionality critical to my project have been implemented. I will publish the library in the coming months when I have further tested and optimised the code.&lt;br /&gt;&lt;br /&gt;In using the Facebook API I have had to overcome one major hurdle ... logging in. My initial thoughts were for the embedded application to login into facebook using the users email and password as if it was a normal web user, but storing or handling a users login details directly breaks the Facebook Terms and Conditions. The next option was to follow the scheme Facebook have defined for any Desktop application using the API but the problem here is that the Desktop app is expected to launch a browser with a target Facebook URL for the user to log in; once they have they can close the browser and continue to use the application. Now this is a problem on an embedded target, it can't just open Firefox for the user to log in.&lt;br /&gt;&lt;br /&gt;To overcome my problem I used an embedded web server to provide a web page that the user of my device can visit using the devices IP address. The web page contains a specially generated link to login at Facebook, which is launched in a popup. Once closed the webserver initiates completion of the application login, for the device to access the API freely. I have yet to test the timeout values for Facebook, I am hoping that an application that regularly uses the API will not be logged out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-5292759332583058284?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/5292759332583058284/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2009/02/facebook-api-for-micro-framework.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/5292759332583058284?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/5292759332583058284?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2009/02/facebook-api-for-micro-framework.html" title="Facebook API for Micro Framework" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_h2AyGkN7EVM/Sam5aAUkq0I/AAAAAAAAALk/q6uN3G2QqDs/s72-c/facebook-logo.jpg" height="72" width="72" /><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;DUAAQXs5fCp7ImA9WxVWGEg.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-4603156517544044918</id><published>2009-01-19T21:07:00.004Z</published><updated>2009-02-28T21:49:00.524Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-28T21:49:00.524Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="electronics" /><category scheme="http://www.blogger.com/atom/ns#" term="embedded" /><category scheme="http://www.blogger.com/atom/ns#" term="Dare To Dream Different" /><category scheme="http://www.blogger.com/atom/ns#" term=".Net" /><category scheme="http://www.blogger.com/atom/ns#" term="Micro Framework" /><title>Dare to dream different challenge - round 1 winner</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://dreamdifferentcontest.com/"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 928px; height: 265px;" src="http://dreamdifferentcontest.com/images/dream_header.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Before Christmas, on the offchance I entered the Dare to Dream Different Challenge being sponsered by Microsoft; and low and behold I was one of the 50 lucky people chosen as round 1 winners. I need to check the rules about blogging and publishing my work etc; but all being good you will see more posts on my progress!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-4603156517544044918?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/4603156517544044918/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2009/01/dare-to-dream-different-challenge-round.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/4603156517544044918?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/4603156517544044918?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2009/01/dare-to-dream-different-challenge-round.html" title="Dare to dream different challenge - round 1 winner" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;C0YER3o5fSp7ImA9WxRWE0o.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-9090808667743215311</id><published>2008-10-30T12:47:00.003Z</published><updated>2008-10-30T12:51:46.425Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-30T12:51:46.425Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Nintendo Wii" /><category scheme="http://www.blogger.com/atom/ns#" term="Halloween" /><category scheme="http://www.blogger.com/atom/ns#" term="Wario" /><title>Halloween pumpkin carving - Nintendo style</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_h2AyGkN7EVM/SQmtNItTYyI/AAAAAAAAAKU/8zu2h90sdnA/s1600-h/IMAG0028.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_h2AyGkN7EVM/SQmtNItTYyI/AAAAAAAAAKU/8zu2h90sdnA/s400/IMAG0028.jpg" alt="" id="BLOGGER_PHOTO_ID_5262928080746537762" border="0" /&gt;&lt;/a&gt;After 10 minutes producing a stencil from a Wario image I had I was able (with the help of my niece) carve my scary Wario pumpkin!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-9090808667743215311?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/9090808667743215311/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/10/halloween-pumpkin-carving-nintendo.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/9090808667743215311?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/9090808667743215311?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/10/halloween-pumpkin-carving-nintendo.html" title="Halloween pumpkin carving - Nintendo style" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_h2AyGkN7EVM/SQmtNItTYyI/AAAAAAAAAKU/8zu2h90sdnA/s72-c/IMAG0028.jpg" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DU8BRnc9eCp7ImA9WxRXEkk.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-5390398465324212376</id><published>2008-10-17T13:38:00.004+01:00</published><updated>2008-10-17T13:50:57.960+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-17T13:50:57.960+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="affordance" /><category scheme="http://www.blogger.com/atom/ns#" term="random" /><category scheme="http://www.blogger.com/atom/ns#" term="human computer interaction" /><title>What were they thinking?</title><content type="html">This week I was staying at a Travelodge hotel in Birmingham where I noticed something strange about the fire escape door. Adorned with signs, one clearly said 'PULL', but without a handle I was not going to get very far! It got me thinking.. (uh oh!) why do we even bother to state pull or push on doors? Most signs these days do not even contain words so that they can be used throughout the world to convey the same meaning; but why even both saying whether to push a door or pull it; surely if it has a handle, PULL, if not PUSH, if it still does not open then maybe it's a window.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_h2AyGkN7EVM/SPiHdQhgD3I/AAAAAAAAAKM/K_y7AYyh__E/s1600-h/IMAG0027.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_h2AyGkN7EVM/SPiHdQhgD3I/AAAAAAAAAKM/K_y7AYyh__E/s400/IMAG0027.jpg" alt="" id="BLOGGER_PHOTO_ID_5258101501676490610" border="0" /&gt;&lt;/a&gt;This is an all to similar situation to computer interfaces where we litter them with obvious clues to their use, such as buttons saying 'click me'!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-5390398465324212376?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/5390398465324212376/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/10/what-were-they-thinking.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/5390398465324212376?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/5390398465324212376?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/10/what-were-they-thinking.html" title="What were they thinking?" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_h2AyGkN7EVM/SPiHdQhgD3I/AAAAAAAAAKM/K_y7AYyh__E/s72-c/IMAG0027.jpg" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;C04FQHw7cCp7ImA9WxdbEE4.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-3513607286964318781</id><published>2008-08-06T15:06:00.003+01:00</published><updated>2008-08-06T15:11:51.208+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-06T15:11:51.208+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Family" /><title>Alex Morgan Orehawa</title><content type="html">My son Alex Morgan Orehawa was born on 15th July 2008, weighing a healthy 9lbs 14oz; here are a few pictures!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_h2AyGkN7EVM/SJmw_kInRHI/AAAAAAAAAJ0/kepcd32F17k/s1600-h/Alex+Morgan+Orehawa+15.07.2008+036.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_h2AyGkN7EVM/SJmw_kInRHI/AAAAAAAAAJ0/kepcd32F17k/s400/Alex+Morgan+Orehawa+15.07.2008+036.jpg" alt="" id="BLOGGER_PHOTO_ID_5231407048245593202" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_h2AyGkN7EVM/SJmwqUA-x9I/AAAAAAAAAJs/1SFfycFcvuM/s1600-h/Alex+Morgan+Orehawa+15.07.2008+035.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_h2AyGkN7EVM/SJmwqUA-x9I/AAAAAAAAAJs/1SFfycFcvuM/s400/Alex+Morgan+Orehawa+15.07.2008+035.jpg" alt="" id="BLOGGER_PHOTO_ID_5231406683141359570" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-3513607286964318781?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/3513607286964318781/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/08/alex-morgan-orehawa.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/3513607286964318781?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/3513607286964318781?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/08/alex-morgan-orehawa.html" title="Alex Morgan Orehawa" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_h2AyGkN7EVM/SJmw_kInRHI/AAAAAAAAAJ0/kepcd32F17k/s72-c/Alex+Morgan+Orehawa+15.07.2008+036.jpg" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;C0IMRHw-eyp7ImA9WxdbEE4.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-4694607899241889603</id><published>2008-08-06T14:26:00.004+01:00</published><updated>2008-08-06T15:06:25.253+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-06T15:06:25.253+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="open source" /><category scheme="http://www.blogger.com/atom/ns#" term="Mozilla" /><category scheme="http://www.blogger.com/atom/ns#" term="Facebook" /><category scheme="http://www.blogger.com/atom/ns#" term="Internet" /><title>Facebook and Google Mail on your desktop with Mozilla Prism</title><content type="html">Ever wanted to run &lt;a href="http://www.facebook.com"&gt;facebook &lt;/a&gt;like any other program from your desktop?&lt;br /&gt;&lt;br /&gt;Well maybe I didn't but after taking a look it makes more sense as websites become more like full desktop applications. Prism allows you to wrap up a website in it's own web browser which makes it look like a normal application which can be launched by clicking the websites icon on the desktop or start bar.&lt;br /&gt;&lt;br /&gt;As of &lt;a href="http://labs.mozilla.com/2008/03/major-update-to-prism-first-prototype-of-browser-integration/"&gt;August 3rd 2008 Prism&lt;/a&gt; has been updated to V0.9, boasting Windows, Linux and Mac support using &lt;a href="http://www.mozilla.com/firefox"&gt;Firefox &lt;/a&gt;3.0 as its base, and what's more the source code is open source!&lt;br /&gt;&lt;br /&gt;&lt;img src="http://people.mozilla.com/%7Efaaborg/files/prism/announcement/refracting550.png" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-4694607899241889603?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/4694607899241889603/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/08/facebook-and-google-mail-on-your.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/4694607899241889603?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/4694607899241889603?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/08/facebook-and-google-mail-on-your.html" title="Facebook and Google Mail on your desktop with Mozilla Prism" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DkMHQX0ycSp7ImA9WxdTF0U.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-2370543526409953537</id><published>2008-05-14T18:00:00.001+01:00</published><updated>2008-05-14T18:00:30.399+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-05-14T18:00:30.399+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="electronics" /><category scheme="http://www.blogger.com/atom/ns#" term="embedded" /><category scheme="http://www.blogger.com/atom/ns#" term="gardening" /><title>Similar garden monitor project</title><content type="html">Digging around the subject of garden/plant monitoring I came across this, GardenMon &lt;a href="http://www.hackaday.com/2007/07/23/gardenmon-itoring-project/"&gt;http://www.hackaday.com/2007/07/23/gardenmon-itoring-project/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-2370543526409953537?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/2370543526409953537/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/05/similar-garden-monitor-project.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/2370543526409953537?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/2370543526409953537?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/05/similar-garden-monitor-project.html" title="Similar garden monitor project" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Ak4FQ3o4cCp7ImA9WxdTFko.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-3765497104744111968</id><published>2008-05-07T20:57:00.006+01:00</published><updated>2008-05-13T12:41:52.438+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-05-13T12:41:52.438+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="chillies" /><category scheme="http://www.blogger.com/atom/ns#" term="electronics" /><category scheme="http://www.blogger.com/atom/ns#" term="embedded" /><category scheme="http://www.blogger.com/atom/ns#" term="gardening" /><title>How does your garden grow? Don't know, then monitor it!</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h2AyGkN7EVM/SCl-beDJ0WI/AAAAAAAAAJg/DFHA0EHjOA0/s1600-h/chillies_endon.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_h2AyGkN7EVM/SCl-beDJ0WI/AAAAAAAAAJg/DFHA0EHjOA0/s200/chillies_endon.jpg" alt="" id="BLOGGER_PHOTO_ID_5199826255163806050" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Well after an unsuccessful attempt at growing chillies (capsicum twilight variety) last year I am trying again. I have planet seeds earlier in the year in pots in the house, they are doing well but not as large as I expected; more recently I planted another crop in propagators in the house and have recently transplanted them to a plastic 2-tier greenhouse (again a new purchase). They are now motoring along, and my hopes for a good crop this year are renewed.&lt;br /&gt;&lt;br /&gt;Along with chillies I also have tomatoes, radishes and a small herb selection, namely coriander and basil, the prime ingredients to a good Thai green curry. The radishes are cropping at the moment and I'm very pleased, I've never seen any so red.&lt;br /&gt;&lt;br /&gt;Now being an engineer nothing can ever be simple. I find myself wanting to monitor the growing conditions of my chillies; I need a logger!! I would love to have the time to develop a data logger that has multiple moisture sensors (different plants have different watering needs, multiple sensors would allow various types of plants to be monitored), a temperature sensor (to measure the environment temperature),  a light resistance sensor (for measuring the amount of light received by the plants), and possibly a humidity sensor (out of interest I would like to log this). Measuring these once every minute would give me 1440 samples per day; assuming 16bit (2 byte) data types are used to store each value, for a 3 moisture sensor set-up I would require (3 + 1 + 1 + 1) * 1440 * 2 = 17,280 bytes of storage per day!!! This would be too great for any PIC or micro-controller without large external storage, and if I wanted a program to monitor these values and send alerts when for example the temperature is too hot I need to receive the values live, I therefore need a way of sending the values from the greenhouse to my computer.&lt;br /&gt;&lt;br /&gt;This can be open ended and needs thought; zigbee, wireless, wired Ethernet, RF transmitter are all possibilities. To keep it cheap and low powered I have a tendency towards an RF transmitter with a suitable receiver attached to the PC. This could lead to a greenhouse/plant with it's own blog, updating day-by-day using the data it has sent to the PC; a similar system is available from &lt;a href="http://www.adafruit.com/index.php?main_page=product_info&amp;amp;cPath=25&amp;amp;products_id=93&amp;amp;zenid=3f436835bb3e7af1d036fad866200958"&gt;Adafruit&lt;/a&gt; called the &lt;a href="http://www.adafruit.com/index.php?main_page=product_info&amp;amp;cPath=25&amp;amp;products_id=93&amp;amp;zenid=3f436835bb3e7af1d036fad866200958"&gt;Botanicalls Twitter Kit&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I welcome any comments on these ideas, you never know it may even happen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-3765497104744111968?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/3765497104744111968/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/05/how-does-your-garden-grow-dont-know.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/3765497104744111968?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/3765497104744111968?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/05/how-does-your-garden-grow-dont-know.html" title="How does your garden grow? Don't know, then monitor it!" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_h2AyGkN7EVM/SCl-beDJ0WI/AAAAAAAAAJg/DFHA0EHjOA0/s72-c/chillies_endon.jpg" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CkMMQnw8cSp7ImA9WxZbGUQ.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-766320886249323471</id><published>2008-04-23T23:30:00.004+01:00</published><updated>2008-04-23T23:41:23.279+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-23T23:41:23.279+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Nintendo Wii" /><title>Mario Cart for the Wii</title><content type="html">What a great game!! Finally I have a game for the Wii worthy to chew up my bandwidth; the on-line playability is excellent, with short waits between games. Having not owned any previous Nintendo consoles or in fact Mario Cart I was to start off with a little bewildered by the 'Manual' mode so I always opted for 'Automatic' but after reading this months official Nintendo magazine with their guide to Mario Cart I found 'manual' mode much more fun.&lt;br /&gt;&lt;br /&gt;The downside of the whole affair is that it does not use your friend's already in your address book, it puzzles me on this decision???&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Bring on Wii Fit!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-766320886249323471?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/766320886249323471/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/04/mario-cart-for-wii.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/766320886249323471?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/766320886249323471?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/04/mario-cart-for-wii.html" title="Mario Cart for the Wii" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;A08FRX47fyp7ImA9WxZbGUU.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-7912518482198244605</id><published>2008-04-23T23:25:00.002+01:00</published><updated>2008-04-23T23:30:14.007+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-23T23:30:14.007+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="hardy heron" /><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu" /><title>Ubuntu 8.04 Hardy Heron CDs</title><content type="html">Pre-order your Hardy Heron CDs now at &lt;a href="https://shipit.ubuntu.com/"&gt;https://shipit.ubuntu.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I know you can download the latest and greatest, but I always want a physical CD for a clean install. A CD will also always live in my top drawer at work, ready to pass on to the next person who  wants to know what this 'Ubuntu' is, the cardboard cases alwys look great and in my opinion really impress.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-7912518482198244605?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/7912518482198244605/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/04/ubuntu-804-hardy-heron-cds.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/7912518482198244605?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/7912518482198244605?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/04/ubuntu-804-hardy-heron-cds.html" title="Ubuntu 8.04 Hardy Heron CDs" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DEUHQ3k4fyp7ImA9WxZVFEk.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-1889660660681010610</id><published>2008-03-25T11:31:00.003Z</published><updated>2008-03-25T11:57:12.737Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-03-25T11:57:12.737Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Silverlight" /><category scheme="http://www.blogger.com/atom/ns#" term="Moonlight" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft" /><title>Silverlight 2</title><content type="html">I recently attended a training course with work on Microsoft's &lt;a href="http://silverlight.net/GetStarted/"&gt;Silverlight &lt;/a&gt;2 offering. I was impressed with the ease that an online application can be made and the thought Microsoft had put into separating the graphical design from the programming, reflecting real-life development processes. It is still only in beta and the Visual Studio integration is still very ropey, but the fact C# can be used to write highly interactive applications designed for the web is great.&lt;br /&gt;&lt;br /&gt;Microsoft boasts it is multi platform, while this may be true in the long run, at the moment it is only for Windows and OS X, the &lt;a href="http://www.mono-project.com/Moonlight"&gt;Moonlight project&lt;/a&gt; has not yet got a stable release for Linux support. Also development is still Windows only, and the IDE tools are only for the full-fat Visual Studio offerings (express editions are not supported) making it a costly option for the home dabbler.&lt;br /&gt;&lt;br /&gt;So what makes it great? Well at the moment Silverlight 2 offers nothing over current FLASH technology other than you can use .NET, but to be honest this is enough for me. The current beta release has a few harsh limitations, as Microsoft remains very security conscious, some may be relaxed with future builds. One of their greatest concerns was that the technology could be used to tricks users into submitting their login account name and password by an application replicating the login screen in full-screen mode. To protect against this they have removed the keyboard input in full-screen mode and a message is displayed for a number of seconds telling the user they are in full screen mode of a Silverlight application. this does not mean the hack can not still be performed using JavaScript in the containing page capturing keystrokes and communicating with the application; I'm sure their will be a few hacks shortly in this nature.&lt;br /&gt;&lt;br /&gt;I think with the release of Moonlight the adoption rate with the home developer will increase dramatically, what is really required on Microsoft's side is to ensure the there is enough useful content out there requiring the plug-in.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-1889660660681010610?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/1889660660681010610/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/03/silverlight-2.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/1889660660681010610?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/1889660660681010610?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/03/silverlight-2.html" title="Silverlight 2" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DkENQXYzfSp7ImA9WxZVFEk.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-570653721166952643</id><published>2008-03-25T11:09:00.004Z</published><updated>2008-03-25T11:31:30.885Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-03-25T11:31:30.885Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="hardy heron" /><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu" /><title>Hardy Heron beta Release</title><content type="html">I use Ubuntu at home on my laptop and love it. So the beta of the next Ubuntu release, &lt;a href="https://wiki.ubuntu.com/HardyHeron/Beta"&gt;Hardy Heron&lt;/a&gt;, marks the countdown to the upgrade of my machine. The OS is simple to use and speedier than the XP alternative on my machine, although it still has it's short comings, such as poor battery life. My laptop is set-up to dual boot with XP; while running XP the battery can last up to 1h30, yet in Ubuntu (&lt;a href="https://wiki.ubuntu.com/GutsyGibbon/RC"&gt;Gutsy&lt;/a&gt;) this is reduced to 0h50. These figures are for out of the box settings, I have not looked into the issue on Ubuntu (haven't the time). Other failures include the support for suspend to ram, which does not work on my HP NX9005 laptop, and poor embedded software development support (this is a tricky one, as I feel it is really up to the tool provider to ensure everything works on Linux, but I have to have a grumble somewhere!).&lt;br /&gt;&lt;br /&gt;On the plus side, I find it a very stable environment with very few crashes in comparison to other well known operating systems. It amazes me the progress that gets made in this community OS, and bets of all ... its all for free.&lt;br /&gt;&lt;br /&gt;I hope in a months time I can report an easy and seamless upgrade to Hardy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-570653721166952643?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/570653721166952643/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/03/hardy-heron-beta-release.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/570653721166952643?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/570653721166952643?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/03/hardy-heron-beta-release.html" title="Hardy Heron beta Release" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;D0MDQnw-eSp7ImA9WxZTEEU.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-7614624540710720301</id><published>2008-01-11T16:53:00.000Z</published><updated>2008-01-11T21:04:33.251Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-11T21:04:33.251Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Nintendo Wii" /><category scheme="http://www.blogger.com/atom/ns#" term="hack" /><category scheme="http://www.blogger.com/atom/ns#" term="human computer interaction" /><title>My whiteboard pen</title><content type="html">Here's my completed whiteboard pen for the wiimote hack. &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h2AyGkN7EVM/R4egViyylFI/AAAAAAAAAHc/CZsyPCOIvGk/s1600-h/DSC00341_sm.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_h2AyGkN7EVM/R4egViyylFI/AAAAAAAAAHc/CZsyPCOIvGk/s320/DSC00341_sm.JPG" alt="" id="BLOGGER_PHOTO_ID_5154264590526354514" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I made this using only a AAA rechargeable battery, a micro push switch, an IR LED (20mA 1.3V supply), and a lot of locktite! (see below). The LED is from Rapid Electronics (see &lt;a href="http://www.rapidonline.com/netalogue/specs/58-0100.pdf"&gt;datasheet&lt;/a&gt;) with a peak bandwidth of 940 nm. It fits snug in the end of the pen, with the aid of locktite, and is then connected to the push switch mounted on the side of the finger grip. I drilled a small 2.5mm hole in the side of the pen to pass the wires through. the problem I then had was ensuring a good connection with the battery while making it easy to replace. the end of the pen fits tight while remaining still easy enough to remove. I used a spring loaded probe glued in the top cap of the pen (gold bit of bottom photo) soldered to a wire to make contact to the positive side of the battery. I then used a spade connector, as used in car wiring, and cut a slot in the pen just above the grip for it to pass through; this will make contact with the negative side of the battery. To complete the circuit I soldered a wire to the spade connector and glued the whole lot to the pen.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h2AyGkN7EVM/R4eg2iyylGI/AAAAAAAAAHk/9jAdnF82MXs/s1600-h/DSC00338_sm.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_h2AyGkN7EVM/R4eg2iyylGI/AAAAAAAAAHk/9jAdnF82MXs/s320/DSC00338_sm.JPG" alt="" id="BLOGGER_PHOTO_ID_5154265157462037602" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h2AyGkN7EVM/R4ehAiyylHI/AAAAAAAAAHs/W-l_5YGSOA4/s1600-h/DSC00343_sm.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_h2AyGkN7EVM/R4ehAiyylHI/AAAAAAAAAHs/W-l_5YGSOA4/s320/DSC00343_sm.JPG" alt="" id="BLOGGER_PHOTO_ID_5154265329260729458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Just need to get the software setup to use it, in the mean while I tested it using the sensitivity screen on the wii and all is good.&lt;br /&gt;&lt;br /&gt;Here are some links required to get the software going:&lt;br /&gt;&lt;a href="http://www.wiili.org/index.php/How_To:_BlueSoleil"&gt;Bluesoleil&lt;/a&gt;&lt;br /&gt;&lt;a href="http://onakasuita.org/wii/index-e.html"&gt;WiinRemote&lt;/a&gt; (not required but good fun and it allows you to see what data is being sent back)&lt;br /&gt;&lt;a href="http://code.google.com/p/linux-whiteboard/"&gt;Linux whiteboard code&lt;/a&gt; (fancy trying out a linux version of Johnny's idea)&lt;br /&gt;&lt;a href="https://sourceforge.net/projects/wiiwhiteboard/"&gt;Whiteboard code on sourceforge&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-7614624540710720301?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/7614624540710720301/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/01/my-whiteboard-pen.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/7614624540710720301?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/7614624540710720301?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/01/my-whiteboard-pen.html" title="My whiteboard pen" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_h2AyGkN7EVM/R4egViyylFI/AAAAAAAAAHc/CZsyPCOIvGk/s72-c/DSC00341_sm.JPG" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Dk4FQnkyfyp7ImA9WB9aFEs.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-6084504480521205847</id><published>2008-01-04T16:21:00.000Z</published><updated>2008-01-04T16:41:53.797Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-04T16:41:53.797Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Nintendo Wii" /><category scheme="http://www.blogger.com/atom/ns#" term="hack" /><category scheme="http://www.blogger.com/atom/ns#" term="human computer interaction" /><title>Wii whiteboard</title><content type="html">&lt;a href="http://procrastineering.blogspot.com/"&gt;Johnny Chung Lee&lt;/a&gt; has been experimenting with the wiimote and created a wii whiteboard.&lt;br /&gt;&lt;object height="334" width="400"&gt;&lt;param name="movie" value="http://www.youtube.com/v/5s5EvhHy7eQ&amp;amp;rel=1&amp;amp;color1=0xd6d6d6&amp;amp;color2=0xf0f0f0&amp;amp;border=0"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/5s5EvhHy7eQ&amp;amp;rel=1&amp;amp;color1=0xd6d6d6&amp;amp;color2=0xf0f0f0&amp;amp;border=0" type="application/x-shockwave-flash" wmode="transparent" height="334" width="400"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;The concept is good but the delivery is not all there yet; possibly the addition of a second wiimote to add 3d tracking could allow the software to know when the pen is on the surface, removing the need for a button to illuminate the infrared led. Also left and right clicking has not been implemented; I think with some experimentation and two buttons (one for left click and the other right click) pulsing of the led can be used along with a pulse detection mechanisim in the software driver to distinguish between left and right clicking. I look forward to seeing more development on this; details of the code can be found on &lt;a href="https://sourceforge.net/projects/wiiwhiteboard/"&gt;SourceForge&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-6084504480521205847?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/6084504480521205847/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/01/wii-whiteboard.html#comment-form" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/6084504480521205847?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/6084504480521205847?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2008/01/wii-whiteboard.html" title="Wii whiteboard" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>4</thr:total></entry><entry gd:etag="W/&quot;D0EAQHYzeSp7ImA9WB9aFEg.&quot;"><id>tag:blogger.com,1999:blog-4375618599821159229.post-3113739607535836655</id><published>2007-12-21T09:23:00.000Z</published><updated>2008-01-04T14:07:21.881Z</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-04T14:07:21.881Z</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Family" /><title>Our baby</title><content type="html">&lt;div style="text-align: center;"&gt;Here's my first post on my new blog just say Kate and I are going to be proud parents next year!&lt;br /&gt;&lt;br /&gt;Merry Christmas!&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;table style="text-align: left; margin-left: auto; margin-right: auto;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;img src="http://lh3.google.com/lukeorehawa/R2bt1yyyk8E/AAAAAAAAAFU/N90y2nOLQNM/s160-c/OurBaby.jpg" style="margin: 1px 0pt 0pt 4px;" height="320" width="320" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4375618599821159229-3113739607535836655?l=blog.lukeorehawa.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.lukeorehawa.co.uk/feeds/3113739607535836655/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.lukeorehawa.co.uk/2007/12/our-baby.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/3113739607535836655?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4375618599821159229/posts/default/3113739607535836655?v=2" /><link rel="alternate" type="text/html" href="http://blog.lukeorehawa.co.uk/2007/12/our-baby.html" title="Our baby" /><author><name>Luke Orehawa</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry></feed>

