<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>siliconvalve</title>
	<atom:link href="http://blog.siliconvalve.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.siliconvalve.com</link>
	<description>adventures in the new and the old</description>
	<lastBuildDate>Sat, 11 May 2013 13:42:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.siliconvalve.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>siliconvalve</title>
		<link>http://blog.siliconvalve.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.siliconvalve.com/osd.xml" title="siliconvalve" />
	<atom:link rel='hub' href='http://blog.siliconvalve.com/?pushpress=hub'/>
		<item>
		<title>Quick Links To Help You Learn About Developing For The Cloud</title>
		<link>http://blog.siliconvalve.com/2013/05/10/quick-links-to-help-you-learn-about-developing-for-the-cloud/</link>
		<comments>http://blog.siliconvalve.com/2013/05/10/quick-links-to-help-you-learn-about-developing-for-the-cloud/#comments</comments>
		<pubDate>Fri, 10 May 2013 08:40:17 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[ALM]]></category>
		<category><![CDATA[AWS]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Office 365]]></category>
		<category><![CDATA[Release Management]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Deployment]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[learn about cloud]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=521</guid>
		<description><![CDATA[Unsurprisingly I think the way Cloud Computing is transforming the IT industry is also leading to easier ways to learn and develop skills about the Cloud. In this post I&#8217;m going to give a run down on what I think some of the best ways are to start dipping your toe into this space if [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=521&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Unsurprisingly I think the way Cloud Computing is transforming the IT industry is also leading to easier ways to learn and develop skills about the Cloud. In this post I&#8217;m going to give a run down on what I think some of the best ways are to start dipping your toe into this space if you haven&#8217;t already.</p>
<h3>Sign up for a free trial</h3>
<p>This is easy AND low cost. Turn up to the sign-up page for most major players and you&#8217;ll get free or low-cost services for a timed period. Sure, you couldn&#8217;t start the next Facebook at this level, but it will give you enough to start to learn what&#8217;s on offer.  You can run VMs, deploy solutions, utilise IaaS, PaaS and SaaS offerings and generally kick the tyres of the features of each. At time of writing these are:</p>
<ul>
<li>Amazon Web Services (AWS) Free Usage Tier &#8211; 12 months: <a href="http://aws.amazon.com/free/" rel="nofollow">http://aws.amazon.com/free/</a></li>
<li>Google App Engine &#8211; each app gets a portion of free resource usage: <a href="https://developers.google.com/appengine/kb/billing#freequota">https://developers.google.com/appengine/kb/billing#freequota</a></li>
<li>Rackspace Cloud &#8211; no published information on any form of free resource usage tier.</li>
<li>Windows Azure Free Trial &#8211; 3 months: <a href="http://www.windowsazure.com/en-us/pricing/free-trial/">http://www.windowsazure.com/en-us/pricing/free-trial/</a></li>
<li>Office 365 &#8211; depending on your license level you can get a free developer site setup.  If you don&#8217;t qualify then a 30 day trial is available. <a href="http://msdn.microsoft.com/en-us/library/jj692554.aspx">http://msdn.microsoft.com/en-us/library/jj692554.aspx</a></li>
</ul>
<h3>Learn the APIs and use the SDKs</h3>
<p>Each of Amazon, Azure, Google, Office 365 and Rackspace offer some form of remote programmable API (typically presented as REST endpoints).  If you&#8217;re going to move into Cloud from traditional hosting or system development practices then starting to learn about programmable infrastructure is a must.  Understanding the APIs available will depend on leveraging existing documentation:</p>
<ul>
<li>Amazon Web Services: Pretty much every AWS component has its own REST API &#8211; the best thing to do is utilise the available documentation to identify the REST APIs you want to use: <a href="http://aws.amazon.com/documentation/">http://aws.amazon.com/documentation/</a></li>
<li>Google App Engine: Again, documentation is your start: <a href="https://developers.google.com/appengine/docs/">https://developers.google.com/appengine/docs/</a><a href="https://developers.google.com/appengine/docs/java/taskqueue/rest/"><br />
</a></li>
<li>Rackspace Cloud: <a href="http://docs.rackspace.com/">http://docs.rackspace.com/</a></li>
<li>Windows Azure: Like AWS each component of Azure provides a REST API: <a href="http://msdn.microsoft.com/en-us/library/windowsazure/ff800682.aspx">http://msdn.microsoft.com/en-us/library/windowsazure/ff800682.aspx</a><a href="http://www.windowsazure.com/en-us/pricing/free-trial/"><br />
</a></li>
<li>Office 365: as this platform is a combined offering, each of the products on offer (AD, Exchange, Lync and SharePoint) provide various APIs that can continue to be used in a relatively consistent state with their on-premise equivalents.  Documentation is spread about a bit on MSDN but here&#8217;s a taster:
<ul>
<li>Exchange Web Services: <a href="http://msdn.microsoft.com/en-us/library/exchange/dd877012(v=exchg.150).aspx">http://msdn.microsoft.com/en-us/library/exchange/dd877012(v=exchg.150).aspx</a></li>
<li>Lync via Unified Communications Web API (UCWA): <a href="http://ucwa.lync.com/documentation/api-reference">http://ucwa.lync.com/documentation/api-reference</a></li>
<li>SharePoint REST API: <a href="http://msdn.microsoft.com/en-us/library/jj860569.aspx">http://msdn.microsoft.com/en-us/library/jj860569.aspx</a></li>
</ul>
</li>
</ul>
<p>If you aren&#8217;t a fan of working so close to the wire you can always leverage one of the associated SDKs in the language of your choice:</p>
<ul>
<li>Amazon Web Services: .Net, Java, Node.js, PHP, Python and Ruby. Mobile: iOS and Android. <a href="http://aws.amazon.com/code/">http://aws.amazon.com/code/</a></li>
<li>Google App Engine: Java, Python and Go. <a href="https://developers.google.com/appengine/downloads">https://developers.google.com/appengine/downloads</a><a href="https://developers.google.com/appengine/docs/java/taskqueue/rest/"><br />
</a></li>
<li>Rackspace Cloud: .Net, Java, PHP, Python and Ruby. <a href="http://docs.rackspace.com/sdks/guide/content/intro.html">http://docs.rackspace.com/sdks/guide/content/intro.html</a></li>
<li>Windows Azure: .Net, Java, Node.js, PHP, Python and Ruby. Mobile: Windows Phone (C#), iOS and Android. <a href="http://www.windowsazure.com/en-us/downloads/">http://www.windowsazure.com/en-us/downloads/</a><a href="http://msdn.microsoft.com/en-us/library/windowsazure/ff800682.aspx"><br />
</a></li>
<li>Office 365: You can utilise .Net native SDKs for the individual products or leverage JavaScript where available.</li>
</ul>
<p>The great thing about having .Net support is you can then leverage those SDKs directly in PowerShell and automate a lot of items via scripting.</p>
<h3>Developer Tool Support</h3>
<p>While having an SDK is fine there&#8217;s also a need to support developers within whatever IDE they happen to be using.  Luckily you get support here too:</p>
<ul>
<li>Amazon Web Services: Toolkit for Visual Studio: <a href="http://aws.amazon.com/visualstudio/">http://aws.amazon.com/visualstudio/</a> (also on Nuget) or for Eclipse: <a href="http://aws.amazon.com/eclipse/">http://aws.amazon.com/eclipse/</a>.</li>
<li>Google App Engine: Eclipse: <a href="https://developers.google.com/eclipse/">https://developers.google.com/eclipse/</a> <a href="https://developers.google.com/appengine/docs/java/taskqueue/rest/"><br />
</a></li>
<li>Rackspace Cloud: there is a Visual Studio plugin for Visual Studio 2010 but the page is offline at time of writing and there&#8217;s no news on it being updated to support Visual Studio 2012.</li>
<li>Windows Azure: Visual Studio can build Cloud Applications using project templates and there is also support for Eclipse: <a href="http://msdn.microsoft.com/en-us/library/windowsazure/hh694271.aspx">http://msdn.microsoft.com/en-us/library/windowsazure/hh694271.aspx</a></li>
</ul>
<h3>Source Control and Release Management</h3>
<p>The final piece of the puzzle and one not necessarily tied to the individual Cloud providers is where to put your source code and how to deploy it.</p>
<ul>
<li>Amazon Web Services: You can leverage Elastic Beanstalk for deployment purposes (this is a part of the Visual Studio and Eclipse toolkits). <a href="http://aws.amazon.com/elasticbeanstalk/">http://aws.amazon.com/elasticbeanstalk/</a></li>
<li>Google App Engine: Depending on language you have a few options for auto-deploying applications using command-line tools from build scripts.  Eclipse tooling (covered above) also provides deployment capabilities.<a href="https://developers.google.com/appengine/docs/java/taskqueue/rest/"><br />
</a></li>
<li>Rackspace Cloud: no publicly available information on build and deploy.</li>
<li>Windows Azure: You can leverage deployment capabilities out of Visual Studio (probably not the best solution though) or utilise the in-built Azure platform support to deploy from a range of hosted source control providers such as BitBucket (Git or Mercurial), Codeplex, Dropbox (yes, I know), GitHub or TFS.  A really strong showing here from the Azure platform! <a href="http://www.windowsazure.com/en-us/develop/net/common-tasks/publishing-with-git/">http://www.windowsazure.com/en-us/develop/net/common-tasks/publishing-with-git/</a></li>
</ul>
<p>So, there we have it &#8211; probably one of the most link-heavy posts you&#8217;ll ever come across &#8211; hopefully the links will stay valid for a while yet!  If you spot anything that&#8217;s dead or that is just plain wrong leave me a comment.</p>
<p>HTH.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/521/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/521/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=521&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2013/05/10/quick-links-to-help-you-learn-about-developing-for-the-cloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint Online 2013 ALM Practices</title>
		<link>http://blog.siliconvalve.com/2013/04/11/sharepoint-online-2013-alm-practices/</link>
		<comments>http://blog.siliconvalve.com/2013/04/11/sharepoint-online-2013-alm-practices/#comments</comments>
		<pubDate>Thu, 11 Apr 2013 03:32:48 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[ALM]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Office 365]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Release Management]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[application lifecycle management]]></category>
		<category><![CDATA[kloud]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=501</guid>
		<description><![CDATA[SharePoint has always been a bit a challenge when it comes to structured ALM and developer practices which is something Microsoft partially addressed with the release of SharePoint and Visual Studio 2010. Deploying and building solutions for SharePoint 2013 pretty much retains most of the IP from 2010 with the noted deprecation of Sandbox Solutions [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=501&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>SharePoint has always been a bit a challenge when it comes to structured ALM and developer practices which is something Microsoft partially addressed with the release of SharePoint and Visual Studio 2010. Deploying and building solutions for SharePoint 2013 pretty much retains most of the IP from 2010 with the noted deprecation of Sandbox Solutions (this means they&#8217;ll be gone in SharePoint vNext).</p>
<p>As part of the project I&#8217;m leading at <a title="Visit our site!" href="http://www.kloud.com.au/">Kloud</a> at the moment we are rebuilding an Intranet so it runs on SharePoint Online 2013 so I wanted to share some of the Application Lifecycle Management (ALM) processes we&#8217;ve been using.</p>
<h3>Packaging</h3>
<p>Most of the work we have been doing to date has leveraged existing features within the SharePoint core &#8211; we have, however, spent time utilising the Visual Studio 2012 SharePoint templates to package our customisations so they can be moved between multiple environments. SharePoint Online still provides support for Sandboxed Solutions and we&#8217;ve found that they provide a convenient way to deploy elements that are not developed as Apps. Designer packages can also be exported and edited in Visual Studio and produce a re-deployable package (which result in Sandboxed Solutions).</p>
<h3>Powershell</h3>
<p>At the time of writing, the number of <a href="http://technet.microsoft.com/en-us/library/fp161364.aspx">Powershell Commandlets for managing SharePoint Online</a> are substantially less those for on-premise. If you need to modify any element below a Site Collection you are pretty much forced to write custom tooling or perform the tasks manually &#8211; we have made a call in come cases to build tooling using the Client Side Object Model (CSOM) or to perform tasks manually.</p>
<h3>Development Environment</h3>
<p><del>Microsoft has invested some time in the developer experience around SharePoint Online and now provides you with free access to an &#8220;<a href="http://msdn.microsoft.com/en-au/library/fp179924.aspx">Office 365 Developer Site</a>&#8221; which gives you a single-license Office 365 environment in which to develop solutions.</del> The General Availability of Office 365 Wave 15 (the 2013 suite) sees these sites only being available for <a href="http://msdn.microsoft.com/en-us/library/jj692554.aspx">businesses holding enterprise (E3 or E4) licenses</a>.  Anyone else will need to utilise a 30 day trial tenant.</p>
<p>We have had each team member setup their own site and develop solutions locally prior to rolling them into our main deployment. Packaging and deployment is obviously key here as we need to be able to keep the developer instances in sync with each other and the easiest way to achieve that is with WSPs that can be redeployed as required.</p>
<p>One other item we have done around development is to utilise an on-premise setup in a VM to provide developers with a more rapid development experience in some cases (and more transparent troubleshooting). As you mostly stick to the SharePoint CSOM a lot of your development these days resides in JavaScript which means you shouldn&#8217;t hit any snags in relying in on-premise / full-trust features in your delivered solutions.</p>
<p>Note that the Office 365 Developer Site is a single-license environment which means you can&#8217;t do multi-user testing or content targeting. That&#8217;s where test environments come into play!</p>
<h3>Test Environment</h3>
<p>The best way to achieve a more structured ALM approach with Office 365 is to leverage an intermediate test environment &#8211; the easiest way for anyone to achieve this is to register for a trial Office 365 tenant &#8211; while only technically available for 30 days this still provides you with the ability to test prior to deploying to your production environment.</p>
<p>Once everything is tested and good to go into production you&#8217;re already in a position to know the steps involved in deployment!</p>
<p>As you can see &#8211; it&#8217;s still not a perfect world for SharePoint ALM, but with a little work you can get to a point where you are at least starting to enforce a little rigour around build and deployment.</p>
<p>Hope this helps!</p>
<h4>Useful Links</h4>
<ul>
<li><a href="http://msdn.microsoft.com/en-au/library/fp179924.aspx">Provision an Office 365 Developer Site</a>. (Note: no longer valid with GA of Wave 15).</li>
<li><a href="http://msdn.microsoft.com/en-us/library/jj692554.aspx">Provision a Developer Site using your existing Office 365 subscription</a>.</li>
<li><a href="http://technet.microsoft.com/en-us/library/fp161364.aspx">View SharePoint Online Powershell Commandlets</a>.</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/501/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/501/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=501&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2013/04/11/sharepoint-online-2013-alm-practices/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>
	</item>
		<item>
		<title>Call Web Services From Workflows on SharePoint Online</title>
		<link>http://blog.siliconvalve.com/2013/03/18/call-web-services-from-workflows-on-sharepoint-online/</link>
		<comments>http://blog.siliconvalve.com/2013/03/18/call-web-services-from-workflows-on-sharepoint-online/#comments</comments>
		<pubDate>Mon, 18 Mar 2013 03:27:18 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Office 365]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[timer jobs]]></category>
		<category><![CDATA[web service]]></category>
		<category><![CDATA[workflow]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=490</guid>
		<description><![CDATA[The increasing adoption of Office 365 is driving a lot of traditional development on the SharePoint platform online. As you might expect there are some big differences between on-premise and cloud and the ways in which you achieve customisation and implementation of features. Traditionally timer jobs played a large part in the way background services [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=490&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>The increasing adoption of Office 365 is driving a lot of traditional development on the SharePoint platform online.  As you might expect there are some big differences between on-premise and cloud and the ways in which you achieve customisation and implementation of features.</p>
<p>Traditionally timer jobs played a large part in the way background services could be implemented in SharePoint.  You will find that timer jobs are absent in SharePoint Online and that the alternative is to leverage the workflow capabilities of SharePoint to achieve the same sort of outcome.</p>
<p>A fairly typical scenario for timed jobs is to poll external services for some form of information to be cached locally on SharePoint.  The good news is that the standard <em>Call HTTP Web Service</em> Action of SharePoint 2013 workflows execute the same in Office 365 as they do on-premise.</p>
<p>There is a <a href="http://blogs.msdn.com/b/sharepointdesigner/archive/2012/09/05/how-to-work-with-web-service-using-call-http-web-service-action.aspx" title="Using SharePoint Designer to boot!">blog post and demo on MSDN</a> that you can use to test this out for yourself.</p>
<p><strong>Gotcha:</strong> and a fairly big (and unobvious) one: this workflow Action can only handle calls to webservices that return responses of type text/html, text/plain and application/json.  You will find you are unable to accept and process text/xml responses and the Action will only pipe the response from a webservice call to a Dictionary object so you can&#8217;t even do any string manipulation foo on the result if it&#8217;s not one of the three response types accepted!</p>
<p>Hope this post saves you some time!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/490/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=490&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2013/03/18/call-web-services-from-workflows-on-sharepoint-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>
	</item>
		<item>
		<title>Create New Folder Hierarchies For TFS Projects using Git SCM</title>
		<link>http://blog.siliconvalve.com/2013/02/21/create-new-folder-hierarchies-for-tfs-projects-using-git-scm/</link>
		<comments>http://blog.siliconvalve.com/2013/02/21/create-new-folder-hierarchies-for-tfs-projects-using-git-scm/#comments</comments>
		<pubDate>Thu, 21 Feb 2013 01:20:04 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[ALM]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Release Management]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Visual Studio;Git;TFS;]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=462</guid>
		<description><![CDATA[If, like a lot of people who&#8217;ve worked heavily with TFS you may not have spent much time working with Git or any of its DVCS bretheren. Firstly, a few key things: 1. Read and absorb the tutorial on how best to work with Git from the guys over at Atlassian. http://atlassian.com/git/tutorial/git-basics 2. Install the [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=462&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>If, like a lot of people who&#8217;ve worked heavily with TFS you may not have spent much time working with Git or any of its DVCS bretheren.</p>
<p>Firstly, a few key things:</p>
<p>1. Read and absorb the tutorial on how best to work with Git from the guys over at Atlassian.</p>
<p><a href="http://atlassian.com/git/tutorial/git-basics" rel="nofollow">http://atlassian.com/git/tutorial/git-basics</a></p>
<p>2. Install the Visual Studio 2012 Update 2 (currently in CTP, possibly in RTM by the time you read this).<br />
<a href="http://www.microsoft.com/en-us/download/details.aspx?id=36539" rel="nofollow">http://www.microsoft.com/en-us/download/details.aspx?id=36539</a> (grab just vsupdate_KB2707250.exe)</p>
<p>3. Install the Git Tools for Visual Studio <a href="http://visualstudiogallery.msdn.microsoft.com/abafc7d6-dcaa-40f4-8a5e-d6724bdb980c" rel="nofollow">http://visualstudiogallery.msdn.microsoft.com/abafc7d6-dcaa-40f4-8a5e-d6724bdb980c</a></p>
<p>4. Install the most recent Git client software from <a href="http://git-scm.com/downloads" rel="nofollow">http://git-scm.com/downloads</a></p>
<p>5. Set your default Visual Studio Source Control provider to be &#8220;Microsoft Git Provider&#8221;.</p>
<p>6. Setup an account on Team Foundation Service (<a href="https://tfs.visualstudio.com/" rel="nofollow">https://tfs.visualstudio.com/</a>), or if you&#8217;re lucky enough maybe you can even do this with your on-premise TFS instance now&#8230;</p>
<p>7. Make sure you enable and set alternative credentials in your TFS profile:</p>
<p><a href="http://siliconvalve.files.wordpress.com/2013/02/alt-credentials.png"><img class="alignnone size-full wp-image-466" alt="alt-credentials" src="http://siliconvalve.files.wordpress.com/2013/02/alt-credentials.png?w=620"   /></a></p>
<p>8. Setup a project that uses Git for source control.</p>
<p>At this stage you have a couple of options &#8211; you can clone the repository using Visual Studio&#8217;s Git support</p>
<p><a href="http://siliconvalve.files.wordpress.com/2013/02/gitclone.png"><img class="alignnone size-full wp-image-468" alt="gitclone" src="http://siliconvalve.files.wordpress.com/2013/02/gitclone.png?w=620"   /></a></p>
<p>OR you can do it right from the commandline using the standard Git tooling (make sure you&#8217;re at a good location on disk when you run this command):</p>
<pre class="brush: plain; title: ; notranslate">
git clone https://thesimpsons.visualstudio.com/defaultcollection/_git/bart milhouse
Cloning into 'milhouse'...
Username for 'https://thesimpsons.visualstudio.com/': homer
Password for 'https://thesimpsons.visualstudio.com/':
Warning: You appear to have cloned an empty repository.
</pre>
<p>I tend to setup a project directory hierarchy early on and with Git support in Visual Studio I&#8217;d say it&#8217;s even more important as you don&#8217;t have a Source Control Explorer view of the world and Visual Studio can quickly create a mess when adding lots of projects or solution elements.  The challenge is that (as of writing) Git won&#8217;t support empty folders and the easiest work around is to create your folder structure and drop an empty file into each folder.</p>
<p>Now this is where Visual Studio&#8217;s Git tools won&#8217;t help you &#8211; they have no concept of files / folders held outside of Visual Studio solutions so you will need to use the Git tools at the commandline to affect this change. Once have your hierarchy setup with empty files in each folder, at a command prompt change into the root of your local repository and then do the following.</p>
<pre class="brush: plain; title: ; notranslate">
git add -A
git commit -m &quot;Hmmmm donuts.&quot;
</pre>
<p>Now, at this point, if you issue &#8220;git push&#8221; you may experience a problem and receive this message:</p>
<blockquote><p>No refs in common and none specified; doing nothing.<br />
Perhaps you should specify a branch such as &#8216;master&#8217;.<br />
Everything up-to-date.</p></blockquote>
<p>Which apart from being pretty good english (if we ignore &#8216;refs&#8217;) is pretty damn useless.</p>
<p>How to fix? Like this:</p>
<pre class="brush: plain; title: ; notranslate">
git push origin master
</pre>
<p>This will perform a forced push and your newly populated hierachy should be pushed to TFS, er Git, er TFS. You get the idea. Then the others on your team are able to clone the repository (or perform a pull) and will receive the updates.</p>
<p>HTH.</p>
<p><span style="color:#ff0000;"><strong>Update:</strong></span> A big gotcha that I&#8217;ve found, and it results in a subtle issue is this: if you have a project that has spaces in its title (i.e. &#8220;Big Web&#8221;) then Git happily URL encodes that and will write the folder to disk in the form &#8220;Big%20Web&#8221; which is all fine and dandy until you try to compile anything in Visual Studio. Then you&#8217;ll start getting CS0006 compilation errors (unable to find metadata files).  The fix is to override the target when cloning the repository to make sure the folder is validly named (in my example above this checks out the &#8220;bart&#8221; project to the local &#8220;milhouse&#8221; folder).</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/462/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=462&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2013/02/21/create-new-folder-hierarchies-for-tfs-projects-using-git-scm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>

		<media:content url="http://siliconvalve.files.wordpress.com/2013/02/alt-credentials.png" medium="image">
			<media:title type="html">alt-credentials</media:title>
		</media:content>

		<media:content url="http://siliconvalve.files.wordpress.com/2013/02/gitclone.png" medium="image">
			<media:title type="html">gitclone</media:title>
		</media:content>
	</item>
		<item>
		<title>Save Bytes, Your Sanity and Money</title>
		<link>http://blog.siliconvalve.com/2013/02/08/save-bytes-your-sanity-and-money/</link>
		<comments>http://blog.siliconvalve.com/2013/02/08/save-bytes-your-sanity-and-money/#comments</comments>
		<pubDate>Fri, 08 Feb 2013 00:59:47 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[web application server]]></category>
		<category><![CDATA[web deployment]]></category>
		<category><![CDATA[web performance; minification;]]></category>
		<category><![CDATA[webapplications]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=433</guid>
		<description><![CDATA[In this day of elastic on-demand compute resource it can be easy to lose focus on how best to leverage a smaller footprint when it&#8217;s so easy to add capacity. Having spent many a year working on the web it&#8217;s interesting to see how development frameworks and web infrastructure has matured to better support developers [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=433&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>In this day of elastic on-demand compute resource it can be easy to lose focus on how best to leverage a smaller footprint when it&#8217;s so easy to add capacity. Having spent many a year working on the web it&#8217;s interesting to see how development frameworks and web infrastructure has matured to better support developers in delivering scalable solutions for not much effort. Still, it goes without saying that older applications don&#8217;t easily benefit from more modern tooling and even newer solutions sometimes fail to leverage tools because the solution architects and developers just don&#8217;t know about them. In this blog post I&#8217;ll try to cover off some and provide background as to why it&#8217;s important.</p>
<h3>Peak hour traffic</h3>
<p>We&#8217;ve all driven on roads during peak hour – what a nightmare! A short trip can take substantially longer when the traffic is heavy. Processes like paying for tolls or going through traffic lights suddenly start to take exponentially longer which has a knock-on effect to each individual joining the road (and so on). I&#8217;m pretty sure you can see the analogy here with the peaks in demand that websites often have, but, unlike on the road the web has this problem two-fold because your request generates a response that has to return to your client (and suffer a similar fate).</p>
<p>At a very high level the keys to better performance on the web are:</p>
<ul>
<li>ensure your web infrastructure takes the least amount of time to handle a request</li>
<li>make sure your responses are streamlined to be as small as possible</li>
<li>avoid forcing clients to make multiple round-trips to your infrastructure.</li>
</ul>
<h3>All requests (and responses) are not equal</h3>
<p>This is subtle and not immediately obvious if you haven&#8217;t seen how hosts with different latencies can affect your website. You may have built a very capable platform to service a high volume of requests but you may not have considered the time it takes for those requests to be serviced.</p>
<p>What do I mean?</p>
<p>A practical example is probably best and is something you can visualise yourself using your favourite web browser. In Internet Explorer or Chrome open the developer tools by hitting F12 on your keyboard (in IE make sure to hit &#8220;Start Capturing&#8221; too) – if you&#8217;re using Firefox, Safari, et al… I&#8217;m sure you can figure it out <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . Once open visit a website you know well and watch the list of resources that are loaded. Here I&#8217;m hitting Google&#8217;s Australia homepage.</p>
<p>I&#8217;m on a very low latency cable connection so I have a response in the milliseconds.</p>
<p><img alt="Network view in Internet Explorer" src="http://siliconvalve.files.wordpress.com/2013/02/020813_0041_savebytesyo1.png?w=620" /></p>
<p><img alt="Network view in Google Chrome" src="http://siliconvalve.files.wordpress.com/2013/02/020813_0041_savebytesyo2.png?w=620" /></p>
<p>This means that despite the Google homepage sending me almost 100 KB of data it serviced my entire request in under half a second (I also got some pre-cached goodness thrown in which also makes the response quicker). The real interest beyond this is what is that time actually made up of? Let Chrome explain:</p>
<p><img alt="Request detail from Google Chrome" src="http://siliconvalve.files.wordpress.com/2013/02/020813_0041_savebytesyo3.png?w=620" /></p>
<p>My client (browser) spent 5ms setting up the connection, 1ms sending my request (GET <a href="http://www.google.com.au/">http://www.google.com.au/</a>), 197ms waiting for Google to respond at all, and then 40ms receiving the response. If this was a secure connection there would be more setup as my client and the server do all the necessary encryption / decryption to secure the message transport.</p>
<p>As you can imagine, if I was on a high latency connection each one of these values could be substantially higher. The net result on Google&#8217;s infrastructure would be:</p>
<ul>
<li>It takes longer to receive the full request from my client after connection initialisation</li>
<li>It takes longer to stream the full response from their infrastructure to my client.</li>
</ul>
<p>Both of which means my slower connection would use Google&#8217;s server resources for longer thus stopping those resources servicing another request.</p>
<p>As you can see this effectively limits the infrastructure to run at lower capacity than it really could and also demonstrates why performing load testing requires that you run test agents that utilise different latencies so you can gauge realistically what your capacity is.</p>
<h3>Some things you can do</h3>
<p>Given you have no control over how or where the requests will come from there are a few things you can do to help reduce the effect of low latency clients will impact your site.</p>
<ol>
<li>Reduce the number of requests or round trips: often overlooked but is increasingly becoming easier to achieve. The ways you can achieve a reduction in requests include:
<ol>
<li>Use a CDN for resources: Microsoft and Google both host jQuery (and various jQuery plugins) on their CDNs. You can leverage these today with minimal effort. Avoid issues with SSL requests by mapping the CDN using a src attribute similar to &#8220;//ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js&#8221; (without the http: prefix). Beyond jQuery push static images, CSS and other assets to utilise a CDN (regardless of provider) – cost should be no big issue for most scenarios.</li>
<li>Bundle scripts: most modern sites make heavy use of JavaScript and depending on how you build your site you may have many separate source files. True, they may only be a few KB but each request a client makes will need to go through a process similar to the above. Bundling refers to the combining of multiple JavaScript files into a single download. Bundling is now natively supported in ASP.Net 4.5 and is available in earlier versions through third-party tooling for either runtime or at-build bundling. Other platforms and technologies offer similar features.</li>
<li>Use CSS Sprites: many moons ago each individual image reference in CSS would be loaded as an individual asset onto your server. While you can still do this the obvious net effect is the need to request multiple assets from the server. <a href="http://www.w3schools.com/css/css_image_sprites.asp">CSS sprites</a> combine multiple images into one image and then utilise offsets in CSS to show the right section of the sprite. The upside is also client-side caching means any image reference in that sprite will be serviced very quickly.</li>
<li>Consider inline content: there I said it. Maybe include small snippets of CSS or JavaScript in the page itself. If it&#8217;s the only place it&#8217;s used why push it to another file and generate a second request for this page? Feeling brave? You could leverage the <a href="http://en.wikipedia.org/wiki/Data_URI_scheme">Data URI scheme</a> for image or other binary data and have that inline too.</li>
</ol>
</li>
<li>Reduce the size of the resources you are serving using these approaches:
<ol>
<li>Minification: make sure you minify your CSS and JavaScript. Most modern web frameworks will support this natively or via third-party tooling. It&#8217;s surprising how many people overlook this step and on top of that also don&#8217;t utilise the minified version of jQuery!</li>
<li>Compress imagery: yes, yes, sounds like the pre-2000 web. Know what? It hasn&#8217;t changed. This does become increasingly difficult when you have user generated content (UGC) but even there you can provide server-side compression and resizing to avoid serving multi-MB pages!</li>
<li>Use GZIP compression: there is a trade-off here – under load can your server cope with the compression demands? Does the web server you&#8217;re using support GZIP of dynamic content? This change, while typically an easy one (it&#8217;s on or off on the server) requires testing to ensure other parts of your infrastructure will support it properly.</li>
</ol>
</li>
<li>Ensure you service requests as quickly as possible – this is typically where most web developers have experience and where a lot of time is spent tuning resources such as databases and SANs to ensure that calls are as responsive as possible. This is a big topic all on its own so I&#8217;m not going to dive into it here!</li>
</ol>
<p>If you&#8217;re a bit lost were to start it can pay to use tools like <a href="http://yslow.org/">YSlow</a> from Yahoo! Or <a href="https://developers.google.com/speed/pagespeed/">PageSpeed</a> from Google – these will give you clear guidance on areas to start working on. From there it&#8217;s a matter of determining if you need to make code or infrastructure changes (or both) to create a site that can scale to more traffic without needing to necessarily obtain more compute power.</p>
<p>Hope you&#8217;ve found this useful – if you have any tips, suggestions or corrections feel free to leave them in the comments below.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/433/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/433/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=433&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2013/02/08/save-bytes-your-sanity-and-money/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>

		<media:content url="http://siliconvalve.files.wordpress.com/2013/02/020813_0041_savebytesyo1.png" medium="image">
			<media:title type="html">Network view in Internet Explorer</media:title>
		</media:content>

		<media:content url="http://siliconvalve.files.wordpress.com/2013/02/020813_0041_savebytesyo2.png" medium="image">
			<media:title type="html">Network view in Google Chrome</media:title>
		</media:content>

		<media:content url="http://siliconvalve.files.wordpress.com/2013/02/020813_0041_savebytesyo3.png" medium="image">
			<media:title type="html">Request detail from Google Chrome</media:title>
		</media:content>
	</item>
		<item>
		<title>Tweet-Pitch Your Job To A Non-Tech Person</title>
		<link>http://blog.siliconvalve.com/2013/01/31/tweet-pitch-your-job-to-a-non-tech-person/</link>
		<comments>http://blog.siliconvalve.com/2013/01/31/tweet-pitch-your-job-to-a-non-tech-person/#comments</comments>
		<pubDate>Thu, 31 Jan 2013 05:59:33 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[Teams]]></category>
		<category><![CDATA[ACS]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[opinion]]></category>
		<category><![CDATA[perception]]></category>
		<category><![CDATA[teams]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=420</guid>
		<description><![CDATA[I saw LinkedIn post today from Matt Barrie (head of freelancer.com) where he calls for the end of the ACS due to its questionable relevancy and the way in which it operates its Skills Assessment program.  You should have a read. So why am I blogging about it? One item called out in the post [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=420&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>I saw LinkedIn post today from Matt Barrie (head of freelancer.com) where he calls for the end of the ACS due to its questionable relevancy and the way in which it operates its Skills Assessment program.  You should <a title="Read it now." href="http://www.linkedin.com/today/post/article/20130131000939-921366-the-australian-computer-society-should-be-disbanded">have a read</a>.</p>
<p>So why am I blogging about it?</p>
<p>One item called out in the post is the sub-heading attached to each specialisation of &#8220;Network &amp; Communications&#8221;, &#8220;Software Engineer&#8221;, &#8220;Electrical &amp; Electronic Engineering&#8221;.  Sure, they&#8217;re simplifications and questionably accurate, but for most people of any age they are as detailed as needed to provide a flavour of what each is about.</p>
<p>I think that as technology professionals and as citizens in a very tech-savvy world we assume the detail of what we do for a job can be explained to and comprehended by most of the population around us.  While this may be true to a degree, I bet if you asked most non-tech people you know to explain what you do for a job (without you first giving them a detailed refresher) they may explain it as:</p>
<p>&#8220;Writes software for computers&#8221;</p>
<p>&#8220;Creates websites&#8221;</p>
<p>&#8220;Looks after networking at company X&#8221;</p>
<p>&#8220;Helps people access the internet&#8221;.</p>
<p>Sure, they&#8217;re not detailed and they most likely fail to capture in any way the complexity of your job.  But they are the way those people have understood what you do for a job and most likely reflect how most people would interpret it.</p>
<p>As professionals we should not be insulted by this.</p>
<p>A key role for the ACS is to help drive the next generation of professionals into our businesses whatever their background.  The ACS simplify the descriptions because they must.  You cannot explain a new concept with another in less characters than a Tweet.</p>
<p>Here&#8217;s a challenge &#8211; come up with a sub-heading that describes those specialisations in terms that the general public can understand, that captures the job&#8217;s main purpose and that fits in that space.  Then <a title="Tweet it now!" href="https://twitter.com/acsnewsfeed">Tweet it to the ACS</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/420/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/420/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=420&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2013/01/31/tweet-pitch-your-job-to-a-non-tech-person/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>
	</item>
		<item>
		<title>Deploy Umbraco using Octopus Deploy</title>
		<link>http://blog.siliconvalve.com/2012/12/09/deploy-umbraco-using-octopus-deploy/</link>
		<comments>http://blog.siliconvalve.com/2012/12/09/deploy-umbraco-using-octopus-deploy/#comments</comments>
		<pubDate>Sun, 09 Dec 2012 10:11:22 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[ALM]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[CI]]></category>
		<category><![CDATA[Release Management]]></category>
		<category><![CDATA[Deployment]]></category>
		<category><![CDATA[Octopus]]></category>
		<category><![CDATA[Octopus Deploy]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[Umbraco]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=398</guid>
		<description><![CDATA[Every once in a while you come across a tool that really fits its purpose and delivers good value for not a whole lot of effort.  I&#8217;m happy to say that I think Octopus Deploy is one such tool!  While Octopus isn&#8217;t the first (or most mature in this space) it hits a sweet spot [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=398&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Every once in a while you come across a tool that really fits its purpose and delivers good value for not a whole lot of effort.  I&#8217;m happy to say that I think <a title="Visit their website." href="http://octopusdeploy.com/">Octopus Deploy</a> is one such tool!  While Octopus isn&#8217;t the first (or most mature in this space) it hits a sweet spot and really offers any sized team the ability to get on board the Continous Deployment / Delivery bandwagon.</p>
<p>My team is using it to deploy a range of .Net websites and we&#8217;re considering it for pushing database changes too (although these days a lot of what we build utilises Entity Framework so we don&#8217;t need to push that many DB scripts about any more) and one thing we&#8217;ve done a lot of is deploy Umbraco 4 sites.</p>
<h3>Its About The Code</h3>
<p>One important fact to get out here is that I&#8217;m only going to talk about how Octopus will help you deploy .Net code changes only.  While you can generate SQL scripts and deploy them using Octopus (and <a title="Rolling them scripts!" href="http://ready-roll.com/">ReadyRoll</a> perhaps), Umbraco development has little to do with schema change and everything to do with instance data change.  This is not an easy space to be &#8211; more so with larger websites &#8211; and even Umbraco has found it hard to solve despite producing <a title="Courier Deployment Tool." href="http://umbraco.com/products/more-add-ons/courier-2.aspx">Courier</a> specifically for this challenge.  This all being said, I&#8217;m sure if you spend time working with <a title="DB Tools Rock." href="http://www.red-gate.com/products/sql-development/sql-data-compare/">SQL Data Compare</a>  you can come up with a database deployment step using scripts.</p>
<h3>Setting It Up</h3>
<p>Before you start Umbraco deployments using Octopus you need to make a decision about what to deploy each time and then modify your target.</p>
<p>When developing with Umbraco you will have a &#8220;media&#8221;, an &#8220;umbraco&#8221; and an &#8220;umbraco_client&#8221; folder in your solution folder but not necessarily included in your Visual Studio solution.  These three folders will also be present on your target deployment server and in order to leverage Octopus properly you need to manage these three folders appropriately.</p>
<h4>Media folder</h4>
<p>This folder holds files that are uploaded by CMS users over time.  It is rare that you would want to take media from a development environment and push it to any other environment other than on initial deployment.  If you do deploy it each time then your deployment will be (a) larger and (b) more challenging to deploy (notice I didn&#8217;t say impossible).  You&#8217;ll also need to deal with merging of media &#8220;meta data&#8221; in the Umbraco CMS you&#8217;re deploying to (you&#8217;re back at Courier at this stage).</p>
<p>Regardless of whether you want to push media or not you will need to deal with how you treat the media folder on your target server &#8211; Octopus can automatically re-map your IIS root folder for your website to your new deployment so you&#8217;lll need to write Powershell to deal with this (and merging content if required).</p>
<p>Our team&#8217;s process is to not transfer media files via Octopus and we have solved the media folder problem by creating the folder as a Virtual Directory in IIS on the target web server.  As long as the physical folder has the right permissions you will have no problems with this approach.  The added benefit here is that when Octopus Deploy remaps your IIS root folder to a new deployment the media is already in place and not affected at all.</p>
<h4>Umbraco folders</h4>
<p>The two Umbraco folders are required for the CMS to function as expected.  While some of you might make changes internally to these folders I&#8217;d recommend you visit your reasons for doing so and see if you can&#8217;t make these two folders static and simply re-deploy the Umbraco binaries in your Octopus package.</p>
<p>There are a couple of ways to proceed with these folders &#8211; you can choose to redeploy them each time or you can treat them as exceptions and, as with the media folder, you can create Virtual Directories for them under IIS.</p>
<p>If you want to redeploy them as part of your package you will need to do a few things:</p>
<ol>
<li>Create a small stub &#8220;umbraco.zip&#8221; that is empty or that contains a single file (or similar) in your Visual Studio solution.</li>
<li>Write some Powershell in your PostDeploy.ps1 file that unzips those folders into the right place on your target web server.</li>
<li>In your build script (on your build server, right?) utilise an appropriate MSBuild extension (like the trusty MSBuildCommunityTasks) to zip the two folders into a zip that replaces the sub you created in (1).</li>
<li>Run your build in Release mode (required to trigger <a title="Get it via Nuget!" href="https://github.com/OctopusDeploy/OctoPack">OctoPack</a>) which will trigger the packaging of your outputs including the new zip from (1).</li>
</ol>
<p>On deployment you should see your Powershell execute and unpack your Umbraco folders into the right place!</p>
<p>Alternatively, you can choose not to redeploy these two folders each time &#8211; if this suits (and it does for us) then you can use the same approach as with the media folder and simply create two Virtual Directories.  Once you&#8217;ve deployed everything will work as expected.</p>
<h3>It&#8217;s Packaged (and that&#8217;s a Wrap)</h3>
<p>So there we have a simple scenario for deploying Umbraco via Octopus Deploy &#8211; I&#8217;m sure there are more challenging scenarios than the above but I bet with a little msbuild and Powershell-foo you can work something out.</p>
<p>I hope you&#8217;ve found this post useful and I&#8217;d recommend checking out the <a title="Awesome!" href="http://octopusdeploy.com/blog">Octopus Deploy Blog</a> to see what great work Paul does at taking feedback on board for the product.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/398/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=398&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2012/12/09/deploy-umbraco-using-octopus-deploy/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>
	</item>
		<item>
		<title>Clean Backups Using Windows Server Backup and EBS Snapshots</title>
		<link>http://blog.siliconvalve.com/2012/11/20/clean-backups-using-windows-server-backup-and-ebs-snapshots/</link>
		<comments>http://blog.siliconvalve.com/2012/11/20/clean-backups-using-windows-server-backup-and-ebs-snapshots/#comments</comments>
		<pubDate>Mon, 19 Nov 2012 13:22:56 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[AWS]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[Backup]]></category>
		<category><![CDATA[EBS]]></category>
		<category><![CDATA[Snapshot]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=384</guid>
		<description><![CDATA[One of the powerful features of AWS is the ability to snapshot any EBS volume you have operating. The challenge when utilising Windows 2008 R2 is that NTFS doesn&#8217;t support point-in-time snapshotting which can result in an inconsistent EBS snapshot. You can still create a snapshot but it may be that one or more file [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=384&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>One of the powerful features of AWS is the ability to snapshot any EBS volume you have operating. The challenge when utilising Windows 2008 R2 is that NTFS doesn&#8217;t support point-in-time snapshotting which can result in an inconsistent EBS snapshot. You can still create a snapshot but it may be that one or more file that was mid-change may not be accurate (or usable) in the resulting snapshot.</p>
<h3>How to solve</h3>
<p>The answer, it turns out, is fairly easy (if a little convoluted) &#8211; <a title="Read about Windows Server Backup on Technet" href="http://technet.microsoft.com/en-us/library/cc770757.aspx">Windows Server Backup</a> PLUS EBS snapshots.</p>
<p>In order for this to work you will need:</p>
<p>1. Windows Server Backup installed on your Instance (this does not require a reboot on install).</p>
<p>2. An appropriately sized EBS volume to support your intended backup (<a title="Hint - 2.5 times your backup target." href="http://technet.microsoft.com/en-us/library/dd759183.aspx">see the Technet arcticle</a> on how to work out your allowance &#8211; remember you can always create a new volume later if you get the size wrong!)</p>
<p>3. Windows Task Scheduler (who needs Quartz or cron <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ).</p>
<p>4. Some Powershell Foo.</p>
<h3>Volume Shadow Copy using the new EBS Volume</h3>
<p>Once you have created your new EBS volume and attached it to the Instance you want to backup, open up Windows Server Backup and select what you want to backup (full, partial, custom &#8211; to be honest you shouldn&#8217;t need to do a &#8220;bare metal&#8221; backup&#8230;.)  Note that Windows Server Backup will delete *everything* on the target EBS volume and it will no longer show up in Windows Explorer &#8211; it will still be attached and show up in Disk Manager, but you can&#8217;t copy files to or from it.</p>
<p>The benefit of Windows Server Backup is that it will utilise Windows Volume Shadow Copy Service (VSS)  resulting in a clean copy of files &#8211; even those in-flight at the time of backup.  This gets around the inability to &#8220;freeze&#8221; NTFS at runtime.</p>
<p>Set your schedule and save the backup.</p>
<h3>Snapshot the backup volume</h3>
<p>Now you have a nice clean static copy of the filesystem you can go ahead and create an EBS snapshot.  The best way I found to schedule this was to use some <a title="Read the blog post containing the scripts" href="http://messor.com/?p=418">Powershell magic written by the guys over at messors.com</a>.  I slightly modified the Daily Snapshot Powershell to snapshot a pre-defined Instance and Volume by calling the <em>CreateSnapshotForInstance</em> function that takes an Instance and Volume identifier.  The great thing with this script setup is it auto-manages the expiry of old snapshots so my S3 usage doesn&#8217;t just keep on growing.</p>
<p>I invoke this Powershell on the success of the initial Windows Server Backup scheduled task by using the Task Scheduling &#8211; <a title="How to setup a task based on success of backup" href="http://www.binaryroyale.com/index.php/2011/12/configuring-email-alerts-for-windows-server-backups/">see this post</a> at Binary Royale on how to do this (they send an email &#8211; I use the same approach to do a snapshot instead).</p>
<p>The great thing about the Powershell is that it will send you an email once completed &#8211; I have also setup mail notifications at completion of the Windows Server Backup (success, failure, disk full) so I can know when / if the backup fails at an early stage.  Note that in Windows Server 2008 R2 you can send an email right in Windows Task Scheduler &#8211; on AWS you&#8217;ll need to have an IIS smart host up and running to support this though &#8211; <a title="How to setup an IIS smart relay host for SES" href="http://blog.siliconvalve.com/2012/03/20/using-amazon-ses-for-net-application-mail-delivery/">see my earlier post</a> on how to set up a IIS SES relay host.</p>
<h3>Summary</h3>
<p>The benefit of this approach is a consistent state for your backup contents as well as an easy way to do a controlled restore at a later date (&#8220;create volume from snapshot&#8221; in the AWS management console and then attach to an Instance).  Additionally you achieve a reasonably reliable backup for not much more than the cost of EBS I/O and S3 I/O and storage costs.</p>
<p>Hope you find this useful.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/384/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/384/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=384&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2012/11/20/clean-backups-using-windows-server-backup-and-ebs-snapshots/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>
	</item>
		<item>
		<title>Your Life Will Not End When You Use Windows 8</title>
		<link>http://blog.siliconvalve.com/2012/10/15/your-life-will-not-end-when-you-use-windows-8/</link>
		<comments>http://blog.siliconvalve.com/2012/10/15/your-life-will-not-end-when-you-use-windows-8/#comments</comments>
		<pubDate>Mon, 15 Oct 2012 12:37:49 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[Windows 8]]></category>
		<category><![CDATA[windows 8]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=359</guid>
		<description><![CDATA[But you&#8217;d think so if you read a lot of the press (or the blogs or see the videos).  I get it &#8211; these guys need to fill the pages with something and it&#8217;s certainly easy to take pot shots at Microsoft (or Apple, how about those ios6 maps?!, or Google, how about Google+?!) but [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=359&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>But you&#8217;d think so if you read a lot of the press (or the blogs or <a title="See how old guys react to Windows 8." href="http://www.youtube.com/watch?v=v4boTbv9_nU">see the videos</a>).  I get it &#8211; these guys need to fill the pages with something and it&#8217;s certainly easy to take pot shots at Microsoft (or Apple, how about those ios6 maps?!, or Google, how about Google+?!) but I thought I&#8217;d write down some experiences of having lived on a Windows 8 platform as a primary OS for a few weeks now.</p>
<p>First off, I&#8217;m tech guy, and on top of that I am primarily a Microsoft tech guy, so you may expect me to have better-than-average abilities when picking up new concepts as they are introduced in each iteration of Windows.  Anyway, here it goes, a few random musings from me on Windows 8 and why I should really have called this post &#8220;8 Shades of Meh&#8221;. Apologies if it just jumps to about a bit&#8230;</p>
<h3>Desktop Users Will Survive</h3>
<p>Having not had the chance to play with Windows 8 on a new form factor like a Surface <del>tablet</del> it&#8217;s hard to know what the experience will be there, but I can tell you that as a desktop user (I&#8217;m running it on a Lenovo T420s notebook) that you will not be lost.  Sure, you&#8217;ll need to retrain yourself for a few basic actions (see what follows below) but for the most part you will come to wonder what all the fuss was about.  Once you drop into the Desktop you will be fine (and you can still put icons on the desktop and pin things to the task bar). Control Panel is still there as are a bunch of other well known Windows utilities (finally, it&#8217;s &#8220;File Explorer&#8221; instead of &#8220;Windows Explorer&#8221;!).  Goodness me, desktop peek is still there too!</p>
<p>I&#8217;d say overall, that the effort involved in familiarising yourself with Windows 8 will be less than that involved in picking up the Ribbon when it was introduced into Office.</p>
<h3>Square Edges, Flat Palettes</h3>
<p>Yes, everyone said it &#8211; the death of Aero!  And to your average user this means what exactly? It probably means their ancient machine that was smashed with Vista could probably be resurrected better on Windows 8 than even on Windows 7 (assuming there are drivers about).</p>
<p>I&#8217;ll be honest and say I don&#8217;t miss transparent bars at all (one reason I like Chrome is that it actually does something useful with that space!) and what little transparency there is (the task bar is transparent) is fine with me.</p>
<p>I also jumped onto an Office 2013 Preview build when I switched to Windows 8 and have been using Visual Studio 2012 for a while.  I&#8217;ve square-cornered-flat-paletted all teh things.  You get used to it!</p>
<h3>There&#8217;s no Start Menu</h3>
<p>+1 from me on this.  I get a few more pixels back for stuff on the Taskbar when in Desktop Mode.  Also, for the first time ever in its lifetime, you&#8217;ll actually start to use the Windows key.  My tip (and one I read elsewhere a lot): learn Windows keyboard shortcuts.  The Windows key is the new Escape key in many circumstances.  If Escape no longer does what you expect try the Windows key!  Still lost? Mouse-over the bottom left of screen (on any monitor) and the Start Screen can be activated with a click (just hit the Windows key is my advice).</p>
<p>One bit I don&#8217;t get (and I&#8217;m sure there&#8217;s a reason) is that from time-to-time my Start screen pops on my secondary monitor instead of my primary&#8230; weird!</p>
<h3>Multi-monitor Taskbar</h3>
<p>Took a little while to get used to this &#8211; still breaking years of single-monitor Taskbar-ness.  Getting into the habit of looking at the Taskbar on the screen that you have an application (or an application window) open on takes a little getting used to, but it&#8217;s nice to finally have this natively in Windows.</p>
<h3>Windows 8 Will Kill Off XP</h3>
<p>I think corporates will probably take one look at Windows 8 and decide that Windows 7 will be the basis of their new SOE builds. I&#8217;d love to see people finally get off of Windows XP and if Windows 8 can make that happen by forcing uptake of Windows 7 it&#8217;s a good thing!  God knows it hurts me the number of times I go somewhere and still see XP in use.  The one saving grace for Windows 8 in the corporate environment is if the tablet form factor for Windows 8 really rocks then perhaps we might just see Windows 8 across the board (desktop, Surface <del>tablet</del> and phone).</p>
<h3>Search All The Things</h3>
<p>The habit for most Windows 7 power users was search.  Translate that to Windows 8 and you&#8217;re good to go.  Search has been refined slightly but overall behaves pretty much the same.</p>
<h3>So&#8230; What?</h3>
<p>In summary, I think it&#8217;s incorrect to call Windows 8 the next Vista.  If anything, I&#8217;d say Microsoft has played things pretty safe.  They could have made the experience far more radical than it is and I think (as I said) that traditional desktop users won&#8217;t struggle too much.  There&#8217;s certainly a shift going on right now that started with touch computing that is finally being embraced in Windows 8.   If you have been using computers for a while Windows 8 looks odd (and might remind you a bit of &#8220;Active Desktop&#8221;), but think of the generation of people coming through now for whom the iPhone and iPad are points of reference for how to use a computer and consider what Windows 8 (and future releases) will mean to them.</p>
<p>If you&#8217;re up for a new machine, get Windows 8, especially if you&#8217;re on XP (please!)</p>
<p>One blog I&#8217;d recommend having a read of if you&#8217;re unsure what Windows 8 means to you as a Windows 7 user is from <a title="Read Scott's Post on Windows 8" href="http://www.hanselman.com/blog/Windows8ProductivityWhoMovedMyCheeseOhThereItIs.aspx">Scott Hanselman</a>.  Certainly helped me decide to make the switch.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/359/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=359&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2012/10/15/your-life-will-not-end-when-you-use-windows-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>
	</item>
		<item>
		<title>Fix Windows 8 and Hyper-V Virtual Switch Problems</title>
		<link>http://blog.siliconvalve.com/2012/09/26/fix-windows-8-and-hyper-v-virtual-switch-problems/</link>
		<comments>http://blog.siliconvalve.com/2012/09/26/fix-windows-8-and-hyper-v-virtual-switch-problems/#comments</comments>
		<pubDate>Wed, 26 Sep 2012 03:16:38 +0000</pubDate>
		<dc:creator>Simon</dc:creator>
				<category><![CDATA[Hyper-V]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[Windows 8]]></category>
		<category><![CDATA[hyper-v]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[virtualisation]]></category>
		<category><![CDATA[virtualization]]></category>
		<category><![CDATA[windows 8]]></category>

		<guid isPermaLink="false">http://blog.siliconvalve.com/?p=342</guid>
		<description><![CDATA[Wow, that hurts! One reason I decided to jump onto the Windows 8 bandwagon was that I finally had access to a native VM environment that supports 64 bit operating systems.  Unfortunately, though, I&#8217;ve just burnt a couple of hours trying to figure out how to get Hyper-V and Windows 8 to play nicely with [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=342&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Wow, that hurts!</p>
<p>One reason I decided to jump onto the Windows 8 bandwagon was that I finally had access to a native VM environment that supports 64 bit operating systems.  Unfortunately, though, I&#8217;ve just burnt a couple of hours trying to figure out how to get Hyper-V and Windows 8 to play nicely with one another at a networking level.</p>
<p>My problem presented itself as loss of IP network connectivity which meant my host didn&#8217;t have any form of network access.</p>
<p>A quick look around online suggests a few people have had problems as well that sound way, way worse than mine (re-install the host OS, really?!)</p>
<h3>The Solution(s)</h3>
<p>This may not work for everyone&#8230; I&#8217;m running a Lenovo T420s that has the out-of-the-box Windows 8 drivers for all its components as Lenovo haven&#8217;t moved past beta with their drivers as yet.</p>
<p>Network adapters are: wired: Intel 82579LM Gigabit; wireless: Lenovo 11b/g/n Wireless LAN PCI Express.</p>
<p>I have this approach working for the wired and wireless connections in my machine &#8211; the fix is slightly different for each connection type, so here they are.</p>
<h4>Wired</h4>
<p>1. Create Your virtual switch and change no defaults (apart from the Name if you like).  This is how it looks:</p>
<p><a href="http://siliconvalve.files.wordpress.com/2012/09/wired.png"><img class="alignnone size-full wp-image-343" title="Wired Virtual Switch setup" alt="How your wired Virtual Switch should look." src="http://siliconvalve.files.wordpress.com/2012/09/wired.png?w=620"   /></a></p>
<p>After you apply this your underlying physical connection will cease working.</p>
<p>2. Open up Control Panel &gt; Network and Internet &gt; Network Connections.</p>
<p>You will find that you now have &#8220;Ethernet&#8221; and &#8220;vEthernet (Your Switch Name)&#8221; connections.</p>
<p>3. Right click on &#8220;Ethernet&#8221; and click &#8220;Properties&#8221;.  Under the Networking Tab select all items in the &#8220;This connection uses the following items&#8221; and then click &#8220;OK&#8221;.</p>
<p>Windows will now give you a nice warning about items being disabled (such as IPv4, etc).  Click &#8220;Yes&#8221; on this dialog.</p>
<p>At this point you will see the &#8220;vEthernet&#8221; connection suddenly switch to &#8220;Identifying&#8230;..&#8221; and a few moments later you&#8217;ll be connected to your network (if you&#8217;re on a Windows domain the domain name will show).</p>
<h4>Wireless</h4>
<p>This process is slightly different as using a Wireless connection creates a Network Bridge as part of the process of setting up a Virtual Switch.</p>
<p>Do the above steps but select your wireless network connection instead this time.</p>
<p>When you are finished you will see two new items in your Network Connections: &#8220;vEthernet (Your Wireless Switch Name)&#8221; and &#8220;Network Bridge&#8221;.</p>
<p>Right click on the &#8220;Network Bridge&#8221; and click &#8220;Properties&#8221;. Under the Networking Tab select all items in the &#8220;This connection uses the following items&#8221; and then click &#8220;OK&#8221;.</p>
<p>Windows will now give you a nice warning about items being disabled (such as IPv4, etc).  Click &#8220;Yes&#8221; on this dialog.</p>
<p>As with the Wired connection above you should now see your &#8220;vEthernet&#8221; (wireless) connection switch to &#8220;Identifying&#8230;&#8221; followed shortly by a working network connection.</p>
<p>That&#8217;s it &#8211; simple &#8211; no reinstalling or driver updates are any other shenaningans.</p>
<p>Enjoy your Windows 8 &#8211; x64 Hyper V environment!</p>
<p>BTW &#8211; you shouldn&#8217;t need to jump through all these hoops to get this working and I&#8217;m not sure why these problems happen &#8211; I was very close to switching back to VirtualBox but thought I&#8217;d have one last go.  I&#8217;m hoping a future update from Microsoft will resolve these sorts of problems.</p>
<h4>Update</h4>
<p>I have had a few issues with Wireless &#8211; primarily I think due to roaming between different types of wireless networks &#8211; my initial setup was on a Windows domain and when I tried to connect wirelessly on my home network (running via a Cisco home business device) I couldn&#8217;t get a connection.  After a few days working on wired I&#8217;ve just switched back to wireless and it&#8217;s all working well (surprisingly).  So&#8230; you&#8217;re mileage may vary for wireless setups.  Let me know your experiences and I&#8217;m happy to add links to useful blogs or fixes for these sorts of issues.</p>
<p>I find that if wireless isn&#8217;t working that you need to disable your Wireless Virtual Switch on Windows 8 and re-enable it and you should find that the connection comes back to life.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/siliconvalve.wordpress.com/342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/siliconvalve.wordpress.com/342/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.siliconvalve.com&#038;blog=31033924&#038;post=342&#038;subd=siliconvalve&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.siliconvalve.com/2012/09/26/fix-windows-8-and-hyper-v-virtual-switch-problems/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5921bab9ae22cec7c19eaa6ac703a889?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">swaight</media:title>
		</media:content>

		<media:content url="http://siliconvalve.files.wordpress.com/2012/09/wired.png" medium="image">
			<media:title type="html">Wired Virtual Switch setup</media:title>
		</media:content>
	</item>
	</channel>
</rss>
