<?xml version="1.0" encoding="UTF-8"?>
<?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:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xml:lang="en"><title type="text">David Gardiner - Dave's Daydreams</title><link rel="alternate" type="text/html" href="http://david.gardiner.net.au/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/DavesDaydreams" /><subtitle type="html">A blog of software development, .NET and other interesting things</subtitle><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-05-15T08:32:08+00:00</updated><generator uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">796</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">25</openSearch:itemsPerPage><feedburner:info uri="davesdaydreams" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><id>tag:blogger.com,1999:blog-10782889</id><geo:lat>-34.91774</geo:lat><geo:long>138.546664</geo:long><logo>http://cq3x6a.blu.livefilestore.com/y1pQX6XaLQ7tEA8rrz9AB0SrVBS1Sm-LZkEGL9itUd6fJBW5h1YmwACQTSkW5vbGRXNBgNivqNk-4U/favicon.ico</logo><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site.</feedburner:browserFriendly><entry><title type="text">Windows 8 weird errors</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/9JadLh1QeXg/windows-8-weird-errors.html" /><category term="Windows 8" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-05-02T04:50:45-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-926483485161404479</id><content type="html">&lt;p&gt;I went to fire up Remote Desktop on my home PC on Wednesday and was greeted with this unusual error:&lt;/p&gt;  &lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="mstsc.exe - Entry Point Not Found" src="http://lh3.ggpht.com/-iBHY1EVL3Js/UYJTE9oRPuI/AAAAAAAAAdw/NNE-o8VIhEs/image%25255B12%25255D.png?imgmax=800" width="483" height="175" /&gt;&lt;/p&gt;  &lt;p&gt;&amp;quot;&lt;font face="Courier New"&gt;The procedure entry point&amp;#160; could not be located in the dynamic link library C:\windows\System32\WINMM.dll&lt;/font&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;(Yes, there's an extra space between 'point' and 'could' – I think that's where the name of the entry point would normally be displayed). Taking a screenshot was quite tricky as even Paint refused to start, but I managed to get the Snipping Tool to save a .png (despite a few error along the way)&lt;/p&gt;  &lt;p&gt;Very odd, as I had used RDP a few days earlier, and most other things still worked fine (launching IE etc).&lt;/p&gt;  &lt;p&gt;Using the Windows 8 keyboard shortcut of Win-X and choosing the 'Command Prompt (Admin)' resulted in &amp;quot;&lt;font face="Courier New"&gt;File system error (-1073741511)&lt;/font&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;This is not looking good. I could use the Refresh option but the downside of that is that you need to reinstall all your non Store apps. So I thought I'd try some of the other options before resorting to this.&lt;/p&gt;  &lt;p&gt;First up, I brought up the Advanced Startup Options menu by &lt;a href="http://pcsupport.about.com/od/windows-8/a/open-advanced-startup-options-windows-8.htm" target="_blank"&gt;Choosing 'Restart' and hold down 'Shift' key&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;After reading &lt;a href="http://blogs.technet.com/b/joscon/archive/2012/09/26/fixing-component-store-corruption-in-windows-8-and-windows-server-2012.aspx" target="_blank"&gt;Fixing component store corruption in Windows 8 and Windows Server 2012&lt;/a&gt;, I tried running &lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;DISM /Online /Cleanup-Image /RestoreHealth&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;But that failed with:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;Error 0x800f0906 The source files could not be downloaded&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;This might be because this PC uses a Wireless USB NIC which doesn't get enabled when running in safe mode?&lt;/p&gt;  &lt;p&gt;I then mounted the Windows 8 .iso and re-ran DISM with &lt;font face="Courier New"&gt;/source:i:\sources\SxS&lt;/font&gt; option, but surprisingly that failed too.&lt;/p&gt;  &lt;p&gt;Next, I found a network cable, and rebooted to &lt;strong&gt;Safe Mode with Networking&lt;/strong&gt;, and ran DISM again.. but no luck&lt;/p&gt;  &lt;p&gt;Then I tried &lt;font face="Courier New"&gt;sfc /scannow&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;This reported corruption that was it unable to repair.&lt;/p&gt;  &lt;p&gt;I had a bit more success using the PowerShell cmdlet &lt;font face="Courier New"&gt;Repair-WindowsImage -RestoreHealth&lt;/font&gt; and using the &lt;font face="Courier New"&gt;-Sources&lt;/font&gt; argument to point it to the Windows folder on my laptop (I'd shared this folder). That seemed to update some of the SxS files, but didn't fix the actual problem.&lt;/p&gt;  &lt;p&gt;Back to the Advanced Startup Options to Choosing System Restore. I selected the restore item, but that failed because there was a problem with it!&lt;/p&gt;  &lt;p&gt;Finally, I went back to the Advanced Startup Options and chose the Command Prompt option. This is the one that brings up the command prompt and sets the current directory to X:\Windows\System32. I decided to give SFC one more try, but this time using the offline options. I first ran &lt;font face="Courier New"&gt;diskpart&lt;/font&gt; and then &amp;quot;&lt;font face="Courier New"&gt;list volume&lt;/font&gt;&amp;quot;, which told me that the boot drive (the one with the name 'System Reserved' was C: and my Windows drive was E:.&lt;/p&gt;  &lt;p&gt;I then ran:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;SFC /SCANNOW /OFFBOOTDIR=C: /OFFWINDIR=E:\Windows&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;This ran for about 10 minutes and then reported it had successfully fixed some corrupted files.&lt;/p&gt;  &lt;p&gt;For good measure, I then ran a CHKDSK and then re-ran the SFC command. This time it reported not finding any errors.&lt;/p&gt;  &lt;p&gt;Rebooting and FINALLY(!) it looks like everything is working ok again.&lt;/p&gt;  &lt;p&gt;Now to make a good restore point and ensure I have better backups in place in case this happens again. Not sure what the cause was – I'll have to keep an eye on the hardware incase it's an SSD on the way out.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/9JadLh1QeXg" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-05-02T21:20:45.284+09:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-iBHY1EVL3Js/UYJTE9oRPuI/AAAAAAAAAdw/NNE-o8VIhEs/s72-c/image%25255B12%25255D.png?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/05/windows-8-weird-errors.html</feedburner:origLink></entry><entry><title type="text">Weather forecasts on our home phone using BoM data</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/97qMLRaGvhk/weather-forecasts-on-our-home-phone.html" /><category term="VoIP" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-04-23T17:51:00-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-5441357258615127424</id><content type="html">&lt;p&gt;&lt;img title="DSC_7199" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; float: right; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="C610 IP handset showing weather forecast" align="right" src="http://lh5.ggpht.com/-IwqdAALyPlc/UXKSYwkzelI/AAAAAAAAAcU/a4SG1LgVNzc/DSC_7199%25255B4%25255D.jpg?imgmax=800" width="304" height="623" /&gt;&lt;/p&gt;  &lt;p&gt;A nice feature of the &lt;a href="http://gigaset.com/au/en/product/GIGASETC610IP.html" target="_blank"&gt;Gigaset C610 IP phone&lt;/a&gt; that we use at home is that you can choose various information services to display on the handset, including during 'screen saver' mode. The default services include the normal news, sport and weather, but as &lt;a href="http://david.gardiner.net.au/2011/02/comparison-of-public-weather-forecasts.html" target="_blank"&gt;I've noted before&lt;/a&gt;, the weather data these services use is invariably quite different to that published by the Australian Bureau of Meteorology (and invariably quite different to what I see out the window).&lt;/p&gt;  &lt;p&gt;As it turns out these services are customisable. You can add your own RSS feeds in via a web interface. The BoM doesn't provide such RSS feeds, and the only existing ones I could find were too detailed to be useful on a very small screen. &lt;/p&gt;  &lt;p&gt;So I decided to find out what it would take to grab the forecast data from the BoM and massage it into an RSS feed suitable for displaying on a very compact display. I also thought it was a good chance to try out some shiny new things along the way. In particular &lt;a href="http://www.asp.net/web-api" target="_blank"&gt;ASP.NET Web API&lt;/a&gt; to produce the RSS feed and &lt;a href="http://www.windowsazure.com/en-us/home/scenarios/web-sites/" target="_blank"&gt;Windows Azure Websites&lt;/a&gt; to host the service.&lt;/p&gt;  &lt;p&gt;The results of my efforts can be viewed at - &lt;a href="http://gardiner-weather.azurewebsites.net" target="_blank"&gt;http://gardiner-weather.azurewebsites.net&lt;/a&gt;. It's a very basic landing page for the service which lists what areas of Australia are currently supported (eg. only those states for which the Bureau provides XML data). Did I mention it's very basic? &lt;img class="wlEmoticon wlEmoticon-smile" style="border-top-style: none; border-left-style: none; border-bottom-style: none; border-right-style: none" alt="Smile" src="http://lh4.ggpht.com/-0PuYq4IPDE4/UXKSZbY0PhI/AAAAAAAAAcc/ydNTBscpuXc/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" /&gt;&lt;/p&gt;  &lt;p&gt;The feed I'm using for my phone is this one - &lt;a title="http://gardiner-weather.azurewebsites.net/api/forecast/SA/Adelaide" href="http://gardiner-weather.azurewebsites.net/api/forecast/SA/Adelaide"&gt;http://gardiner-weather.azurewebsites.net/api/forecast/SA/Adelaide&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now all we need to do is to glance at the handset and we'll immediately know the latest weather forecast for today and tomorrow!&lt;/p&gt;  &lt;h4&gt;Configuring your Gigaset C610&lt;/h4&gt;  &lt;ol&gt;   &lt;li&gt;Log in to your Gigaset's web page:     &lt;br /&gt;&lt;a href="http://lh4.ggpht.com/-nbFe1wsw4aU/UXKSap6TjXI/AAAAAAAAAck/3goTtH8r0xk/s1600-h/image%25255B15%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-16By7gDqH_4/UXKSbrvBINI/AAAAAAAAAcs/CBZ3fE9y82I/image_thumb%25255B5%25255D.png?imgmax=800" width="644" height="459" /&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Go to the Settings | Info Services section     &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/-sZpxdlejXCQ/UXKSc1RPSaI/AAAAAAAAAc0/6H4xFQ70hjY/s1600-h/image%25255B16%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh3.ggpht.com/-Zv-mVPulyX0/UXKSdpk2XGI/AAAAAAAAAc8/XBhjVEz3A_s/image_thumb%25255B6%25255D.png?imgmax=800" width="644" height="459" /&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Click on the www.gigaset.net/myaccount link and go to the Screensaver tab     &lt;br /&gt;&lt;a href="http://lh6.ggpht.com/-OYfQHlEmxL0/UXKSewXYcZI/AAAAAAAAAdE/I8_x5dbrbvg/s1600-h/image%25255B17%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh4.ggpht.com/-lUiL-34sU3k/UXKSfxdq02I/AAAAAAAAAdM/L23q2p1VdpQ/image_thumb%25255B7%25255D.png?imgmax=800" width="644" height="459" /&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Select the 'News' row and click on the 'Edit' link. Select 'Favourites' from the dropdown and give your weather feed a name and paste in the URL to the RSS feed.     &lt;br /&gt;&lt;a href="http://lh4.ggpht.com/-JmJCe9HQdlM/UXKShIkh-1I/AAAAAAAAAdU/xMlshH_ng48/s1600-h/image%25255B18%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-6GhN04jq3OA/UXKSiKOXx0I/AAAAAAAAAdc/2Y4so9hQLxk/image_thumb%25255B8%25255D.png?imgmax=800" width="644" height="459" /&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Click on 'Save' and your settings should soon take effect on your handset.&lt;/li&gt; &lt;/ol&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/97qMLRaGvhk" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-24T10:21:00.341+09:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-IwqdAALyPlc/UXKSYwkzelI/AAAAAAAAAcU/a4SG1LgVNzc/s72-c/DSC_7199%25255B4%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/04/weather-forecasts-on-our-home-phone.html</feedburner:origLink></entry><entry><title type="text">SSDT Talk Notes</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/Ew60ugV4nLk/ssdt-talk-notes.html" /><category term="Talks" /><category term="SQL" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-04-22T00:30:04-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-7644791355897059379</id><content type="html">&lt;p&gt;Here's a summary of the talk I did at the Adelaide SQL Server User Group last week. Most of the talk was a demo (only a couple of PowerPoint slides) so hopefully this is a useful reference for those who attended.&lt;/p&gt;  &lt;h4&gt;Intro to SSDT&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;Evolution of DataDude&lt;/li&gt;    &lt;li&gt;The new way of shipping BIDS&lt;/li&gt;    &lt;li&gt;Ships with SQL Server 2012 and Visual Studio 2012&lt;/li&gt;    &lt;li&gt;Replaces 'Database Projects' from previous versions&lt;/li&gt;    &lt;li&gt;Updates every 4-6 months (in time for SQL Azure updates)     &lt;ul&gt;       &lt;li&gt;Ships with VS 2012 and with SQL 2012&lt;/li&gt;     &lt;/ul&gt;      &lt;ul&gt;       &lt;li&gt;Free tool - use VS shell or integrate with existing&lt;/li&gt;        &lt;li&gt;Will update frequently to keep up with SQL Azure features&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;Connected&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;SQL Server Object Explorer&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Connect to local or Azure&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;Queries&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Execution Plans&lt;/li&gt;      &lt;li&gt;Client stats&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;h4&gt;Disconnected&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;Database projects&lt;/li&gt;    &lt;li&gt;Model-based&lt;/li&gt;    &lt;li&gt;Edition-aware targeting (project properties)     &lt;ul&gt;       &lt;li&gt;Can switch to azure to check if database is compatible with azure&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Table designer/code view     &lt;ul&gt;       &lt;li&gt;Synchronised&lt;/li&gt;        &lt;li&gt;Demo deleting a column         &lt;ul&gt;           &lt;li&gt;Can see errors (even before building) of related objects (eg. Views) that reference column&lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Build creates a 'dacpac' (Data-tier Application Package)     &lt;ul&gt;       &lt;li&gt;'Upgrade data-tier application' from SMSS&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Declarative model&lt;/li&gt;    &lt;li&gt;'Create New Project' via SQL Server Object Explorer&lt;/li&gt;    &lt;li&gt;F5 builds and deploys database to localdb&lt;/li&gt;    &lt;li&gt;Snapshots&lt;/li&gt;    &lt;li&gt;Import .sql files&lt;/li&gt;    &lt;li&gt;Code analysis&lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;Schema Compare&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;Connected, Project, dacpac or snapshot&lt;/li&gt;    &lt;li&gt;Update changes (defaults to not losing data)&lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;Refactoring&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;Expand wildcards to column names - SELECT *&lt;/li&gt;    &lt;li&gt;Semantic refactoring through model - not just find/replace&lt;/li&gt;    &lt;li&gt;Go to Reference, Find all references&lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;Publish database&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;Directly &lt;/li&gt;    &lt;li&gt;Via SQL script&lt;/li&gt;    &lt;li&gt;DACPAC     &lt;ul&gt;       &lt;li&gt;&lt;font face="Courier New"&gt;C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\sqlpackage.exe&lt;/font&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;&amp;quot;c:\Program Files (x86)\Microsoft SQL Server\110\dac\bin\SqlPackage.exe&amp;quot; /action:driftreport /tsn:.\sql2012&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;/outputpath:c:\tmp\driftreport.xml /tdn:SsdtSample&lt;/font&gt;&lt;/p&gt;  &lt;h4&gt;Unit testing&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;Right-click on stored proc to create unit tests&lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;3rd Party Integration and extensions&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;Red Gate SQL Compare (beta)&lt;/li&gt;    &lt;li&gt;Version control&lt;/li&gt;    &lt;li&gt;Laan SQL Formatter (soon)&lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;Further reading&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/data/tools.aspx"&gt;http://msdn.microsoft.com/en-us/data/tools.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.technet.com/b/ilikesql_by_dandyman/archive/2013/03/10/installing-sql-server-data-tools-bi-and-data-projects-in-visual-studio-2012-or-visual-studio-2012-shell.aspx" target="_blank"&gt;http://blogs.technet.com/b/ilikesql_by_dandyman/archive/2013/03/10/installing-sql-server-data-tools-bi-and-data-projects-in-visual-studio-2012-or-visual-studio-2012-shell.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/Ew60ugV4nLk" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-22T17:00:04.612+09:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/04/ssdt-talk-notes.html</feedburner:origLink></entry><entry><title type="text">Another Birthday</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/aUXb4NAc_zQ/another-birthday.html" /><category term="Family" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-04-20T00:07:30-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-371404405846613864</id><content type="html">&lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; float: left; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Two jars of pickles and a Storm Trooper mug" align="left" src="http://lh4.ggpht.com/-9MXOTME3MGg/UXI-sHpZKWI/AAAAAAAAAcE/02c73DKv2mQ/DSC_7197%25255B4%25255D.jpg?imgmax=800" width="164" height="244" /&gt;I am blessed with a wonderful family and friends. It was my birthday this week, and &lt;a href="http://relliemaus.blogspot.com" target="_blank"&gt;Narelle&lt;/a&gt; cooked a very yummy birthday tea. Pasty slice (see below) followed by baked cheesecake if you were wondering.&lt;/p&gt;  &lt;p&gt;My sister surprised me with a present that included jars of Spring Gully pickled onions and sweet spiced gherkin rounds. This is special because not only do I like gherkins (like pickles for American readers) and pickled onions, but the Spring Gully company has been in the news this week as they were placed under administration. I hope they can turn the business around and these jars don't become collectors items.&lt;/p&gt;  &lt;p&gt;My friend Andrew also has a creative streak. The Star Wars storm trooper mug was part of his present. To top the night off we had two unexpected guests drop in just in time for the birthday cake, one of whom is on a flying visit from overseas.&lt;/p&gt;  &lt;p&gt;On a sad note, I came home the next day from work to discover that one packet of &lt;a href="http://www.arnotts.com.au/our-products/products/fancy-and-fruit.aspx" target="_blank"&gt;Iced Vo Vo&lt;/a&gt; biscuits (also a present) had already been eaten by some little &amp;quot;mice&amp;quot;. That's the trouble with having your birthday in the middle of school holidays I guess.&lt;/p&gt;  &lt;h2&gt;Nanna Jean's Pasty Slice&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Pastry&lt;/li&gt;    &lt;li&gt;1lb mince&lt;/li&gt;    &lt;li&gt;1lb potatoes&lt;/li&gt;    &lt;li&gt;1 big carrot&lt;/li&gt;    &lt;li&gt;2 onions&lt;/li&gt;    &lt;li&gt;Parsley&lt;/li&gt;    &lt;li&gt;Grate the vegies&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://david.gardiner.net.au/2009/09/catching-up.html" target="_blank"&gt;Nanna Jean passed away in 2009&lt;/a&gt;, but a few years earlier I'd asked her for the recipe for her pasty slice that I enjoyed so much. The above notes are all that I wrote down. Not very complicated. The pastry ends up like a pie crust, with the filling in the middle. Yum.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/aUXb4NAc_zQ" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-20T16:37:30.152+09:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-9MXOTME3MGg/UXI-sHpZKWI/AAAAAAAAAcE/02c73DKv2mQ/s72-c/DSC_7197%25255B4%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/04/another-birthday.html</feedburner:origLink></entry><entry><title type="text">Speaking on SSDT at Adelaide SQL User Group</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/dVVgJKfTXrY/speaking-on-ssdt-at-adelaide-sql-user.html" /><category term="Faith" /><category term="SQL" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-04-09T08:18:39-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-4618370539850407751</id><content type="html">&lt;p&gt;&lt;a href="http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/" target="_blank"&gt;&lt;img title="TSQL2sDay150x150" style="float: right; display: inline" border="0" alt="TSQL2sDay150x150" align="right" src="http://sqlblog.com/blogs/rob_farley/TSQL2sDay150x150_6DCF9167.jpg" width="170" height="170" /&gt;&lt;/a&gt;Today just happens to be T-SQL Tuesday, and this month's question is &amp;quot;&lt;a href="http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/" target="_blank"&gt;how did you come to love presenting?&lt;/a&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;The first time I presented in front of a group? hmm that's a tough question. Actually now that I think about it, it might have been the first time I did the kids' story as a young teenager teaching Sunday School. Keeping the attention of 5 year olds is a tough gig, but I must have done ok as that's something I still enjoy doing to this day. Sunday school, youth groups, camps, church conferences – they all gave me opportunities to try out &amp;quot;being up the front&amp;quot;.&lt;/p&gt;  &lt;p&gt;Moving more to the IT-side of things, getting opportunities to present at local user groups and events has definitely been a highlight. The last couple of years I've also been able to work in and present at the hands-on-labs at Microsoft's TechEd conferences, which is great fun.&lt;/p&gt;  &lt;p&gt;One great thing about presenting is that it can be a two-way street. Sometimes you end up learning just as much from those you're presenting to as you hope they did from you.&lt;/p&gt;  &lt;p&gt;Speaking of presenting, it's nice to be able to get back to the Adelaide SQL User Group next week and present on &lt;a href="http://msdn.microsoft.com/en-us/data/tools.aspx" target="_blank"&gt;SQL Server Data Tools&lt;/a&gt;. It's something I've been using a bit lately and thought it would be of interest to others too. I've been involved with this group since it first started years ago, but for the last 12 months or so I've been unable to make the Wednesday timeslot in person due to some family commitments, so I'll be looking forward to catching up with some old friends.&lt;/p&gt;  &lt;p&gt;If you're free next Wednesday lunchtime, &lt;a href="http://adssug201304.eventbrite.com.au/#" target="_blank"&gt;feel free to register&lt;/a&gt; and come along. It would be great to see you!&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/dVVgJKfTXrY" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-10T00:48:39.385+09:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/04/speaking-on-ssdt-at-adelaide-sql-user.html</feedburner:origLink></entry><entry><title type="text">Nokia Lumia 920</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/1kqR_g4QWOM/nokia-lumia-920.html" /><category term="Windows Phone" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-04-01T03:54:28-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-8774662640570584527</id><content type="html">&lt;p&gt;Earlier this year, Microsoft ran a new competition offering the first 10 developers to publish 5 new Windows Phone apps a new Nokia Lumia 920 phone (and Lumia 820 and 620s for 4 or 3 apps respectively). Getting 5 new apps developed and published in a relatively short time wasn't easy, but I figured the only way to have a chance at picking up a new phone was to have a go.&lt;/p&gt;  &lt;p&gt;I was pleasantly surprised to find that I'd just managed to scrape through picking up a shiny new Lumia 920 handset, after initially thinking I'd missed the top 10.&lt;/p&gt;  &lt;p&gt;The new phone arrived last Thursday – just in time for me to spend a bit of time over the Easter long weekend to get to know it a bit better (and for the kids to test out it's game-playing functionality!)&lt;/p&gt;  &lt;p&gt;&lt;img title="DSC_6976" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; float: left; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="DSC_6976" align="left" src="http://lh4.ggpht.com/-2tyqDLtYelE/UVlm7CcKKyI/AAAAAAAAAbc/B_NCNl3z2sA/DSC_6976%25255B6%25255D.jpg?imgmax=800" width="389" height="484" /&gt;The phone came in a 'Developer' box. I think this is the same kind that the BUILD conference attendees would have received.&lt;/p&gt;  &lt;br clear="all" /&gt;  &lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; float: right; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Text inside box" align="right" src="http://lh3.ggpht.com/-fydiJhsvCiY/UVlm8RYwpnI/AAAAAAAAAbk/AQAEz_XR-wg/DSC_6978%25255B6%25255D.jpg?imgmax=800" width="644" height="430" /&gt;There's a nice bit of developer-humour inside the box too.&lt;/p&gt;  &lt;br clear="all" /&gt;  &lt;p&gt;&lt;img title="DSC_6981" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; float: left; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="DSC_6981" align="left" src="http://lh3.ggpht.com/-CMvwEUVzXbo/UVlm9EPt6jI/AAAAAAAAAbs/fuhIAhsp3y0/DSC_6981%25255B10%25255D.jpg?imgmax=800" width="644" height="193" /&gt; Just in case there's any doubt, the handset has 'Developer device' and 'Not for Sale' printed under the glass just below the buttons. This means it's also not tied to a particular network provider, which is handy.    &lt;br clear="all" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; float: right; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Nokia Lumia 800 and Lumia 920" align="right" src="http://lh6.ggpht.com/-1O44m3FaVII/UVlm9yjRPQI/AAAAAAAAAb0/hmmPEC9JHMM/DSC_6984%25255B9%25255D.jpg?imgmax=800" width="580" height="484" /&gt;Here's a side-by-side of my Lumia 800 next to the Lumia 920. You can see how much larger the 920 is.    &lt;br clear="all" /&gt;&lt;/p&gt;  &lt;h2&gt;Initial thoughts&lt;/h2&gt;  &lt;p&gt;The screen is nice and large with bright vibrant colours. Reminds me of my old Omnia 7's AMOLED display a bit, though according to the specs is not only &lt;a href="http://www.phonearena.com/phones/compare/Samsung-Omnia-7,Nokia-Lumia-920/phones/4932,7471" target="_blank"&gt;a larger screen, it also has a higher DPI.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The case finish is quite slick. In fact maybe a little too so. The 800 came with a rubber/plastic shell that not only helped protect the phone, but also made it a bit 'grippier'. I think I might investigate getting something similar for the 920.&lt;/p&gt;  &lt;p&gt;The 920 is a true quad-band phone, supporting 850, 900, 1900, 2100 MHz 3G frequencies. My unbranded Lumia 800 doesn't support 850, though &lt;a href="http://relliemaus.blogspot.com" target="_blank"&gt;Narelle&lt;/a&gt;'s 800 (being Vodafone-branded) does. As a bonus, the 920 also supports LTE which will be handy when &lt;a href="http://www.vodafone.com.au/aboutvodafone/network/4g" target="_blank"&gt;Vodafone rolls that out soon&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://laany.blogspot.com.au/" target="_blank"&gt;Ben&lt;/a&gt; had mentioned he's experienced some reliability issues with his 920, and unfortunately I'm seeing similar problems already. I've seen my 920 spontaneously restart while I was using it once, and seen evidence of it restarting a couple of other times already. That's not so encouraging and gives me cause to question whether to completely retire the 800 and use the 920.&lt;/p&gt;  &lt;p&gt;Google is being a bit annoying with Microsoft at the moment – turning off Exchange ActiveSync access to GMail &amp;amp; Calendars in a few months. Interesting to see if the trick of browsing to &lt;a title="https://m.google.com/sync/settings/iconfig/welcome?source=mobileproducts&amp;amp;hl=en" href="https://m.google.com/sync/settings/iconfig/welcome?source=mobileproducts&amp;amp;hl=en"&gt;https://m.google.com/sync/settings/iconfig/welcome?source=mobileproducts&amp;amp;hl=en&lt;/a&gt; (with a UserAgent set to iPhone) still works. It is making me seriously consider moving my email over to Outlook.com instead.&lt;/p&gt;  &lt;p&gt;Battery life seems ok, but I have noticed that a serious bout of gaming by the kids takes it toll. One comment from our resident gamer was disappointment that his saved games weren't &lt;/p&gt;  &lt;p&gt;I do like the &lt;a href="http://www.windowsphone.com/en-au/how-to/wp8/basics/set-up-kids-corner" target="_blank"&gt;Kid's Corner&lt;/a&gt; feature – you can set up some games and apps that kids can play (and nothing else).&lt;/p&gt;  &lt;p&gt;The &lt;a href="http://www.windowsphone.com/en-AU/how-to/wp8/basics/wallet" target="_blank"&gt;Wallet&lt;/a&gt; is also a good idea. I've enabled a separate PIN to ensure no one accidentally buys new games or apps on my phone.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/1kqR_g4QWOM" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-01T21:24:28.117+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-2tyqDLtYelE/UVlm7CcKKyI/AAAAAAAAAbc/B_NCNl3z2sA/s72-c/DSC_6976%25255B6%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/04/nokia-lumia-920.html</feedburner:origLink></entry><entry><title type="text">Loaded Projects–A Visual Studio extension</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/rUxOc5EmqZY/loaded-projectsa-visual-studio-extension.html" /><category term="DotNet" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-03-19T05:20:18-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-178501339197419196</id><content type="html">&lt;p&gt;&lt;img title="Attribution: Forklift from The Noun Project - http://thenounproject.com/noun/forklift/#icon-No352" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; float: right; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Forklift image" align="right" src="http://lh6.ggpht.com/-eUronX6Rk54/UUhX8PfFsfI/AAAAAAAAAac/oG_KVo7RQG8/noun_project_352%25255B4%25255D.png?imgmax=800" width="200" height="158" /&gt;I've just published &lt;a href="http://visualstudiogallery.msdn.microsoft.com/0c0b75ba-0f56-4809-b0b6-409f777982de" target="_blank"&gt;Loaded Projects&lt;/a&gt; to the Visual Studio Gallery.&lt;/p&gt;  &lt;p&gt;The inspiration for this extension was having to deal with solutions that contained a lot of projects (from 50 to 150 and beyond). Often you know that many of the projects aren't relevant to the particular feature or bug that you're working on and unloading those projects can give you a big performance win. Visual Studio will be more responsive and the time to build and debug will be shortened.&lt;/p&gt;  &lt;p&gt;The problem comes when you need to move to a different area of the solution. You now need to reload some of the previously unloaded projects, but also unload some others that are now no longer significant. Wouldn't it be great if you could save a record of all the unloaded projects so that you could reuse it again later?&lt;/p&gt;  &lt;p&gt;Enter &lt;strong&gt;Loaded Projects&lt;/strong&gt;!&lt;/p&gt;  &lt;p&gt;Click on the 'Loaded Projects' item in the context menu after right-clicking on a solution.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-M1OzSmYkhbU/UUhX8g28XcI/AAAAAAAAAak/R5yquB2KLys/s1600-h/Solution%252520context%252520menu%25255B3%25255D.png"&gt;&lt;img title="Solution context menu" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="Solution context menu" src="http://lh6.ggpht.com/-qmk8-N9TPkI/UUhX9peDB-I/AAAAAAAAAas/OA-XyGGSwEU/Solution%252520context%252520menu_thumb%25255B1%25255D.png?imgmax=800" width="407" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;A dialog window appears, from which you can save the current set of loaded/unloaded projects as a new profile,&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-qEam-1X63RY/UUhX-NbTWZI/AAAAAAAAAa0/C1lGHEl2yno/s1600-h/Add%252520new%252520profile%25255B3%25255D.png"&gt;&lt;img title="Add new profile" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="Add new profile" src="http://lh4.ggpht.com/--RdSIGnYVDY/UUhX-xyYuqI/AAAAAAAAAa8/QGk2eZ82jvQ/Add%252520new%252520profile_thumb%25255B1%25255D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;select an existing profile and load that, or choose to delete a profile you no longer need.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-qardTaV37aA/UUhX_V6gFtI/AAAAAAAAAbE/UmfNrnwkqKc/s1600-h/Select%252520profile%25255B3%25255D.png"&gt;&lt;img title="Select profile" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="Select profile" src="http://lh6.ggpht.com/-u8D0SGS8ZxM/UUhYANS1q8I/AAAAAAAAAbM/GOk1yLWnxzA/Select%252520profile_thumb%25255B1%25255D.png?imgmax=800" width="576" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If you like the extension, please write up a review on the gallery page.&lt;/p&gt;  &lt;p&gt;I've put the source code up on &lt;a href="https://github.com/flcdrg/Gardiner.LoadedProjects" target="_blank"&gt;GitHub&lt;/a&gt;, so make use of the &lt;a href="https://github.com/flcdrg/Gardiner.LoadedProjects/issues" target="_blank"&gt;Issues&lt;/a&gt; page to submit any bugs or feature requests, and of course pull requests are always welcome.&lt;/p&gt;      &lt;p&gt;The extension initially just supports Visual Studio 2012. If there is enough interest then it should be pretty straight-forward to back-port it to to 2010 too.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/rUxOc5EmqZY" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-19T22:50:18.490+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-eUronX6Rk54/UUhX8PfFsfI/AAAAAAAAAac/oG_KVo7RQG8/s72-c/noun_project_352%25255B4%25255D.png?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/03/loaded-projectsa-visual-studio-extension.html</feedburner:origLink></entry><entry><title type="text">Windows 8 Media Center (there and back again)</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/LrxqPY57Z1g/windows-8-media-center-there-and-back.html" /><category term="Hardware" /><category term="Media Center" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-01-31T03:02:10-08:00</updated><id>tag:blogger.com,1999:blog-10782889.post-3908886983484805901</id><content type="html">&lt;p&gt;Our Media Center PC has been running reasonably well since I built it &lt;a href="http://david.gardiner.net.au/2008/07/building-my-home-theatre-pc.html" target="_blank"&gt;way back in July 2008&lt;/a&gt;. Wow – almost 5 years old – actually that probably explains the state of the remote control (currently being held together with duct tape!)&lt;/p&gt;  &lt;p&gt;Anyway after successfully upgrading &lt;a href="http://david.gardiner.net.au/2010/04/my-new-laptop-dell-studio-xps-1645.html" target="_blank"&gt;my laptop&lt;/a&gt; and reprovisioned desktop (formerly the &lt;a href="http://david.gardiner.net.au/2010/02/assembling-hyper-v-server.html" target="_blank"&gt;Hyper-V/Homeserver&lt;/a&gt;) to Windows 8 I decided I'd update the Media Center as well.&lt;/p&gt;  &lt;p&gt;Upgrading was relatively painless in itself. I took a backup of the Windows 7 install (just in case) and then did a fresh install of Windows 8 x64 and then activated my free Media Centre license. I'd previously been running 32 bit Windows 7, but didn't anticipate any problems.&lt;/p&gt;  &lt;p&gt;One interesting side-effect of using the 'English (British)' install of Windows 8 was that some of the terminology in Media Centre was slightly different. What was called &amp;quot;original air date&amp;quot; was now &amp;quot;original date broadcast&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-tFaYvwAMIFo/UQpPI4lgZYI/AAAAAAAAAZw/WlGFMYFd6hs/s1600-h/win%2525208%252520mce%252520recorded%252520tv%25255B3%25255D.jpg"&gt;&lt;img title="win 8 mce recorded tv" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="win 8 mce recorded tv" src="http://lh5.ggpht.com/-upEKhIiriHI/UQpPJ-9rMWI/AAAAAAAAAZ4/m_kYtqV_9kQ/win%2525208%252520mce%252520recorded%252520tv_thumb%25255B1%25255D.jpg?imgmax=800" width="644" height="362" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And predictably, &amp;quot;Program Details&amp;quot; became &amp;quot;Programme Details&amp;quot; (though because that was now wider than the pop-up menu, the text would scroll side-to-side so you could read all of it!)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-7DDlNQutPs0/UQpPK4N6f0I/AAAAAAAAAaA/tQfJzqz-9-M/s1600-h/win%2525208%252520mce%252520guide%252520settings%25255B3%25255D.jpg"&gt;&lt;img title="win 8 mce guide settings" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="win 8 mce guide settings" src="http://lh3.ggpht.com/-wzqqIUp4aF0/UQpPMMhYtiI/AAAAAAAAAaI/McfBLygam3g/win%2525208%252520mce%252520guide%252520settings_thumb%25255B1%25255D.jpg?imgmax=800" width="644" height="364" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;So that was all well and good, but there were a few things that didn't work so well.&lt;/p&gt;  &lt;p&gt;Presumably because of the new Windows 8 start screen, there is no longer a setting to make Media Center start at Windows Startup (kind of handy for a dedicated Media Center PC). The workaround for that was to create a batch file that is run via a scheduled task triggered at login (a bit of a hack).&lt;/p&gt;  &lt;p&gt;The other problem that became quickly apparent was that despite Windows 8 generally having a better reputation for performance than Windows 7, in this instance it seemed that there were some specific problems. Audio for live TV was consistently getting out of sync with the video. I suspected that the hardware may be struggling to keep up with pushing the data around. Only 2GB of ram and using the original on-board video adapter might be an issue.&lt;/p&gt;  &lt;p&gt;I thought I'd try replacing one thing at a time, so swapped in a newer video card (borrowed from the desktop box). This seemed to solve the audio sync problem, so I went and purchased a separate card – an nVidia GeForce 630 card. Installing this was straight-forward, but then revealed a new problem. For some reason the video output from the nVidia card was too wide for our TV. Despite using HDMI and setting the screen to 1920x1080 (the same resolution as the onboard ATI video card was using), I couldn't get it to shrink. Unfortunately our TV didn't have any controls to change the size of the picture either.&lt;/p&gt;  &lt;p&gt;The next problem became evident later on. Almost every day the first time the Media Center PC was turned on I was greeted with a &amp;quot;This computer has unexpectedly restarted&amp;quot; message. Searching the event log revealed a consistent errors such as:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The computer has rebooted from a bugcheck.&amp;#160; The bugcheck was: 0x0000009f (0x0000000000000003, 0xfffffa8001cc2880, 0xfffff80007108b30, 0xfffffa8007050360). A dump was saved in: C:\Windows\MEMORY.DMP. Report Id: 012813-315480-01.&lt;/li&gt;    &lt;li&gt;Windows failed to resume from hibernate with error status 0xC0000001&lt;/li&gt;    &lt;li&gt;The system firmware has changed the processor's memory type range registers (MTRRs) across a sleep state transition (S4). This can result in reduced resume performance.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Initially the errors related to 'Sleep' so I switched over to using Hibernate but as you can see that didn't improve things.&lt;/p&gt;  &lt;p&gt;After enduring two weeks of this I decided enough was enough. After doing another backup (so that I could give Windows 8 another try when some of these issues might have been resolved), I dropped in the Windows 7 Recovery CD and restored back to Windows 7 (taking out the nVidia card at the same time).&lt;/p&gt;  &lt;p&gt;So while Windows 8 has been great for the other computers in the house, I think we'll stick with Windows 7 Media Center for now.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/LrxqPY57Z1g" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-31T21:32:10.205+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-upEKhIiriHI/UQpPJ-9rMWI/AAAAAAAAAZ4/m_kYtqV_9kQ/s72-c/win%2525208%252520mce%252520recorded%252520tv_thumb%25255B1%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">8</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/01/windows-8-media-center-there-and-back.html</feedburner:origLink></entry><entry><title type="text">Tour Down Under 2013</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/2BBwmSmXe5s/tour-down-under-2013.html" /><category term="Health" /><category term="Cycling" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2013-01-24T21:40:48-08:00</updated><id>tag:blogger.com,1999:blog-10782889.post-8436810708623129955</id><content type="html">&lt;p&gt;For the past few years I've always taken part in the community challenge ride which is part of the &lt;a href="http://www.tourdownunder.com.au" target="_blank"&gt;Tour Down Under&lt;/a&gt;. Sadly it wasn't to be this year. A couple of weeks ago I was out with the &lt;a href="http://mudsweatandgears.org.au/" target="_blank"&gt;Mud, Sweat and Gears&lt;/a&gt; guys on a training ride and somehow managed to injure my back on the final ride home.&lt;/p&gt;  &lt;p&gt;While not as bad as when I &lt;a href="http://david.gardiner.net.au/2009/03/aspnet-mvc-10-and-ouch.html" target="_blank"&gt;quite badly hurt it&lt;/a&gt; &lt;a href="http://david.gardiner.net.au/2009/08/ouch-again.html" target="_blank"&gt;a few years ago&lt;/a&gt;, it still has meant time off work and a fair bit of lying down to give it a chance to improve.&lt;/p&gt;  &lt;p&gt;It was great weather for riding today. I'm disappointed I missed out (not to mention the Tanunda bakery too), but hopefully I'll be in a healthier state for next year's ride.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/2BBwmSmXe5s" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-25T16:10:48.163+10:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://david.gardiner.net.au/2013/01/tour-down-under-2013.html</feedburner:origLink></entry><entry><title type="text">Visual Studio 2012 thank you</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/kDqyA-8kgE4/visual-studio-2012-thank-you.html" /><category term="DotNet" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-12-27T20:55:08-08:00</updated><id>tag:blogger.com,1999:blog-10782889.post-740785990642319709</id><content type="html">&lt;p&gt;There I was about to enjoy a nice sleep-in on the first day of my holidays on Monday when the doorbell rang. It was a courier delivering a nice thankyou present from Microsoft for helping test out and provide feedback on Visual Studio 2012.&lt;/p&gt;  &lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Visual Studio Thank You box" src="http://lh5.ggpht.com/-1XViXVth4Gs/UN0mDme5pJI/AAAAAAAAAY0/RCNm4E3buD0/DSC_6702%25255B8%25255D.jpg?imgmax=800" width="244" height="183" /&gt;&lt;/p&gt;  &lt;p&gt;Opening up this large box revealed a smaller gift inside&lt;/p&gt;  &lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Visual Studio Thank You box opened" src="http://lh5.ggpht.com/-Z0k3SXWziQs/UN0mFFXLAAI/AAAAAAAAAY8/XofdlRg9nx0/DSC_6704%25255B4%25255D.jpg?imgmax=800" width="164" height="244" /&gt;&lt;/p&gt;  &lt;p&gt;It's a shiny glass cube with writing etched in the middle of it..&lt;/p&gt;  &lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Visual Studio 2012 Crystal Cube" src="http://lh5.ggpht.com/-gNHatvWKXdA/UN0mHESjXtI/AAAAAAAAAZE/R2UEX7I28SU/DSC_6705%25255B5%25255D.jpg?imgmax=800" width="548" height="484" /&gt;&lt;/p&gt;  &lt;p&gt;And it turns out this is a nice match to a &lt;a href="http://david.gardiner.net.au/2007/12/visual-studio-cube.html" target="_blank"&gt;similar present I received a few years ago&lt;/a&gt; for testing Visual Studio 2008 (which means I must have missed out 2010). The 2012 version is an identical size, but has one corner bevelled off so it can sit on that corner. The new cube also has the latest rendition of the Visual Studio logo.&lt;/p&gt;  &lt;p&gt;&lt;img title="DSC_6706" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Visual Studio 2008 and 2012 cubes side by side" src="http://lh5.ggpht.com/-7Z3AZ_4-gYk/UN0mIretIWI/AAAAAAAAAZM/yKcHP-nI78U/DSC_6706%25255B4%25255D.jpg?imgmax=800" width="244" height="142" /&gt;&lt;/p&gt;  &lt;p&gt;Putting them together, yes they are the same size!&lt;/p&gt;  &lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="2012 cube on top of 2008 cube" src="http://lh3.ggpht.com/-PwByz4rxDgs/UN0mKUGIrkI/AAAAAAAAAZU/3nVQWbnN5rE/DSC_6707%25255B4%25255D.jpg?imgmax=800" width="172" height="244" /&gt;&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/kDqyA-8kgE4" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-28T15:25:08.878+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-1XViXVth4Gs/UN0mDme5pJI/AAAAAAAAAY0/RCNm4E3buD0/s72-c/DSC_6702%25255B8%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/12/visual-studio-2012-thank-you.html</feedburner:origLink></entry><entry><title type="text">I know that it's Christmas..</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/QIVSvYGafDA/i-know-that-it-christmas.html" /><category term="Music" /><category term="Family" /><category term="Faith" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-12-25T15:09:09-08:00</updated><id>tag:blogger.com,1999:blog-10782889.post-738940169133371923</id><content type="html">&lt;h2&gt;Because people will even dance to some guy trying to play the 'cello..&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-GQyzPgYUImQ/UNoxb5VTW0I/AAAAAAAAAWw/TLFEp77Njfo/s1600-h/DSC_6601%25255B3%25255D.jpg"&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="David practising his &amp;#39;cello" src="http://lh3.ggpht.com/-yg7TGjQWULU/UNoxdSQ_VrI/AAAAAAAAAW0/_2RsJiUCb2w/DSC_6601_thumb.jpg?imgmax=800" width="244" height="164" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Always nice to have enthusiasm when you're doing a sound check&lt;img class="wlEmoticon wlEmoticon-smile" style="border-top-style: none; border-left-style: none; border-bottom-style: none; border-right-style: none" alt="Smile" src="http://lh4.ggpht.com/-pvc_Sfei_kI/UNoxe-1-NQI/AAAAAAAAAXA/7SX9zDIvgGU/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" /&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This year we visited our friends across town who were organising a Christmas Eve service at &lt;a href="http://playforduc.org.au" target="_blank"&gt;Playford Uniting&lt;/a&gt;. I was also able to be part of their band playing a few Christmas carols.&lt;/p&gt;  &lt;h2&gt;Because the &lt;a href="https://www.facebook.com/pages/Road-to-Christmas/240458206018078?ref=ts&amp;amp;fref=ts" target="_blank"&gt;Road to Christmas&lt;/a&gt; is on again..&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-jCQ5OM2Axc4/UNoxkid10vI/AAAAAAAAAXI/qm2LGrO0Ae4/s1600-h/image%25255B8%25255D.png"&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Actors being King Herod and his entourage" src="http://lh6.ggpht.com/-ft_dvj6_WdY/UNoxmmrFqUI/AAAAAAAAAXQ/Yvd0p-Q8PpA/image_thumb%25255B2%25255D.png?imgmax=800" width="244" height="188" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And even made the &lt;a href="http://au.news.yahoo.com/video/national/watch/54453f1b-324c-3bf5-9e3b-6a6d4efeac25/keep-the-faith-at-christmas/" target="_blank"&gt;Channel Seven news&lt;/a&gt;. Over the 3 evenings that this runs there's probably a few thousand people from the local community (and beyond) that come and experience sights, sounds, smells and tastes of Bethlehem. It's a great atmosphere and lots of fun too.&lt;/p&gt;  &lt;h2&gt;Because the cactus that flowers at Christmas is in flower..&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-EHmFDwzPp0s/UNoxoihjRII/AAAAAAAAAXY/Ls-rRl43wak/s1600-h/DSC_6605%25255B3%25255D.jpg"&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Cactus flower" src="http://lh5.ggpht.com/-DldUhmLK7rg/UNoxqI66vjI/AAAAAAAAAXc/jNu9GUZDLbQ/DSC_6605_thumb.jpg?imgmax=800" width="244" height="164" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;and the flowers came out first in the morning on Christmas day this year too.&lt;/p&gt;  &lt;h2&gt;Because the table is set for Christmas lunch..&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-4SY2IY47Hr8/UNoxrqJv_NI/AAAAAAAAAXo/PXz11xXN8Jc/s1600-h/DSC_6625%25255B3%25255D.jpg"&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Table set for Christmas lunch" src="http://lh3.ggpht.com/-umN9GvvnYiY/UNoxtPMIeGI/AAAAAAAAAXw/b16WPVQQiOg/DSC_6625_thumb.jpg?imgmax=800" width="164" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;Because &lt;a href="http://relliemaus.blogspot.com" target="_blank"&gt;Narelle&lt;/a&gt; cooked up a storm..&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-5_YZnZyRF24/UNoxzMOEEqI/AAAAAAAAAX4/dt9jUBJFY6k/s1600-h/image%25255B14%25255D.png"&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Christmas lunch ready to eat" src="http://lh4.ggpht.com/-UZT8odyWa58/UNox03maiuI/AAAAAAAAAYA/D5Q1t44REV0/image_thumb%25255B4%25255D.png?imgmax=800" width="244" height="186" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Yummo&lt;/p&gt;  &lt;h2&gt;Because the pudding is ready..&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-ir4qei8Adnw/UNox5tnlOhI/AAAAAAAAAYI/CCtCg0V2_70/s1600-h/image%25255B2%25255D.png"&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Christmas pudding" src="http://lh3.ggpht.com/-dUqAZTUeu3Q/UNox7gxCYRI/AAAAAAAAAYQ/1xNm8bOetLA/image_thumb.png?imgmax=800" width="244" height="115" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Extra yummo.&lt;/p&gt;            &lt;h2&gt;Because Mum &amp;amp; Dad gave me a new Super Soaker!&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-MRCtIwQRW8E/UNoyBxrWBhI/AAAAAAAAAYY/Q8riebEdsS0/s1600-h/image%25255B11%25255D.png"&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="David unwrapping a super-soaker water pistol" src="http://lh5.ggpht.com/-ikLOfDzOXM0/UNoyEZ6de-I/AAAAAAAAAYg/Kl8jVlST_Tg/image_thumb%25255B3%25255D.png?imgmax=800" width="244" height="193" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;So it turns out that the &lt;a href="http://www.cfs.sa.gov.au" target="_blank"&gt;CFS&lt;/a&gt; actually recommend having one of these around the house. If you did have a bushfire go through then then a key thing is to put out any spotfires in gutters or roof spaces once the main fire front has passed. They reckon a super soaker is good as you can pop your head up through the manhole into the ceiling and squirt any smouldering embers that might have found their way inside.&lt;/p&gt;  &lt;p&gt;The other benefit is that it means I can now compete with my son's soaker he got as a &lt;a href="http://www.lobsterpot.com.au" target="_blank"&gt;LobsterPot&lt;/a&gt; Christmas present a couple of years ago (thanks &lt;a href="http://sqlblog.com/blogs/rob_farley/" target="_blank"&gt;Rob&lt;/a&gt;!)&lt;/p&gt;    &lt;h2&gt;Because it is a chance to take a breath..&lt;/h2&gt;  &lt;p&gt;Borrowing from the theme of Pete's message at the Christmas Eve service. After a busy and in many ways difficult year this year it is good to have a couple of weeks off and take a breath (or two).&lt;/p&gt;  &lt;p&gt;Time to spend with family. Time to sleep in (maybe). Time to do a bit of riding in preparation for the &lt;a href="http://www.tourdownunder.com.au/event-details.htm" target="_blank"&gt;Tour Down Under&lt;/a&gt; in a few weeks. Time to reflect on the year that was and the year that is to come. Time to appreciate the extraordinary gift that is the real reason for celebrating Christmas.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/QIVSvYGafDA" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-26T09:39:09.091+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-yg7TGjQWULU/UNoxdSQ_VrI/AAAAAAAAAW0/_2RsJiUCb2w/s72-c/DSC_6601_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/12/i-know-that-it-christmas.html</feedburner:origLink></entry><entry><title type="text">The Email dilemma</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/EWRsON-0o6o/the-email-dilemma.html" /><category term="Windows Phone" /><category term="Domain hosting" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-12-16T13:30:00-08:00</updated><id>tag:blogger.com,1999:blog-10782889.post-73668700468290756</id><content type="html">&lt;p&gt;Following on from my &lt;a href="http://david.gardiner.net.au/2012/12/dmarc-and-spf-updates.html" target="_blank"&gt;investigations into services that summarise DMARC reports&lt;/a&gt;, I've come to the conclusion that the reason for the warnings about email from hotmail.com is because even though the account on hotmail is configured to send as @gardiner.net.au, it still is sending the email officially using the @hotmail.com sender address.&lt;/p&gt;  &lt;p&gt;While it passes the SPF rule (that permits the hotmail email servers to send @gardiner.net.au emails), this explains why DMARC warns that the email is &amp;quot;unaligned&amp;quot; – eg. the email says it's from @hotmail.com instead of @gardiner.net.au.&lt;/p&gt;  &lt;p&gt;The problem is that while Hotmail does support adding additional email accounts, it only lets you configure ability to pull emails (via POP3) – you can't enter a SMTP server to send emails. Sent emails always go out via the Hotmail SMTP servers.&lt;/p&gt;  &lt;p&gt;One solution might be to migrate the Hotmail user over to GMail and configure GMail to pull their @hotmail.com email instead (and unlike Hotmail, GMail can be configured to use a different SMTP server for addtional email accounts).&lt;/p&gt;  &lt;p&gt;But just as I was considering this option, I came across the news that &lt;a href="http://winsupersite.com/mobile-devices/google-throws-down-gauntlet-kills-eas-support" target="_blank"&gt;Google is discontinuing support for Exchange ActiveSync&lt;/a&gt;! Why does this matter? Well as a Windows Phone user this has the potential to be a show stopper. ActiveSync is the protocol used to sync my GMail, Contacts and Calendar between my phone and Google. &lt;a href="http://googleblog.blogspot.com.au/2012/12/winter-cleaning.html" target="_blank"&gt;Whilst it does say&lt;/a&gt; that existing configured devices will continue to function, too bad if I change phones in the future.&lt;/p&gt;  &lt;p&gt;So another option might be to switch my domain's email over to Hotmail instead of staying with GMail, unless Microsoft can release updates for Windows Phone that restore compatibility with GMail after January 31st.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/EWRsON-0o6o" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-17T08:00:00.555+10:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/12/the-email-dilemma.html</feedburner:origLink></entry><entry><title type="text">Passed 70-480</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/RD0rd2o-ayU/passed-70-480.html" /><category term="Training and Certification" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-12-15T18:41:51-08:00</updated><id>tag:blogger.com,1999:blog-10782889.post-5286898523856940358</id><content type="html">&lt;p&gt;Last Thursday, I took advantage of the &lt;a href="http://www.microsoftvirtualacademy.com/tracks/developing-html5-apps-jump-start" target="_blank"&gt;promotion&lt;/a&gt; that Microsoft is running (until 31st March 2013) to give everyone a chance to take the &lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-480" target="_blank"&gt;70-480 Programming in HTML5 with JavaScript and CSS3&lt;/a&gt; exam for free, and was pleased to find that I passed (scoring 860).&lt;/p&gt;  &lt;p&gt;Completing this means I now gain the following certifications:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/mcsd-web-apps-certification.aspx" target="_blank"&gt;MCSD: Web Applications&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/specialist-certification.aspx" target="_blank"&gt;Programming in HTML5 with JavaScript and CSS3 Specialist&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;As an MCT, it also means I could now teach courses in those areas too.&lt;/p&gt;  &lt;p&gt;It is nice to pick up the MCSD. This is the replacement for what was previously the &lt;a href="http://www.microsoft.com/learning/en/us/mcpd-certification.aspx" target="_blank"&gt;MCPD&lt;/a&gt; certification. I had qualified for &amp;quot;ASP.NET Developer 3.5&amp;quot;, but never got around to completing the .NET 4.0 version (due to not having taken the &lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?ID=70-513" target="_blank"&gt;WCF exam&lt;/a&gt;).&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/RD0rd2o-ayU" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-16T13:11:51.295+10:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/12/passed-70-480.html</feedburner:origLink></entry><entry><title type="text">DMARC and SPF updates</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/Kry1t5ntWwo/dmarc-and-spf-updates.html" /><category term="Security" /><category term="Domain hosting" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-12-12T00:38:55-08:00</updated><id>tag:blogger.com,1999:blog-10782889.post-8603722561949933726</id><content type="html">&lt;p&gt;A while back I added a &lt;a href="http://www.dmarc.org/overview.html" target="_blank"&gt;DMARC&lt;/a&gt; entry in DNS for my @gardiner.net.au domain. The existence of this entry then means I get daily email reports which include data from a number of email servers (eg. Google, Yahoo) about emails received from my domain and whether they were regarded as legitimate or spam. I don't receive copies of the emails themselves – just a summary of how many emails the destination site thought were legitimate and how many were rejected because they thought they were spam.&lt;/p&gt;  &lt;p&gt;Microsoft have &lt;a href="http://blogs.office.com/b/microsoft-outlook/archive/2012/12/10/outlook-com-increases-security-with-support-for-dmarc-and-ev-certificates.aspx" target="_blank"&gt;just announced&lt;/a&gt; that they too are now sending DMARC reports, so this prompted me to review my current SPF and DMARC settings to ensure that they're working properly.&lt;/p&gt;  &lt;p&gt;The trouble with the DMARC reports are that they come via email with an attached zipped .XML file, which means you can't just view them... you have to download them, unzip them, then open it in IE (or Notepad), and scan through the XML to try and make sense of it. Wouldn't it be nice if there was a tool or service that summarised this for you?&lt;/p&gt;  &lt;p&gt;Well it turns out there are some. I've decided try try two out - &lt;a title="http://dmarcian.com" href="http://dmarcian.com"&gt;http://dmarcian.com&lt;/a&gt; and &lt;a href="http://www.dmarcanalyzer.com" target="_blank"&gt;DMARC Analyzer&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Both of these services allow you to upload existing DMARC reports or set up email forwarding to automatically send the reports directly. You can then log in and view a summary.&lt;/p&gt;  &lt;p&gt;I uploaded the data from the last 7 days. Here's some examples of the kind of report you get from each service:&lt;/p&gt;  &lt;h2&gt;dmarcian.com&lt;/h2&gt;  &lt;p&gt;&lt;img title="" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="Graph of DMARC results for last 7 days" src="http://lh4.ggpht.com/-iFUbGIXxKDA/UMhCkatqjlI/AAAAAAAAAWM/oSLKFQyY_cs/image%25255B4%25255D.png?imgmax=800" width="1110" height="699" /&gt;&lt;/p&gt;  &lt;p&gt;The details for data from the 9th of December:&lt;/p&gt;  &lt;p&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-H1h8iJHr3mw/UMhClic32RI/AAAAAAAAAWU/zAeeldvruVw/image%25255B16%25255D.png?imgmax=800" width="897" height="533" /&gt;&lt;/p&gt;  &lt;h5&gt;GARDINER.NET.AU - 3 msgs, 3 IPs&lt;/h5&gt;  &lt;li&gt;   &lt;h6&gt;SPF-Authorized Servers - 2 groups , 2 msgs, 2 IPs, 100% auth'd&lt;/h6&gt; &lt;/li&gt;  &lt;li&gt;   &lt;h6&gt;Other Servers - 1 group , 1 msg, 1 IP, 0% auth'd&lt;/h6&gt;    &lt;li&gt;     &lt;h6&gt;65.54.190.25 (bay0-omc1-s14.bay0.hotmail.com), 1 msg, 0% auth'd&lt;a href="http://www.senderbase.org/senderbase_queries/detailip?search_string=65.54.190.25"&gt;&lt;img src="http://dmarcian.com/static/images/flags/us.png" /&gt;&lt;/a&gt;&lt;/a&gt;&lt;/h6&gt;      &lt;li&gt;1 msg, disposition: None (monitor only) [none], DMARC-DKIM: fail (raw: none, d=none), DMARC-SPF: fail (raw: pass, dom: hotmail.com) &lt;/li&gt;   &lt;/li&gt; &lt;/li&gt;  &lt;h2&gt;DMARC Analyzer&lt;/h2&gt;  &lt;p&gt;&lt;img title="" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Graph of DMARC results for last 7 days" src="http://lh3.ggpht.com/-eSfse6PIxRY/UMhCmyd7vhI/AAAAAAAAAWc/WjlHjY_aHMY/image%25255B22%25255D.png?imgmax=800" width="906" height="792" /&gt;&lt;/p&gt;  &lt;p&gt;I was curious that both of them flagged a potential problem with an email. Sometimes this can be because it is actually spam – an email sent from an address that was not part of the authorised sender list as defined in the SPF record. But in this case, the error indicated that the email did come from a legitimate source.&lt;/p&gt;  &lt;p&gt;Next step to confirm that my SPF record is correct. A quick trip to the &lt;a href="http://www.kitterman.com/spf/validate.html" target="_blank"&gt;SPF Record Testing Tools&lt;/a&gt; confirmed that yes, my SPF record was in effect, but that there was also an error message I hadn't noticed previously:&lt;/p&gt;  &lt;p&gt;&lt;font face="Consolas"&gt;PermError SPF Permanent Error: Too many DNS lookups&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;So it turns out that there are &lt;a href="http://digitalshan.wordpress.com/2010/07/01/spf-records/" target="_blank"&gt;limits on how many DNS lookups are allowed for SPF records&lt;/a&gt;. 10 to be precise.&lt;/p&gt;  &lt;p&gt;My old SFP record was:&lt;/p&gt;  &lt;p&gt;&lt;font face="Consolas"&gt;v=spf1 a mx ip4:203.59.1.0/24 include:aspmx.googlemail.com include:hotmail.com include:gmail.com include:live.com -all&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;It does looks like there's some redundancy there with two similar includes covering GMail and another two for Hotmail/Live. Simplifying things down (and hopefully not losing any accuracy) I've changed the record to this:&lt;/p&gt;  &lt;p&gt;&lt;font face="Consolas"&gt;v=spf1 a mx ip4:203.59.1.0/24 include:hotmail.com include:_spf.google.com ~all&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;This now passes validation. Note that I've reverted back to ~all (a 'Soft' fail which means that recipients won't outright reject emails if there is a problem with the new rule). I'll switch back to -all (a 'hard' fail) after a week or two once I'm happy that nothing is broken!&lt;/p&gt;    &lt;p&gt;I'll also be interested to see if the DMARC reports contain passing results for the hotmail emails.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/Kry1t5ntWwo" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-12T19:08:55.065+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-iFUbGIXxKDA/UMhCkatqjlI/AAAAAAAAAWM/oSLKFQyY_cs/s72-c/image%25255B4%25255D.png?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/12/dmarc-and-spf-updates.html</feedburner:origLink></entry><entry><title type="text">Passed 4, failed 3</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/7a6Q7_xZHCQ/passed-4-failed-3.html" /><category term="Training and Certification" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-10-31T02:33:11-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-3102291760452370087</id><content type="html">&lt;p&gt;It seems my 'perfect record' of passing Microsoft exams has finally come to an end.&lt;/p&gt;  &lt;p&gt;During August and September a large number of new exams were made available for 'beta' testing before their public release. Somehow I managed to take 7 exams over this time – most relating to developing Windows 8 applications.&lt;/p&gt;  &lt;p&gt;The final results are now published I've passed:&lt;/p&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-483#tab2" target="_blank"&gt;70-483&lt;/a&gt;: Programming in C#&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-485#tab2" target="_blank"&gt;70-485&lt;/a&gt;: Advanced Windows Store App Development using C#&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-486#tab2" target="_blank"&gt;70-486&lt;/a&gt;: Developing ASP.NET MVC 4 Web Applications&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-487#tab2" target="_blank"&gt;70-487&lt;/a&gt;: Developing Windows Azure and Web Services&lt;/li&gt;  &lt;p&gt;But unfortunately I didn't do so well for the remainder:&lt;/p&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-481#tab2" target="_blank"&gt;70-481&lt;/a&gt;: Essentials of Developing Windows Store Apps using HTML5 and JavaScript&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-482#tab2" target="_blank"&gt;70-482&lt;/a&gt;: Advanced Windows Store App Development using HTML5 and JavaScript&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-484#tab2" target="_blank"&gt;70-484&lt;/a&gt;: Essentials of Developing Windows Store Apps using C#&lt;/li&gt;  &lt;p&gt;Failing the HTML5 exams wasn't much of a surprise. I really didn't know the technology very well at all, so it was reasonable that I didn't pass. I figured that it would still be a good learning experience to do the exams, and hopefully I'd pick up a few concepts along the way.&lt;/p&gt;  &lt;p&gt;70-484 was a bit more disappointing, but I'm pleased that by the time I took 70-485 I'd had a chance to spend a bit more time playing around with developing for Windows 8 – and that obviously paid off. I think I would like to do that one again in a few months, most likely after I've published some apps to the Windows 8 Store – that should then qualify me for the &lt;a href="http://www.microsoft.com/learning/en/us/certification/mcsd-windows-store-apps.aspx" target="_blank"&gt;MCSD Windows Store Apps&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Another exam that I wasn't offered in beta was &lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?ID=70-480&amp;amp;locale=en-us" target="_blank"&gt;70-480&lt;/a&gt; – &amp;quot;Programming in HTML5 with JavaScript and CSS3&amp;quot;. That may be another one to do in the future, as then I'd also add &lt;a href="http://www.microsoft.com/learning/en/us/certification/cert-mcsd-web-applications.aspx" target="_blank"&gt;MCSD Web Applications&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;One side-benefit of passing 70-483 means that I achieved the following certification: &lt;strong&gt;Programming in C# Specialist&lt;/strong&gt;&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/7a6Q7_xZHCQ" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-31T20:03:11.895+10:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/10/passed-4-failed-3.html</feedburner:origLink></entry><entry><title type="text">Happy ending</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/LhAdWgLtv8Q/happy-ending.html" /><category term="Family" /><category term="Cycling" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-10-15T15:30:00-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-4153599044599988135</id><content type="html">&lt;p&gt;One day during the school holidays, I organised to ride with my two oldest kids down part of the &lt;a href="http://en.wikipedia.org/wiki/Adelaide_Southern_Veloway" target="_blank"&gt;veloway&lt;/a&gt; and finishing up at &lt;a href="http://en.wikipedia.org/wiki/Christies_Beach,_South_Australia" target="_blank"&gt;Christies Beach&lt;/a&gt;. They both rode very well, and we met up with the rest of the family and &lt;a href="http://relliemaus.blogspot.com" target="_blank"&gt;Narelle&lt;/a&gt;'s parents for fish and chips overlooking the sea.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-SD9AeSJx7ZY/UHal_XQGVrI/AAAAAAAAAVs/snxVQ8wqkfE/s1600-h/WP_000141%25255B5%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="WP_000141" border="0" alt="WP_000141" src="http://lh5.ggpht.com/-k1xQkIMEMxc/UHamBVkZ2fI/AAAAAAAAAV0/iYNj_8hOTgk/WP_000141_thumb%25255B2%25255D.jpg?imgmax=800" width="1024" height="768" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I wouldn't put myself in the same category as &lt;a href="http://semanticallydriven.com/" target="_blank"&gt;Jen&lt;/a&gt; but I think it's still a nice photo.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/LhAdWgLtv8Q" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-16T09:00:00.427+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-k1xQkIMEMxc/UHamBVkZ2fI/AAAAAAAAAV0/iYNj_8hOTgk/s72-c/WP_000141_thumb%25255B2%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/10/happy-ending.html</feedburner:origLink></entry><entry><title type="text">TechEd 2012–Day 3</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/3gEvvBv3vKY/teched-2012day-3.html" /><category term="Conferences" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-10-13T15:30:00-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-2311446671395085788</id><content type="html">&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="" border="0" alt="Caramel slice!" align="right" src="http://lh4.ggpht.com/-HgBSBAX_tRQ/UHaivOSFBbI/AAAAAAAAAVI/FrV1RPE3bfA/WP_0001164.jpg?imgmax=800" width="244" height="184" /&gt;On the Friday I went to 3 sessions:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV331" target="_blank"&gt;DEV331&lt;/a&gt; - A Modern Architecture Review: Using the New Code Review Tools &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV333" target="_blank"&gt;DEV333&lt;/a&gt; - LightSwitch 2012 - Even Faster &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/WPH234" target="_blank"&gt;WPH234&lt;/a&gt; - Windows Phone Marketplace - Satisfy More Customers and Make Money &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I also ran my Instructor-led Lab - DEV ILL100 - Designing Windows 8 HTML apps in Blend. A nice lab which is probably more about getting familiar with Blend than with Windows 8 apps.&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="" border="0" alt="Locknote arena" src="http://lh6.ggpht.com/-7qRkq8TKAJI/UHaiwl5NRPI/AAAAAAAAAVQ/X8No67vnY_M/WP_0001275.jpg?imgmax=800" width="644" height="484" /&gt;&lt;/p&gt;  &lt;p&gt;After the &lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/CP335" target="_blank"&gt;closing keynote&lt;/a&gt;, I didn't need to rush off as &lt;a href="http://relliemaus.blogspot.com" target="_blank"&gt;Narelle&lt;/a&gt; and I were staying another night, flying home Saturday afternoon.&lt;/p&gt;  &lt;p&gt;I also had a chance to briefly visit the beach. After quite a few visits to the Gold Coast, I had never until now managed to get down to the foreshore. A bit cool to think about going for a swim by that time, but nice to finally see it.&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="" border="0" alt="Gold Coast beach" src="http://lh3.ggpht.com/-d3Ffo2OjFEQ/UHaixxMNxlI/AAAAAAAAAVY/nyyWo_lsHkY/WP_0001295.jpg?imgmax=800" width="644" height="484" /&gt;&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/3gEvvBv3vKY" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-14T09:00:00.516+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-HgBSBAX_tRQ/UHaivOSFBbI/AAAAAAAAAVI/FrV1RPE3bfA/s72-c/WP_0001164.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/10/teched-2012day-3.html</feedburner:origLink></entry><entry><title type="text">TechEd 2012–Day 2</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/HQVFEZ7dYsI/teched-2012day-2.html" /><category term="Conferences" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-10-12T15:30:02-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-2152676958842512244</id><content type="html">&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="" border="0" alt="Ben car racing" align="right" src="http://lh5.ggpht.com/-j4ALK4DGIJw/UHahoodwyyI/AAAAAAAAAU4/a6Wiow7x1fg/WP_0001204.jpg?imgmax=800" width="244" height="184" /&gt;Thursday was a busy day. I got to these sessions:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV221" target="_blank"&gt;DEV221&lt;/a&gt; – Design and Layout for Windows 8 and Windows Phone Style Apps &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/WPH323" target="_blank"&gt;WPH323&lt;/a&gt; – Build smart: Developing for Windows Phone and Windows 8 &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DBI225" target="_blank"&gt;DBI225&lt;/a&gt; – Big Data for Relational practitioners &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV326" target="_blank"&gt;DEV326&lt;/a&gt; – Agile planning tools in TFS 2012 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="" border="0" alt="Band Bash" align="left" src="http://lh4.ggpht.com/-aNGLZe-kZss/UHahqP_NW2I/AAAAAAAAAVA/KxM2JEcK1gg/WP_0001214.jpg?imgmax=800" width="244" height="184" /&gt;I also helped in the hands-on labs and assisted with &amp;quot;ILL102 - Creating an Windows 8 Line of Business Application - HTML &amp;amp; JavaScript from Start to Finish&amp;quot;.&lt;/p&gt;  &lt;p&gt;In the evening was the party night – lots of food and entertainment options! I watched &lt;a href="http://laany.blogspot.com.au/" target="_blank"&gt;Ben&lt;/a&gt; show off his prowess on the racing simulator, then after a good feed we headed to the main arena to catch some comedy, quiz show and an 'open mike' band bash. Turns out there's some pretty talented musicians masquerading as IT/Dev-types! &lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/HQVFEZ7dYsI" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-13T09:00:02.368+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-j4ALK4DGIJw/UHahoodwyyI/AAAAAAAAAU4/a6Wiow7x1fg/s72-c/WP_0001204.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/10/teched-2012day-2.html</feedburner:origLink></entry><entry><title type="text">TechEd 2012–Day 1</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/RN9tLnGQEK8/teched-2012day-1.html" /><category term="Conferences" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-10-11T15:30:00-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-3729713853910513256</id><content type="html">&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="" border="0" alt="DJ with touch screen" align="right" src="http://lh4.ggpht.com/-_6PJMBfLqQQ/UHahNuXvcZI/AAAAAAAAAUw/XRjgA9jExTc/WP_0001085.jpg?imgmax=800" width="644" height="484" /&gt;Wednesday I caught the following sessions throughout the day:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV211" target="_blank"&gt;DEV211&lt;/a&gt; – What's New in VS2012 with Adam Cogan &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV212" target="_blank"&gt;DEV212&lt;/a&gt; – Windows 8 Development with Nick Hodge &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV214" target="_blank"&gt;DEV214&lt;/a&gt; – Windows 8 Development Part 2 with David Burela &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV215" target="_blank"&gt;DEV215&lt;/a&gt; – .NET 4.5: Just the good stuff with William Tulloch &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I ran my first 'ExamCram' session – on Exam &lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-599#tab2" target="_blank"&gt;70-599 - Pro: Designing and Developing Windows Phone 7 Applications&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;With Windows Phone 8 just around the corner, I wasn't sure if I'd have many takers. As it turns out, I had exactly one person. A high student-teacher ratio!&lt;/p&gt;  &lt;p&gt;I was also on the late-shift for helping in hands on labs today, from 5pm – 8pm.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/RN9tLnGQEK8" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-12T09:00:00.987+10:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-_6PJMBfLqQQ/UHahNuXvcZI/AAAAAAAAAUw/XRjgA9jExTc/s72-c/WP_0001085.jpg?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/10/teched-2012day-1.html</feedburner:origLink></entry><entry><title type="text">TechEd 2012–Day 0</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/7emt4vv805c/teched-2012day-0.html" /><category term="Conferences" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-10-11T03:33:44-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-8509048068467839457</id><content type="html">&lt;p&gt;&lt;img style="display: inline; float: left" title="" alt="Island Beach Resort, view from street" align="left" src="http://islandbeach.etourism.net.au/images/property/Street%20View.jpg" /&gt;A few weeks late, but I've finally got around to writing about this year's Microsoft TechEd conference held in September. Tuesday morning, &lt;a href="http://relliemaus.blogspot.com" target="_blank"&gt;Narelle&lt;/a&gt; and I flew up to Brisbane then caught the train down to the Gold Coast. &lt;/p&gt;  &lt;p&gt;This year I'd booked accommodation at &lt;a href="http://www.islandbeach.com.au/" target="_blank"&gt;Island Beach Resort&lt;/a&gt;, quite close to the convention centre. It might have 'Resort' in the name, but it's really just some nice apartments. &lt;/p&gt;  &lt;p&gt;After checking in, I headed down to the convention centre for registration and then the Technical Learning Guide orientation meeting. Unfortunately this was at the same time as the the first &amp;quot;kick off&amp;quot; session. The meeting was useful as there was a different company organising the hands-on labs this year.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://channel9.msdn.com/Events/TechEd/Australia/2012/KEY310" target="_blank"&gt;The keynote welcome&lt;/a&gt; included some interesting Kinect-inspired performance art, and then a talk (and videos) from &lt;a href="http://thisisjasonsilva.com/" target="_blank"&gt;Jason Silva&lt;/a&gt;. Jason was a very intense presenter – much the same as in his videos. I did like his positive attitude towards the future. His talk was very fast-paced and full-on, such that I think I'm still chewing over the things he said (even a week later).&lt;/p&gt;  &lt;p&gt;I happened to see him again as one of the guests on ABC-TV's QandA program about a week after TechEd. To my surprise he said almost exactly the same things, word for word. Not quite as impressed after that.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/7emt4vv805c" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-11T21:03:44.243+10:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/10/teched-2012day-0.html</feedburner:origLink></entry><entry><title type="text">Heading to TechEd Australia 2012</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/6UTFbAU1M2g/heading-to-teched-australia-2012.html" /><category term="Conferences" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-08-29T05:59:57-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-9096918083541094873</id><content type="html">&lt;p&gt;I'm looking forward to heading off to Microsoft's TechEd 2012 conference on the Gold Coast in a couple of weeks. This year I'll be joined by colleagues &lt;a href="http://laany.blogspot.com.au/" target="_blank"&gt;Ben&lt;/a&gt; and Imran, who will both be first-time attendees.&lt;/p&gt;  &lt;p&gt;It promises to be a particularly good year for getting up to speed on new products, with Visual Studio 2012, Windows 8 and Server 2012 hot off the press, and Windows Phone 8 just around the corner.&lt;/p&gt;  &lt;p&gt;I'm again working for part of the conference as a Technical Learning Guide assisting in the hands-on labs. I've also been selected to lead an instructor-led lab on &amp;quot;Designing Windows 8 HTML apps in Blend&amp;quot; (Session 'DEV ILL100'), and an exam cram session on 70-599 &amp;quot;Pro: Designing and Developing Windows Phone 7 Applications&amp;quot;.&lt;/p&gt;  &lt;p&gt;It will also be great to have &lt;a href="http://relliemaus.blogspot.com" target="_blank"&gt;Narelle&lt;/a&gt; along, who be enjoying a few days holiday while I'm busy learning, instructing and cramming.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/6UTFbAU1M2g" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-08-29T22:29:57.433+09:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/08/heading-to-teched-australia-2012.html</feedburner:origLink></entry><entry><title type="text">MatrixGroup is hiring</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/kU8xjEJaolI/matrixgroup-is-hiring.html" /><category term="Work" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-08-20T19:17:20-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-1646553413823700095</id><content type="html">&lt;p&gt;Are you a &lt;strike&gt;good &lt;/strike&gt;great .NET software developer who'd like to work for a company providing solutions to the commodity handling industry (eg. grain and mineral ores)?&lt;/p&gt;  &lt;p&gt;You might want to &lt;a href="http://www.seek.com.au/Job/senior-c-net-developer/in/adelaide-adelaide/22894170" target="_blank"&gt;apply for this position&lt;/a&gt; with &lt;a href="www.matrixgroup.com.au" target="_blank"&gt;MatrixGroup&lt;/a&gt;, and have the pleasure of working with a bunch of enthusiastic, smart people… and yes I work there too &lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://lh4.ggpht.com/-G-w3a-c7IxU/UDLvrfWIY_I/AAAAAAAAAUU/-ePvE42peYY/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" /&gt;&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/kU8xjEJaolI" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-08-21T11:47:20.375+09:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-G-w3a-c7IxU/UDLvrfWIY_I/AAAAAAAAAUU/-ePvE42peYY/s72-c/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/08/matrixgroup-is-hiring.html</feedburner:origLink></entry><entry><title type="text">Windows 8 Mail and Exchange using a self-signed certificate</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/TRaRIt3BcEA/windows-8-mail-and-exchange-using-self.html" /><category term="Windows 8" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-08-16T23:17:21-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-2003596532580483007</id><content type="html">&lt;p&gt;The following steps allowed me to get the Windows 8 Mail app to talk to an Exchange server which uses a self-signed certificate:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Open up Internet Explorer in 'Administrator' mode      &lt;ol style="list-style-type: lower-alpha"&gt;       &lt;li&gt;Go to the Windows 8 desktop &lt;/li&gt;        &lt;li&gt;Right-click on the Internet Explorer icon &lt;/li&gt;        &lt;li&gt;Highlight 'Internet Explorer' &lt;/li&gt;        &lt;li&gt;press Shift-Ctrl-Enter to launch IE in 'Administrator' (elevated permission) mode &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt;    &lt;li&gt;Browse to the Exchange server's Outlook Web Access page – eg. &lt;a href="https://yourexchangeserver.com/owa"&gt;https://yourexchangeserver.com/owa&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Ignore any warning about certificates – click on 'Continue to this website' &lt;/li&gt;    &lt;li&gt;Click on the red certificate warning in the address bar      &lt;br /&gt;&lt;a href="http://lh6.ggpht.com/-h9vYU6Ku5eI/UC3elEy8W4I/AAAAAAAAATU/dcBjaqUEYMk/s1600-h/certificate%252520error%25255B4%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="certificate error" border="0" alt="certificate error" src="http://lh4.ggpht.com/-pIy1qVIDfvA/UC3elxqXYSI/AAAAAAAAATc/Oqa2MnRfDCs/certificate%252520error_thumb%25255B6%25255D.png?imgmax=800" width="182" height="37" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Click on 'View certificates'      &lt;br /&gt;&lt;a href="http://lh3.ggpht.com/-KaqlY40KmVw/UC3emnYT4LI/AAAAAAAAATk/Bgl2tD_EUuc/s1600-h/Untrusted%252520certificate%25255B4%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Untrusted certificate" border="0" alt="Untrusted certificate" src="http://lh6.ggpht.com/-70iqHMcopu8/UC3enya5rpI/AAAAAAAAATs/PZjjKnVI7Uo/Untrusted%252520certificate_thumb%25255B2%25255D.png?imgmax=800" width="355" height="353" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Click on 'Install certificate' button &lt;/li&gt;    &lt;li&gt;The 'Certificate Import Wizard' appears &lt;/li&gt;    &lt;li&gt;Leave 'Store Location' as current user &lt;/li&gt;    &lt;li&gt;Select 'Place all certificates in the following store', and click on the 'Browse' button to select 'Trusted Root Certification Authorities'      &lt;br /&gt;&lt;a href="http://lh3.ggpht.com/-ys6Tx_UmZYY/UC3eo9QKzII/AAAAAAAAAT0/m6P1QwJtSRk/s1600-h/Certificate%252520import%252520wizard%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Certificate import wizard" border="0" alt="Certificate import wizard" src="http://lh4.ggpht.com/-tai80ldd62g/UC3ep0nP1dI/AAAAAAAAAT8/nq4XS0yfGOQ/Certificate%252520import%252520wizard_thumb%25255B1%25255D.png?imgmax=800" width="634" height="646" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Complete wizard &lt;/li&gt;    &lt;li&gt;Click on 'Yes' to install certificate &lt;/li&gt;    &lt;li&gt;Close IE and reopen (in non-admin mode) to confirm when browsing to the OWA URL that you no longer are warned about an invalid certificate &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;You should now be able to use the 'Add an account' to add your Exchange account.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/TRaRIt3BcEA" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-08-17T15:47:21.124+09:30</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-pIy1qVIDfvA/UC3elxqXYSI/AAAAAAAAATc/Oqa2MnRfDCs/s72-c/certificate%252520error_thumb%25255B6%25255D.png?imgmax=800" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">14</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/08/windows-8-mail-and-exchange-using-self.html</feedburner:origLink></entry><entry><title type="text">My next Windows Phone(s)</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/0KPe5yMkW6k/my-next-windows-phones.html" /><category term="Windows Phone" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-08-02T08:04:55-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-1785046282954078145</id><content type="html">&lt;p&gt;It's been an interesting journey since I purchased my first Windows Phone. The &lt;a href="http://david.gardiner.net.au/2010/12/my-first-windows-phone-7.html" target="_blank"&gt;Samsung Omnia 7&lt;/a&gt; had a brilliant screen and was a joy to use. It would occasionally spontaneously restart, but I put that down to firmware/OS bugs that would be fixed in subsequent updates. Many updates later however, the problem actually got worse rather than better. &lt;/p&gt;  &lt;p&gt;While it was away on the last of a number of visits to the service centre, I purchased a second hand (but excellent condition) HTC Mozart. A very capable phone, it was a good replacement.&lt;/p&gt;  &lt;p&gt;Samsung finally agreed to a replacement (only after I filmed my handset rebooting – somehow they'd never managed to reproduce the problem themselves) – but by this time the Omnia 7 was no longer in stock, so I was given an Omnia W instead.&lt;/p&gt;  &lt;p&gt;The Omnia W didn't seem quite as 'solid' as the 7 – probably the plastic case vs the 7's metal, but it worked well (and didn't spontaneously reboot like it's predecessor).&lt;/p&gt;  &lt;p&gt;&lt;img style="display: inline; float: left; margin-left: 0px; margin-right: 0px" title="" alt="Nokia Lumia 800" align="left" src="http://i.nokia.com/image/view/-/258788/lowResTrans/1/-/Searay-cyan-Front-png.png" width="131" height="225" /&gt;&lt;/p&gt;  &lt;p&gt;I would have stuck with the Omnia W but for the fact that I was one of the winners of a new Nokia Lumia 800 for entering my &lt;a href="http://david.gardiner.net.au/2012/05/asthma-first-aidwindows-phone-app.html" target="_blank"&gt;Asthma First Aid app&lt;/a&gt; in the &lt;a href="http://blogs.msdn.com/b/dglover/archive/2012/03/30/windows-phone-apps-download-challenge-and-win-a-nokia-lumia-800-20120330.aspx" target="_blank"&gt;Windows Phone Apps Download Challenge&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;The Mozart and Omnia W have now found new homes with friends and family, and I'm enjoying my nice blue Lumia.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/0KPe5yMkW6k" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-08-03T00:34:55.124+09:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/08/my-next-windows-phones.html</feedburner:origLink></entry><entry><title type="text">Feature Toggle libraries for .NET</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DavesDaydreams/~3/wdzeFqHB4eE/feature-toggle-libraries-for-net.html" /><category term="DotNet" /><author><name>David Gardiner</name><email>noreply@blogger.com</email><uri>https://plus.google.com/105745633277721273594</uri></author><updated>2012-07-09T07:00:54-07:00</updated><id>tag:blogger.com,1999:blog-10782889.post-3473441390355288235</id><content type="html">&lt;p&gt;The idea of &amp;quot;Feature Toggles&amp;quot; is &lt;a href="http://martinfowler.com/bliki/FeatureToggle.html" target="_blank"&gt;described in detail by Martin Fowler&lt;/a&gt;. Essentially these give you the ability to enable/disable parts of your application via configuration.&lt;/p&gt;  &lt;p&gt;It's a simple enough concept that you can quite easily do this in code. Just add a new setting to your app.config file:&lt;/p&gt;  &lt;pre class="brush: xml; gutter: false; toolbar: false;"&gt;&amp;lt;appSettings&amp;gt;
    &amp;lt;add key=&amp;quot;Feature.Toggle1&amp;quot; value=&amp;quot;True&amp;quot;/&amp;gt;
&amp;lt;/appSettings&amp;gt;&lt;/pre&gt;

&lt;p&gt;And then within your code, check the config value to enable the feature:&lt;/p&gt;

&lt;pre class="brush: csharp; gutter: false; toolbar: false;"&gt;if (bool.Parse(ConfigurationManager.AppSettings[&amp;quot;Feature.Toggle1&amp;quot;]))
{

}&lt;/pre&gt;

&lt;p&gt;Ideally you'd make that check a bit more robust, but you get the idea!&lt;/p&gt;

&lt;p&gt;Alternatively, you might want to use one of these libraries that implement feature toggling. I searched for .NET feature toggle libraries and found these four. Coincidentally they are all hosted on Github, and all but nToggle are available as NuGet packages.&lt;/p&gt;

&lt;h3&gt;NFeature&lt;/h3&gt;

&lt;p&gt;&lt;a title="https://github.com/benaston/NFeature" href="https://github.com/benaston/NFeature"&gt;https://github.com/benaston/NFeature&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;NFeature requires you to create an enum which defines all the feature toggles. It then generates extension methods such that you can check the config setting for a feature. Features are configured through a custom section in the .config file. Features can optionally be configured to depend on other features, and to have availability times set.&lt;/p&gt;

&lt;pre class="brush: xml; gutter: false; toolbar: false;"&gt;&amp;lt;configSections&amp;gt;
    &amp;lt;section name=&amp;quot;features&amp;quot; type=&amp;quot;NFeature.Configuration.FeatureConfigurationSection`1[[NFeatureTest2.Feature, NFeatureTest2]], NFeature.Configuration&amp;quot; /&amp;gt;
&amp;lt;/configSections&amp;gt;

&amp;lt;features&amp;gt;
    &amp;lt;add name=&amp;quot;MyFeature&amp;quot; state=&amp;quot;Enabled&amp;quot; /&amp;gt;
    &amp;lt;add name=&amp;quot;MyOtherFeature&amp;quot; state=&amp;quot;Previewable&amp;quot; /&amp;gt;
    &amp;lt;!-- will only be available to users who meet the feature-preview criteria --&amp;gt;
    &amp;lt;add name=&amp;quot;MyOtherOtherFeature&amp;quot; state=&amp;quot;Disabled&amp;quot; /&amp;gt;
&amp;lt;/features&amp;gt;&lt;/pre&gt;

&lt;pre class="brush: csharp; gutter: false; toolbar: false;"&gt;public enum Feature
{
    MyFeature,
    MyOtherFeature,
    MyOtherOtherFeature,
} 

...

if ( Feature.MyFeature.IsAvailable( featureManifest ) )
{
    //do some cool stuff
}&lt;/pre&gt;

&lt;p&gt;NFeature appears to be actively maintained with recent commits.&lt;/p&gt;

&lt;h3&gt;FeatureToggle&lt;/h3&gt;

&lt;p&gt;&lt;a title="https://github.com/jason-roberts/FeatureToggle" href="https://github.com/jason-roberts/FeatureToggle"&gt;https://github.com/jason-roberts/FeatureToggle&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;FeatureToggle provides base classes from which you inherit for each feature toggle you want to implement. These toggles are configured in the &amp;lt;appSettings/&amp;gt; section in the .config file.&lt;/p&gt;

&lt;pre class="brush: xml; gutter: false; toolbar: false;"&gt;&amp;lt;appSettings&amp;gt;
   &amp;lt;add key=&amp;quot;FeatureToggle.MyAwesomeFeature&amp;quot; value=&amp;quot;false&amp;quot; /&amp;gt;
&amp;lt;/appSettings&amp;gt;&lt;/pre&gt;

&lt;pre class="brush: csharp; gutter: false; toolbar: false;"&gt;public class MyAwesomeFeature : SimpleFeatureToggle {}

...

if (!MyAwesomeFeature.FeatureEnabled)  
{
   // code to disable stuff (e.g. UI buttons, etc)
}&lt;/pre&gt;

&lt;p&gt;FeatureToggle also has support for WPF and Windows Phone apps.&lt;/p&gt;

&lt;p&gt;It is actively maintained with recent commits.&lt;/p&gt;

&lt;h3&gt;FeatureSwitcher&lt;/h3&gt;

&lt;p&gt;&lt;a title="https://github.com/mexx/FeatureSwitcher" href="https://github.com/mexx/FeatureSwitcher"&gt;https://github.com/mexx/FeatureSwitcher&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In FeatureSwitcher, toggles are created by implementing the IFeature interface. You then use the Feature&amp;lt;&amp;gt; generic class to test whether a particular toggle is enabled.&lt;/p&gt;

&lt;p&gt;Toggles are configured in the .config file via custom sections.&lt;/p&gt;

&lt;pre class="brush: xml; gutter: false; toolbar: false;"&gt;&amp;lt;configSections&amp;gt;
  &amp;lt;sectionGroup name=&amp;quot;featureSwitcher&amp;quot; type=&amp;quot;FeatureSwitcher.Configuration.SectionGroup, FeatureSwitcher.Configuration&amp;quot;&amp;gt;
    &amp;lt;section name=&amp;quot;default&amp;quot; type=&amp;quot;FeatureSwitcher.Configuration.DefaultSection, FeatureSwitcher.Configuration&amp;quot;/&amp;gt;
    &amp;lt;section name=&amp;quot;features&amp;quot; type=&amp;quot;FeatureSwitcher.Configuration.FeaturesSection, FeatureSwitcher.Configuration&amp;quot;/&amp;gt;
  &amp;lt;/sectionGroup&amp;gt;
&amp;lt;/configSections&amp;gt;
&amp;lt;featureSwitcher&amp;gt;
  &amp;lt;default featuresEnabled=&amp;quot;true&amp;quot;/&amp;gt;
  &amp;lt;features&amp;gt;
    &amp;lt;feature name=&amp;quot;FeatureSwitcher.Examples.BlueBackground&amp;quot; enabled=&amp;quot;true&amp;quot;/&amp;gt;
  &amp;lt;/features&amp;gt;
&amp;lt;/featureSwitcher&amp;gt;&lt;/pre&gt;

&lt;pre class="brush: csharp; gutter: false; toolbar: false;"&gt;class BlueBackground : IFeature {}

...

if (Feature&amp;lt;Sample&amp;gt;.Is().Enabled)
{

}&lt;/pre&gt;

&lt;p&gt;FeatureSwitcher is actively maintained with recent commits.&lt;/p&gt;

&lt;h3&gt;nToggle&lt;/h3&gt;

&lt;p&gt;&lt;a title="https://github.com/SteveMoyer/nToggle" href="https://github.com/SteveMoyer/nToggle"&gt;https://github.com/SteveMoyer/nToggle&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;nToggle uses a custom section in the .config file. The examples given show usage with a WebForms app, though it should work with all kinds of applications.&lt;/p&gt;

&lt;pre class="brush: xml; gutter: false; toolbar: false;"&gt;&amp;lt;configSections&amp;gt;
  &amp;lt;section
    name=&amp;quot;nToggle&amp;quot;
    type=&amp;quot;nToggle.Configuration.ToggleConfigurationSection&amp;quot;
    allowLocation=&amp;quot;true&amp;quot;
    allowDefinition=&amp;quot;Everywhere&amp;quot;
    /&amp;gt;
&amp;lt;/configSections&amp;gt;

&amp;lt;nToggle&amp;gt;
  &amp;lt;toggles&amp;gt;
    &amp;lt;add name=&amp;quot;TestFeatureOn&amp;quot; value=&amp;quot;True&amp;quot;/&amp;gt;
    &amp;lt;add name=&amp;quot;TestFeatureOff&amp;quot; value=&amp;quot;False&amp;quot;/&amp;gt;
  &amp;lt;/toggles&amp;gt;
&amp;lt;/nToggle&amp;gt;&lt;/pre&gt;

&lt;pre class="brush: xml; gutter: false; toolbar: false;"&gt;&amp;lt;%@ Register assembly=&amp;quot;nToggle&amp;quot; namespace=&amp;quot;nToggle&amp;quot; tagprefix=&amp;quot;nToggle&amp;quot; %&amp;gt;
&amp;lt;nToggle:WebFeatureToggle ID=&amp;quot;FeatureToggle1&amp;quot; EnabledBy=&amp;quot;TestFeatureOff&amp;quot; runat=&amp;quot;server&amp;quot; &amp;gt;
    &amp;lt;span id=&amp;quot;enabledby&amp;quot;&amp;gt; Feature Turned Off&amp;lt;/span&amp;gt;
&amp;lt;/nToggle:WebFeatureToggle&amp;gt;&lt;/pre&gt;

&lt;pre class="brush: csharp; gutter: false; toolbar: false;"&gt;protected void Page_Load(object sender, EventArgs e)
{
    WebFeatureToggle1.RunActionWhenEnabled(CodeToRunIfEnabled);
}

protected void CodeToRunIfEnabled()
{
    //your code
}&lt;/pre&gt;

&lt;p&gt;nToggle has not been updated for 7 months at time of writing.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/DavesDaydreams/~4/wdzeFqHB4eE" height="1" width="1"/&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2012-07-09T23:30:54.565+09:30</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://david.gardiner.net.au/2012/07/feature-toggle-libraries-for-net.html</feedburner:origLink></entry></feed>
