<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>dev:ices &#187; Jonathan</title>
	<atom:link href="http://www.mindthe.net/devices/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mindthe.net/devices</link>
	<description>Let's think the unthinkable, let's do the undoable, let's prepare to grapple with the ineffable itself, and see if we may not eff it after all. - Douglas Adams</description>
	<lastBuildDate>Wed, 01 Sep 2010 09:48:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>XAuth</title>
		<link>http://www.mindthe.net/devices/2010/04/19/xauth/</link>
		<comments>http://www.mindthe.net/devices/2010/04/19/xauth/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 09:47:58 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Comment]]></category>
		<category><![CDATA[Meebo]]></category>
		<category><![CDATA[XAuth]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=177</guid>
		<description><![CDATA[Meebo, the web-based IM service, have proposed a new standard called XAuth. Using a new feature of HTML5, similar to cookies, an authentication token is stored in ‘LocalStorage’ within the browser. Therefore this will only work with modern browsers (IE8+, Safari4+, Chrome3+, FF3+). You can see a demo of Meebo&#8217;s proposal at http://www.meebo.com/xauth and also there&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Meebo, the web-based IM service, have proposed a new standard called XAuth. Using a new feature of <a id="aptureLink_b0y34nCEK5" href="http://en.wikipedia.org/wiki/HTML5">HTML5</a>, similar to cookies, an authentication token is stored in ‘<a id="aptureLink_jBavc6UVR6" href="http://en.wikipedia.org/wiki/Web%20Storage">LocalStorage</a>’ within the browser. Therefore this will only work with modern browsers (IE8+, Safari4+, Chrome3+, FF3+).</p>
<p>You can see a demo of Meebo&#8217;s proposal at <a href="http://www.meebo.com/xauth">http://www.meebo.com/xauth</a> and also there&#8217;s a YouTube video of <a title="Seth Sternberg explaining XAuth" href="http://www.youtube.com/watch?v=-UjXswWs7xg&amp;feature=player_embedded">Seth Sternberg explaining XAuth</a><a id="aptureLink_XcoMj5mS0L" style="margin-top: 0px; margin-right: auto; margin-bottom: 0px; margin-left: auto; text-align: center; display: inline !important; padding-top: 0px; padding-right: 6px; padding-bottom: 0px; padding-left: 6px;" href="http://www.youtube.com/watch?v=-UjXswWs7xg"><img style="border: 0px initial initial;" title="Meebo pushes xAuth.org as solution to social network toolbar clutter problem" src="http://i.ytimg.com/vi/-UjXswWs7xg/hqdefault.jpg" alt="" width="456px" height="285px" /></a></p>
<p><a title="Seth Sternberg explaining XAuth" href="http://www.youtube.com/watch?v=-UjXswWs7xg&amp;feature=player_embedded"></a></p>
<p><a href="http://googxauthdemo.appspot.com/?action=login&amp;continue=http://www.meebo.com/xauth/">Google</a>, <a href="http://xauthdemo.mslivelabs.com/">Microsoft</a>, MySpace and Yahoo have signed up and implemented a first-pass at this. As the @Mashable<a href="http://mashable.com/2010/04/19/xauth/"> article about XAuth</a> says Twitter and Facebook don’t appear to be supporting it at all. “That means, rather than uniting these sharing services, the runner-up services are all banding together. That doesn’t simplify things for users or publishers” &#8211; <a href="http://mashable.com/author/pete-cashmore/">Pete Cashmore</a>.</p>
<p>And Pete goes on to suggest that Facebook and Twitter are big enough players to not dance to anyone else’s tune. So will this usage of the new &#8216;cookie&#8217; implementation in HTML5 be tempting enough to create harmony across the big players? I doubt it, but XAuth looks like an interesting idea.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2010/04/19/xauth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Would Twitter&#8217;s user model help combat email spam?</title>
		<link>http://www.mindthe.net/devices/2010/04/12/would-twitters-user-model-help-combat-email-spam/</link>
		<comments>http://www.mindthe.net/devices/2010/04/12/would-twitters-user-model-help-combat-email-spam/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 12:09:26 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Comment]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=174</guid>
		<description><![CDATA[As Twitter grows, so the number of potential spammers to my daily tweet stream increases. Twitter&#8217;s user model is the saving factor in all of this &#8216;noise&#8217;. It prevents me from being overwhelmed and could have important advantages over existing legacy internet services like email. In this blog post I&#8217;ll look at whether other internet [...]]]></description>
			<content:encoded><![CDATA[<p>As Twitter grows, so the number of potential spammers to my daily tweet stream increases. Twitter&#8217;s user model is the saving factor in all of this &#8216;noise&#8217;. It prevents me from being overwhelmed and could have important advantages over existing legacy internet services like email. In this blog post I&#8217;ll look at whether other internet services like email could learn a lesson from the way Twitter connects its users.<span id="more-174"></span></p>
<p>My main Twitter stream is like an RSS reader; my Mentions stream is like my Email inbox and my Direct Messages are like my Instant Messenger service(s). I can reduce my RSS spam by subscribing to less feeds and I have direct control over my Instant Messenger communications.</p>
<p>The biggest culprit for unwanted communication in my life is Email and as a concept it&#8217;s not moved with the times to block this abuse of the internet and my time. With Twitter I can be @mentioned or replied to through use of my username in a tweet so anyone can get a message to me even if I don&#8217;t follow them. This is the equivalent of getting an email from a previously unknown source. Twitter, though, allows me to Block the sender at the first sign of trouble. Suddenly, I am no longer plagued by messages from this source and without them knowing.</p>
<p>Whilst the ability to not follow people or block them gives me apparent control, most Twitter users are aware of the quantity of fake Twitter accounts registered on a daily basis. By fake, I mean an account being used for other purposes than to send genuine micro-updates to the world.  My Twitter follower count peaks and troughs based on these fake phishing accounts trying to persuade me to follow links in their timeline just because they&#8217;ve done me the &#8216;honour&#8217; of following me. And I&#8217;m sure for some, the vanity of this spam attempt works. However it does also mean that a newly registered fake account could still mention me in a tweet and I&#8217;d, once more, get the notification in my Mentions stream and I&#8217;d have to move to block it again. Cat and mouse once more.</p>
<p>Most Twitter fake accounts at the moment are passive. They list bad or spam URLs in their timeline and just follow other users. It won&#8217;t be long before they start to actively tweet those they follow to try and get users to click on a link, probably compressed by a URL Shortener service to obfuscate the spam or even malware destination.</p>
<p>Twitter does offer the Privacy option which will batten down the hatches so that only people you authorise can contact you. This does have the desired effect of blocking all but validated users but does turn you into an island limiting your communications. Which as an email replacement isn&#8217;t exactly useful.</p>
<p>Compared to the &#8216;open door&#8217; policy of email, without some additional junk mail service running on our behalf, the Twitter subscription model does take us a step closer to reducing spam.</p>
<p>The eternal question of how you verify that a newly registered account is a real person will always be difficult to find a solution to. We need to take steps to put us, as the consumer, in charge of what we receive.</p>
<p>If Twitter&#8217;s user model was applied to email, could you see it reducing your spam traffic? As service providers are running out of bandwidth and we might face being charged on data quantity downloaded isn&#8217;t it about time we fixed email to stop the large slice of the world&#8217;s traffic being wasted on spam?</p>
<p>Your thoughts, as ever, gratefully received in open discussion.</p>
<p>(Of course, we&#8217;d need to lift the 140 character limit to make it a true replacement, unless we simply link to our email text in Google Docs or some online source. )</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2010/04/12/would-twitters-user-model-help-combat-email-spam/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Debugging iPhone application unit tests</title>
		<link>http://www.mindthe.net/devices/2010/02/23/debugging-iphone-application-unit-tests/</link>
		<comments>http://www.mindthe.net/devices/2010/02/23/debugging-iphone-application-unit-tests/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 09:44:10 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[XCode]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Unit Testing]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=168</guid>
		<description><![CDATA[I&#8217;ve been learning a whole raft of new things lately as I get back into developing for the iPhone in earnest. There is a series of blog posts I&#8217;ve been planning on setting up Continuous Integration and Test Driven Development for iPhone applications. However, this post is more of a &#8220;where I&#8217;ve got to so [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been learning a whole raft of new things lately as I get back into developing for the iPhone in earnest. There is a series of blog posts I&#8217;ve been planning on setting up Continuous Integration and Test Driven Development for iPhone applications. However, this post is more of a &#8220;where I&#8217;ve got to so far&#8221; with unit testing with iPhone development and a quick plea for information if you have anything to add.</p>
<p><span id="more-168"></span></p>
<p>It would seem that the XCode unit testing story for iPhone apps is half complete. If you follow the guidance in Apple&#8217;s official documentation, then you can add a new Unit Test Bundle to your XCode project. This can be attached to the main App Target so that unit tests run each time you build. The bit that is missing is the ability to easily debug these unit tests.</p>
<p>When a unit test fails, you can get a log or error message to try and guide you to understand what failed. There are times though when attaching breakpoints to your application code and stepping through the unit tests allows you to clearly see what&#8217;s at fault. With the standard setup, the tests run in a separate script before the Debugger attaches itself to your application code. This means that breakpoints are useless.</p>
<p>I did find an article on &#8216;<a title="How To Debug iPhone Unit Tests" href="http://www.grokkingcocoa.com/how_to_debug_iphone_unit_te.html">How to Debug iPhone Unit Tests&#8217;</a> by <a href="http://www.grokkingcocoa.com">Grokking Cocoa</a> which pointed me in the right direction. However the article describes how they set up OTest for debugging which involves 7 or 8 Environment Variables to be set. Even after following the article the iPhone app wasn&#8217;t building.</p>
<p>It would seem a simple request to be able to debug unit testable code, coming from a Visual Studio background. At the moment we&#8217;re trialling a Google Code project we found called <a title="WiteBox" href="http://code.google.com/p/witebox/">WiteBox</a>. This does work and was relatively easy to set up once we had included the CoreGraphics.framework in the WiteBox target. We also had to edit UITestResultsBar.h to have #import &lt;CoreGraphics/CGContext.h&gt; because it wasn&#8217;t building without it.</p>
<p>This solution runs unit tests in the iPhone simulator as an iPhone application. It seems an unnecessary overhead to get test results reported back in the simulator rather than in the XCode IDE. Given the lack of concrete support for unit testing in iPhone development, I can only assume that this is not commonplace amongst iPhone developers at the moment. I, however, realise the benefits that TDD and Continuous Integration brings and will continue to strive to come up with a good setup to avoid future unforseen problems.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2010/02/23/debugging-iphone-application-unit-tests/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When did you last ask an Aardvark a question?</title>
		<link>http://www.mindthe.net/devices/2009/09/29/when-did-you-last-ask-an-aardvark-a-question/</link>
		<comments>http://www.mindthe.net/devices/2009/09/29/when-did-you-last-ask-an-aardvark-a-question/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 23:11:18 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Comment]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=155</guid>
		<description><![CDATA[Not too long ago, companies chased the illusive &#8216;Web 2.0&#8242; buzz-phrase which seemed to only consist of glossy icons and sticking &#8216;BETA&#8217; somewhere on your new site design. These days it&#8217;s &#8216;social networks&#8217; that is the &#8216;must-have&#8217; feature for the success of any new online service. Social networks have their uses in finding out what your [...]]]></description>
			<content:encoded><![CDATA[<p>Not too long ago, companies chased the illusive &#8216;Web 2.0&#8242; buzz-phrase which seemed to only consist of glossy icons and sticking &#8216;BETA&#8217; somewhere on your new site design. These days it&#8217;s &#8216;social networks&#8217; that is the &#8216;must-have&#8217; feature for the success of any new online service.</p>
<p>Social networks have their uses in finding out what your friends and contacts are up to, but what if you wanted to unlock the power of these connections?</p>
<p><a href="http://www.vark.com">Aardvark</a> seems to have hit the nail right on the head with their offering to the social network revolution. Their service, usable via their website, email, IM and now iPhone, aims to get you an answer to any question you care to pose to the collective brain of its connected users. Sure, you can post a question to Twitter and hope one of your followers (or someone searching at the time) can answer it. Chances are you&#8217;re just shouting into the darkness. Alternatively, you could just hit your favourite search engine and try any combination of keywords to try get a tailored answer.</p>
<p><span id="more-155"></span>Aardvark increases the likelihood of a better answer to your question through three important advances over any other social network</p>
<ol>
<li>You can list topics which you&#8217;d like, or would feel able to, answer questions about.</li>
<li>You have &#8216;The Vark&#8217; as a central co-ordinator who looks at questions, figures out what they might be about and goes off to find people who might be able to help. Through a single contact you interact with everyone on Aardvark.</li>
<li>The most important difference over any search engine is that Aardvark connects you to real people. Sure, people are biased and fallible but you get the power of the human mind interpreting your question. The lateral thinking and real-world experience this brings can far outweigh a search engine gleefully returning 2 million results when all you wanted was an answer.</li>
</ol>
<p>So I&#8217;m a convert. Aardvark is an exciting way of getting and giving assistance without it feeling like hard work. There is a fantastic community which has been brought together by a dedicated team of people over in San Francisco. And one of the reasons there&#8217;s fuel to this idea is that they listen. The Community section of the Aardvark website allows users to suggest new features which the team have started to work into the product.</p>
<p>There are other sites out there offering answers, like <a title="Yahoo Answers" href="http://answers.yahoo.com/">Yahoo Answers</a> and others, but they present answering questions in a far more selfish manner. By offering &#8216;points&#8217; for answering questions, users find questions by browsing around a website looking for easy pickings. One sentence answers on questions getting no attention, along the lines of the dreaded forum post answer of &#8216;me too&#8217;, eventually leads to a user getting the points for being the only one to bother answering.</p>
<p>Thankfully, as Aardvark generally approaches things from the other end by asking for topics to answer rather than leaving users with free time on their hands to climb pointless ranks; the whole experience is much more rewarding. You just get answers fast, which at the end of the day is all you need from the service. By allowing access to the service through many means, it&#8217;s easy to interact with it wherever you are. The new iPhone application (available through the <a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=329048335&amp;mt=8">iTunes App Store</a>) supports push notifications so you can get your answer even faster on the move.</p>
<p>If you&#8217;ve not joined the growing Aardvark community yet, I&#8217;d advise you give it a try. I consider it a part of my daily toolkit for helping to find answers to problems, and giving a little help back too in my spare time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2009/09/29/when-did-you-last-ask-an-aardvark-a-question/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Plesk 9.2.1 Greylisting</title>
		<link>http://www.mindthe.net/devices/2009/07/21/plesk-9-2-1-greylisting/</link>
		<comments>http://www.mindthe.net/devices/2009/07/21/plesk-9-2-1-greylisting/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 07:00:33 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[greylisting]]></category>
		<category><![CDATA[Plesk]]></category>
		<category><![CDATA[trouble]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=147</guid>
		<description><![CDATA[In case, like me, you&#8217;re having trouble enabling the newly supported &#8216;Greylisting&#8217; feature after upgrading Plesk to 9.2.1, I managed to find the solution. Every time I tried to enable Greylisting I got Failed to exec glmng cli. file does not exist or is not executable: / usr / local / psa / admin / [...]]]></description>
			<content:encoded><![CDATA[<p>In case, like me, you&#8217;re having trouble enabling the newly supported &#8216;Greylisting&#8217; feature after upgrading Plesk to 9.2.1, I managed to find the solution.<br />
Every time I tried to enable Greylisting I got<br />
<code>Failed to exec glmng cli.  file does not exist or is not executable: / usr / local / psa / admin / bin / glmng</code><br />
It seems that the Updater from the Control Panel fails to complete all the tasks necessary. Thankfully I found a <a href="http://translate.google.co.uk/translate?prev=hp&#038;hl=en&#038;js=y&#038;u=http%3A%2F%2Fwww.huschi.net%2F25_367_de-plesk-greylisting-aktivieren.html&#038;sl=de&#038;tl=en&#038;history_state0=">blog post on huschi.net</a> which explained how to complete upgrading manually.<br />
<code>/usr/local/psa/admin/bin/autoinstaller</code><br />
and then proceed through the remaining screens using &#8216;Enter&#8217; for the default Next Page action.<br />
After that the option to enable Greylisting doesn&#8217;t produce the error.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2009/07/21/plesk-9-2-1-greylisting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Speedy MIME Image decoding using HTML</title>
		<link>http://www.mindthe.net/devices/2009/01/13/speedy-mime-image-decoding-using-html/</link>
		<comments>http://www.mindthe.net/devices/2009/01/13/speedy-mime-image-decoding-using-html/#comments</comments>
		<pubDate>Tue, 13 Jan 2009 10:50:10 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Comment]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=140</guid>
		<description><![CDATA[I&#8217;ve been working with our Esendex Email MMS service which forwards any inbound MMS picture messages to an email address. As the picture is MIME encoded I needed a quick way to check the image included. Thanks to a post by Zmeeagain I found the very handy trick of pasting the Base64 encoded text into [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working with our <a title="Esendex Email MMS" href="http://www.esendex.co.uk/Services/Email-MMS/">Esendex Email MMS service</a> which forwards any inbound MMS picture messages to an email address. As the picture is <a href="http://en.wikipedia.org/wiki/MIME">MIME encoded</a> I needed a quick way to check the image included.</p>
<p>Thanks to <a href="http://blog.zmeeagain.com/2008/10/emails-images-base64-and-html.html">a post</a> by <a href="http://twitter.com/zmeeagain">Zmeeagain </a>I found the very handy trick of pasting the Base64 encoded text into an HTML Image tag to quickly render the message in a web browser.</p>
<p>Simply create a new HTML file and paste your Base64 text replacing BASE64TEXT and ensure that the data: type reflects the MIME encoding type of the attached image (image/jpeg in this case):<br />
<code>&lt;html&gt;&lt;body&gt;&lt;img src="data:image/jpeg;base64,BASE64TEXT"/&gt;&lt;/body&gt;&lt;/html&gt;</code></p>
<p>Save the file as an HTML document and open in your favourite browser. Voila! Simples, hey?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2009/01/13/speedy-mime-image-decoding-using-html/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Avoid Google keyword detection picking up Firefox &#8216;aq=&#8217;</title>
		<link>http://www.mindthe.net/devices/2008/12/15/avoid-google-keyword-detection-picking-up-aq/</link>
		<comments>http://www.mindthe.net/devices/2008/12/15/avoid-google-keyword-detection-picking-up-aq/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 17:41:47 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Comment]]></category>
		<category><![CDATA[aq]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[keyword]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=136</guid>
		<description><![CDATA[For those of you who are monitoring or stripping keywords from referrer strings from Google you may be seeking out the query string parameter &#8216;q=&#8217;. Beware that a simple string match on &#8216;q=&#8217; could lead you to match on the additional Firefox parameter &#8216;aq=&#8217;. This appears in a Google referrer string if the search terms [...]]]></description>
			<content:encoded><![CDATA[<p>For those of you who are monitoring or stripping keywords from referrer strings from Google you may be seeking out the query string parameter &#8216;q=&#8217;.<br />
Beware that a simple string match on &#8216;q=&#8217; could lead you to match on the additional Firefox parameter &#8216;aq=&#8217;. This appears in a Google referrer string if the search terms were originally searched for from the Firefox searchbar.<br />
The aq=t parameter was <a href="https://wiki.mozilla.org/Firefox2/L10n_Requirements#Google_Search_Suggest">added by Mozilla in 2006 </a>at the request of Google.</p>
<p>Make sure that any string matching you&#8217;re doing is looking for a preceeding ampersand (&amp;) or question mark (?) so that you match the &#8216;q=&#8217; parameter correctly.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2008/12/15/avoid-google-keyword-detection-picking-up-aq/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>TechEd Day 2: Summary</title>
		<link>http://www.mindthe.net/devices/2008/11/12/teched-day-2-summary/</link>
		<comments>http://www.mindthe.net/devices/2008/11/12/teched-day-2-summary/#comments</comments>
		<pubDate>Wed, 12 Nov 2008 00:32:12 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[TechEd]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=130</guid>
		<description><![CDATA[Today was the first fully packed schedule. Lots of notes still to write up but here&#8217;s a quick overview of what happened.  First off I went into the Building Rich Web Applications using Silverlight 2 session. Kathy introduced a 200 level session on what kinds of things Silverlight 2 can do over Silverlight. The answer [...]]]></description>
			<content:encoded><![CDATA[<p>Today was the first fully packed schedule. Lots of notes still to write up but here&#8217;s a quick overview of what happened. </p>
<p>First off I went into the Building Rich Web Applications using Silverlight 2 session. Kathy introduced a 200 level session on what kinds of things Silverlight 2 can do over Silverlight. The answer basically is a heck of a lot more. Most importantly now having been built on top of the .NET Framework, it means that you can leverage the power of the framework with the rich presentation controls offered through Silverlight.</p>
<p>The use of a video streaming site as a demo kept enough attention going. I&#8217;d have preferred more time to examine the code she&#8217;d used to pull in XML data and then format for display but it was an overview session. Her &#8216;Hola World&#8217; application was very effective when using a VideoBrush to quickly paint media assets into simple controls. </p>
<p>Second session was on Team Foundation Server Work Item Use and Planning with Chris Menegay. If Chris gets paid on words per minute, he&#8217;ll be making a fair buck! He crammed a heck of a lot of useful information with his experience in the field into a standard Breakout session. Some of his best practice tips were very valuable and it made me realise that anyone using a Team Project template out of the box really needs to understand what they&#8217;re doing first. No one template will necessarily fit the business demands straight away: for example, the order in which states of tasks may progress from Active to Resolved to Closed may change between businesses. It&#8217;s made me want to go download a project template and go rooting around in the XML again to understand everything that&#8217;s going on under the bonnet. Chris&#8217; other very useful suggestion was to make sure that any Process Template editing should go into its own Team Project in TFS to manage changeset history rather than just hacking XML. </p>
<p>After lunch, I went to see Roy Osherove&#8217;s &#8216;Sense and Testability&#8217; talk in the auditorium and had a brief chat with Sarah Blow of Geek Girl Dinner fame (the power of Twitter) and it was great to meet her and put a face to the name. Roy&#8217;s talk was excellent and it&#8217;s already sent me off researching new methods of unit testing. I was pleased to see some of the approaches we&#8217;ve been taking recently in using public properties to allow for mocking, rather than prescribing Constructor overloads (mandatory vs optional) were mentioned. </p>
<p>The other interesting suggestion was to make every class a virtual class. Whilst seemingly going against the OO principle of encapsulation, it does allow for test methods to be over-ridden. For example, if you had a method which simply retrieved the current time, overloading this virtual method in a test class derived from the virtual base class would allow you to return any time you chose. </p>
<p>Neil had been to a Scrum session and it bears a lot of similarities to how we&#8217;re working currently, anyway. </p>
<p>Finally at the end of the day, we both went to ASP.NET MVC Practices which was a pretty deep dive into areas which are still pretty much up for debate as the toolset moves from Beta towards RTM. Maybe Hadi Harini had firmer information than is available from the MVC website.</p>
<p>A very useful tip was to write tests to test your Routing class and to remove the default catch-all route (controller/action/param) that is created to avoid patterns that you want to fail to match then serving back a page that maybe not suitable. </p>
<p>More to follow once I&#8217;ve decrypted and rewritten my notes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2008/11/12/teched-day-2-summary/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TechEd Day 1 : Keynote speech</title>
		<link>http://www.mindthe.net/devices/2008/11/11/teched-day-1-keynote-speech/</link>
		<comments>http://www.mindthe.net/devices/2008/11/11/teched-day-1-keynote-speech/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 00:29:02 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[TechEd]]></category>
		<category><![CDATA[Barcelona]]></category>
		<category><![CDATA[developers]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=125</guid>
		<description><![CDATA[As we were ushered in to an imposing auditorium It seemed the three DJs and VJ were entertaining a lonely, featured HP server rack on stage.  Having a tiny special &#8216;Early Bird&#8217; section down the front did seem a little pointless when I&#8217;d hazard a guess that well over 70% of delegates would&#8217;ve been signing up for [...]]]></description>
			<content:encoded><![CDATA[<p>As we were ushered in to an imposing auditorium It seemed the three DJs and VJ were entertaining a lonely, featured HP server rack on stage. </p>
<p>Having a tiny special &#8216;Early Bird&#8217; section down the front did seem a little pointless when I&#8217;d hazard a guess that well over 70% of delegates would&#8217;ve been signing up for the conference straight away.</p>
<p>The stage was very, well, orange. The black auditorium with its glossy black camouflage ceiling makes the whole place feel like we were about to get a paintball briefing rather than a Microsoft presentation. Loud percussive beats start about 10 minutes to go to fire up the spirits. It did start to work too.</p>
<p><span id="more-125"></span></p>
<p>First on stage was Pierre Liautaud, Vice President for Microsoft in Western Europe. His short introduction speech balanced the future &#8216;magic&#8217; that developers with the right software and support can write against the clear message that Windows Azure platform offered more choice in an economically uncertain time.</p>
<p>He was keen to point out that Windows Azure was Software &amp; Services and not Software As A Service. That the choice on where elements of your system were deployed were still firmly up to you and that they weren&#8217;t suggesting that everyone should move lock-stock over to it (funny that).</p>
<p>The main event was Jason Zander&#8217;s introduction to Microsoft&#8217;s Visual Studio 2010. Obviously a true developer, he didn&#8217;t care that using a pre-alpha version of VS 2010 (and in one demo a pre-alpha version of Windows 7!) lead to a crash and a few hangs. He just wanted to show off the features and it therefore had an honesty to it that a PowerPoint slideshow would&#8217;ve totally lacked.</p>
<p>The video of his keynote is up on <a href="http://www.microsoft.com/emea/teched2008/developer/tv/">TechEd TV</a> and its worth a watch. The four areas he covered were </p>
<ol>
<li>Understanding the code</li>
<li>Building web applications</li>
<li>Office business applications</li>
<li>C++ improvements</li>
</ol>
<p>In Understanding the code (watch the video at 21 minutes on), he introduced the Architecture Explorer. Able to delve into the depths of your code, it builds a clear diagram of the interdependencies in your project. So so useful. VS2010 was also able to generate a UML 2.1.1 Sequence Diagram for a class with a single click, showing all calls to objects and other methods. It&#8217;s the kind of overview information that developers looking at code fresh (or when you&#8217;ve been away for a bit and things have changed) would love to have. All built into the IDE. Why can&#8217;t we have this version already?</p>
<p>He also briefly touched on TeamLab, a feature allowing you to provision test environments with all of the settings you need. This leads to the ability for developers and testers alike to know that the machine that code is being tested on is common and controlled. Filing bugs in this system will also capture all of the Virtual Machine information too so that the developer can load up exactly how the environment was at the time of failure.</p>
<p>At around 31 minutes on the video, watch for the information about how the IDE has been totally rewritten on Windows Presentation Foundation and the add-ons they&#8217;ve already done for it. The debugging and historical dialogs are great information tools.</p>
<p>In Web Applications (watch the video from 43 mins on), a lot of the stuff I already knew from looking at the ASP.NET MVC stuff. The web.config transformations directly in the IDE is a welcome addition. </p>
<p>The Office Business applications is IDE support for SharePoint Web Part development and the C++ IDE changes are vast and far reaching but not something I&#8217;m interested in with my current skill set and challenges.</p>
<p>It certainly set up the rest of the week and I&#8217;ll write more as it happens.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2008/11/11/teched-day-1-keynote-speech/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TechEd : Day 1</title>
		<link>http://www.mindthe.net/devices/2008/11/10/teched-day-1/</link>
		<comments>http://www.mindthe.net/devices/2008/11/10/teched-day-1/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 19:09:26 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Comment]]></category>

		<guid isPermaLink="false">http://www.mindthe.net/devices/?p=123</guid>
		<description><![CDATA[Greetings from Barcelona. Today started in the afternoon with the keynote speech from Jason Zander which has introduced new functionality in Visual Studio 2010. A very honest bloke who was brave enough to demo us Visual Studio 2010 on Windows 7. Not just taking the safety off, but practically taking the tightrope away as well. [...]]]></description>
			<content:encoded><![CDATA[<p>Greetings from Barcelona. Today started in the afternoon with the keynote speech from Jason Zander which has introduced new functionality in Visual Studio 2010. A very honest bloke who was brave enough to demo us Visual Studio 2010 on Windows 7. Not just taking the safety off, but practically taking the tightrope away as well.</p>
<p>I&#8217;m going to write up my notes as I go, but the fact that Visual Studio 2010 has had its IDE re-written using Windows Presentation Foundation means that a lot of exciting new add-ons are coming. Also the ability to specify transforms for web.config files is a welcome addition after the frustration I&#8217;ve had with Web Deployment projects.</p>
<p>Well, its the Welcome Drinks party here at CCIB in Barcleona now so I&#8217;m off for more &#8216;networking&#8217; (where networking = free beer, nibbles and XBox 360 stands <img src='http://www.mindthe.net/devices/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ) It&#8217;s hard work being a developer on the cutting edge of Microsoft technology you know ?</p>
<p>If any of you are twittering and are here, send a message to JBJon and I&#8217;ll try and catch up with you.</p>
<p>Gracias!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindthe.net/devices/2008/11/10/teched-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
