<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" media="screen" href="http://feeds.brokenwire.net/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" xmlns:gr="http://www.google.com/schemas/reader/atom/" xmlns:idx="urn:atom-extension:indexing" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" idx:index="no" gr:dir="ltr"><!--
Content-type: Preventing XSRF in IE.

--><generator uri="http://www.google.com/reader">Google Reader</generator><id>tag:google.com,2005:reader/user/13212983265218782203/state/com.google/broadcast</id><title type="text">Brokenwire.NET :: Stuff to read</title><gr:continuation>CMDL_ZTqsKgC</gr:continuation><author><name>Thijs</name></author><updated>2011-09-01T13:48:01Z</updated><feedburner:info uri="brokenwire-reading" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><subtitle type="html">Here you find a collection of stuff I think is worth reading.</subtitle><logo>http://feeds.brokenwire.net/~fc/brokenwire-reading?bg=99CCFF&amp;amp;fg=444444&amp;amp;anim=0</logo><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="feeds.brokenwire.net/brokenwire-reading" /><feedburner:browserFriendly>This feed contains articles that I think are worth reading.</feedburner:browserFriendly><entry gr:crawl-timestamp-msec="1314884881849"><id gr:original-id="http://cyclops.nettrends.nl/blog/?p=386">tag:google.com,2005:reader/item/4cd5853e566faf47</id><category term="General" /><category term="Work" /><category term="Work &gt; K2" /><title type="html">Not a K2 insider anymore…</title><published>2011-09-01T10:21:32Z</published><updated>2011-09-01T10:21:32Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/tZLOydMOqHk/" type="text/html" /><content xml:base="http://cyclops.nettrends.nl/blog" type="html">&lt;p&gt;Don’t worry, I’ve just moved a bit closed to [the] Source[Code Ltd]. I’ve worked at Capgemini and its predecessors for 5 years and it was time to do something different. Capgemini is a wonderful company with lots of opportunities. I’ve also learned a lot there and I’ll always look back at it with good feelings.&lt;/p&gt;
&lt;p&gt;I’m now working for K2NE GmbH. K2NE is a K2 distributor run by &lt;a href="http://www.linkedin.com/in/ruanscott"&gt;Ruan Scott&lt;/a&gt; who, if you have been in contact with K2 in Europe, you’ll probably know. K2NE operates in the North of Europe, covering Scandinavia, Germany, Swiss and Austria. The opportunity I have at K2NE is a large challenge for me that I could not resist!&lt;/p&gt;
&lt;p&gt;Unfortunately, K2 distributors are not allowed to be Insiders so I’m losing that hubris (always wanted to use that word on my blog). That doesn’t mean this blog is going to stop or won’t be updated. I’m still keeping it and I hope to bring more details/real life problem fixes on this blog, together with the new things! And I can assure you, there’s so much goodness to come!&lt;/p&gt;
&lt;p&gt;I also want to thank K2’s insider program because it helped me keep up my knowledge and start work at K2NE so easily!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/01b207sd64x0kWs967TuvCVLro0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/01b207sd64x0kWs967TuvCVLro0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/01b207sd64x0kWs967TuvCVLro0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/01b207sd64x0kWs967TuvCVLro0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=tZLOydMOqHk:6DmZkhsHe7M:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/tZLOydMOqHk" height="1" width="1"/&gt;</content><author><name>Ruben</name></author><source gr:stream-id="feed/http://cyclops.nettrends.nl/blog/?feed=rss2"><id>tag:google.com,2005:reader/feed/http://cyclops.nettrends.nl/blog/?feed=rss2</id><title type="html">_cyclops_&amp;#39;s blog</title><link rel="alternate" href="http://cyclops.nettrends.nl/blog" type="text/html" /></source><feedburner:origLink>http://cyclops.nettrends.nl/blog/2011/09/not-a-k2-insider-anymore%e2%80%a6/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1313148524177"><id gr:original-id="http://abstrusegoose.com/380">tag:google.com,2005:reader/item/e778d2df84cde8f3</id><category term="Comic" /><title type="html">startup</title><published>2011-07-19T15:30:36Z</published><updated>2011-07-19T15:30:36Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/eqBg8wB8Jkg/380" type="text/html" /><content xml:base="http://abstrusegoose.com/" type="html">&lt;p&gt;&lt;img src="http://abstrusegoose.com/strips/buzzwordy.png" alt="buzzwordy" width="744" height="637" title="...but...but...I used all the right buzzwords."&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://reddit.com/submit?url=http%3A%2F%2Fabstrusegoose.com%2F380&amp;amp;title=startup" title="reddit"&gt;&lt;img src="http://abstrusegoose.com/images/spreddit1.gif"&gt;&lt;/a&gt;&lt;a href="http://twitter.com/share?url=http%3A%2F%2Fabstrusegoose.com%2F380" title="tweet this"&gt;&lt;img src="http://abstrusegoose.com/images/twitter.gif"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rm39_kiy0yg-IbV16IuYxG2Clhs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rm39_kiy0yg-IbV16IuYxG2Clhs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rm39_kiy0yg-IbV16IuYxG2Clhs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rm39_kiy0yg-IbV16IuYxG2Clhs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=eqBg8wB8Jkg:suWXwkMv2DA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/eqBg8wB8Jkg" height="1" width="1"/&gt;</content><author><name>lcfr</name></author><gr:likingUser>03998992105585857985</gr:likingUser><gr:likingUser>06118554486918176075</gr:likingUser><gr:likingUser>05161977749390931342</gr:likingUser><gr:likingUser>14635709112264875911</gr:likingUser><gr:likingUser>05236834656728603413</gr:likingUser><gr:likingUser>10925086843843687309</gr:likingUser><gr:likingUser>05809997475848156519</gr:likingUser><gr:likingUser>11047327927661738878</gr:likingUser><gr:likingUser>15529899234828525629</gr:likingUser><gr:likingUser>16998269752499480163</gr:likingUser><gr:likingUser>00123847399954886244</gr:likingUser><gr:likingUser>00913287204171505271</gr:likingUser><gr:likingUser>16844507395276717394</gr:likingUser><gr:likingUser>10043338275999621803</gr:likingUser><gr:likingUser>10390261294493764983</gr:likingUser><gr:likingUser>05763176871876587531</gr:likingUser><gr:likingUser>06619280203313515759</gr:likingUser><gr:likingUser>14885494554096291064</gr:likingUser><gr:likingUser>15307725180950884118</gr:likingUser><gr:likingUser>03965963359565165951</gr:likingUser><gr:likingUser>12332598916268659955</gr:likingUser><gr:likingUser>17159016015282027262</gr:likingUser><gr:likingUser>01408924028248727457</gr:likingUser><gr:likingUser>17089436192776135810</gr:likingUser><gr:likingUser>16745247337337186216</gr:likingUser><gr:likingUser>06424346730389475485</gr:likingUser><gr:likingUser>17899023586888669665</gr:likingUser><gr:likingUser>02723601302296931169</gr:likingUser><gr:likingUser>13833541379917089398</gr:likingUser><gr:likingUser>09537949901883727293</gr:likingUser><gr:likingUser>10743548543363589689</gr:likingUser><gr:likingUser>17376540973614002222</gr:likingUser><gr:likingUser>16404216446607182509</gr:likingUser><gr:likingUser>16899622170585644106</gr:likingUser><gr:likingUser>11237546949166884886</gr:likingUser><gr:likingUser>04064545945255243440</gr:likingUser><gr:likingUser>04082574711046092321</gr:likingUser><gr:likingUser>12617000156329739634</gr:likingUser><gr:likingUser>04218225542560351328</gr:likingUser><gr:likingUser>05475016166796720285</gr:likingUser><gr:likingUser>15331589921320798403</gr:likingUser><gr:likingUser>11979199770350034914</gr:likingUser><gr:likingUser>02493361864459897726</gr:likingUser><gr:likingUser>14958201677731104381</gr:likingUser><gr:likingUser>12355724047928666993</gr:likingUser><gr:likingUser>11925667203772315354</gr:likingUser><gr:likingUser>17221028441459558479</gr:likingUser><gr:likingUser>05788565127120409028</gr:likingUser><gr:likingUser>10294251302290779238</gr:likingUser><gr:likingUser>10256015407001122199</gr:likingUser><gr:likingUser>11931241461722029488</gr:likingUser><gr:likingUser>16397708710238144934</gr:likingUser><gr:likingUser>11005268676518399832</gr:likingUser><gr:likingUser>08642265200467363166</gr:likingUser><gr:likingUser>11034734261490325516</gr:likingUser><gr:likingUser>01905037661764605362</gr:likingUser><gr:likingUser>09656914925408516422</gr:likingUser><gr:likingUser>02077592369073186647</gr:likingUser><gr:likingUser>12508611003074346952</gr:likingUser><gr:likingUser>10183209974907279306</gr:likingUser><gr:likingUser>11864561477642228704</gr:likingUser><gr:likingUser>04325307256767025435</gr:likingUser><gr:likingUser>17831489892535781099</gr:likingUser><gr:likingUser>08577711257959767096</gr:likingUser><gr:likingUser>09611770290059079280</gr:likingUser><gr:likingUser>12753010975163239844</gr:likingUser><gr:likingUser>03095175285957696080</gr:likingUser><gr:likingUser>01708979668846915060</gr:likingUser><gr:likingUser>10498630312503322498</gr:likingUser><gr:likingUser>09358454736000880466</gr:likingUser><gr:likingUser>11487344696926109630</gr:likingUser><gr:likingUser>15098435215572676812</gr:likingUser><gr:likingUser>07236348553314512316</gr:likingUser><gr:likingUser>11049431870793153768</gr:likingUser><gr:likingUser>07840133304195244111</gr:likingUser><gr:likingUser>12839374382971881211</gr:likingUser><gr:likingUser>00155827857818671385</gr:likingUser><gr:likingUser>15707338434036117549</gr:likingUser><gr:likingUser>05915619657327626369</gr:likingUser><gr:likingUser>17288033062683797021</gr:likingUser><gr:likingUser>06073863639649714702</gr:likingUser><gr:likingUser>18400046088437347265</gr:likingUser><gr:likingUser>15826899815026310956</gr:likingUser><gr:likingUser>18087633705842818067</gr:likingUser><gr:likingUser>00346526403895732189</gr:likingUser><gr:likingUser>15246913099824726707</gr:likingUser><gr:likingUser>11132471879089486045</gr:likingUser><gr:likingUser>06244901535115584757</gr:likingUser><gr:likingUser>03360683687680239980</gr:likingUser><gr:likingUser>08723351041117464586</gr:likingUser><gr:likingUser>18434538972913420450</gr:likingUser><gr:likingUser>07843597373277510277</gr:likingUser><gr:likingUser>02066734122243255119</gr:likingUser><gr:likingUser>06227879494019736093</gr:likingUser><gr:likingUser>11493245907266571265</gr:likingUser><gr:likingUser>12288466034328668673</gr:likingUser><gr:likingUser>06019371529493280950</gr:likingUser><gr:likingUser>14313843670303204476</gr:likingUser><gr:likingUser>17226798820945456727</gr:likingUser><gr:likingUser>10670654556524310037</gr:likingUser><source gr:stream-id="feed/http://abstrusegoose.com/feed"><id>tag:google.com,2005:reader/feed/http://abstrusegoose.com/feed</id><title type="html">Abstruse Goose</title><link rel="alternate" href="http://abstrusegoose.com" type="text/html" /></source><feedburner:origLink>http://abstrusegoose.com/380</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1312970558272"><id gr:original-id="tag:typepad.com,2003:post-6a00d8341d3df553ef014e8a825654970d">tag:google.com,2005:reader/item/3b7e947215be6bd3</id><title type="html">Little Geeks</title><published>2011-08-09T21:30:56Z</published><updated>2011-08-09T21:30:56Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/p_E8VRi2suE/little-geeks.html" type="text/html" /><link rel="replies" href="http://geekandpoke.typepad.com/geekandpoke/2011/08/little-geeks.html" type="text/html" /><content xml:base="http://geekandpoke.typepad.com/geekandpoke/" xml:lang="en-US" type="html">&lt;div&gt;&lt;p&gt;&lt;a style="display:inline" href="http://geekandpoke.typepad.com/.a/6a00d8341d3df553ef0153908f2172970b-pi"&gt;&lt;img title="Littlegeek" src="http://geekandpoke.typepad.com/.a/6a00d8341d3df553ef0153908f2172970b-800wi" border="0" alt="Littlegeek"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;

&lt;a href="http://twitter.com/share"&gt;Tweet&lt;/a&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/GeekAndPoke?a=ZBdmg1HunRY:VZuXJz37qMA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/GeekAndPoke?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/GeekAndPoke?a=ZBdmg1HunRY:VZuXJz37qMA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/GeekAndPoke?i=ZBdmg1HunRY:VZuXJz37qMA:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/GeekAndPoke?a=ZBdmg1HunRY:VZuXJz37qMA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/GeekAndPoke?d=qj6IDK7rITs" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/GeekAndPoke?a=ZBdmg1HunRY:VZuXJz37qMA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/GeekAndPoke?d=7Q72WNTAKBA" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekAndPoke/~4/ZBdmg1HunRY" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DYeUg51nF57V7xjR0YKEpU5XWtM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DYeUg51nF57V7xjR0YKEpU5XWtM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DYeUg51nF57V7xjR0YKEpU5XWtM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DYeUg51nF57V7xjR0YKEpU5XWtM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=p_E8VRi2suE:fpQthWotVXM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/p_E8VRi2suE" height="1" width="1"/&gt;</content><author><name>Oliver Widder</name></author><gr:likingUser>18371671642735021587</gr:likingUser><gr:likingUser>01434000188282989525</gr:likingUser><gr:likingUser>15261029711593142036</gr:likingUser><gr:likingUser>15846225074374087907</gr:likingUser><gr:likingUser>11813076706844858690</gr:likingUser><gr:likingUser>17977497646924891841</gr:likingUser><gr:likingUser>09388730610792840857</gr:likingUser><gr:likingUser>07735687609074705919</gr:likingUser><gr:likingUser>13110986319922077578</gr:likingUser><gr:likingUser>04890067619218435200</gr:likingUser><gr:likingUser>05321893637705000936</gr:likingUser><gr:likingUser>00738310633830182195</gr:likingUser><gr:likingUser>05227399040246039677</gr:likingUser><gr:likingUser>18443153472169843094</gr:likingUser><gr:likingUser>10451022346184603098</gr:likingUser><gr:likingUser>16849109350049804168</gr:likingUser><gr:likingUser>06631770132757645215</gr:likingUser><gr:likingUser>12326927460341525253</gr:likingUser><gr:likingUser>00354411882812290599</gr:likingUser><gr:likingUser>08955565580789037404</gr:likingUser><gr:likingUser>17838031857241705973</gr:likingUser><gr:likingUser>04064545945255243440</gr:likingUser><gr:likingUser>15615020664003916285</gr:likingUser><gr:likingUser>00884258826837891140</gr:likingUser><gr:likingUser>07267998678503217531</gr:likingUser><gr:likingUser>06336385769411668246</gr:likingUser><gr:likingUser>09675759543146737218</gr:likingUser><gr:likingUser>09293923571718987262</gr:likingUser><gr:likingUser>03679385452669887002</gr:likingUser><gr:likingUser>13884948057008614488</gr:likingUser><gr:likingUser>14944892060315330261</gr:likingUser><gr:likingUser>05904271497325441844</gr:likingUser><gr:likingUser>05412042147079933338</gr:likingUser><gr:likingUser>03959378278044091063</gr:likingUser><gr:likingUser>07501396045256335682</gr:likingUser><gr:likingUser>07122542139977691620</gr:likingUser><gr:likingUser>02709720912056328289</gr:likingUser><gr:likingUser>16298314793172262556</gr:likingUser><gr:likingUser>06409506895710877058</gr:likingUser><gr:likingUser>14078751044874145043</gr:likingUser><gr:likingUser>04078494408036505910</gr:likingUser><gr:likingUser>09293844089467099414</gr:likingUser><gr:likingUser>03560200052926293134</gr:likingUser><gr:likingUser>04918005188991298823</gr:likingUser><gr:likingUser>12798361392830019979</gr:likingUser><gr:likingUser>12023171528442216589</gr:likingUser><gr:likingUser>05324412916470407311</gr:likingUser><gr:likingUser>06527698453194285229</gr:likingUser><gr:likingUser>17310069337507737141</gr:likingUser><gr:likingUser>09683774992845916871</gr:likingUser><gr:likingUser>09417318326584380239</gr:likingUser><gr:likingUser>04800070621052334583</gr:likingUser><gr:likingUser>04907146519705669395</gr:likingUser><gr:likingUser>00333352945802401864</gr:likingUser><gr:likingUser>11038550875963610245</gr:likingUser><gr:likingUser>11711536714259977008</gr:likingUser><gr:likingUser>08388403529368575744</gr:likingUser><gr:likingUser>15034508295712445555</gr:likingUser><gr:likingUser>07216625259494842631</gr:likingUser><gr:likingUser>06588430567763968305</gr:likingUser><gr:likingUser>02131321086495654450</gr:likingUser><gr:likingUser>10989929177865426487</gr:likingUser><gr:likingUser>09891565748509499104</gr:likingUser><gr:likingUser>12545804837098399866</gr:likingUser><gr:likingUser>09053179621090896909</gr:likingUser><gr:likingUser>01575751609934751034</gr:likingUser><gr:likingUser>05964713917676627796</gr:likingUser><gr:likingUser>05117370676722144656</gr:likingUser><gr:likingUser>17247853928775462577</gr:likingUser><gr:likingUser>13975196718243730942</gr:likingUser><gr:likingUser>16625437704546096255</gr:likingUser><gr:likingUser>00969876838224399513</gr:likingUser><gr:likingUser>09599458336039196219</gr:likingUser><gr:likingUser>10086644181183246681</gr:likingUser><gr:likingUser>16140968858962202163</gr:likingUser><gr:likingUser>03156038410331954349</gr:likingUser><gr:likingUser>16527861135747704707</gr:likingUser><gr:likingUser>12326142011725669612</gr:likingUser><gr:likingUser>07189459139435141018</gr:likingUser><gr:likingUser>14918109451813535982</gr:likingUser><gr:likingUser>01785291475376189412</gr:likingUser><gr:likingUser>06783748106647421706</gr:likingUser><gr:likingUser>11470127918335354825</gr:likingUser><gr:likingUser>05218579977558828049</gr:likingUser><gr:likingUser>12705488016545110339</gr:likingUser><gr:likingUser>09035411717686157243</gr:likingUser><gr:likingUser>06654793441221304931</gr:likingUser><gr:likingUser>18253888540956034638</gr:likingUser><gr:likingUser>18188089216361128818</gr:likingUser><gr:likingUser>06834048323101051509</gr:likingUser><gr:likingUser>05104071066905911354</gr:likingUser><gr:likingUser>06840975571078266128</gr:likingUser><gr:likingUser>06783522678579623460</gr:likingUser><gr:likingUser>08451045223433413905</gr:likingUser><gr:likingUser>18360638627478981031</gr:likingUser><gr:likingUser>10504691202809228027</gr:likingUser><gr:likingUser>11081200381777297647</gr:likingUser><gr:likingUser>02482163204506775199</gr:likingUser><gr:likingUser>06597364222939569930</gr:likingUser><gr:likingUser>17828618884593150251</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/GeekAndPoke"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/GeekAndPoke</id><title type="html">Geek And Poke</title><link rel="alternate" href="http://geekandpoke.typepad.com/geekandpoke/" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/GeekAndPoke/~3/ZBdmg1HunRY/little-geeks.html</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1312970541293"><id gr:original-id="http://xkcd.com/936/">tag:google.com,2005:reader/item/333ffae5b8c50ec5</id><title type="html">Password Strength</title><published>2011-08-10T04:00:00Z</published><updated>2011-08-10T04:00:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/PXaRYa9zbiw/" type="text/html" /><author gr:unknown-author="true"><name>(author unknown)</name></author><gr:likingUser>01837747868033030239</gr:likingUser><gr:likingUser>17603300622040916715</gr:likingUser><gr:likingUser>13028615841660604580</gr:likingUser><gr:likingUser>09462256065607404155</gr:likingUser><gr:likingUser>13051571822201372454</gr:likingUser><gr:likingUser>16478541355910898463</gr:likingUser><gr:likingUser>17975683666801044754</gr:likingUser><gr:likingUser>05160840000473684042</gr:likingUser><gr:likingUser>15953535507085445640</gr:likingUser><gr:likingUser>18193179963506374194</gr:likingUser><gr:likingUser>00336636927048158010</gr:likingUser><gr:likingUser>13364996419006953000</gr:likingUser><gr:likingUser>04927890067681280495</gr:likingUser><gr:likingUser>04813119969399391402</gr:likingUser><gr:likingUser>08565749107565690419</gr:likingUser><gr:likingUser>01202958472164099172</gr:likingUser><gr:likingUser>10733605809575340268</gr:likingUser><gr:likingUser>02733452820808371065</gr:likingUser><gr:likingUser>11112817736590750744</gr:likingUser><gr:likingUser>15607410260413789715</gr:likingUser><gr:likingUser>01434000188282989525</gr:likingUser><gr:likingUser>10225807065475943576</gr:likingUser><gr:likingUser>06227765942469825961</gr:likingUser><gr:likingUser>12396264207167676796</gr:likingUser><gr:likingUser>10776960362786882947</gr:likingUser><gr:likingUser>08065408371810708657</gr:likingUser><gr:likingUser>10831396056761180280</gr:likingUser><gr:likingUser>04078823341820851788</gr:likingUser><gr:likingUser>06205709787352548981</gr:likingUser><gr:likingUser>13197701908579272064</gr:likingUser><gr:likingUser>17950715965840915268</gr:likingUser><gr:likingUser>17683102269341669216</gr:likingUser><gr:likingUser>03864993357834095830</gr:likingUser><gr:likingUser>11328154508475884513</gr:likingUser><gr:likingUser>02322988741801155679</gr:likingUser><gr:likingUser>10208765943876709514</gr:likingUser><gr:likingUser>13345519443336942279</gr:likingUser><gr:likingUser>09234375947985807667</gr:likingUser><gr:likingUser>15876073630747133581</gr:likingUser><gr:likingUser>05317909289313434376</gr:likingUser><gr:likingUser>10842267750526200101</gr:likingUser><gr:likingUser>05611078086723009527</gr:likingUser><gr:likingUser>05802664548597000039</gr:likingUser><gr:likingUser>11464691215999276623</gr:likingUser><gr:likingUser>10567312980632462376</gr:likingUser><gr:likingUser>06296417698386256753</gr:likingUser><gr:likingUser>11630426257119567174</gr:likingUser><gr:likingUser>06209480298475543986</gr:likingUser><gr:likingUser>16122889968990962179</gr:likingUser><gr:likingUser>10441644008512281028</gr:likingUser><gr:likingUser>11629872744026289764</gr:likingUser><gr:likingUser>16704605766261960961</gr:likingUser><gr:likingUser>01791710261601255095</gr:likingUser><gr:likingUser>08432063031239747652</gr:likingUser><gr:likingUser>05764076049656612829</gr:likingUser><gr:likingUser>13326651276852061145</gr:likingUser><gr:likingUser>14806770796264443236</gr:likingUser><gr:likingUser>04793294685872733944</gr:likingUser><gr:likingUser>09935059844417310386</gr:likingUser><gr:likingUser>08973184622049870566</gr:likingUser><gr:likingUser>03854677074436482810</gr:likingUser><gr:likingUser>07885598249161382107</gr:likingUser><gr:likingUser>00742148100299096380</gr:likingUser><gr:likingUser>13877896700462950413</gr:likingUser><gr:likingUser>00863717953402516564</gr:likingUser><gr:likingUser>13908162148113100593</gr:likingUser><gr:likingUser>10925086843843687309</gr:likingUser><gr:likingUser>16616187973836645602</gr:likingUser><gr:likingUser>18231311360823965275</gr:likingUser><gr:likingUser>16220327301131725567</gr:likingUser><gr:likingUser>16335640103881809671</gr:likingUser><gr:likingUser>06484152174917594660</gr:likingUser><gr:likingUser>05623184753199030277</gr:likingUser><gr:likingUser>08180220626406219425</gr:likingUser><gr:likingUser>13463100213294394392</gr:likingUser><gr:likingUser>07965357033533778499</gr:likingUser><gr:likingUser>00871948266361170322</gr:likingUser><gr:likingUser>15224144227340913873</gr:likingUser><gr:likingUser>17492828991693319936</gr:likingUser><gr:likingUser>02494363861759709368</gr:likingUser><gr:likingUser>03363618726035880711</gr:likingUser><gr:likingUser>03969337034951068232</gr:likingUser><gr:likingUser>06504954725467808814</gr:likingUser><gr:likingUser>02438731866835478013</gr:likingUser><gr:likingUser>01378362922825043920</gr:likingUser><gr:likingUser>16083847271805478055</gr:likingUser><gr:likingUser>15229948221019310814</gr:likingUser><gr:likingUser>18094720683129772113</gr:likingUser><gr:likingUser>02407034954083517045</gr:likingUser><gr:likingUser>01977561106247941950</gr:likingUser><gr:likingUser>17305769904846138215</gr:likingUser><gr:likingUser>07735687609074705919</gr:likingUser><gr:likingUser>07142242645961083598</gr:likingUser><gr:likingUser>04073991195235224488</gr:likingUser><gr:likingUser>13826266291363793593</gr:likingUser><gr:likingUser>15784704719914131503</gr:likingUser><gr:likingUser>12735096109390250286</gr:likingUser><gr:likingUser>08474505159552874872</gr:likingUser><gr:likingUser>10223111134803878958</gr:likingUser><gr:likingUser>11308322353224885858</gr:likingUser><source gr:stream-id="feed/http://xkcd.com/rss.xml"><id>tag:google.com,2005:reader/feed/http://xkcd.com/rss.xml</id><title type="html">xkcd.com</title><link rel="alternate" href="http://xkcd.com/" type="text/html" /></source><content type="html">&lt;img src="http://imgs.xkcd.com/comics/password_strength.png" title="To anyone who understands information theory and security and is in an infuriating argument with someone who does not (possibly involving mixed case), I sincerely apologize." alt="To anyone who understands information theory and security and is in an infuriating argument with someone who does not (possibly involving mixed case), I sincerely apologize."&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8aW5LUwRa6gfpRzv_zC_V_Yt-p8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8aW5LUwRa6gfpRzv_zC_V_Yt-p8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8aW5LUwRa6gfpRzv_zC_V_Yt-p8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8aW5LUwRa6gfpRzv_zC_V_Yt-p8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=PXaRYa9zbiw:bqACl5QcuMI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/PXaRYa9zbiw" height="1" width="1"/&gt;</content><feedburner:origLink>http://xkcd.com/936/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1310645580139"><id gr:original-id="91d46819-8472-40ad-a661-2c78acb4018c:10185715">tag:google.com,2005:reader/item/db5566b405c3af3a</id><category term="C#" scheme="http://blogs.msdn.com/b/ericlippert/archive/tags/C_2300_/" /><category term="Puzzles" scheme="http://blogs.msdn.com/b/ericlippert/archive/tags/Puzzles/" /><title type="html">What curious property does this string have?</title><published>2011-07-12T19:19:00Z</published><updated>2011-07-12T19:19:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/0scYvSbHqbU/what-curious-property-does-this-string-have.aspx" type="text/html" /><author><name>Eric Lippert</name></author><gr:likingUser>18158899507117698729</gr:likingUser><gr:likingUser>02493361864459897726</gr:likingUser><gr:likingUser>11255487200167170860</gr:likingUser><gr:likingUser>11313715401375862926</gr:likingUser><gr:likingUser>02181860730468695161</gr:likingUser><gr:likingUser>00019995731354815841</gr:likingUser><gr:likingUser>01541079495463117832</gr:likingUser><gr:likingUser>12036198227956602790</gr:likingUser><gr:likingUser>16950801946615166653</gr:likingUser><gr:likingUser>14903627531550570881</gr:likingUser><gr:likingUser>05400176637679967733</gr:likingUser><gr:likingUser>05921653529454389165</gr:likingUser><gr:likingUser>18263035775964839251</gr:likingUser><gr:likingUser>16812491548360991885</gr:likingUser><gr:likingUser>00321597721557820145</gr:likingUser><source gr:stream-id="feed/http://blogs.msdn.com/ericlippert/rss.xml"><id>tag:google.com,2005:reader/feed/http://blogs.msdn.com/ericlippert/rss.xml</id><title type="html">Fabulous Adventures In Coding</title><link rel="alternate" href="http://blogs.msdn.com/b/ericlippert/" type="text/html" /></source><content type="html">&lt;div&gt;
&lt;p&gt;There are all kinds of interesting things in the Unicode standard. For example, the block of characters from U+A000 to U+A48F is for representing syllables in the "Yi script". Apparently it is &lt;a href="http://en.wikipedia.org/wiki/Yi_script"&gt;a Chinese language writing system&lt;/a&gt; developed during the Tang Dynasty.&lt;/p&gt;
&lt;p&gt;A string drawn from this block has an unusual property; the string consists of just two characters, both the same: a repetition of character U+A0A2:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Lucida Console;color:#0000ff;font-size:x-large" color="#0000ff" size="6" face="Lucida Console"&gt;string s = "ꂢꂢ";&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Or, if your browser can't hack the Yi script, that's the equivalent of the C# program fragment:&lt;/p&gt;
&lt;p&gt;string s = "\uA0A2\uA0A2";&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What curious property does this string have? &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I'll leave some hints in the comments, and post the answer next time..&lt;/p&gt;
&lt;p&gt;UPDATE: A couple people have figured it out, so don't read the comments too far if you don't want to be spoiled. I'll post a follow-up article on Friday.&lt;/p&gt;
&lt;/div&gt;&lt;div style="clear:both"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10185715" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/gMCBz-vnIPjEww6EWgBi2eJQKpo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gMCBz-vnIPjEww6EWgBi2eJQKpo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/gMCBz-vnIPjEww6EWgBi2eJQKpo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gMCBz-vnIPjEww6EWgBi2eJQKpo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=0scYvSbHqbU:WSakS0dqgM4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/0scYvSbHqbU" height="1" width="1"/&gt;</content><feedburner:origLink>http://blogs.msdn.com/b/ericlippert/archive/2011/07/12/what-curious-property-does-this-string-have.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1310384274927"><id gr:original-id="d67277c4-116b-43f1-b688-e9ef184ea916:1795963">tag:google.com,2005:reader/item/c9ffd74feb39586c</id><category term="TFS Clients" scheme="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+Clients/default.aspx" /><title type="html">VS 2010: How to find out if VS SP1 is installed?</title><published>2011-07-11T09:08:00Z</published><updated>2011-07-11T09:08:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/p_-eUVYDDdA/vs-2010-how-to-find-out-if-vs-sp1-is-installed.aspx" type="text/html" /><author><name>neno</name></author><source gr:stream-id="feed/http://msmvps.com/blogs/vstsblog/rss.aspx"><id>tag:google.com,2005:reader/feed/http://msmvps.com/blogs/vstsblog/rss.aspx</id><title type="html">TFS &amp;amp; Visual Studio ALM - by Neno Loje</title><link rel="alternate" href="http://msmvps.com/blogs/vstsblog/default.aspx" type="text/html" /></source><content type="html">&lt;p&gt;&lt;strong&gt;Question&lt;/strong&gt;: How can I easily see if VS SP1 is installed on my machine?&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Answer&lt;/strong&gt;: Run VS 2010, open Help » About. Look for &amp;quot;SP1Rel&amp;quot; after the version number.&lt;/p&gt;  &lt;p&gt;Screenshot:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/vstsblog.metablogapi/7608.SNAGHTML35ec8215_5F00_1DA53B18.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="Figure: This is how it should look like with installed VS SP1." border="0" alt="Figure: This is how it should look like with installed VS SP1." src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/vstsblog.metablogapi/5342.SNAGHTML35ec8215_5F00_thumb_5F00_07CB2CEE.png" width="366" height="239"&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1795963" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bkkF7-IHOQWVxylczw0hg-o8zhA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bkkF7-IHOQWVxylczw0hg-o8zhA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/bkkF7-IHOQWVxylczw0hg-o8zhA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bkkF7-IHOQWVxylczw0hg-o8zhA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=p_-eUVYDDdA:rk_Fr-OS8Vs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/p_-eUVYDDdA" height="1" width="1"/&gt;</content><feedburner:origLink>http://msmvps.com/blogs/vstsblog/archive/2011/07/11/vs-2010-how-to-find-out-if-vs-sp1-is-installed.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1310373126117"><id gr:original-id="http://www.clemensreijnen.nl/post.aspx?id=1fe164c6-983f-4943-9182-a98cba4a7c9e">tag:google.com,2005:reader/item/0889456d2b09a469</id><category term="ALM" /><category term="MTM" /><category term="TMap" /><category term="Testing" /><category term="VS2010" /><category term="dotnetmag" /><title type="html">large slide deck: technical meeting automated testing with vs2010</title><published>2011-07-10T19:25:03Z</published><updated>2011-07-10T19:25:03Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/xYcX4SfrnYI/post.aspx" type="text/html" /><author><name>info.nospam@nospam.ClemensReijnen.nl (ClemensReijnen)</name></author><source gr:stream-id="feed/http://feeds.feedburner.com/clemensreijnen/qzrF"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/clemensreijnen/qzrF</id><title type="html">C l e m e n s</title><link rel="alternate" href="http://www.clemensreijnen.nl/" type="text/html" /></source><content type="html">&lt;p&gt;Slide deck from a 3 hour presentation (in the north of the Netherlands) covering automated testing with vs2010: test case specification, execution, automation and test infrastructure with VS2010 CodedUI and Lab management.&lt;/p&gt;  &lt;div align="center"&gt;   &lt;div style="width:610px"&gt;&lt;strong style="margin:12px 0px 4px;display:block"&gt;&lt;a title="Technical meeting automated testing with vs2010" href="http://www.slideshare.net/clemensreijnen/technical-meeting-automated-testing-with-vs2010"&gt;Technical meeting automated testing with vs2010&lt;/a&gt;&lt;/strong&gt;&lt;iframe src="http://reader.googleusercontent.com/reader/embediframe?src=http://static.slidesharecdn.com/swf/ssplayer2.swf?doc%3Dtechnicalmeetingautomatedtestingwithvs2010-110710141802-phpapp01%26stripped_title%3Dtechnical-meeting-automated-testing-with-vs2010%26userName%3Dclemensreijnen&amp;amp;width=610&amp;amp;height=423" width="610" height="423"&gt;&lt;/iframe&gt;      &lt;div style="padding-bottom:12px;padding-left:0px;padding-right:0px;padding-top:5px"&gt;View more &lt;a href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/clemensreijnen"&gt;Clemens Reijnen&lt;/a&gt;.&lt;/div&gt;   &lt;/div&gt; &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/clemensreijnen/qzrF/~4/SudpJsrheTk" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BFT8P-QGZJD9woljjYkB_apRxSY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BFT8P-QGZJD9woljjYkB_apRxSY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BFT8P-QGZJD9woljjYkB_apRxSY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BFT8P-QGZJD9woljjYkB_apRxSY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=xYcX4SfrnYI:QYy3otIqWJE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/xYcX4SfrnYI" height="1" width="1"/&gt;</content><feedburner:origLink>http://feedproxy.google.com/~r/clemensreijnen/qzrF/~3/SudpJsrheTk/post.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1309771497007"><id gr:original-id="http://www.speld.nl/?p=20857">tag:google.com,2005:reader/item/85b601b520b98078</id><category term="Binnenland" /><title type="html">Verdacht pakje legt treinverkeer Madurodam uren stil</title><published>2011-07-02T11:27:34Z</published><updated>2011-07-02T11:27:34Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/uUzojMtOJLQ/" type="text/html" /><content xml:base="http://www.speld.nl/" type="html">&lt;p&gt;&lt;img title="CC Rob Thijs" src="http://www.speld.nl/wp-content/uploads/DSC16741-335x250.jpg" alt="" width="335" height="250"&gt;Een onbeheerd pakket heeft woensdagochtend in Madurodam voor opschudding gezorgd. Vanwege de grootte van het verdachte object werd vrijwel onmiddellijk al het treinverkeer in de omgeving  stilgelegd. Ook werd het gebied om het pakketje heen afgesloten. &lt;span&gt;&lt;/span&gt;‘Het verdachte pakketje blijkt voor zover wij nu kunnen zien te bestaan uit een kubus van grote brokken samengeklonterde suiker, ingepakt in papier,’ aldus de politiewoordvoerder van Madurodam. ‘Wat de herkomst van het pakket is is nog onduidelijk, onze experts zijn er nog wel even zoet mee.’&lt;/p&gt;
&lt;p&gt;De burgemeester liet weten dat er vooralsnog niets aan de hand is. ‘Laten we het voorval niet groter maken dan het is,’ zegt hij in een verklaring. Wel rukte na de vondst de brandweer uit, maar die werd meteen daarna weer teruggeroepen. Enkele minuten later rukte de brandweer wederom uit, om vervolgens opnieuw  teruggeroepen te worden. Niet lang daarna rukte de brandweer opnieuw uit.&lt;/p&gt;
&lt;p&gt;Het vliegverkeer op het vliegveld had geen last van de vondst. Alle vluchten konden hun gebruikelijke rondjes blijven taxiën. Voor de gestrande treinreizigers werden bussen neergezet. Het incident roept herinneringen op aan de inslag van de komeet Rucanor,  vorig jaar zomer. Toen sloeg een ronde astroïde opgebouwd uit zeshoekige leren vlakken in vlakbij het Rijksmuseum en werden enkele stilstaande auto’s verwoest. Of de vondst van het pakketje enig verband houdt met dit incident is nog onbekend.&lt;/p&gt;
&lt;p&gt;‘We zijn behoorlijk geschrokken,’ aldus een omstander. ‘De meesten van ons zijn aan de grond genageld van schrik.’De reizigers op de stations van Madurodam verklaarden weinig hinder te ondervinden van de stremmingen. ‘In principe is alles hier op loopafstand’, aldus een forens, ‘plus, de meesten van ons gaan toch nergens naartoe.’&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Arjen Lubach is gastschrijver. Onlangs publiceerde hij &lt;a href="http://www.arjenlubach.nl/zomervakantie.htm"&gt;Magnus&lt;/a&gt; bij uitgeverij Podium. Voor meer informatie, zie http://www.arjenlubach.nl/&lt;/em&gt;&lt;/p&gt;
&lt;img src="http://www.speld.nl/?ak_action=api_record_view&amp;amp;id=20857&amp;amp;type=feed" alt=""&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KCuplGoo2QxaqDRvWJ8c68UVzQE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KCuplGoo2QxaqDRvWJ8c68UVzQE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KCuplGoo2QxaqDRvWJ8c68UVzQE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KCuplGoo2QxaqDRvWJ8c68UVzQE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=uUzojMtOJLQ:8oOHsVpxe9k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/uUzojMtOJLQ" height="1" width="1"/&gt;</content><author><name>Rogier Kievit</name></author><gr:likingUser>15809283306842493911</gr:likingUser><source gr:stream-id="feed/http://www.speld.nl/feed/"><id>tag:google.com,2005:reader/feed/http://www.speld.nl/feed/</id><title type="html">De Speld</title><link rel="alternate" href="http://www.speld.nl" type="text/html" /></source><feedburner:origLink>http://www.speld.nl/2011/07/02/verdacht-pakje-legt-treinverkeer-madurodam-uren-stil/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1309351879709"><id gr:original-id="tag:typepad.com,2003:post-6a00d83451b31569e2015431f7a1bf970c">tag:google.com,2005:reader/item/253592b7445529c5</id><title type="html">Writing naked (nakeder than Orwell)</title><published>2011-06-27T09:50:00Z</published><updated>2011-06-27T09:50:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/4C_H1-yxRn0/writing-naked-nakeder-than-orwell.html" type="text/html" /><link rel="replies" href="http://sethgodin.typepad.com/seths_blog/2011/06/writing-naked-nakeder-than-orwell.html" type="text/html" /><content xml:base="http://sethgodin.typepad.com/seths_blog/" xml:lang="en-US" type="html">&lt;div&gt;&lt;p&gt;Here are Orwell's rules, edited:&lt;/p&gt;&#xD;
&lt;p&gt;&lt;em&gt;1. &lt;span style="text-decoration:line-through"&gt;Never use a metaphor, simile, or other figure of speech which you are used to seeing in print.&lt;/span&gt; You don't need cliches.&lt;br&gt;&lt;/em&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;em&gt;2. &lt;span style="text-decoration:line-through"&gt;Never use a long word where a short one will do&lt;/span&gt;. Avoid long words.&lt;br&gt;&lt;/em&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;em&gt;3. If it is possible to cut a word out, &lt;span style="text-decoration:line-through"&gt;always&lt;/span&gt; cut it out.&lt;/em&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;em&gt;4. &lt;span style="text-decoration:line-through"&gt;Never use the passive where you can use the active. &lt;/span&gt;Write in the now.&lt;br&gt;&lt;/em&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;em&gt;5. &lt;span style="text-decoration:line-through"&gt;Never use a foreign phrase, a scientific word or a jargon word if you can think of an everyday English equivalent. &lt;/span&gt;When in doubt, say it clearly.&lt;br&gt;&lt;/em&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;em&gt;6. &lt;span style="text-decoration:line-through"&gt;Break any of these rules sooner than say anything outright barbarous. &lt;/span&gt;Better to be interesting than to follow these rules.&lt;/em&gt;&lt;/p&gt;&#xD;
&lt;p&gt;The reason business writing is horrible is that people are afraid.&lt;/p&gt;&#xD;
&lt;p&gt;Afraid to say what they mean, because they might be criticized for it.&lt;/p&gt;&#xD;
&lt;p&gt;Afraid to be misunderstood, to be accused of saying what they didn't mean, because they might be criticized for it.&lt;/p&gt;&#xD;
&lt;p&gt;&lt;a href="http://www.mtholyoke.edu/acad/intrel/orwell46.htm"&gt;Orwell&lt;/a&gt; was on the right track. Just say it. Say it clearly. Say it now. Say it without fear of being criticized and say it without being boring.&lt;/p&gt;&#xD;
&lt;p&gt;If the goal is no feedback, then say nothing. Don't write the memo.&lt;/p&gt;&#xD;
&lt;p&gt;If the goal is to communicate, then say what you mean.&lt;/p&gt;&#xD;
&lt;p&gt;My best tip is this: buy a cheap digital recorder. Say what you want to say, as if the person you seek to persuade is standing there, listening. Then type that up. Simplify. Send.&lt;/p&gt;&lt;/div&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/typepad/sethsmainblog?a=D0cZTnl1GmI:G39QGfCKXnY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/typepad/sethsmainblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/typepad/sethsmainblog?a=D0cZTnl1GmI:G39QGfCKXnY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/typepad/sethsmainblog?d=qj6IDK7rITs" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/typepad/sethsmainblog/~4/D0cZTnl1GmI" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/sF9IxN71LApPt_3zEHfAiy09ci8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sF9IxN71LApPt_3zEHfAiy09ci8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/sF9IxN71LApPt_3zEHfAiy09ci8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sF9IxN71LApPt_3zEHfAiy09ci8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=4C_H1-yxRn0:AqbhNQJmKxQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/4C_H1-yxRn0" height="1" width="1"/&gt;</content><author><name>Seth Godin</name></author><gr:likingUser>01927343906750579418</gr:likingUser><gr:likingUser>13286196648694834761</gr:likingUser><gr:likingUser>18115871236087787228</gr:likingUser><gr:likingUser>01944643690832515416</gr:likingUser><gr:likingUser>08843290773590524101</gr:likingUser><gr:likingUser>18399932874474151149</gr:likingUser><gr:likingUser>07987669608523822781</gr:likingUser><gr:likingUser>09435352055026053908</gr:likingUser><gr:likingUser>10588254048860313402</gr:likingUser><gr:likingUser>00469783218099017620</gr:likingUser><gr:likingUser>04978006176855135404</gr:likingUser><gr:likingUser>04663834537661642264</gr:likingUser><gr:likingUser>11087657797654676884</gr:likingUser><gr:likingUser>02053843229537033220</gr:likingUser><gr:likingUser>03785079574482581263</gr:likingUser><gr:likingUser>07614831919093992167</gr:likingUser><gr:likingUser>16893982481723979887</gr:likingUser><gr:likingUser>17074255310969319417</gr:likingUser><gr:likingUser>05694970793905528795</gr:likingUser><gr:likingUser>11218026139464319719</gr:likingUser><gr:likingUser>03119226625873295273</gr:likingUser><gr:likingUser>13438317629794268003</gr:likingUser><gr:likingUser>07551174364372406183</gr:likingUser><gr:likingUser>00330923681686342231</gr:likingUser><gr:likingUser>04530814351127471728</gr:likingUser><gr:likingUser>13274532371414516105</gr:likingUser><gr:likingUser>02091661878830094015</gr:likingUser><gr:likingUser>13567648622507188795</gr:likingUser><gr:likingUser>18336468713041760822</gr:likingUser><gr:likingUser>15150661714794145496</gr:likingUser><gr:likingUser>15404126139336495635</gr:likingUser><gr:likingUser>12859674077450080463</gr:likingUser><gr:likingUser>16421938521525063331</gr:likingUser><gr:likingUser>00836353053105187090</gr:likingUser><gr:likingUser>09504784946560616777</gr:likingUser><gr:likingUser>05781183317869032284</gr:likingUser><gr:likingUser>06726312933461264007</gr:likingUser><gr:likingUser>05289780256709090872</gr:likingUser><gr:likingUser>17463751200201676083</gr:likingUser><gr:likingUser>08720965659250200147</gr:likingUser><gr:likingUser>07200939650205489025</gr:likingUser><gr:likingUser>10030226782263752178</gr:likingUser><gr:likingUser>10633839249484344068</gr:likingUser><gr:likingUser>08362217722729866386</gr:likingUser><gr:likingUser>09956180514794378073</gr:likingUser><gr:likingUser>12364818428651798830</gr:likingUser><gr:likingUser>17488409636425749601</gr:likingUser><gr:likingUser>10495815572451529760</gr:likingUser><gr:likingUser>12181394440667003832</gr:likingUser><gr:likingUser>05277762886381808659</gr:likingUser><gr:likingUser>14476529223316225153</gr:likingUser><gr:likingUser>16916902651849740242</gr:likingUser><gr:likingUser>14654253569010556516</gr:likingUser><gr:likingUser>02934115839782648490</gr:likingUser><gr:likingUser>12058250792246176464</gr:likingUser><gr:likingUser>06798415618830971525</gr:likingUser><gr:likingUser>12799246331648356091</gr:likingUser><gr:likingUser>10938676153478507229</gr:likingUser><gr:likingUser>12739651425951135539</gr:likingUser><gr:likingUser>07878351658029197882</gr:likingUser><gr:likingUser>10489088485081285362</gr:likingUser><gr:likingUser>09215793290647922406</gr:likingUser><gr:likingUser>01197894359448466238</gr:likingUser><gr:likingUser>09811853920927742024</gr:likingUser><gr:likingUser>06983884763873410787</gr:likingUser><gr:likingUser>17796562442174829953</gr:likingUser><gr:likingUser>16604258076652710247</gr:likingUser><gr:likingUser>07803000479670301780</gr:likingUser><gr:likingUser>14903227071482882740</gr:likingUser><gr:likingUser>06445232561454847379</gr:likingUser><gr:likingUser>16633538405257235164</gr:likingUser><gr:likingUser>08342462504694063534</gr:likingUser><gr:likingUser>12062427879068876200</gr:likingUser><gr:likingUser>07681806990477062748</gr:likingUser><gr:likingUser>15511382047929096812</gr:likingUser><gr:likingUser>05202323513603760961</gr:likingUser><gr:likingUser>03365100259495837562</gr:likingUser><gr:likingUser>08041449797778947230</gr:likingUser><gr:likingUser>04487624045223404870</gr:likingUser><gr:likingUser>07858923251408700201</gr:likingUser><gr:likingUser>04111309507148875690</gr:likingUser><gr:likingUser>18179468663687945154</gr:likingUser><gr:likingUser>14814257605736868326</gr:likingUser><gr:likingUser>08625815719524137557</gr:likingUser><gr:likingUser>03088636861675885062</gr:likingUser><gr:likingUser>11617981297180746503</gr:likingUser><gr:likingUser>16397249267601274781</gr:likingUser><gr:likingUser>13929213759442892305</gr:likingUser><gr:likingUser>18253276447546087020</gr:likingUser><gr:likingUser>05689540962966926169</gr:likingUser><gr:likingUser>01622948759464036908</gr:likingUser><gr:likingUser>07595915214974739585</gr:likingUser><gr:likingUser>02974266525980108664</gr:likingUser><gr:likingUser>05699201401075073726</gr:likingUser><gr:likingUser>14448379354009229008</gr:likingUser><gr:likingUser>05238370634234153929</gr:likingUser><gr:likingUser>09038581545663044678</gr:likingUser><gr:likingUser>08970873829442217231</gr:likingUser><gr:likingUser>11233405463416927024</gr:likingUser><gr:likingUser>04936589337896810372</gr:likingUser><source gr:stream-id="feed/http://sethgodin.typepad.com/seths_blog/atom.xml"><id>tag:google.com,2005:reader/feed/http://sethgodin.typepad.com/seths_blog/atom.xml</id><title type="html">Seth&amp;#39;s Blog</title><link rel="alternate" href="http://sethgodin.typepad.com/seths_blog/" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/typepad/sethsmainblog/~3/D0cZTnl1GmI/writing-naked-nakeder-than-orwell.html</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1308572775541"><id gr:original-id="https://complextosimple.wordpress.com/2011/06/17/the-debugger-mindset/">tag:google.com,2005:reader/item/ed12fdec1e5c9a73</id><category term="Debugging" /><category term="Psychology" /><category term="Self Improvement" /><title type="html">The Debugger Mindset</title><published>2011-06-17T22:41:12Z</published><updated>2011-06-17T22:41:12Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/t2Ku1a5AkoI/" type="text/html" /><content xml:base="http://simpleprogrammer.com/" type="html">&lt;p&gt;Today I want to talk to you about a serious mental disorder that affects far too many programmers.&lt;/p&gt;
&lt;p&gt;The symptoms of this disease are many:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Frantically saying “It’ll work this time”&lt;/li&gt;
&lt;li&gt;Randomly adding +1 and –1 to integers&lt;/li&gt;
&lt;li&gt;Inability to see the forest&lt;/li&gt;
&lt;li&gt;Irritability&lt;/li&gt;
&lt;li&gt;Irrational paradoxical statements like “I am sure this is impossible, but I don’t know how it is happening.”&lt;/li&gt;
&lt;li&gt;Screaming&lt;/li&gt;
&lt;li&gt;Spitting at hamsters&lt;/li&gt;
&lt;li&gt;The list goes on…&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;What I am talking about is the debugger mind set and…&lt;/p&gt;
&lt;h2&gt;It is a mental disorder&lt;/h2&gt;
&lt;p&gt;So what is this debugger mindset I am talking about?&lt;/p&gt;
&lt;p&gt;It is more than just overusing the debugger,&lt;strong&gt; it is thinking and acting in a way that is the same way one tends to think and act when they are stepping through code in the debugger.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I am guilty of it as I imagine many of you are.&lt;/p&gt;
&lt;p&gt;And it is a disease.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://complextosimple.files.wordpress.com/2011/06/debuggermindset.png"&gt;&lt;img style="border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:inline;border-top:0;border-right:0;padding-top:0" title="debuggermindset" border="0" alt="debuggermindset" src="http://complextosimple.files.wordpress.com/2011/06/debuggermindset_thumb.png?w=500&amp;amp;h=402" width="500" height="402"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;A debugging tale all too familiar&lt;/h2&gt;
&lt;p&gt;Picture this… You are just about to check in the final piece of code that you have been working on all week for this awesome feature you are developing and something is wrong.&lt;/p&gt;
&lt;p&gt;It is just not working.  You can’t figure out why.  The behavior of the code seems to defy all logic.&lt;/p&gt;
&lt;p&gt;You set a few break points and start stepping through code.  (By the way it is 4:00 on a Friday and you were about to check in this code and go home a little early, you deserve it.)&lt;/p&gt;
&lt;p&gt;Step… step… step…  Check this variable… Check that variable… Evaluate this expression.&lt;/p&gt;
&lt;p&gt;Nothing, no clue as to what is going on.  You are beginning to sweat.  The release is going out on Sunday.  You need to get this fixed or the code can’t release.&lt;/p&gt;
&lt;p&gt;You look at the clock.  It is now 5:03.  You glance at your phone and see you have a text from your wife.  No time to look at what it says.  You are intensely focused.  You must solve this bug.&lt;/p&gt;
&lt;p&gt;Step… step… step… Check this variable… Check that variable… Evaluate this expression.  You begin to sweat more.&lt;/p&gt;
&lt;p&gt;You can’t understand why this one little thing isn’t working.  It is driving you nuts, it doesn’t make any sense… You start scratching at your head in frustration.&lt;/p&gt;
&lt;p&gt;Time ticks by, it’s now 6:30.  Your phone rings, it’s your wife.&lt;/p&gt;
&lt;p&gt;“Did you get my text?  When are you coming home?  It’s Friday.  It’s the weekend.”&lt;/p&gt;
&lt;p&gt;You fumble to get to your SMS program on your phone.  You don’t have time for this, you must SOLVE this bug, now!  Grrr, you are getting angry and irritated.  You try and hide it, but it comes through in your voice.&lt;/p&gt;
&lt;p&gt;You’re thirsty, you’re hungry, your eyes hurt from not blinking.  You’re tapping your foot like a madman intently focused on the keyboard.  It’s now 7:40.&lt;/p&gt;
&lt;p&gt;You start frantically changing variables.  You’ve lost track of what the code is doing now, instead you’re just watching values in your watch window.  It’s getting hard to think, minutes turn to hours. &lt;/p&gt;
&lt;p&gt;You finally solve your bug at 11:03 PM, but your nerves are shot.  The taste of victory is soured like milk left too long in the fridge.  You can taste the chunky curds in your mouth as you think about how even though you fixed the problem, you still don’t understand why your solution worked or what was causing it.&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;It is very important to avoid this pattern of behavior&lt;/h2&gt;
&lt;p&gt;And it can destroy your productivity like nothing else.&lt;/p&gt;
&lt;p&gt;You don’t actually have to be in the debugger to have this mindset, even though it often occurs when you are.&lt;/p&gt;
&lt;p&gt;All developers are susceptible to it.  I know I have spent my share of time thrashing around with it.  It takes a fairly simple 1-hour-to-solve-problem and makes it take 8 hours to solve because we try to solve it in 5 minutes.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Very few things in life have a 5 minute solution.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When we start thinking this way, we lose all ability to think rationally and actually solve a problem.  Instead we start zooming into symptoms and using frustration instead of wit.&lt;/p&gt;
&lt;p&gt;This kind of mindset can put us into a downward spiral of burnout and insatiability.  We end up wasting time and losing focus.  It is the most frequent time in my career when I have made stupid mistakes.&lt;/p&gt;
&lt;h2&gt;How to avoid the debugger mindset&lt;/h2&gt;
&lt;p&gt;The is a perfect storm of conditions which tend to cause this kind of a mindset, mix and match these as you will:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A looming deadline (self-imposed or otherwise)&lt;/li&gt;
&lt;li&gt;Large chunks of almost complete work that can’t stand on its own&lt;/li&gt;
&lt;li&gt;Being in a hurry and looking for a shortcut&lt;/li&gt;
&lt;li&gt;Believing a problem is probably simple&lt;/li&gt;
&lt;li&gt;Believing a problem is probably hard&lt;/li&gt;
&lt;li&gt;Jumping to the debugger too soon&lt;/li&gt;
&lt;li&gt;Being at the end of a marathon session&lt;/li&gt;
&lt;li&gt;Not taking enough breaks&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There are many other conditions of course which can contribute to this mindset, but these are some of the ones I find most common.  It can only take a few of these in combination to really push you over the edge into no man’s land.&lt;/p&gt;
&lt;p&gt;Avoiding the debugger mindset can be as simple as trying to eliminate as many of these precursors as possible.&lt;/p&gt;
&lt;p&gt;Here are a few tips I have found to directly counter this list above:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Don’t impose deadlines on yourself and try to ignore unrealistic ones that are imposed on you.&lt;/strong&gt;  Instead try to focus on doing a good job and being productive.  You are much more likely to get fired for being in the debugger mindset and making a stupid brainless mistake than for taking a bit longer to accomplish a task or having to tell your boss that you cannot in good conscious commit to a deadline.  Never forget that software development is always going to have a huge “unknowable” factor to it.  No one can blame you for that and it is not your fault.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Try to commit as frequently as possible and divide your work into &lt;/strong&gt;&lt;a href="http://elegantcode.com/2010/07/31/breaking-even-small-things-up/"&gt;&lt;strong&gt;very small tasks&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt;  &lt;a href="http://simpleprogrammer.com/2010/07/09/why-small-is-better/"&gt;Smaller is better&lt;/a&gt;.  Also try to &lt;a href="http://simpleprogrammer.com/2010/01/26/scrum-backlogs-that-cover-too-much-and-are-not-thinly-sliced-enough-and-have-spreadsheets-attached-and-have-non-specific-things-like-fix-everything-on-this-page/"&gt;split work vertically&lt;/a&gt; rather than horizontally.  This means trying to implement a feature in terms of small working pieces that work end to end, rather than trying to implement all the functionality in a single layer at a time.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;There are no shorcuts in programming.&lt;/strong&gt;  When you need time take it.  Don’t forget to take time to quietly think about a problem.  Quiet contemplation is work.  It is not slacking off.  Take a walk if you need to.  Ask for a second set of eyes before you get into panic mode.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Do not make an assumption about a problem until you understand fully what the problem is.&lt;/strong&gt;  Don’t tell yourself it is easy, don’t tell yourself it is difficult, instead refrain from making a judgment call until you have enough information to do so.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Don’t prematurely go to the debugger.&lt;/strong&gt;  Always try to solve problems without the debugger first.  Once you have gone to the debugger, you are much more likely to get sucked into the debugger mindset.  If you do need to use the debugger, always have a hypothesis of what the problem is and use the debugger to confirm or deny it.  &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Do not use the debugger to help you understand what the code is doing.&lt;/strong&gt;  Instead use unit tests for that or refactor to make the code clearer.  Divide and conquer the problem into a series of branching hypothesizes.  Use the debugger only when necessary to confirm or disprove a hypotheses and then form a new one and repeat all the while remaining calm and understanding that you don’t know how deep a rabbit hole is until you go down it.  &lt;em&gt;(&lt;/em&gt;&lt;a href="http://stackoverflow.com/questions/602138/is-a-debugger-the-mother-of-all-evil"&gt;&lt;em&gt;This StackOverflow question&lt;/em&gt;&lt;/a&gt;&lt;em&gt; points out a fairly extreme view of what I am saying here, but I tend to agree with it more than I disagree with it.  I won’t say never use the debugger, but I will say that I myself use it too much and jump to it too quickly.)&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Take breaks and don’t work on the same piece of code for too long a period of time.&lt;/strong&gt;  As stated above, break your tasks into smaller tasks so that you are always near a checkpoint.  If you are feeling frustrated, take a 5 minute break to clear your head and regain your focus.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;What do you think?  Have you ever been in the debugger mindset?  What are some ways you avoid it?&lt;/p&gt;
&lt;h6&gt;As always, you can subscribe to this &lt;a href="http://feeds.feedburner.com/MakingTheComplexSimple"&gt;RSS feed&lt;/a&gt; to follow my posts on Making the Complex Simple.  Feel free to check out &lt;a href="http://elegantcode.com/"&gt;ElegantCode.com&lt;/a&gt; where I post about the topic of writing elegant code about once a week.  Also, you can follow me on twitter &lt;a href="http://twitter.com/jsonmez"&gt;here&lt;/a&gt;.&lt;/h6&gt;
&lt;br&gt;  &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/complextosimple.wordpress.com/1352/"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/complextosimple.wordpress.com/1352/"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/complextosimple.wordpress.com/1352/"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/complextosimple.wordpress.com/1352/"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/complextosimple.wordpress.com/1352/"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/complextosimple.wordpress.com/1352/"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/complextosimple.wordpress.com/1352/"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/complextosimple.wordpress.com/1352/"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/complextosimple.wordpress.com/1352/"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/complextosimple.wordpress.com/1352/"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/complextosimple.wordpress.com/1352/"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/complextosimple.wordpress.com/1352/"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/complextosimple.wordpress.com/1352/"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/complextosimple.wordpress.com/1352/"&gt;&lt;/a&gt; &lt;img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=simpleprogrammer.com&amp;amp;blog=10597120&amp;amp;post=1352&amp;amp;subd=complextosimple&amp;amp;ref=&amp;amp;feed=1" width="1" height="1"&gt;&lt;div&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bYruXm_m5CrTMa4j_KKxy7QWjDg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bYruXm_m5CrTMa4j_KKxy7QWjDg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/bYruXm_m5CrTMa4j_KKxy7QWjDg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bYruXm_m5CrTMa4j_KKxy7QWjDg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=t2Ku1a5AkoI:YrSPFY5aRYU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/t2Ku1a5AkoI" height="1" width="1"/&gt;</content><author><name>jsonmez</name></author><gr:likingUser>00127947277928390906</gr:likingUser><gr:likingUser>11218026139464319719</gr:likingUser><gr:likingUser>00054107962405495615</gr:likingUser><gr:likingUser>07851529275951559256</gr:likingUser><gr:likingUser>03566746763765382894</gr:likingUser><gr:likingUser>00440316580409748520</gr:likingUser><gr:likingUser>14468187682645254301</gr:likingUser><source gr:stream-id="feed/http://simpleprogrammer.com/feed/"><id>tag:google.com,2005:reader/feed/http://simpleprogrammer.com/feed/</id><title type="html">Making the Complex Simple</title><link rel="alternate" href="http://simpleprogrammer.com" type="text/html" /></source><feedburner:origLink>http://simpleprogrammer.com/2011/06/17/the-debugger-mindset/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1308215514792"><id gr:original-id="http://www.autoblog.nl/?p=43802">tag:google.com,2005:reader/item/58d3b3f0138e6df0</id><category term="snelweg" /><category term="melanie-schultz-van-haegen" /><category term="Verkeer" /><category term="tol" /><title type="html">A15 wordt als tolweg doorgetrokken naar A12</title><published>2011-06-16T07:35:55Z</published><updated>2011-06-16T07:35:55Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/jIJBQ6Dq_Ao/a15-wordt-als-tolweg-doorgetrokken-naar-a12" type="text/html" /><content xml:base="http://www.autoblog.nl/" type="html">&lt;p&gt;&lt;img src="http://static.autoblog.nl/images/wp2011/a15_a12.jpg" width="450" height="259" alt="A15 doorgetrokken naar A12" title="A15 doorgetrokken naar A12"&gt;&lt;/p&gt; &lt;p&gt;We krijgen er in Nederland een vierde tolweg bij. De A15 eindigt momenteel bij Bemmel tussen Arnhem en Nijmegen, maar zal worden doorgetrokken naar de A12 en aansluiten tussen Duiven en Zevenaar. &lt;a href="http://www.autoblog.nl/archive/2011/06/16/a15-wordt-als-tolweg-doorgetrokken-naar-a12#post-43802"&gt;(more…)&lt;/a&gt;&lt;/p&gt; &lt;img width="1" height="1" src="http://autoblog.nl.feedsportal.com/c/33258/f/561170/s/15eca4c6/mf.gif" border="0"&gt;&lt;div&gt;&lt;table border="0"&gt;&lt;tr&gt;&lt;td valign="middle"&gt;&lt;a href="http://res.feedsportal.com/viral/sendemail2_nl.html?title=A15+wordt+als+tolweg+doorgetrokken+naar+A12&amp;amp;link=http%3A%2F%2Fwww.autoblog.nl%2Farchive%2F2011%2F06%2F16%2Fa15-wordt-als-tolweg-doorgetrokken-naar-a12"&gt;&lt;img src="http://rss.feedsportal.com/images/emailthis2_nl.gif" border="0"&gt;&lt;/a&gt;&lt;/td&gt;&lt;td valign="middle"&gt;&lt;a href="http://res.feedsportal.com/viral/bookmark_nl.cfm?title=A15+wordt+als+tolweg+doorgetrokken+naar+A12&amp;amp;link=http%3A%2F%2Fwww.autoblog.nl%2Farchive%2F2011%2F06%2F16%2Fa15-wordt-als-tolweg-doorgetrokken-naar-a12"&gt;&lt;img src="http://rss.feedsportal.com/images/bookmark.gif" border="0"&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;a href="http://da.feedsportal.com/r/104472076932/u/31/f/561170/c/33258/s/15eca4c6/a2.htm"&gt;&lt;img src="http://da.feedsportal.com/r/104472076932/u/31/f/561170/c/33258/s/15eca4c6/a2.img" border="0"&gt;&lt;/a&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1ic27WuGT7jbSJ5ciEeo4UUfU34/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1ic27WuGT7jbSJ5ciEeo4UUfU34/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1ic27WuGT7jbSJ5ciEeo4UUfU34/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1ic27WuGT7jbSJ5ciEeo4UUfU34/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=jIJBQ6Dq_Ao:xgpwV_L59qg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/jIJBQ6Dq_Ao" height="1" width="1"/&gt;</content><author><name>Dennis</name></author><source gr:stream-id="feed/http://www.autoblog.nl/feed/"><id>tag:google.com,2005:reader/feed/http://www.autoblog.nl/feed/</id><title type="html">Autoblog.nl</title><link rel="alternate" href="http://www.autoblog.nl" type="text/html" /></source><feedburner:origLink>http://www.autoblog.nl/archive/2011/06/16/a15-wordt-als-tolweg-doorgetrokken-naar-a12</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1308051532170"><id gr:original-id="tag:www.notcot.org,2011:40826">tag:google.com,2005:reader/item/af08182174024ae4</id><title type="html">Application that examines the assertion that...</title><published>2011-06-07T18:32:07Z</published><updated>2011-06-07T18:32:07Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/gZ78NN5rIuc/40826" type="text/html" /><content xml:base="http://www.notcot.org/" xml:lang="en" type="html">&lt;br&gt;&lt;a href="http://www.notcot.org/post/40826/"&gt;&lt;img src="http://uploads.notempire.com/images/uploads/wikipedia-2.jpg"&gt;&lt;/a&gt;
                &lt;br&gt;&lt;br&gt;Application that examines the assertion that continuously following the first link of any Wikipedia page eventually leads to 'Philosophy'. &lt;br&gt;&lt;br&gt;&lt;i&gt; (Want more? See &lt;a href="http://www.notcot.org"&gt;NOTCOT.org&lt;/a&gt; and &lt;a href="http://www.notcot.com"&gt;NOTCOT.com&lt;/a&gt;)&lt;/i&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2q6CPH-HJ8FUGvOLM-fsiQdWOUk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2q6CPH-HJ8FUGvOLM-fsiQdWOUk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2q6CPH-HJ8FUGvOLM-fsiQdWOUk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2q6CPH-HJ8FUGvOLM-fsiQdWOUk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=gZ78NN5rIuc:JvVEAIUci4Q:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/gZ78NN5rIuc" height="1" width="1"/&gt;</content><author><name>xefer</name></author><gr:likingUser>16918581004656906872</gr:likingUser><gr:likingUser>13093102512422329735</gr:likingUser><gr:likingUser>10832002499324425597</gr:likingUser><gr:likingUser>17364766542551619191</gr:likingUser><gr:likingUser>08612677966126814745</gr:likingUser><gr:likingUser>05748444023916166260</gr:likingUser><gr:likingUser>11296812744065092422</gr:likingUser><gr:likingUser>15927763213682958723</gr:likingUser><gr:likingUser>10611848789710419493</gr:likingUser><source gr:stream-id="feed/http://www.notcot.org/atom.php"><id>tag:google.com,2005:reader/feed/http://www.notcot.org/atom.php</id><title type="html">NOTCOT.ORG</title><link rel="alternate" href="http://www.notcot.org/" type="text/html" /></source><feedburner:origLink>http://www.notcot.org/post/40826</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1307697034757"><id gr:original-id="http://www.paulstovell.com/octopus/intro">tag:google.com,2005:reader/item/b96ea752d4c70f6f</id><category term="octopus" /><category term="deployment" /><title type="html">Introducing Octopus, my MicroISV</title><published>2011-06-05T04:00:00Z</published><updated>2011-07-19T17:30:50Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/y_3JWFCN-B4/intro" type="text/html" /><content xml:base="http://www.paulstovell.com/blog" type="html">&lt;p&gt;A few weeks ago I &lt;a href="http://www.paulstovell.com/octopus/sneak-peek"&gt;posted some screenshots&lt;/a&gt; of an application I'm working on. A few people guessed, rightly, that it is a tool for automated deployment. Progress is going well, so I'd like to share some more details, and get your feedback. &lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.paulstovell.com/get/octopus/Octopus-small.png" width="230" height="213" style="float:right"&gt; &lt;/p&gt;

&lt;p style="font-size:120%"&gt;&lt;strong&gt;Octopus is a automated deployment solution for .NET applications, powered by NuGet and designed for convention over configuration.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Deploy Web applications and Windows Services&lt;/li&gt;
&lt;li&gt;Configure your applications automatically&lt;/li&gt;
&lt;li&gt;Works inside your network or over the internet, securely&lt;/li&gt;
&lt;li&gt;Track and report on how releases are promoted between environments&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I'm working my way through the &lt;a href="http://wiki.timesnapper.com/index.php?title=25_Steps_to_Build_Your_Own_Micro_ISV"&gt;SecretGeek 25 things list&lt;/a&gt;, and writing plenty of code. My goal is to have Octopus ready for beta testing in a few weeks. &lt;strong&gt;If you'd be interested in taking Octopus for a spin, add your email address below.&lt;/strong&gt; I promise to only send occasional updates as the beta program opens. &lt;/p&gt;

&lt;p&gt;Enter your email address: &lt;/p&gt;

&lt;h2&gt;Where Octopus fits in&lt;/h2&gt;

&lt;p&gt;Imagine your development team has been charged with building an intranet web solution. The solution consists of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An ASP.NET MVC web site&lt;/li&gt;
&lt;li&gt;A SQL Server database&lt;/li&gt;
&lt;li&gt;A Windows Service for performing some long-running tasks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The team are working iteratively. They check code into source control, and the build server picks up the code, compiles it, and produces artefacts ready to be deployed. Now, someone has to figure out how to deploy it. &lt;/p&gt;

&lt;p&gt;Every application has different deployment needs, but they are usually pretty similar:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The CI server builds the code and products artefacts (Zip files, WebDeploy packages, MSI's, etc.)&lt;/li&gt;
&lt;li&gt;The artifacts are copied and extracted on the target server(s)&lt;/li&gt;
&lt;li&gt;Web/App.config settings and connection strings are updated&lt;/li&gt;
&lt;li&gt;Performance counters and event log entries are created&lt;/li&gt;
&lt;li&gt;IIS web sites are configured&lt;/li&gt;
&lt;li&gt;Windows Services are installed and started&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Ideally, these deployment steps would be automated. Unfortunately automating these deployments still takes a lot of manual work. Usually the solution is a cobbled together band-aid solution of PowerShell scripts, XPath queries, batch files and point-and-click tools. &lt;/p&gt;

&lt;p&gt;Once you've cobbled together the PowerShell scripts and MSI packages for your application, zoom out, and look at the rest of your organization. How many other projects do you have? How many of them have automated deployment? How different is the deployment process for each application? Does it need to be this hard?&lt;/p&gt;

&lt;h2&gt;Octopus in action&lt;/h2&gt;

&lt;p&gt;Here's where Octopus fits in a typical organization:&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.paulstovell.com/get/octopus/octopus-environment.PNG" alt="Octopus in your enterprise"&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Developers check code into source control&lt;/li&gt;
&lt;li&gt;The CI server (TeamCity, TFS, CCNet, whatever) compiles the code, and &lt;strong&gt;packages it into NuGet packages&lt;/strong&gt; (I'll explain why below)&lt;/li&gt;
&lt;li&gt;The NuGet packages are exposed via a NuGet feed to Octopus&lt;/li&gt;
&lt;li&gt;A release manager commands Octopus to deploy a "release" of your application to an environment (staging, production, etc.)&lt;/li&gt;
&lt;li&gt;Octopus assembles all the NuGet packages, and pushes them to a "Tentacle", a small Windows Service that runs on your UAT/staging/production machines. &lt;/li&gt;
&lt;li&gt;The Tentacle agent deploys the NuGet package, and configures it (see below) &lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;Concepts&lt;/h2&gt;

&lt;p&gt;Octopus understands a few simple concepts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Package&lt;/strong&gt;: A NuGet package containing the smallest unit of deployment for part of your solution (for example, &lt;em&gt;YourApp.Web&lt;/em&gt;, &lt;em&gt;YourApp.Database&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Project&lt;/strong&gt;: A group of packages and deployment steps, for example, &lt;em&gt;YourApp&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Release&lt;/strong&gt;: A set of packages, with versions, for a project. For example, &lt;strong&gt;YourApp release 1.5&lt;/strong&gt; contains packages &lt;strong&gt;YourApp.Web 1.5.3&lt;/strong&gt; and &lt;strong&gt;YourApp.Database 1.5.1&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Machine&lt;/strong&gt;: A computer running the Tentacle service, that you intend to deploy packages to&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Environment&lt;/strong&gt;: A collection of computers, such as &lt;em&gt;Staging&lt;/em&gt; or &lt;em&gt;Production&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most of these concepts should be pretty intuitive from the UI - my goal is to make the release process pleasurable. Check out &lt;a href="http://www.paulstovell.com/octopus/sneak-peek"&gt;some of the screenshots&lt;/a&gt; to see where it's going. &lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.paulstovell.com/get/octopus/Environments_thumb.png" alt="Environment definition in Octopus"&gt;&lt;/p&gt;

&lt;h2&gt;Convention over configuration&lt;/h2&gt;

&lt;p&gt;Octopus was inspired by &lt;a href="http://appharbor.com/"&gt;AppHarbor&lt;/a&gt;, which performs automated deployment of .NET applications from Git/Mercurial check-ins. AppHarbor has a very clever system for dealing with deployment:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If your VS solution has a Web project, it deploys it to an IIS site&lt;/li&gt;
&lt;li&gt;If your web.config file has AppSettings with names matching variables you declare in the UI, they are automatically replaced&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The end result is you never need to write automated deployment scripts for AppHarbor applications - it's automatic, because most applications work the same way. &lt;/p&gt;

&lt;p&gt;Octopus shamelessly &lt;strike&gt;steals&lt;/strike&gt; "borrows" these ideas, making enterprise application deployment as easy as cloud deployment on AppHarbor. &lt;/p&gt;

&lt;p&gt;&lt;a href="http://help.octopusdeploy.com/kb/conventions/what-are-conventions"&gt;Conventions in Octopus include&lt;/a&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Replacing &lt;code&gt;appSettings&lt;/code&gt; and &lt;code&gt;configurationStrings&lt;/code&gt; entries &lt;/li&gt;
&lt;li&gt;Updating the path of IIS websites if your package contains a web.config&lt;/li&gt;
&lt;li&gt;Running any &lt;code&gt;System.Configuration.Install.Installers&lt;/code&gt; (for performance counters, event logs and Windows Services)&lt;/li&gt;
&lt;li&gt;Invoking a "Deploy.ps1" PowerShell script, if your package contains one&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The cool thing is that all of these steps are run locally on the target server; you don't need to mess around with configuring WinRM or PowerShell Remoting. &lt;/p&gt;

&lt;h2&gt;NuGet packages&lt;/h2&gt;

&lt;p&gt;Instead of MSI's, Zip files or WebDeploy packages, Octopus standardizes on the NuGet package format. There are a few reasons for this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Packaging files into a NuGet package is &lt;a href="http://docs.nuget.org/docs/creating-packages/creating-and-publishing-a-package"&gt;extremely easy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;NuGet packages can be consumed via a feed, so other applications can easily query the available packages&lt;/li&gt;
&lt;li&gt;CI tools &lt;a href="http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/DEV338"&gt;like TFS and TeamCity&lt;/a&gt; will soon have support to make &lt;a href="http://www.hanselman.com/blog/NuGetForTheEnterpriseNuGetInAContinuousIntegrationAutomatedBuildSystem.aspx"&gt;publishing NuGet packages easy&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;At first this might seem like a strange use of NuGet. Currently, NuGet is mostly used for packaging DLL's and other files, mostly for open source components. Why use NuGet for packaging complete web applications or Windows Services?&lt;/p&gt;

&lt;p&gt;If you spend time in the world of Linux however, you can see that package managers (like NuGet) have evolved beyond libraries. If you want to install Apache or MySQL on Linux, you'll use a package manager. Shouldn't we be able to do the same on Windows?&lt;/p&gt;

&lt;p&gt;An aspect of this idea that I think is really interesting is the concept of an internal &lt;strong&gt;"enterprise software inventory"&lt;/strong&gt;. Imagine if every version of every internal application you built was available from a NuGet feed, instead of a mix of File Shares, TFS Drops and TeamCity artifacts? &lt;/p&gt;

&lt;h2&gt;Reports and metrics&lt;/h2&gt;

&lt;p&gt;Since Octopus takes a pretty holistic view of your projects, environments and releases, it can be used to answer some interesting questions:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;How long on average does it take Project A to get from Staging to Production?&lt;/li&gt;
&lt;li&gt;How often do Staging releases fail user acceptance testing before going to Production?&lt;/li&gt;
&lt;li&gt;Which version of Project A is in UAT right now?&lt;/li&gt;
&lt;li&gt;What were the release notes of version 1.4 of Project A?&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;The business&lt;/h2&gt;

&lt;p&gt;I've spent a lot of time over the past few years working on &lt;a href="http://www.paulstovell.com/projects"&gt;open source projects&lt;/a&gt;. Open source projects are hard. Getting contributors is tricky, and even when you do, they usually focus on contributing "fun" features rather than bug fixing and documentation. Unless your project is large enough to have a lot of momentum, it's hard to attract committed contributors to do the not-so-fun things. &lt;/p&gt;

&lt;p&gt;I think Octopus stands a much bigger chance of succeeding if it has people committed to doing the not-so-fun things, producing a very useful, very high-quality product that you can trust to reliably deploy your software. For this reason (plus, well, greed :-)) Octopus is going to be a commercial product, and &lt;strong&gt;my first MicroISV&lt;/strong&gt;. Even if it's a colossal commercial failure, I'm looking forward to the experience of product development. &lt;/p&gt;

&lt;h2&gt;Pricing&lt;/h2&gt;

&lt;p&gt;At this stage I expect Octopus will be priced using a TeamCity model - free enough that you can use it to deploy one project to your organization, but by the time you need to deploy your second project, you'll have gotten enough value from it that you won't mind sharing the love. &lt;/p&gt;

&lt;h2&gt;What do you think?&lt;/h2&gt;

&lt;p&gt;This is one of my longer blog posts, and I hope I've done a good job of explaining what Octopus is all about. I'd like feedback, good or bad, about the direction. Specifically:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What do you think about the conventions? Can you think of any others? I've &lt;a href="http://help.octopusdeploy.com/kb/conventions/what-are-conventions"&gt;documented them a little better on the knowledge base&lt;/a&gt;. &lt;/li&gt;
&lt;li&gt;Is the system described above something that you could see yourself/your organization using?&lt;/li&gt;
&lt;li&gt;How are automated releases currently done within your organization?&lt;/li&gt;
&lt;li&gt;What additional reports/metrics would be useful?&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://www.paulstovell.com/via-feed/octopus/intro"&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/paulstovell?a=y_3JWFCN-B4:7_Pj0Y287qQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/paulstovell?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/paulstovell?a=y_3JWFCN-B4:7_Pj0Y287qQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/paulstovell?d=7Q72WNTAKBA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/paulstovell?a=y_3JWFCN-B4:7_Pj0Y287qQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/paulstovell?i=y_3JWFCN-B4:7_Pj0Y287qQ:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KyDCaCP3IhtaAezpgazKyW80IYg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KyDCaCP3IhtaAezpgazKyW80IYg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KyDCaCP3IhtaAezpgazKyW80IYg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KyDCaCP3IhtaAezpgazKyW80IYg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=y_3JWFCN-B4:W1381fv-0ZI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/y_3JWFCN-B4" height="1" width="1"/&gt;</content><author><name>Paul Stovell</name></author><gr:likingUser>08291153172300945774</gr:likingUser><gr:likingUser>00323916568913335111</gr:likingUser><gr:likingUser>10197103080477430800</gr:likingUser><gr:likingUser>12312671911239520976</gr:likingUser><gr:likingUser>15335287170639515947</gr:likingUser><gr:likingUser>16276882086576599051</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/PaulStovell"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/PaulStovell</id><title type="html">Paul Stovell</title><link rel="alternate" href="http://www.paulstovell.com/blog" type="text/html" /></source><feedburner:origLink>http://www.paulstovell.com/octopus/intro</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1307690051535"><id gr:original-id="http://www.speld.nl/?p=20474">tag:google.com,2005:reader/item/c1f12548ce9b99e1</id><category term="Kort Nieuws" /><title type="html">Google introduceert papieren e-mail</title><published>2011-06-09T15:15:09Z</published><updated>2011-06-09T15:15:09Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/1p5VqbeZ52Q/" type="text/html" /><content xml:base="http://www.speld.nl/" type="html">&lt;p&gt;&lt;img src="http://www.speld.nl/wp-content/uploads/tdietmut-e1307632488518.jpg" alt="" title="papieren mail" width="150" height="150"&gt;&lt;em&gt;Nieuw medium omzeilt Deep Packet Inspection&lt;/em&gt;&lt;/p&gt;
&lt;img src="http://www.speld.nl/?ak_action=api_record_view&amp;amp;id=20474&amp;amp;type=feed" alt=""&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/nN3Nk_-lJ_xhLnyvLuMTGg9CtlY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nN3Nk_-lJ_xhLnyvLuMTGg9CtlY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/nN3Nk_-lJ_xhLnyvLuMTGg9CtlY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nN3Nk_-lJ_xhLnyvLuMTGg9CtlY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=1p5VqbeZ52Q:UAkQirKiTdM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/1p5VqbeZ52Q" height="1" width="1"/&gt;</content><author><name>Melle</name></author><source gr:stream-id="feed/http://www.speld.nl/feed/"><id>tag:google.com,2005:reader/feed/http://www.speld.nl/feed/</id><title type="html">De Speld</title><link rel="alternate" href="http://www.speld.nl" type="text/html" /></source><feedburner:origLink>http://www.speld.nl/2011/06/09/google-introduceert-papieren-e-mail/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1306248859816"><id gr:original-id="http://www.speld.nl/?p=20117">tag:google.com,2005:reader/item/ce94ad16f92c43b2</id><category term="Kort Nieuws" /><category term="inholland" /><category term="studenten" /><title type="html">Inholland biedt afgestudeerden 4-jarige cursus aan</title><published>2011-05-16T11:50:08Z</published><updated>2011-05-16T11:50:08Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/khl1n8SczF8/" type="text/html" /><content xml:base="http://www.speld.nl/" type="html">&lt;p&gt;&lt;img title="Doekle Terpstra - Cc SURF Annemiek" src="http://www.speld.nl/wp-content/uploads/Doekle-Terpstra-e1305546385492.jpg" alt="" width="150" height="150"&gt;&lt;em&gt;Terpstra: “Het betreft een volledige compensatie van de eerdere studie.”&lt;/em&gt;&lt;/p&gt;
&lt;img src="http://www.speld.nl/?ak_action=api_record_view&amp;amp;id=20117&amp;amp;type=feed" alt=""&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/0vat776CluJTILR3JmikvActwMM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0vat776CluJTILR3JmikvActwMM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/0vat776CluJTILR3JmikvActwMM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0vat776CluJTILR3JmikvActwMM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=khl1n8SczF8:kTm8juQ6WTU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/khl1n8SczF8" height="1" width="1"/&gt;</content><author><name>jochem</name></author><gr:likingUser>10306363373324049628</gr:likingUser><source gr:stream-id="feed/http://www.speld.nl/feed/"><id>tag:google.com,2005:reader/feed/http://www.speld.nl/feed/</id><title type="html">De Speld</title><link rel="alternate" href="http://www.speld.nl" type="text/html" /></source><feedburner:origLink>http://www.speld.nl/2011/05/16/inholland-biedt-afgestudeerden-4-jarige-cursus-aan/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1306244246841"><id gr:original-id="http://www.hanselman.com/blog/PermaLink.aspx?guid=20a86783-6071-48ac-8308-9c0312331c3e">tag:google.com,2005:reader/item/1458235247a0b932</id><category term="ASP.NET" /><category term="ASP.NET MVC" /><category term="NuGet" /><category term="NuGetPOW" /><title type="html">NuGet Package of the Week #7 - ELMAH (Error Logging Modules and Handlers) with SQL Server Compact</title><published>2011-05-23T21:03:33Z</published><updated>2011-05-23T21:03:33Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/K-gSfLSyP5c/NuGetPackageOfTheWeek7ELMAHErrorLoggingModulesAndHandlersWithSQLServerCompact.aspx" type="text/html" /><author><name>Scott Hanselman</name></author><gr:likingUser>18083363957138460811</gr:likingUser><gr:likingUser>02506566614140552777</gr:likingUser><gr:likingUser>13702574774112915618</gr:likingUser><gr:likingUser>00116099472054000333</gr:likingUser><gr:likingUser>16226366522791707997</gr:likingUser><gr:likingUser>15883772061725133314</gr:likingUser><gr:likingUser>13639377844802488597</gr:likingUser><gr:likingUser>05317212311628328765</gr:likingUser><gr:likingUser>00435825007710741672</gr:likingUser><gr:likingUser>05964129827112842348</gr:likingUser><gr:likingUser>09901353485081539460</gr:likingUser><gr:likingUser>05932413635302224721</gr:likingUser><gr:likingUser>10856447154492082019</gr:likingUser><gr:likingUser>07256952224703313096</gr:likingUser><gr:likingUser>16183523675935360287</gr:likingUser><gr:likingUser>00221293375452811111</gr:likingUser><gr:likingUser>14344004091273460824</gr:likingUser><gr:likingUser>00600170946882820039</gr:likingUser><gr:likingUser>05411542333762462175</gr:likingUser><gr:likingUser>05400176637679967733</gr:likingUser><gr:likingUser>17521794804990349294</gr:likingUser><gr:likingUser>04936817422986422520</gr:likingUser><gr:likingUser>09155909162256028654</gr:likingUser><gr:likingUser>06107550074254071425</gr:likingUser><gr:likingUser>11870941234204551385</gr:likingUser><gr:likingUser>00498786424863378130</gr:likingUser><gr:likingUser>00707606330695458900</gr:likingUser><gr:likingUser>14105951345001089470</gr:likingUser><gr:likingUser>16276882086576599051</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/ScottHanselman"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/ScottHanselman</id><title type="html">Scott Hanselman</title><link rel="alternate" href="http://www.hanselman.com/blog/" type="text/html" /></source><content type="html">&lt;div&gt;&lt;p&gt;&lt;em&gt;Hey, have you implemented the &lt;/em&gt;&lt;a href="http://www.hanselman.com/blog/NuGetActionPlanUpgradeTo11SetupAutomaticUpdatesGetNuGetPackageExplorer.aspx"&gt;&lt;em&gt;&lt;b&gt;NuGet Action Plan&lt;/b&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;? Get on it, it'll take only 5 minutes: &lt;/em&gt;&lt;a href="http://www.hanselman.com/blog/NuGetActionPlanUpgradeTo11SetupAutomaticUpdatesGetNuGetPackageExplorer.aspx"&gt;&lt;em&gt;&lt;b&gt;NuGet Action Plan - Upgrade to 1.3, Setup Automatic Updates, Get NuGet Package Explorer&lt;/b&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;. &lt;strong&gt;NuGet 1.3 &lt;/strong&gt;is out, so make sure you're set to automatically update!&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The Backstory: &lt;/strong&gt;I was thinking since the &lt;a href="http://www.nuget.org/"&gt;NuGet .NET package management site&lt;/a&gt; is &lt;a href="http://stats.nuget.org/"&gt;starting to fill up&lt;/a&gt; that I should start looking for gems (no pun intended) in there. You know, really useful stuff that folks might otherwise not find. I'll look for mostly open source projects, ones I think are really useful. I'll look at how they built their NuGet packages, if there's anything interesting about the way the designed the out of the box experience (and anything they could do to make it better) as well as what the package itself does.&lt;/p&gt;  &lt;p&gt;This week&amp;#39;s Package of the Week is &amp;quot;&lt;strong&gt;ELMAH 1.2 with SQL Compact&lt;/strong&gt;.&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://nuget.org/List/Packages/elmah.sqlservercompact"&gt;&lt;img style="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="image" border="0" alt="image" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/NuGet-Package-of-the-Week-7---ELMAH-Erro_B9F2/image_3.png" width="614" height="93"&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You may already use ELMAH. Don't stop reading now, because you're going to need this information! &lt;/p&gt;  &lt;p&gt;Now, I've been blogging and promoting &lt;a href="http://www.hanselman.com/blog/ELMAHErrorLoggingModulesAndHandlersForASPNETAndMVCToo.aspx"&gt;ELMAH&lt;/a&gt; (Error Logging Modules and Handlers) for years. It's the &lt;strong&gt;first&lt;/strong&gt; thing I add to any ASP.NET project of any importance. It's one of the great little gems of ASP.NET open source.&lt;/p&gt;  &lt;p&gt;I&amp;#39;ve shown &amp;quot;install-package elmah&amp;quot; in a number of talks and videos as my go-to demo for how NuGet and a well structured OSS package get you started quickly. Recently the ELMAH team has started to do some restructuring of their packages, and I wanted to showcase their work so you can not only learn from it, but also implement similar structures in your own packages.&lt;/p&gt;  &lt;p&gt;First, spend a few minutes &lt;a href="http://www.hanselman.com/blog/ELMAHErrorLoggingModulesAndHandlersForASPNETAndMVCToo.aspx"&gt;checking out how ELMAH works and how it can add to your ASP.NET project&lt;/a&gt;. Now, let's look at the (currently three, soon to be more) ELMAH packages that are up on &lt;a href="http://www.nuget.org"&gt;NuGet.org&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;There's currently:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;ELMAH Core Library (no config)&lt;/strong&gt; - &amp;quot;Core library for ELMAH (Error Logging Modules and Handlers) without any configuration&amp;quot;       &lt;ul&gt;       &lt;li&gt;This one includes just the library. If you already have a custom ELMAH configuration or you want to create a new one, you can use and depend on this &amp;quot;core&amp;quot; package. &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;ELMAH&lt;/strong&gt; - &amp;quot;ELMAH with initial configuration for getting started quickly. ELMAH (Error Logging Modules and Handlers) is an application-wide error logging facility that is completely pluggable. It can be dynamically added to a running ASP.NET web application, or even all ASP.NET web applications on a machine, without any need for re-compilation or re-deployment.&amp;quot;       &lt;ul&gt;       &lt;li&gt;This one includes the basics you&amp;#39;ll need to for a drop-in/just-works configuration. This isn&amp;#39;t the &amp;quot;core&amp;quot; library, but rather one that depends on the core. It&amp;#39;s the &amp;quot;getting started&amp;quot; one. &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;ELMAH on MS SQL Server Compact &lt;/strong&gt;- &amp;quot;ELMAH with configuration for getting started quickly on a Microsoft SQL Server Compact database as the error log.&amp;quot;       &lt;ul&gt;       &lt;li&gt;This package depends on the Elmah library and Elmah.CoreLibrary package as well as SqlServerCompact and adds configuration for using them together. &lt;/li&gt;        &lt;li&gt;&lt;em&gt;Dependency chain: elmah.sqlservercompact -&amp;gt; elmah -&amp;gt; elmah.corelibrary&lt;/em&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Here's the web.config.transform that elmah.sqlservercompact adds to your base ELMAH web.config:&lt;/p&gt;  &lt;pre&gt;&amp;lt;configuration&amp;gt;&lt;br&gt;  &amp;lt;elmah&amp;gt;  &lt;br&gt;    &amp;lt;errorLogtype=&amp;quot;Elmah.SqlServerCompactErrorLog, Elmah&amp;quot;connectionStringName=&amp;quot;elmah-sqlservercompact&amp;quot;/&amp;gt;&lt;br&gt;  &amp;lt;/elmah&amp;gt;&lt;br&gt;  &amp;lt;connectionStrings&amp;gt;    &lt;br&gt;    &amp;lt;addname=&amp;quot;elmah-sqlservercompact&amp;quot;connectionString=&amp;quot;Data Source=|DataDirectory|\Elmah.sdf&amp;quot;/&amp;gt;&lt;br&gt;  &amp;lt;/connectionStrings&amp;gt;&lt;br&gt;&amp;lt;/configuration&amp;gt;&lt;/pre&gt;

&lt;p&gt;&lt;img style="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="ELMAH Database Column Structure" border="0" alt="ELMAH Database Column Structure" align="right" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/NuGet-Package-of-the-Week-7---ELMAH-Erro_B9F2/image_6.png" width="254" height="344"&gt;Give it a try, it&amp;#39;s easy, just install-package elmah.sqlservercompact. This basic package dependency structure will enable the Elmah guys to create &amp;quot;quick starts&amp;quot; with different configurations that each depend on elmah, which depends on the elmah.corelibrary.  &lt;/p&gt;

&lt;p&gt;ELMAH supports many formats for storing errors, but I think that SQL Server Compact is a great choice for small to medium size applications. &lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Everything in one place and queryable. &lt;/li&gt;

  &lt;li&gt;No mess of text files or XML files &lt;/li&gt;

  &lt;li&gt;Database survives application restarts/recycles &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you're using a WebFarm, you might want to use a central SQL Server instance, but I know a number of folks who run WebFarms and still prefer their errors on a per WebServer basis.&lt;/p&gt;

&lt;p&gt;When your application starts up, ELMAH will put the Elmah.sdf in your ~\App_Data folder. The database is structured like this image at right. With the SQL Server Compact tooling that's added with &lt;a href="http://www.microsoft.com/web/gallery/install.aspx?appid=VWDorVS2010SP1Pack"&gt;&lt;strong&gt;Visual Studio 2010 SP1&lt;/strong&gt;&lt;/a&gt; you can open the SDF file right in VS and query it if you like.&lt;/p&gt;

&lt;p&gt;If you prefer a different backend for your logs, we should soon see NuGet &amp;quot;quick start&amp;quot; packages for many of the supported ELMAH storage solutions. You can even get your errors as RSS or JSON!&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://www.microsoft.com/sql/"&gt;Microsoft SQL Server&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://www.oracle.com/"&gt;Oracle&lt;/a&gt; (&lt;a href="http://elmah.googlecode.com/svn/tags/REL-1.2/src/Elmah/OracleErrorLog.cs"&gt;OracleErrorLog&lt;/a&gt;) &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://www.sqlite.org/"&gt;SQLite&lt;/a&gt; (version 3) database file &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://code.google.com/p/elmah/wiki/Access"&gt;Microsoft Access&lt;/a&gt; (&lt;a href="http://elmah.googlecode.com/svn/tags/REL-1.2/src/Elmah/AccessErrorLog.cs"&gt;AccessErrorLog&lt;/a&gt;) &lt;/li&gt;

  &lt;li&gt;Loose XML files &lt;/li&gt;

  &lt;li&gt;RAM (in-memory) &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://www.microsoft.com/sql/"&gt;SQL Server Compact Edition&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://www.mysql.com/"&gt;MySQL&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://www.postgresql.org/"&gt;PostgreSQL&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Also, be aware that &lt;a href="http://code.google.com/p/elmah/"&gt;&lt;strong&gt;Elmah has just be updated to version 1.2&lt;/strong&gt;&lt;/a&gt; with a number of new features and fixes. ELMAH works in .NET 1.1 and .NET 2, so there's no excuse for not checking it out!&lt;/p&gt;

&lt;h3&gt;&lt;strong&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/NuGet-Package-of-the-Week-7---ELMAH-Erro_B9F2/Error_%20System.Web.HttpException%20%5B30158b95-0112-4081-91ab-c5ec7848a12c%5D%20-%20Windows%20Internet%20Explorer%20(74)_2.png"&gt;&lt;img style="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="Screenshot of an ELMAH log" border="0" alt="Screenshot of an ELMAH log" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/NuGet-Package-of-the-Week-7---ELMAH-Erro_B9F2/Error_%20System.Web.HttpException%20%5B30158b95-0112-4081-91ab-c5ec7848a12c%5D%20-%20Windows%20Internet%20Explorer%20(74)_thumb.png" width="464" height="389"&gt;&lt;/a&gt;&lt;/strong&gt;&lt;/h3&gt;

&lt;p&gt;Enjoy, and thanks to the ELMAH team for putting up with my nagging, bug reports and reviews over the last few months! It's only because I love the project so much!&lt;/p&gt;

&lt;h3&gt;&lt;strong&gt;Related Links&lt;/strong&gt;&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://www.hanselman.com/blog/ELMAHErrorLoggingModulesAndHandlersForASPNETAndMVCToo.aspx"&gt;ELMAH: Error Logging Modules and Handlers for ASP.NET (and MVC too!)&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://www.hanselman.com/blog/ELMAHAndExceptionDrivenDevelopmentFTW.aspx"&gt;ELMAH and Exception Driven Development FTW&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://www.hanselman.com/blog/GoodExceptionManagementRulesOfThumbBackToBasicsEdition.aspx"&gt;Good Exception Management Rules of Thumb - Back to Basics Edition&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;Other blog posts in the &lt;a href="http://www.hanselman.com/blog/CategoryView.aspx?category=NuGetPOW"&gt;&lt;strong&gt;NuGet Package of the Week&lt;/strong&gt;&lt;/a&gt; category &lt;/li&gt;
&lt;/ul&gt;&lt;br&gt;&lt;hr&gt;© 2011 Scott Hanselman. All rights reserved. &lt;br&gt;&lt;/div&gt;&lt;p&gt;&lt;iframe src="http://feedads.g.doubleclick.net/~ah/f/abrdk7uet7v0ksr8p75hfrs71g/300/250?ca=1&amp;amp;fh=280#http%3A%2F%2Fwww.hanselman.com%2Fblog%2FNuGetPackageOfTheWeek7ELMAHErrorLoggingModulesAndHandlersWithSQLServerCompact.aspx" width="100%" height="280" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=gGhobFzbK6o:xS1Aj2QBCfE:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=gGhobFzbK6o:xS1Aj2QBCfE:D7DqB2pKExk" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=gGhobFzbK6o:xS1Aj2QBCfE:MjquXQBfoPI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=MjquXQBfoPI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=gGhobFzbK6o:xS1Aj2QBCfE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=gGhobFzbK6o:xS1Aj2QBCfE:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=gGhobFzbK6o:xS1Aj2QBCfE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=gGhobFzbK6o:xS1Aj2QBCfE:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=gGhobFzbK6o:xS1Aj2QBCfE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=gGhobFzbK6o:xS1Aj2QBCfE:5M_9TJJRyfI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=5M_9TJJRyfI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=gGhobFzbK6o:xS1Aj2QBCfE:YKYwmLGm_co"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=YKYwmLGm_co" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottHanselman/~4/gGhobFzbK6o" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1vpXo5gz0xwbCNDH3RRa5o4e5KY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1vpXo5gz0xwbCNDH3RRa5o4e5KY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1vpXo5gz0xwbCNDH3RRa5o4e5KY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1vpXo5gz0xwbCNDH3RRa5o4e5KY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=K-gSfLSyP5c:Ne0wfIw6-Zw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/K-gSfLSyP5c" height="1" width="1"/&gt;</content><feedburner:origLink>http://feedproxy.google.com/~r/ScottHanselman/~3/gGhobFzbK6o/NuGetPackageOfTheWeek7ELMAHErrorLoggingModulesAndHandlersWithSQLServerCompact.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1305897752095"><id gr:original-id="http://www.hanselman.com/blog/PermaLink.aspx?guid=7c2e341c-169d-4ec6-8ebb-32f5af16d8c9">tag:google.com,2005:reader/item/4a57a8735923c664</id><category term="ASP.NET" /><category term="Coding4Fun" /><category term="Musings" /><category term="Speaking" /><title type="html">Developer Stand up Comedy - Coding 4 Fun</title><published>2011-05-05T20:15:18Z</published><updated>2011-05-05T20:15:18Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/q32jfZ3TkSI/DeveloperStandUpComedyCoding4Fun.aspx" type="text/html" /><author><name>Scott Hanselman</name></author><gr:likingUser>10309887133559368348</gr:likingUser><gr:likingUser>01846829098798340295</gr:likingUser><gr:likingUser>14663303872579884098</gr:likingUser><gr:likingUser>14170036224300285083</gr:likingUser><gr:likingUser>13212983265218782203</gr:likingUser><gr:likingUser>09396861426871790861</gr:likingUser><gr:likingUser>15042126214067545793</gr:likingUser><gr:likingUser>02550267821938166892</gr:likingUser><gr:likingUser>10452883752421848286</gr:likingUser><gr:likingUser>13702574774112915618</gr:likingUser><gr:likingUser>04159554991736878630</gr:likingUser><gr:likingUser>17161156584144201627</gr:likingUser><gr:likingUser>13003170927825016669</gr:likingUser><gr:likingUser>11595748631906584777</gr:likingUser><gr:likingUser>00805326638066363049</gr:likingUser><gr:likingUser>06590123718657996201</gr:likingUser><gr:likingUser>16025055933689496167</gr:likingUser><gr:likingUser>00435825007710741672</gr:likingUser><gr:likingUser>17326057118885520760</gr:likingUser><gr:likingUser>16819977916162752551</gr:likingUser><gr:likingUser>12818555997030166162</gr:likingUser><gr:likingUser>08128221881114818386</gr:likingUser><gr:likingUser>01913573562960126464</gr:likingUser><gr:likingUser>15326609070971576384</gr:likingUser><gr:likingUser>08754870889617508333</gr:likingUser><gr:likingUser>11713163491012695486</gr:likingUser><gr:likingUser>00221293375452811111</gr:likingUser><gr:likingUser>01170741198654019275</gr:likingUser><gr:likingUser>14344004091273460824</gr:likingUser><gr:likingUser>02150948557931363679</gr:likingUser><gr:likingUser>14660963629744461533</gr:likingUser><gr:likingUser>08495801839337681882</gr:likingUser><gr:likingUser>13955873726523490176</gr:likingUser><gr:likingUser>08353054291962603524</gr:likingUser><gr:likingUser>01233887755443623995</gr:likingUser><gr:likingUser>10972206157157150419</gr:likingUser><gr:likingUser>11746617555350179655</gr:likingUser><gr:likingUser>12065875505291504511</gr:likingUser><gr:likingUser>00041551619807405025</gr:likingUser><gr:likingUser>01611804762424097228</gr:likingUser><gr:likingUser>11067853532291698348</gr:likingUser><gr:likingUser>11870941234204551385</gr:likingUser><gr:likingUser>13659463864430149651</gr:likingUser><gr:likingUser>11246287275660333628</gr:likingUser><gr:likingUser>15690628196526759217</gr:likingUser><gr:likingUser>04784442806959031193</gr:likingUser><gr:likingUser>04727459945288068746</gr:likingUser><gr:likingUser>14672284775862026481</gr:likingUser><gr:likingUser>15605347615714220536</gr:likingUser><gr:likingUser>16657789510663194227</gr:likingUser><gr:likingUser>16276882086576599051</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/ScottHanselman"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/ScottHanselman</id><title type="html">Scott Hanselman</title><link rel="alternate" href="http://www.hanselman.com/blog/" type="text/html" /></source><content type="html">&lt;div&gt;&lt;p&gt;&lt;a href="http://channel9.msdn.com/Events/DevDays/DevDays-2011-Netherlands/Devdays054"&gt;&lt;img style="border-bottom:0px;border-left:0px;margin:0px 0px 5px 5px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top:0px;border-right:0px;padding-top:0px" title="image" border="0" alt="image" align="right" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Developer-S_B7ED/image_3.png" width="505" height="273"&gt;&lt;/a&gt;There aren't enough funny developer talks in my opinion. Lots of you folks are so funny in person and when I got to conferences or just have lunch we laugh and laugh. As with all niches or cliques, we're all part of a little club of inside jokes and shared stories. &lt;/p&gt;  &lt;p&gt;It's always weird to get lots of comments on my technical talks. Many are positive, but sometimes I'll get one like "your not funy!" or "stop joking and start coding." Well, I realize my brand of edutainment isn't for everyone. &lt;/p&gt;  &lt;p&gt;That said, this talk is happily content-free. If you hate my jokes, you may ignore it. ;)&lt;/p&gt;  &lt;p&gt;Many years ago I did some local open mics and stand up, although I've never really put together a tight hour of material. I'm less of a stand up and more of a storyteller. Anyway, I got signed up for a talk in Holland last week called "Coding 4 Fun" but didn't prepare anything. I was already signed up for 6 other talks and had already presented 3 times by the time I showed up on stage at the 7pm "geek night" session.&lt;/p&gt;  &lt;p&gt;There were a bunch of people there almost an hour early so I just sat on the end of the stage and we chatted. It was great fun. Next thing we knew, the guy was recording the video and the room was filling up.&lt;/p&gt;  &lt;p&gt;So, I talked and told stories and chatted my co-workers and friends on IM for a while, the showed some community built NuGet packages. The only think I wish is that you could see the audience in this video. They were fun and engaged and silly. &lt;/p&gt;  &lt;p&gt;Big thanks to Glenn Block and Clemens Vasters for sitting in the front row and playing along, and to Damian Edwards, Tim Heuer and Phil Haack for being silly over IM.&lt;/p&gt;  &lt;p&gt;A lot of the jokes are in the IM or the code, so if you can't see them (even though I zoom in) with smooth streaming, download a higher res version so you can see them.&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://channel9.msdn.com/Events/DevDays/DevDays-2011-Netherlands/Devdays054"&gt;&lt;strong&gt;Coding for Fun with Scott Hanselman recorded in Holland in April of 2011&lt;/strong&gt;&lt;/a&gt;&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://media.ch9.ms/ch9/1ea0/ef05d6a9-86a1-43bd-af65-9ed200a41ea0/devdays054_2MB_ch9.wmv"&gt;High Quality WMV&lt;/a&gt; (PC, XBox, MCE)&lt;/li&gt;    &lt;li&gt;&lt;a href="http://media.ch9.ms/ch9/1ea0/ef05d6a9-86a1-43bd-af65-9ed200a41ea0/devdays054_ch9.wmv"&gt;Medium Quality WMV&lt;/a&gt; (Lo-band, Mobile)&lt;/li&gt;    &lt;li&gt;&lt;a href="http://media.ch9.ms/ch9/1ea0/ef05d6a9-86a1-43bd-af65-9ed200a41ea0/devdays054_high_ch9.mp4"&gt;High Quality MP4&lt;/a&gt; (iPad, WP7)&lt;/li&gt;    &lt;li&gt;&lt;a href="http://media.ch9.ms/ch9/1ea0/ef05d6a9-86a1-43bd-af65-9ed200a41ea0/devdays054_low_ch9.mp4"&gt;MP4&lt;/a&gt; (iPod, Zune HD)&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I hope you enjoy. Maybe one day I &lt;em&gt;will &lt;/em&gt;put together a real act of "stand up for developers."&lt;/p&gt;&lt;br&gt;&lt;hr&gt;© 2011 Scott Hanselman. All rights reserved. &lt;br&gt;&lt;/div&gt;&lt;p&gt;&lt;iframe src="http://feedads.g.doubleclick.net/~ah/f/abrdk7uet7v0ksr8p75hfrs71g/468/60#http%3A%2F%2Fwww.hanselman.com%2Fblog%2FDeveloperStandUpComedyCoding4Fun.aspx" width="100%" height="60" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=_uL6SFnEmzc:qFPiw05G5B4:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=_uL6SFnEmzc:qFPiw05G5B4:D7DqB2pKExk" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=_uL6SFnEmzc:qFPiw05G5B4:MjquXQBfoPI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=MjquXQBfoPI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=_uL6SFnEmzc:qFPiw05G5B4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=_uL6SFnEmzc:qFPiw05G5B4:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=_uL6SFnEmzc:qFPiw05G5B4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=_uL6SFnEmzc:qFPiw05G5B4:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=_uL6SFnEmzc:qFPiw05G5B4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=_uL6SFnEmzc:qFPiw05G5B4:5M_9TJJRyfI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=5M_9TJJRyfI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=_uL6SFnEmzc:qFPiw05G5B4:YKYwmLGm_co"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=YKYwmLGm_co" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottHanselman/~4/_uL6SFnEmzc" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/IXTDEzjtla6fPdVjOPhZvdXuC9s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IXTDEzjtla6fPdVjOPhZvdXuC9s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/IXTDEzjtla6fPdVjOPhZvdXuC9s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IXTDEzjtla6fPdVjOPhZvdXuC9s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=q32jfZ3TkSI:c4sljw-UNOA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/q32jfZ3TkSI" height="1" width="1"/&gt;</content><feedburner:origLink>http://feedproxy.google.com/~r/ScottHanselman/~3/_uL6SFnEmzc/DeveloperStandUpComedyCoding4Fun.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1303898787517"><id gr:original-id="urn:www-soup-io:1:126870151">tag:google.com,2005:reader/item/803defea617df7ee</id><category term="image" scheme="contenttype" /><title type="html">(Image)</title><published>2011-04-26T20:20:46Z</published><updated>2011-04-26T20:20:46Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/PqTSfoXB1Hw/Image" type="text/html" /><link rel="enclosure" href="http://asset.soup.io/asset/1832/9291_906a_400.gif" type="image/jpeg" length="0" /><author gr:unknown-author="true"><name>(author unknown)</name></author><source gr:stream-id="feed/http://www.hiccup.nl/rss"><id>tag:google.com,2005:reader/feed/http://www.hiccup.nl/rss</id><title type="html">Bart Cortooms</title><link rel="alternate" href="http://www.hiccup.nl/" type="text/html" /></source><content type="html">&lt;p&gt;&lt;a href="http://www.hiccup.nl/"&gt;&lt;img alt="9291_906a_400" height="257" src="http://asset.soup.io/asset/1832/9291_906a_400.gif" width="400"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/asWBjGlCc6PJUt1C7Jr3xAiYJ6E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/asWBjGlCc6PJUt1C7Jr3xAiYJ6E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/asWBjGlCc6PJUt1C7Jr3xAiYJ6E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/asWBjGlCc6PJUt1C7Jr3xAiYJ6E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=PqTSfoXB1Hw:krenAxDaJqY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/PqTSfoXB1Hw" height="1" width="1"/&gt;</content><feedburner:origLink>http://www.hiccup.nl/post/126870151/Image</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1303763160906"><id gr:original-id="http://www.codinghorror.com/blog/2011/04/working-with-the-chaos-monkey.html">tag:google.com,2005:reader/item/c54c629de9acbb1e</id><title type="html">Working with the Chaos Monkey</title><published>2011-04-25T10:53:48Z</published><updated>2011-04-25T10:53:48Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/j_sFF9Ecu2M/working-with-the-chaos-monkey.html" type="text/html" /><author gr:unknown-author="true"><name>(author unknown)</name></author><gr:likingUser>02709406188782401662</gr:likingUser><gr:likingUser>03335919537245603047</gr:likingUser><gr:likingUser>12466474134753177695</gr:likingUser><gr:likingUser>00291641984479284145</gr:likingUser><gr:likingUser>11516373661078243712</gr:likingUser><gr:likingUser>02245130812067035225</gr:likingUser><gr:likingUser>15970542634614064334</gr:likingUser><gr:likingUser>13742308462455582121</gr:likingUser><gr:likingUser>02522501341949674670</gr:likingUser><gr:likingUser>18163089868310221923</gr:likingUser><gr:likingUser>00054022677123905606</gr:likingUser><gr:likingUser>15527456364425823699</gr:likingUser><gr:likingUser>04997367229413425593</gr:likingUser><gr:likingUser>06001985769532929896</gr:likingUser><gr:likingUser>06461515884007052888</gr:likingUser><gr:likingUser>08597251990458987400</gr:likingUser><gr:likingUser>10944861386436781766</gr:likingUser><gr:likingUser>04924975339492389189</gr:likingUser><gr:likingUser>03420434914440374305</gr:likingUser><gr:likingUser>08045053297935146668</gr:likingUser><gr:likingUser>17354828626699207647</gr:likingUser><gr:likingUser>02101380299320609464</gr:likingUser><gr:likingUser>12214962916716391646</gr:likingUser><gr:likingUser>03673638990295115797</gr:likingUser><gr:likingUser>01534341410974259185</gr:likingUser><gr:likingUser>17537281340019235765</gr:likingUser><gr:likingUser>03066345875172144490</gr:likingUser><gr:likingUser>17950720450929929955</gr:likingUser><gr:likingUser>14574443500394081927</gr:likingUser><gr:likingUser>12100871047796115323</gr:likingUser><gr:likingUser>06383865936022322471</gr:likingUser><gr:likingUser>10983870018525207683</gr:likingUser><gr:likingUser>06077597975116316224</gr:likingUser><gr:likingUser>06590123718657996201</gr:likingUser><gr:likingUser>01385698526884808286</gr:likingUser><gr:likingUser>02181860730468695161</gr:likingUser><gr:likingUser>12288374145971095784</gr:likingUser><gr:likingUser>18244993097396591903</gr:likingUser><gr:likingUser>05868683380208144391</gr:likingUser><gr:likingUser>12981699013186247926</gr:likingUser><gr:likingUser>11673482026151256729</gr:likingUser><gr:likingUser>00576954976885219067</gr:likingUser><gr:likingUser>00003176644688602752</gr:likingUser><gr:likingUser>12968762890945464370</gr:likingUser><gr:likingUser>05996753910556639293</gr:likingUser><gr:likingUser>06132847691788597765</gr:likingUser><gr:likingUser>11500736292967531203</gr:likingUser><gr:likingUser>00154884469911815521</gr:likingUser><gr:likingUser>15449399998278200675</gr:likingUser><gr:likingUser>15992106399006510564</gr:likingUser><gr:likingUser>02871842629623994286</gr:likingUser><gr:likingUser>00865414445405917180</gr:likingUser><gr:likingUser>09851039351520076808</gr:likingUser><gr:likingUser>05690229047086915053</gr:likingUser><gr:likingUser>06651233627255791640</gr:likingUser><gr:likingUser>12764780689558227544</gr:likingUser><gr:likingUser>16986039579465697214</gr:likingUser><gr:likingUser>11984101616201078961</gr:likingUser><gr:likingUser>18237270622379757217</gr:likingUser><gr:likingUser>11387674515061984230</gr:likingUser><gr:likingUser>03669131603805678624</gr:likingUser><gr:likingUser>03545964666694920486</gr:likingUser><gr:likingUser>05494663904966874907</gr:likingUser><gr:likingUser>07874975862771053376</gr:likingUser><gr:likingUser>05914161454770639025</gr:likingUser><gr:likingUser>02299608255667126404</gr:likingUser><gr:likingUser>17460581358788945425</gr:likingUser><gr:likingUser>09327964009159562483</gr:likingUser><gr:likingUser>00793259679052287882</gr:likingUser><gr:likingUser>07766290630609368230</gr:likingUser><gr:likingUser>13440948877280246068</gr:likingUser><gr:likingUser>07789580079194047804</gr:likingUser><gr:likingUser>09824332880017236002</gr:likingUser><gr:likingUser>17012340783730086610</gr:likingUser><gr:likingUser>12280570659847858896</gr:likingUser><gr:likingUser>00233066534072111766</gr:likingUser><gr:likingUser>18419025778891786881</gr:likingUser><gr:likingUser>00041551619807405025</gr:likingUser><gr:likingUser>16177820865335648352</gr:likingUser><gr:likingUser>04191550770291313687</gr:likingUser><gr:likingUser>15527456140367611590</gr:likingUser><gr:likingUser>17126309482888334237</gr:likingUser><gr:likingUser>11231845297620684244</gr:likingUser><gr:likingUser>18205651234923633572</gr:likingUser><gr:likingUser>00798640788452861984</gr:likingUser><gr:likingUser>11067853532291698348</gr:likingUser><gr:likingUser>17954736979018176682</gr:likingUser><gr:likingUser>04800550817652981750</gr:likingUser><gr:likingUser>09203681854586866863</gr:likingUser><gr:likingUser>16798125704060913183</gr:likingUser><gr:likingUser>07091929504295947051</gr:likingUser><gr:likingUser>06198194152961483149</gr:likingUser><gr:likingUser>00321597721557820145</gr:likingUser><gr:likingUser>17972437336625695493</gr:likingUser><gr:likingUser>03904064014818023017</gr:likingUser><gr:likingUser>04950812727197282508</gr:likingUser><gr:likingUser>02779091290545059499</gr:likingUser><gr:likingUser>02971385870103157047</gr:likingUser><source gr:stream-id="feed/http://www.codinghorror.com/blog/index.xml"><id>tag:google.com,2005:reader/feed/http://www.codinghorror.com/blog/index.xml</id><title type="html">Coding Horror</title><link rel="alternate" href="http://www.codinghorror.com/blog/" type="text/html" /></source><content type="html">&lt;p&gt;

&lt;p&gt;
Late last year, the Netflix Tech Blog wrote about &lt;a href="http://techblog.netflix.com/2010/12/5-lessons-weve-learned-using-aws.html"&gt;five lessons they learned moving to Amazon Web Services&lt;/a&gt;. AWS is, of course, the preeminent provider of so-called "cloud computing", so this can essentially be read as &lt;b&gt;key advice for any website considering a move to the cloud&lt;/b&gt;. And it's great advice, too. Here's the one bit that struck me as most essential:
&lt;p&gt;
&lt;blockquote&gt;
&lt;p&gt;
We’ve sometimes referred to the Netflix software architecture in AWS as our Rambo Architecture. Each system has to be able to succeed, no matter what, even all on its own. We’re designing each distributed system to expect and tolerate failure from other systems on which it depends.
&lt;p&gt;
If our recommendations system is down, we degrade the quality of our responses to our customers, but we still respond. We’ll show popular titles instead of personalized picks. If our search system is intolerably slow, streaming should still work perfectly fine.
&lt;p&gt;
One of the first systems our engineers built in AWS is called the Chaos Monkey. &lt;b&gt;The Chaos Monkey’s job is to randomly kill instances and services within our architecture.&lt;/b&gt; If we aren’t constantly testing our ability to succeed despite failure, then it isn’t likely to work when it matters most – in the event of an unexpected outage.
&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;
Which, let's face it, seems like insane advice at first glance. I'm not sure many companies even understand why this would be a good idea, much less have the guts to attempt it. Raise your hand if where you work, &lt;i&gt;someone deployed a daemon or service that randomly kills servers and processes in your server farm&lt;/i&gt;.
&lt;p&gt;
Now raise your other hand if that person is still employed by your company. 
&lt;p&gt;
Who in their right mind would willingly choose to work with a Chaos Monkey?
&lt;p&gt;
&lt;a href="http://www.youtube.com/watch?v=WgjcvxQjpKA"&gt;&lt;img alt="Angry-monkey-family-guy" title="Angry-monkey-family-guy" src="http://www.codinghorror.com/.a/6a0120a85dcdae970b014e880f778e970d-800wi" border="0"&gt;&lt;/a&gt;
&lt;p&gt;
Sometimes you don't get a choice; the Chaos Monkey chooses you. At &lt;a href="http://stackexchange.com/"&gt;Stack Exchange&lt;/a&gt;, we struggled for months with a bizarre problem. &lt;b&gt;Every few days, one of the servers in the &lt;a href="http://blog.stackoverflow.com/2010/01/stack-overflow-network-configuration/"&gt;Oregon web farm&lt;/a&gt; would simply stop responding to all external network requests.&lt;/b&gt; No reason, no rationale, and no recovery except for a slow, excruciating shutdown sequence requiring the server to bluescreen before it would reboot. 
&lt;p&gt;
We spent months -- literally &lt;i&gt;months&lt;/i&gt; -- chasing this &lt;a href="http://serverfault.com/questions/104791/windows-server-2008-r2-network-adapter-stops-working-requires-hard-reboot"&gt;problem&lt;/a&gt; down. We walked the list of everything we could think of to solve it, and then some:
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;swapping network ports
&lt;li&gt;replacing network cables
&lt;li&gt;a different switch
&lt;li&gt;multiple versions of the network driver
&lt;li&gt;tweaking OS and driver level network settings
&lt;li&gt;simplifying our network configuration and removing &lt;a href="http://www.balabit.com/support/community/products/tproxy"&gt;TProxy&lt;/a&gt; for more traditional &lt;code&gt;X-FORWARDED-FOR&lt;/code&gt;
&lt;li&gt;switching virtualization providers
&lt;li&gt;changing our &lt;a href="http://en.wikipedia.org/wiki/Host_model"&gt;TCP/IP host model&lt;/a&gt;
&lt;li&gt;getting Kernel hotfixes and applying them
&lt;li&gt;involving high-level vendor support teams
&lt;li&gt;some other stuff that I've now forgotten because I blacked out from the pain
&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;
At one point in this saga our team almost came to blows because we were so frustrated. (Well, as close to "blows" as a &lt;a href="http://www.codinghorror.com/blog/2010/05/on-working-remotely.html"&gt;remote team&lt;/a&gt; can get over Skype, but you know what I mean.) Can you blame us? Every few days, one of our servers -- no telling which one -- would randomly wink off the network. &lt;b&gt;The Chaos Monkey strikes again!&lt;/b&gt;
&lt;p&gt;
Even in our time of greatest frustration, I realized that there was a positive side to all this:
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;Where we had one server performing an essential function, we switched to two.
&lt;li&gt;If we didn't have a sensible fallback for something, we created one.
&lt;li&gt;We removed dependencies all over the place, paring down to the absolute minimum we required to run.
&lt;li&gt;We implemented workarounds to stay running at all times, even when services we previously considered essential were suddenly no longer available. 
&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;
Every week that went by, we made our system a tiny bit more redundant, because we had to. Despite the ongoing pain, it became clear that Chaos Monkey was actually doing us a big favor by forcing us to become extremely resilient. Not tomorrow, not someday, not at some indeterminate "we'll get to it eventually" point in the future, but &lt;i&gt;right now where it hurts&lt;/i&gt;.
&lt;/p&gt;
Now, none of this is new news; our problem is long since solved, and the Netflix Tech Blog article I'm referring to was posted last year. I've been meaning to write about it, but &lt;a href="http://stackexchange.com/sites"&gt;I've been a little busy&lt;/a&gt;. Maybe the timing is prophetic; &lt;a href="http://www.zdnet.com/blog/btl/amazons-web-services-outage-end-of-cloud-innocence/47731"&gt;AWS had a huge multi-day outage last week&lt;/a&gt;, which took several major websites down, along with a constellation of smaller sites.
&lt;p&gt;
Notably absent from that list of affected AWS sites? Netflix.
&lt;p&gt;
When you work with the Chaos Monkey, you quickly learn that everything happens for a reason. Except for those things which happen completely randomly. And that's why, even though it sounds crazy, &lt;b&gt;the best way to avoid failure is to fail constantly.&lt;/b&gt;
&lt;p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8YysQptiW_fs9sUc-ImTHV8s9zo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8YysQptiW_fs9sUc-ImTHV8s9zo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8YysQptiW_fs9sUc-ImTHV8s9zo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8YysQptiW_fs9sUc-ImTHV8s9zo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=j_sFF9Ecu2M:yRH8-WX2H7E:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/j_sFF9Ecu2M" height="1" width="1"/&gt;</content><feedburner:origLink>http://www.codinghorror.com/blog/2011/04/working-with-the-chaos-monkey.html</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1303499921543"><id gr:original-id="http://www.hanselman.com/blog/PermaLink.aspx?guid=bbe17a10-4671-4109-88d6-2afd57f6f804">tag:google.com,2005:reader/item/7b3db59eb18c0c05</id><category term="ASP.NET" /><category term="ASP.NET MVC" /><category term="IIS" /><category term="VS2010" /><title type="html">Working with SSL at Development Time is easier with IISExpress</title><published>2011-04-21T22:59:06Z</published><updated>2011-04-21T22:59:06Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/89HgEmgxsWk/WorkingWithSSLAtDevelopmentTimeIsEasierWithIISExpress.aspx" type="text/html" /><author><name>Scott Hanselman</name></author><gr:likingUser>18083363957138460811</gr:likingUser><gr:likingUser>09677261134908795802</gr:likingUser><gr:likingUser>08059876863940789324</gr:likingUser><gr:likingUser>01313094613217113515</gr:likingUser><gr:likingUser>11846905808206926961</gr:likingUser><gr:likingUser>16013053026491553291</gr:likingUser><gr:likingUser>12799982373348976659</gr:likingUser><gr:likingUser>15670887843112445625</gr:likingUser><gr:likingUser>16173061818097401564</gr:likingUser><gr:likingUser>09047167595374279566</gr:likingUser><gr:likingUser>07402659509095110230</gr:likingUser><gr:likingUser>15897691948879148881</gr:likingUser><gr:likingUser>01172661760330346675</gr:likingUser><gr:likingUser>17878502925460749874</gr:likingUser><gr:likingUser>16151523366346106863</gr:likingUser><gr:likingUser>06140860293927820902</gr:likingUser><gr:likingUser>10774144009363890146</gr:likingUser><gr:likingUser>15883772061725133314</gr:likingUser><gr:likingUser>12628708361123432051</gr:likingUser><gr:likingUser>13639377844802488597</gr:likingUser><gr:likingUser>05317212311628328765</gr:likingUser><gr:likingUser>12312671911239520976</gr:likingUser><gr:likingUser>17912712041486389935</gr:likingUser><gr:likingUser>05416870280675947989</gr:likingUser><gr:likingUser>00435825007710741672</gr:likingUser><gr:likingUser>11868089733023781436</gr:likingUser><gr:likingUser>02934418703161357618</gr:likingUser><gr:likingUser>07719426541251216503</gr:likingUser><gr:likingUser>09463234379425054822</gr:likingUser><gr:likingUser>15134919104558663693</gr:likingUser><gr:likingUser>07015358740111725466</gr:likingUser><gr:likingUser>14624639422675158770</gr:likingUser><gr:likingUser>00843592321926311647</gr:likingUser><gr:likingUser>12429793051068138211</gr:likingUser><gr:likingUser>00911138493830890224</gr:likingUser><gr:likingUser>01452261219366318122</gr:likingUser><gr:likingUser>17870456313756660775</gr:likingUser><gr:likingUser>14904044326806107227</gr:likingUser><gr:likingUser>07285549880624531390</gr:likingUser><gr:likingUser>11988402493791007690</gr:likingUser><gr:likingUser>15777995978288921753</gr:likingUser><gr:likingUser>16950801946615166653</gr:likingUser><gr:likingUser>04783438659533041617</gr:likingUser><gr:likingUser>00490198038587319745</gr:likingUser><gr:likingUser>16847366514671189033</gr:likingUser><gr:likingUser>17899883270385732671</gr:likingUser><gr:likingUser>06887250643623430772</gr:likingUser><gr:likingUser>00281683355061574317</gr:likingUser><gr:likingUser>05400176637679967733</gr:likingUser><gr:likingUser>13804494035464248340</gr:likingUser><gr:likingUser>03348433150218355157</gr:likingUser><gr:likingUser>15750824017510832503</gr:likingUser><gr:likingUser>13955873726523490176</gr:likingUser><gr:likingUser>15618290120664685523</gr:likingUser><gr:likingUser>09639164021330665342</gr:likingUser><gr:likingUser>14574599314555388696</gr:likingUser><gr:likingUser>14261226687169365124</gr:likingUser><gr:likingUser>09613597118679515207</gr:likingUser><gr:likingUser>16580969973201915332</gr:likingUser><gr:likingUser>11201176745807204329</gr:likingUser><gr:likingUser>06283702883459862289</gr:likingUser><gr:likingUser>02193062338663850635</gr:likingUser><gr:likingUser>15421797147739004543</gr:likingUser><gr:likingUser>14520057049594373009</gr:likingUser><gr:likingUser>08221036579558509505</gr:likingUser><gr:likingUser>01018013871490526754</gr:likingUser><gr:likingUser>14706238664948003683</gr:likingUser><gr:likingUser>04996503491075105943</gr:likingUser><gr:likingUser>13482549016842405241</gr:likingUser><gr:likingUser>10087841342742182759</gr:likingUser><gr:likingUser>13247728323758206520</gr:likingUser><gr:likingUser>04784442806959031193</gr:likingUser><gr:likingUser>10232586220815694651</gr:likingUser><gr:likingUser>14672284775862026481</gr:likingUser><gr:likingUser>16276882086576599051</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/ScottHanselman"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/ScottHanselman</id><title type="html">Scott Hanselman</title><link rel="alternate" href="http://www.hanselman.com/blog/" type="text/html" /></source><content type="html">&lt;div&gt;&lt;p&gt;&lt;a href="http://channel9.msdn.com/events/mix/mix11/frm02"&gt;&lt;img style="border-right-width:0px;margin:0px 0px 8px 10px;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="The Video of my Mix Talk" border="0" alt="The Video of my Mix Talk" align="right" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/FRM02_lg_3.jpg" width="450" height="253"&gt;&lt;/a&gt;One of the demos in my Mix 11 talk &amp;quot;&lt;a href="http://channel9.msdn.com/events/mix/mix11/frm02"&gt;An Overview of the MS Web Stack of Love&lt;/a&gt;&amp;quot; was showing how IIS Express and Visual Studio SP1 (as well as WebMatrix) can make working with SSL (Secure Sockets Layer) a heck of a lot easier.&lt;/p&gt;  &lt;p&gt;If you've used Cassini before (that's the little built in Visual Web Developer Server) you've likely noticed that I doesn't support SSL. This makes working with real world sites a little challenging. If you want your Login pages and Account Management pages to use secure sockets, you'd typically have to do all your work with the full version of IIS, either installed on your own machine or using a shared server.&lt;/p&gt;  &lt;p&gt;Here's a few ways to enable SSL. The first is &lt;strong&gt;new &lt;/strong&gt;in Visual Studio 2010 SP1 and will allow you to use SSL on local host over ports 44300 and higher. This means you'll be able to test and develop how your site will work over SSL, but not over port 443 proper. I'll show you that in the final step.&lt;/p&gt;  &lt;p&gt;If you watch the Mix video, you&amp;#39;ll see towards the end where Damian Edwards educates me on this new SSL feature in VS2010SP1. I didn&amp;#39;t know that VS2010SP1 (WebMatrix does also) installs some self-signed certificates and includes and option for turning on their use. However, as I pointed out in the video, that&amp;#39;s only for high &amp;quot;strange&amp;quot; ports like 44300+, so my more complex example still has value if you want standard port numbers.&lt;/p&gt;  &lt;h3&gt;The Easy Way - Local SSL with IIS Express and VS2010 or WebMatrix &lt;/h3&gt;  &lt;p&gt;If you have &lt;a href="http://www.microsoft.com/web/gallery/install.aspx?appid=VWDorVS2010SP1Pack"&gt;IIS Express and VS2010SP1&lt;/a&gt;, you can do this now and follow along. Make a new ASP.NET Site in Visual Studio. &lt;/p&gt;  &lt;p&gt;Right click on the Project in Solution and select &lt;strong&gt;Use IIS Express&lt;/strong&gt;. You can also set IIS Express as the default from the &lt;strong&gt;Tools | Options | Projects and Solutions | Web Projects&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/image_4.png"&gt;&lt;img style="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="The &amp;quot;Use IIS Express&amp;quot; option in Visual Studio" border="0" alt="The &amp;quot;Use IIS Express&amp;quot; option in Visual Studio" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/image_thumb_1.png" width="379" height="349"&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next, click Yes, and VS will &amp;quot;make a new site&amp;quot; on IIS Express. &lt;strong&gt;What does that mean?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;img style="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="Create a new IIS Web Site?" border="0" alt="Create a new IIS Web Site?" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/Microsoft%20Visual%20Studio%20(66)_3.png" width="520" height="215"&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Click yes and let's find out.&lt;/p&gt;  &lt;p&gt;Remember that IIS Express is really IIS. It&amp;#39;s just &amp;quot;local personal not-a-service&amp;quot; IIS. That means that IISExpress puts its config files in &lt;strong&gt;C:\Users\YOU\Documents\IISExpress\config &lt;/strong&gt;rather than in some machine-wide location.&lt;/p&gt;  &lt;p&gt;My project is called &amp;quot;MvcApplication18&amp;quot; so I can open up my ApplicationHost.config and look for &amp;quot;MvcApplication18.&amp;quot; You can too. There&amp;#39;s my site, right there, in IISExpress&amp;#39;s applicationHost.config:&lt;/p&gt;  &lt;pre&gt;&amp;lt;site name=&amp;quot;MvcApplication18&amp;quot; id=&amp;quot;39&amp;quot;&amp;gt;&lt;br&gt;    &amp;lt;application path=&amp;quot;/&amp;quot; applicationPool=&amp;quot;Clr4IntegratedAppPool&amp;quot;&amp;gt;&lt;br&gt;        &amp;lt;virtualDirectory path=&amp;quot;/&amp;quot; physicalPath=&amp;quot;c:\users\scottha\documents\visual studio 2010\Projects\MvcApplication18\MvcApplication18&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;/application&amp;gt;&lt;br&gt;    &amp;lt;bindings&amp;gt;&lt;br&gt;        &amp;lt;binding protocol=&amp;quot;http&amp;quot; bindingInformation=&amp;quot;*:15408:localhost&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;/bindings&amp;gt;&lt;br&gt;&amp;lt;/site&amp;gt;&lt;/pre&gt;

&lt;p&gt;Note the binding section. I can see that my site will show up on &lt;a href="http://localhost:15408"&gt;http://localhost:15408&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Go back to Visual Studio, click on your project and press F4 to bring up the properties dialog. You can also press Ctrl-W, then P, or select View | Property Window.&lt;/p&gt;

&lt;p&gt;Since I&amp;#39;m using IIS Express and I have VS2010 SP1 installed, I have a new option, &amp;quot;SSL Enabled.&amp;quot; If I click it, a new &amp;quot;SSL URL&amp;quot; shows up with a new port number chosen from that pool of ports I mentioned before.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/image_6.png"&gt;&lt;img style="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="Look at that! It&amp;#39;s an option for SSL Enabled = True. Crazy." border="0" alt="Look at that! It&amp;#39;s an option for SSL Enabled = True. Crazy." src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/image_thumb_2.png" width="264" height="502"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go back over to your ApplicationHost.config if you want to see what really happened.&lt;/p&gt;

&lt;pre&gt;&amp;lt;site name=&amp;quot;MvcApplication18&amp;quot; id=&amp;quot;39&amp;quot;&amp;gt;&lt;br&gt;&amp;lt;application path=&amp;quot;/&amp;quot; applicationPool=&amp;quot;Clr4IntegratedAppPool&amp;quot;&amp;gt;&lt;br&gt;    &amp;lt;virtualDirectory path=&amp;quot;/&amp;quot; physicalPath=&amp;quot;c:\users\scottha\documents\visual studio 2010\Projects\MvcApplication18\MvcApplication18&amp;quot; /&amp;gt;&lt;br&gt;&amp;lt;/application&amp;gt;&lt;br&gt;&amp;lt;bindings&amp;gt;&lt;br&gt;    &amp;lt;binding protocol=&amp;quot;http&amp;quot; bindingInformation=&amp;quot;*:15408:localhost&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;binding protocol=&amp;quot;https&amp;quot; bindingInformation=&amp;quot;*:44302:localhost&amp;quot; /&amp;gt;&lt;br&gt;&amp;lt;/bindings&amp;gt;&lt;/pre&gt;

&lt;p&gt;See that new binding? That was created for us when we clicked SSL Enabled = True. &lt;/p&gt;

&lt;p&gt;Run your site. Visit it with and without SSL. Don't forget the port number! You're now running under SSL locally, but you're reminded you are a bad person because this certificate is not trusted. Still, create an app, check a box and you've got local SSL. &lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/%20(67)_2.png"&gt;&lt;img style="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="You are a bad person, says IE9. You have an untrusted certificate." border="0" alt="You are a bad person, says IE9. You have an untrusted certificate." src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/%20(67)_thumb.png" width="550" height="327"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ok, how can we get this running in a slightly better way? I want:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;A friendly machine name, not localhost.&lt;/strong&gt; &lt;/li&gt;

  &lt;li&gt;&lt;strong&gt;People to be able to talk to my instance of IIS Express from the outside.&lt;/strong&gt; &lt;/li&gt;

  &lt;li&gt;&lt;strong&gt;Actual SSL over port 443.&lt;/strong&gt; &lt;/li&gt;

  &lt;li&gt;&lt;strong&gt;My ASP.NET application to switch between SSL and not automatically when I'm logging in.&lt;/strong&gt; &lt;/li&gt;

  &lt;li&gt;&lt;strong&gt;My self-signed certificate to be trusted so I don't get warnings.&lt;/strong&gt; &lt;/li&gt;

  &lt;li&gt;&lt;strong&gt;To use PowerShell at some point for no reason at all because that's bad-ass.&lt;/strong&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here we go.&lt;/p&gt;

&lt;h3&gt;The &lt;strike&gt;Hard&lt;/strike&gt; Ninja Way - Local SSL over 443 with IIS Express and the Gracious Manatee that is The Command Line&lt;/h3&gt;

&lt;p&gt;These steps may seem a little scary, but it's useful to know that they are happening (or have happened) already to make the Easy Way work for you. I'll show you how to do it yourself, then I'll show you an undocumented way to make &lt;em&gt;part &lt;/em&gt;of The Hard Way even easier. It's important to know what's happening though and why when you start running random commands from an Administrator Command Prompt, right?&lt;/p&gt;

&lt;h3&gt;1. Getting IIS Express to serve externally over Port 80&lt;/h3&gt;

&lt;p&gt;My machine is called HANSELMAN-W500, so I&amp;#39;ll use that name. You could update your hosts file and use a friendly name. To start, use your computer name. if you don&amp;#39;t know the name of your computer, you&amp;#39;re silly. Go to the command prompt and type &amp;quot;HOSTNAME&amp;quot; to find out.&lt;/p&gt;

&lt;p&gt;First, we need to tell HTTP.SYS at the kernel level that it&amp;#39;s OK to let everyone talk to this URL by making an &amp;quot;Url Reservation.&amp;quot; From an administrative command prompt:&lt;/p&gt;

&lt;pre&gt;netsh http add urlacl url=http://hanselman-w500:80/ user=everyone&lt;/pre&gt;

&lt;p&gt;Next, as I want to be able to talk to IIS Express from outside (folks on my network, etc. Not just localhost) then I need to allow IIS Express through the Windows Firewall. I can do that graphically from Windows, or type:&lt;/p&gt;

&lt;pre&gt;netsh firewall add portopening TCP 80 IISExpressWeb enable ALL&lt;/pre&gt;

&lt;p&gt;Finally, I need to make sure that my project will use Port 80. I can do that one of two ways. I can either edit the applicationHost.config manually and add the binding (my recommended way):&lt;/p&gt;

&lt;pre&gt;&amp;lt;site name=&amp;quot;MvcApplication18&amp;quot; id=&amp;quot;39&amp;quot;&amp;gt;&lt;br&gt;    &amp;lt;application path=&amp;quot;/&amp;quot; applicationPool=&amp;quot;Clr4IntegratedAppPool&amp;quot;&amp;gt;&lt;br&gt;        &amp;lt;virtualDirectory path=&amp;quot;/&amp;quot; physicalPath=&amp;quot;c:\users\scottha\documents\visual studio 2010\Projects\MvcApplication18\MvcApplication18&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;/application&amp;gt;&lt;br&gt;    &amp;lt;bindings&amp;gt;&lt;br&gt;        &amp;lt;binding protocol=&amp;quot;http&amp;quot; bindingInformation=&amp;quot;*:15408:localhost&amp;quot; /&amp;gt;&lt;br&gt;        &amp;lt;binding protocol=&amp;quot;https&amp;quot; bindingInformation=&amp;quot;*:44302:localhost&amp;quot; /&amp;gt;&lt;br&gt;        &amp;lt;binding protocol=&amp;quot;http&amp;quot; bindingInformation=&amp;quot;*:80:hanselman-w500&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;/bindings&amp;gt;&lt;br&gt;&amp;lt;/site&amp;gt;&lt;/pre&gt;

&lt;p&gt;Or, I can do that from the command line too! Although it's a little scary. I can confirm my changes in ApplicationHost.config though if I mess up.&lt;/p&gt;

&lt;pre&gt;&amp;quot;c:\Program Files (x86)\IIS Express\appcmd.exe&amp;quot; set site /site.name:MvcApplication18 /+bindings.[protocol=&amp;#39;http&amp;#39;,bindingInformation=&amp;#39;*:80:hanselman-w500&amp;#39;]&lt;/pre&gt;

&lt;p&gt;Notice that I'm using the appcmd.exe that came with IIS Express. I don't want to mess up my actual IIS installation if I have one.&lt;/p&gt;

&lt;h3&gt;2. Making an SSL Cert, hooking it up to IIS Express and making it Trusted&lt;/h3&gt;

&lt;p&gt;Let's make a SSL certificate of our own. Note the CN=. I'm making it my Computer Name, but you could make it nerddinner.com or whatever makes you happy. It should line up with whatever name you've been using so far.&lt;/p&gt;

&lt;pre&gt;makecert -r -pe -n &amp;quot;CN=HANSELMAN-W500&amp;quot; -b 01/01/2000 -e 01/01/2036 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localMachine -sky exchange -sp &amp;quot;Microsoft RSA SChannel Cryptographic Provider&amp;quot; -sy 12&lt;/pre&gt;

&lt;p&gt;Now, a tricky part. Go find this certificate in the Certificate Manager. Run MMC.exe, go File | Add/Remove Snap In, then select Certificates. Pick the Computer Account. (This is why you can't just run certmgr.msc) and add it.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/image_8.png"&gt;&lt;img style="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="Adding a Computer Cert" border="0" alt="Adding a Computer Cert" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/image_thumb_3.png" width="550" height="282"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It'll likely be the certificate with an expiration data of 1/1/2036 under Personal Certificates. Double click on your certificate. Go to Details, and scroll down to Thumbprint. Copy that into the clipboard, as that identifies our new certificate. &lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/Console1%20-%20%5BConsole%20Root_Certificates%20(Local%20Computer)_Personal_Certificates%5D%20(68)_2.png"&gt;&lt;img style="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="Console1 - [Console Root_Certificates (Local Computer)_Personal_Certificates] (68)" border="0" alt="Console1 - [Console Root_Certificates (Local Computer)_Personal_Certificates] (68)" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/Console1%20-%20%5BConsole%20Root_Certificates%20(Local%20Computer)_Personal_Certificates%5D%20(68)_thumb.png" width="523" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Remove all the spaces from that Thumbprint hash. You can remove those spaces with Notepad if you're Phil Haack, or in PowerShell if you're awesome:&lt;/p&gt;

&lt;pre&gt;C:\&amp;gt;&amp;quot;41 d8 50 95 11 0e 1d f6 8c 89 84 97 55 25 a8 60 59 35 23 0a&amp;quot; -replace &amp;quot; &amp;quot;&lt;br&gt;41d85095110e1df68c8984975525a8605935230a&lt;/pre&gt;

&lt;p&gt;Take the hash and plug it in to the end of THIS command:&lt;/p&gt;

&lt;pre&gt;netsh http add sslcert ipport=0.0.0.0:443 appid={214124cd-d05b-4309-9af9-9caa44b2b74a} certhash=YOURCERTHASHHERE&lt;/pre&gt;

&lt;p&gt;The AppId doesn't really matter, its just a GUID. This tells HTTP.SYS that we're using that certificate. Leave the Certificate Manager MMC running.&lt;/p&gt;

&lt;p&gt;Now, tell HTTP.SYS that we're cool with port 443 also (we told it that 80 was cool a minute ago, remember?):&lt;/p&gt;

&lt;pre&gt;netsh http add urlacl url=https://hanselman-w500:443/ user=Everyone&lt;/pre&gt;

&lt;p&gt;Return to your applicationHost.config and add the 443 binding for your site:&lt;/p&gt;

&lt;pre&gt;&amp;lt;site name=&amp;quot;MvcApplication18&amp;quot; id=&amp;quot;39&amp;quot;&amp;gt;&lt;br&gt;  &amp;lt;application path=&amp;quot;/&amp;quot; applicationPool=&amp;quot;Clr4IntegratedAppPool&amp;quot;&amp;gt;&lt;br&gt;     &amp;lt;virtualDirectory path=&amp;quot;/&amp;quot; physicalPath=&amp;quot;c:\users\scottha\documents\visual studio 2010\Projects\MvcApplication18\MvcApplication18&amp;quot; /&amp;gt;&lt;br&gt;  &amp;lt;/application&amp;gt;&lt;br&gt;  &amp;lt;bindings&amp;gt;&lt;br&gt;    &amp;lt;binding protocol=&amp;quot;http&amp;quot; bindingInformation=&amp;quot;*:15408:localhost&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;binding protocol=&amp;quot;https&amp;quot; bindingInformation=&amp;quot;*:44302:localhost&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;binding protocol=&amp;quot;http&amp;quot; bindingInformation=&amp;quot;*:80:hanselman-w500&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;binding protocol=&amp;quot;https&amp;quot; bindingInformation=&amp;quot;*:443:hanselman-w500&amp;quot; /&amp;gt;&lt;br&gt;  &amp;lt;/bindings&amp;gt;&lt;br&gt;&amp;lt;/site&amp;gt;&lt;/pre&gt;

&lt;p&gt;If I say &amp;quot;Show All Sites&amp;quot; from the IIS Express tray icon, I&amp;#39;ll see my site(s) and the URLs they are bound to.&lt;/p&gt;

&lt;p&gt;&lt;img style="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="IIS Express (73)" border="0" alt="IIS Express (73)" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/IIS%20Express%20(73)_3.png" width="493" height="421"&gt;&lt;/p&gt;

&lt;p&gt;Now I can visit &lt;a href="https://hanselman-w500"&gt;https://hanselman-w500&lt;/a&gt;, but again I get a certificate error.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/Certificate%20Error_%20Navigation%20Blocked%20-%20Windows%20Internet%20Explorer%20(69)_2.png"&gt;&lt;img style="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://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/Certificate%20Error_%20Navigation%20Blocked%20-%20Windows%20Internet%20Explorer%20(69)_thumb.png" width="550" height="327"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go back to the CertMgr MMC, and drag your self-signed SSL Certificate from Personal into Trusted Root Certificates.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/Console1%20-%20%5BConsole%20Root_Certificates%20(Local%20Computer)_Personal_Certificates%5D%20(70)_2.png"&gt;&lt;img style="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="Move my cert into trusted certs" border="0" alt="Move my cert into trusted certs" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/Console1%20-%20%5BConsole%20Root_Certificates%20(Local%20Computer)_Personal_Certificates%5D%20(70)_thumb.png" width="523" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Suddenly my local SSD site is legit! Very cool.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/%20(72)_2.png"&gt;&lt;img style="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="No more certificate error" border="0" alt="No more certificate error" src="http://www.hanselman.com/blog/content/binary/Windows-Live-Writer/Working-with-SSL-at-Development-Time-is-_C732/%20(72)_thumb.png" width="550" height="327"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;3. Getting ASP.NET to force SSL with an URL Rewrite Rule&lt;/h3&gt;

&lt;p&gt;One of the things Cassini (Visual Studio Web Developer Server) can't do is UrlRewriting. I want my app to force SSL when I hit /account/logon or /account/register. I'll add this to the first node of system.webServer in my app's web.config:&lt;/p&gt;

&lt;pre&gt;&amp;lt;rewrite&amp;gt;&lt;br&gt;  &amp;lt;rules&amp;gt;&lt;br&gt;    &amp;lt;rule name=&amp;quot;Redirect to HTTPS&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br&gt;      &amp;lt;match url=&amp;quot;^account/logon$|^account/register$&amp;quot; /&amp;gt;&lt;br&gt;      &amp;lt;conditions&amp;gt;&lt;br&gt;        &amp;lt;add input=&amp;quot;{HTTPS}&amp;quot; pattern=&amp;quot;^OFF$&amp;quot; /&amp;gt;&lt;br&gt;      &amp;lt;/conditions&amp;gt;&lt;br&gt;      &amp;lt;action type=&amp;quot;Redirect&amp;quot; url=&amp;quot;https://{HTTP_HOST}/{R:0}&amp;quot; redirectType=&amp;quot;Permanent&amp;quot; /&amp;gt;&lt;br&gt;    &amp;lt;/rule&amp;gt;&lt;br&gt;  &amp;lt;/rules&amp;gt;&lt;br&gt;&amp;lt;/rewrite&amp;gt;&lt;/pre&gt;

&lt;p&gt;I could also use the RequireHttps attribute on my controllers if I like.&lt;/p&gt;

&lt;h3&gt;Appendix Z: A totally undocumented way to make part of this easier that you use at your own risk&lt;/h3&gt;

&lt;p&gt;There's a command line helper deep inside of the IIS Express directory that I never mentioned to you. We never spoke! I don't know you. Who is this? Stop calling! ;)&lt;/p&gt;

&lt;pre&gt;C:\Program Files (x86)\IIS Express&amp;gt;IisExpressAdminCmd.exe&lt;br&gt;Usage: iisexpressadmincmd.exe &amp;lt;command&amp;gt; &amp;lt;parameters&amp;gt;&lt;br&gt;Supported commands:&lt;br&gt;      setupFriendlyHostnameUrl -url:&amp;lt;url&amp;gt;&lt;br&gt;      deleteFriendlyHostnameUrl -url:&amp;lt;url&amp;gt;&lt;br&gt;      setupUrl -url:&amp;lt;url&amp;gt;&lt;br&gt;      deleteUrl -url:&amp;lt;url&amp;gt;&lt;br&gt;      setupSslUrl -url:&amp;lt;url&amp;gt; -CertHash:&amp;lt;value&amp;gt;&lt;br&gt;      setupSslUrl -url:&amp;lt;url&amp;gt; -UseSelfSigned&lt;br&gt;      deleteSslUrl -url:&amp;lt;url&amp;gt;&lt;br&gt;&lt;br&gt;Examples:&lt;br&gt;1) Configure &amp;quot;http.sys&amp;quot; and &amp;quot;hosts&amp;quot; file for friendly hostname &amp;quot;contoso&amp;quot;:&lt;br&gt;iisexpressadmincmd setupFriendlyHostnameUrl -url:http://contoso:80/&lt;br&gt;2) Remove &amp;quot;http.sys&amp;quot; configuration and &amp;quot;hosts&amp;quot; file entry for the friendly &lt;br&gt;hostname &amp;quot;contoso&amp;quot;:&lt;br&gt;iisexpressadmincmd deleteFriendlyHostnameUrl -url:http://contoso:80/&lt;/pre&gt;

&lt;p&gt;From the command line with this utility, I can quickly setup my hosts file and my HTTP.SYS Url ACLs with one command:&lt;/p&gt;

&lt;pre&gt;C:\Program Files (x86)\IIS Express&amp;gt;IisExpressAdminCmd.exe setupFriendlyHostnameU&lt;br&gt;rl -url:http://daddyisawesome:80/&lt;br&gt;Command 'setupFriendlyHostnameUrl' completed.&lt;/pre&gt;

&lt;p&gt;And remove them:&lt;/p&gt;

&lt;pre&gt;C:\Program Files (x86)\IIS Express&amp;gt;IisExpressAdminCmd.exe deleteFriendlyHostname&lt;br&gt;Url -url:http://daddyisawesome:80/&lt;br&gt;Command 'deleteFriendlyHostnameUrl' completed.&lt;/pre&gt;

&lt;p&gt;At this point you just need to update the IISExpress applicationHost.config with the correct binding. You can also use IISExpressAdminCmd setupSslUrl with SSL ports that are already reserved. However, I really think The Hard Way is best because you can really see what's going on, and you have more control.&lt;/p&gt;

&lt;h3&gt;Make It Stop!&lt;/h3&gt;

&lt;p&gt;How do I undo it all? Delete the Certificate in CertMgr, and from an Administration Console:&lt;/p&gt;

&lt;pre&gt;netsh http delete sslcert ipport=0.0.0.0:443&lt;br&gt;netsh http delete urlacl url=http://hanselman-w500:80/&lt;br&gt;netsh http delete urlacl url=https://hanselman-w500:443/&lt;/pre&gt;

&lt;p&gt;If you have existing SSLCerts registered with HTTP.sys, the adjust these commands.&lt;/p&gt;

&lt;p&gt;Enjoy! Thanks to CarlosAG for his help with this post.&lt;/p&gt;&lt;br&gt;&lt;hr&gt;© 2011 Scott Hanselman. All rights reserved. &lt;br&gt;&lt;/div&gt;&lt;p&gt;&lt;iframe src="http://feedads.g.doubleclick.net/~ah/f/abrdk7uet7v0ksr8p75hfrs71g/300/250?ca=1&amp;amp;fh=280#http%3A%2F%2Fwww.hanselman.com%2Fblog%2FWorkingWithSSLAtDevelopmentTimeIsEasierWithIISExpress.aspx" width="100%" height="280" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=Py1vXAsk0Fk:S7FuU5YycHg:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=Py1vXAsk0Fk:S7FuU5YycHg:D7DqB2pKExk" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=Py1vXAsk0Fk:S7FuU5YycHg:MjquXQBfoPI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=MjquXQBfoPI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=Py1vXAsk0Fk:S7FuU5YycHg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=Py1vXAsk0Fk:S7FuU5YycHg:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=Py1vXAsk0Fk:S7FuU5YycHg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?i=Py1vXAsk0Fk:S7FuU5YycHg:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=Py1vXAsk0Fk:S7FuU5YycHg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=Py1vXAsk0Fk:S7FuU5YycHg:5M_9TJJRyfI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=5M_9TJJRyfI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottHanselman?a=Py1vXAsk0Fk:S7FuU5YycHg:YKYwmLGm_co"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottHanselman?d=YKYwmLGm_co" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottHanselman/~4/Py1vXAsk0Fk" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xC-ZEOvmU8MCeWgnD1YOgUOrh5Y/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xC-ZEOvmU8MCeWgnD1YOgUOrh5Y/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xC-ZEOvmU8MCeWgnD1YOgUOrh5Y/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xC-ZEOvmU8MCeWgnD1YOgUOrh5Y/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=89HgEmgxsWk:h5yfAwgPwD4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/89HgEmgxsWk" height="1" width="1"/&gt;</content><feedburner:origLink>http://feedproxy.google.com/~r/ScottHanselman/~3/Py1vXAsk0Fk/WorkingWithSSLAtDevelopmentTimeIsEasierWithIISExpress.aspx</feedburner:origLink></entry></feed>

