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

<channel>
	<title>Monitoring Dalager &#187; .NET</title>
	<atom:link href="http://dalager.com/blog/category/net/feed/" rel="self" type="application/rss+xml" />
	<link>http://dalager.com/blog</link>
	<description>Personlig weblog for Christian Dalager (f.1973)</description>
	<lastBuildDate>Fri, 18 Jun 2010 07:34:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>AppFabric m Velocity distribueret cache</title>
		<link>http://dalager.com/blog/2010/01/25/appfabric-m-velocity-distribueret-cache/</link>
		<comments>http://dalager.com/blog/2010/01/25/appfabric-m-velocity-distribueret-cache/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 12:36:52 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/?p=1371</guid>
		<description><![CDATA[På et site som Arena365, som jeg bruger en del tid på, er der så mange små datachunks hist og pist at caching er en nødvendighed.
I starten er det fint nok at bruge den indbyggede HttpRunTime.Cache der gemmer data i applikationens IIS process, men hvis man har brug for at skalere ud til flere webservere [...]]]></description>
			<content:encoded><![CDATA[<p>På et site som <a href="http://arena365.com">Arena365</a>, som jeg bruger en del tid på, er der så mange små datachunks hist og pist at caching er en nødvendighed.</p>
<p>I starten er det fint nok at bruge den indbyggede HttpRunTime.Cache der gemmer data i applikationens IIS process, men hvis man har brug for at skalere ud til flere webservere kan være en fordel at have en central cache.</p>
<p>Velocity er microsofts bud på en distribueret cache. Andre kendte alternativer er kommercielle <a href="http://www.alachisoft.com/ncache/">NCache</a> eller open source varianten  <a href="http://memcached.org/">Memcached</a>.</p>
<p>Velocity er en del af det som bliver markedsført som <a href="http://msdn.microsoft.com/en-us/windowsserver/ee695849.aspx">Windows Server AppFabric</a>, og det er endnu et codename, som iflg ScottGU bliver erstattet af noget lidt mere enterprise-venligt senere. Windows Server AppFabric skal forstås som et samling af services som ligger ovenpå IIS&#8217;en og der findes også en <a href="http://msdn.microsoft.com/en-us/azure/netservices.aspx">AppFabric variant på Azure</a>, som tilbyder nogle andre lidt mere mesh-agtige services.</p>
<p>Nå, men det er altså den distribuerede cache jeg kigger på her.</p>
<p>Hvis du ikke gider læse mere, skal du se denne session fra PDC09: <a href="http://microsoftpdc.com/Sessions/FT26">Scaling Your Data Tier with Windows Server AppFabric</a></p>
<h2>Anvendelsesmuligheder</h2>
<p>Velocity kan med en enkelt linje i web.config plugges ind som session store. Og når session storage er afkoblet fra webserver processen åbner det op for nogle interessante muligheder ift skalering. Det er ikke meget anderledes end at bruge den gode gamle Session State Service, vi nok allesammen har haft fingrene i.</p>
<p>Man kan i øjeblikket ikke på samme måde lave en one-liner replacement af den almindelige HttpRuntime.Cache, så hvis den skal skiftes ud, er det lettest, hvis man i forvejen har pakket den funktionalitet ind. </p>
<p>I mit tilfælde havde vi i forvejen pakket den ind i en WebCache klasse, der implementerer et ICache interface med et passende antal metoder, så jeg lavede blot endnu en ICache implementation, VelocityCache, på 15 minutter og var i luften med det samme.</p>
<p>Output Cache kan ikke skiftes ud i øjeblikket, men bliver i Visual Studio 2010/ .Net 4 skrevet om til en Output Cache Provider, som Velocity vil kunne hooke ind i på samme måde som Session Store Provideren.</p>
<p>Vi bruger NHibernate på Arena365 og NHibernates 2nd level cache er pluggable med en mindre hær af forskellige cache providers, herunder også en til Velocity. Som jeg i skrivende stund ikke har afprøvet endnu, men mine erfaringer vil snart erstatte denne sætning.</p>
<p>Det kan være en enorm fordel på en udviklermaskine at have en cache-provider, der overlever builds og IIS restarts, og det kan over tid spare en for en del fingertrommen.</p>
<h2>Installation/Opsætning</h2>
<p>Denne post beskriver opsætningen af betaudgaven af Microsoft Distributed Cache, aka Velocity, som er en del af Microsoft AppFabric. (få den <a href="http://msdn.microsoft.com/en-us/windowsserver/ee695849.aspx">her</a>)</p>
<p>Jeg oplevede et enkelt problem under installationen:</p>
<p><strong>Problem 1</strong>: &#8220;Failed to apply Distributed Cache Configuration &#8221;<br />
<strong>Løsning 1</strong>: Opret en tom database i sqlserver og sørg for at brugeren NT Authority\System er db_owner. Når du vælger at lægge konfigurationen i sql server under installationen, så tryk på &#8220;edit&#8221; og vælg derefter den tomme database.</p>
<p>Administrationen af Velocity gøres gennem en powershell console, så den starter man op (genvej i programs menuen)</p>
<p>Brug dette <a href="http://weblogs.asp.net/rchartier/archive/2009/05/23/velocity-powershell-quick-reference-ctp3.aspx">cheat sheet</a>. Det dækker en CTP3-releasen, men virker også til Beta-versionen. Du kan også få hjælp indefra PowerShell med denne kommando:</p>
<p><code>PS>Get-CacheHelp</code></p>
<p>Nå, men start Velocity:</p>
<p><code>PS> Start-CacheCluster</code></p>
<p>Derefter kan du verificere at der er hul igennem med<br />
<code>PS> Get-Cache</code><br />
- denne returnerer en enkelt række, cachen &#8220;default&#8221;</p>
<p>Og få en liste over cache hosts i dit cluster med<br />
<code>PS> Get-CacheHost</code></p>
<p>Så, nu er Velocity oppe at køre,  vores cache server er i luften.<br />
Det var første halvdel. </p>
<p>Når der er puttet items i din cache, kan du trække stats fra din &#8220;default&#8221; cache sådan her:</p>
<p>PS> Get-CacheStatistics default</p>
<h2>Cache klienten</h2>
<p>Start evt. med at downloade <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=2d5b4f72-e6a0-4991-b0c7-605ff5196149&#038;displaylang=en">kode-samples</a>.</p>
<p>Den nemmeste måde at konfigurere sin cache client på i et ASP.NET website (webforms eller MVC) er at smide et par linjer i sin web.config:</p>
<p><code>  &lt;!-- Velocity Cache Configuration --&gt;<br />
<br />    &lt;section name=&quot;dataCacheClient&quot; type=&quot;Microsoft.Data.Caching.DataCacheClientSection, CacheBaseLibrary&quot; allowLocation=&quot;true&quot; allowDefinition=&quot;Everywhere&quot;/&gt;</p>
<p>  &lt;datacacheclient deployment=&quot;simple&quot; timeout=&quot;150000&quot;&gt;<br />
<br />    &lt;localcache isEnabled=&quot;true&quot; sync=&quot;TTLBased&quot; ttlValue=&quot;300&quot;  /&gt;<br />
<br />    &lt;hosts&gt;<br />
<br />      &lt;host name=&quot;localhost&quot; cachePort=&quot;22233&quot; cacheHostName=&quot;DistributedCacheService&quot;/&gt;<br />
<br />    &lt;/hosts&gt;<br />
<br />  &lt;/datacacheclient&gt;<br />
</code></p>
<p>Nu kan du inde i din cache klasse initialisere cachen med<br />
<code><br />
  var cacheFac = new DataCacheFactory();<br />
  var cache = cacheFac.GetCache("default");<br />
  cache.CreateRegion("myregion", true);<br />
</code></p>
<h2>Udfordringer</h2>
<p>Et par ting jeg er stødt på.</p>
<p>Indtil videre understøtter Velocity ikke sliding expiration på cache items. Det skyldes at man ved hver cache access vil være nødt til at updatere timeouten på samme item i hele clusteret. Og det er ikke just definitionen af high performance. Det kan lade sig gøre at updatere timeout, men det er ret tydeligt for udvikleren, at det ikke er en gratis operation.</p>
<p>Cache Servicen kan ikke overleve sleep og hibernate på min windows 7 laptop. Det er lidt irriterende at man ikke bare kan have den kørende uden at skulle nurse den flere gange dagligt.</p>
<h2>Links</h2>
<p><a href="http://msdn.microsoft.com/en-us/windowsserver/ee695849.aspx">AppFabric</a></p>
<p><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=2d5b4f72-e6a0-4991-b0c7-605ff5196149&#038;displaylang=en">Windows Server AppFabric Beta 1 Samples</a></p>
<p><a href="http://weblogs.asp.net/rchartier/archive/2009/05/23/velocity-powershell-quick-reference-ctp3.aspx">PowerShell cheat sheet til CTP3</a></p>
<p>Session fra PDC09: <a href="http://microsoftpdc.com/Sessions/FT26">Scaling Your Data Tier with Windows Server AppFabric</a></p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2010/01/25/appfabric-m-velocity-distribueret-cache/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Podcastet om Arena365 tech</title>
		<link>http://dalager.com/blog/2009/10/14/podcastet-om-arena365-tech/</link>
		<comments>http://dalager.com/blog/2009/10/14/podcastet-om-arena365-tech/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 07:24:18 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/?p=1364</guid>
		<description><![CDATA[For et par uger siden blev jeg interviewet af Daniel Mellgaard Frost, Developer Evangelist hos Microsoft, om de mere tekniske aspekter ved Arena365.com.
Jeg har ikke den store erfaring med at blive interviewet, og min øh-koefficient er noget højere end jeg bryder mig om. Og så kan jeg konstatere at &#8220;Man kan sige at&#8221; for mig [...]]]></description>
			<content:encoded><![CDATA[<p>For et par uger siden blev jeg interviewet af <a href="http://www.danielfrost.dk/">Daniel Mellgaard Frost</a>, Developer Evangelist hos Microsoft, om de mere tekniske aspekter ved <a href="http://arena365.com/">Arena365.com</a>.</p>
<p>Jeg har ikke den store erfaring med at blive interviewet, og min øh-koefficient er noget højere end jeg bryder mig om. Og så kan jeg konstatere at &#8220;Man kan sige at&#8221; for mig er en fast vending når jeg prøver at forklare noget teknisk.</p>
<p>Vi taler om arkitekturen -<a href="http://www.asp.net/mvc/"> Asp.Net MVC</a> + <a href="http://nhforge.org/">NHibernate</a>, valideringsframeworket <a href="http://xval.codeplex.com/">xVal</a>, valg af <a href="http://jquery.com/">jQuery</a> fremfor MS AjaxHelpers og meget andet, herunder udvikling af sportsligt talent og min mangel på samme.</p>
<p>Der er en enkelt passage hvor jeg forsøger at overtage <a href="http://kodehoved.dk/">Brian Rasmussens</a> <a href="http://stackoverflow.com/users/38206/brian-rasmussen">StackOVerflow identitet</a> i en bisætning. Det var den digitale vaneforbryder, der viste sit ækle ansigt. Undskyld Brian. Men du har bare så meget EXP og jeg har kun <a href="http://stackoverflow.com/users/11239/christian-dalager">509</a>&#8230;</p>
<p>Stilen er let omend teknisk, lydkvaliteten er lidt ussel og du kan finde det hele her: </p>
<p><a href="http://www.danielfrost.dk/post/Frostse28099-Podcast-Show-2-e28093-Arena365com-med-Christian-Dalager.aspx">Frosts’ Podcast Show #2 – Arena365.com med Christian Dalager</a></p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2009/10/14/podcastet-om-arena365-tech/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Opgraderet til Windows 7 x64</title>
		<link>http://dalager.com/blog/2009/08/15/opgraderet-til-windows-7-x64/</link>
		<comments>http://dalager.com/blog/2009/08/15/opgraderet-til-windows-7-x64/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 10:47:52 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Teknologi]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/?p=1320</guid>
		<description><![CDATA[Jeg brugte det meste af fredag aften på at installere Windows 7 på min arbejdsmaskine mens jeg så lidt slamtv henover (cowboy jack anyone?).
Da jeg har en deadline, der hastigt nærmer mig, og da min nuværende installation er under et år gammel, tog jeg chancen og gik efter en opgradering i stedet for en ren [...]]]></description>
			<content:encoded><![CDATA[<p>Jeg brugte det meste af fredag aften på at installere <a href="http://www.microsoft.com/windows/windows-7/">Windows 7</a> på min arbejdsmaskine mens jeg så lidt slamtv henover (cowboy jack anyone?).</p>
<p>Da jeg har en deadline, der hastigt nærmer mig, og da min nuværende installation er under et år gammel, tog jeg chancen og gik efter en opgradering i stedet for en ren installation, der alt andet lige tager en rum tid.</p>
<p>Bortset fra at jeg skulle afinstallere Sql Server 2008 først, så gik opgraderingen strålende, selvom jeg var lidt bekymret for hvad der ville ske med mit .NET udviklingsmiljø og alle de øvrige programmer og indstillinger som gør at jeg kan arbejde nogenlunde effektivt.</p>
<p>Alt spiller tilsyneladende, og jeg skal ikke bruge de næste 3 uger på at installere glemte småprogrammer og skrue på environment variable.</p>
<p>Et par noter:</p>
<ol>
<li>Sql Server 2008 skal have en SP1 for at køre</li>
<li>Man skal lige vænne sig til docken, tror jeg. Men den virker nice</li>
<li>Der er blevet brugt en del energi på at forbedre app-switching og window layout, lidt inspireret af OS X, men faktisk lidt federe ikke mindst fordi der er 100% tastatursupport</li>
<li>hvis man trykker på windowstasten og begynder at skrive, så har man faktisk en velfungerende app-launcher, der også kan gætte mappenavne. </li>
</ol>
<p>Resten opdager jeg nok hen ad vejen.</p>
<p>PS: Jeg tog en fuld backup af mit system inden. Og det skal du også gøre, hvis du ikke vil risikere at blive fanget i det Swedenborgske rum.</p>
<p>PPS: jeg prøvede at lave en ironisk-sjaw <a href="http://twitter.com/dalager/status/3312120230">tweet</a> i aftes om at Win7 er overmeget federe end os x. (inspireret af et <a href="http://twitter.com/jonathancoulton/status/3310873081">joco tweet</a>)Tror ikke ironien kom igennem. Nåmenaltså: Win7 er et udmærket operativsystem. OS X er også et udmærket operativsystem. Jeg arbejder på begge to og er ikke religiøs, men var jeg ikke .net udvikler, ville jeg stensikkert køre fulltime OS X.</p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2009/08/15/opgraderet-til-windows-7-x64/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Community Day 09</title>
		<link>http://dalager.com/blog/2009/04/04/community-day-09/</link>
		<comments>http://dalager.com/blog/2009/04/04/community-day-09/#comments</comments>
		<pubDate>Sat, 04 Apr 2009 06:57:57 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/?p=1265</guid>
		<description><![CDATA[D. 28. maj er der Community Day 09, et gratis 9-22 arrangement for udviklere, arrangeret af eksperten.dk, udvikleren.dk og activedeveloper.dk.
Jeg har sagt ja til at holde et oplæg om min oplevelse af skiftet fra Rails til ASP.Net MVC.
Det bliver 2 x lynintro + sammenligning af teknik og &#8220;developer experience&#8221; og sådan.
Det er et blandet-teknologi-arrangement med [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://communityday.in/copenhagen/"><img src="http://dalager.com/blog/wp-content/uploads/2009/04/smallcd09.jpg" alt="CommunityDay09" title="CommunityDay09" width="146" height="67" class="alignright size-full wp-image-1267" /></a>D. 28. maj er der <a href="http://communityday.in/copenhagen">Community Day 09</a>, et gratis 9-22 arrangement for udviklere, arrangeret af <a href="http://www.eksperten.dk/">eksperten.dk</a>, <a href="http://www.udvikleren.dk/">udvikleren.dk</a> og <a href="http://activedeveloper.dk/">activedeveloper.dk</a>.</p>
<p>Jeg har sagt ja til at holde et oplæg om min oplevelse af skiftet fra Rails til ASP.Net MVC.<br />
Det bliver 2 x lynintro + sammenligning af teknik og &#8220;developer experience&#8221; og sådan.</p>
<p>Det er et blandet-teknologi-arrangement med bl.a. Android, Drupal, Silverlight, Ruby, LINQ og Flex/Air.</p>
<p>Så hvis du har lyst til at hænge lidt ud med andre folk med koderester på skåneærmerne, så tilmeld dig og så kan det være vi ses?</p>
<p><strong>Update, 5/4:</strong> Daniel har fixet tilmeldingsdimsen, så nu kan man registrere sig igen!</p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2009/04/04/community-day-09/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Anbefaling: ANUG podcasts med Umbraco-Niels</title>
		<link>http://dalager.com/blog/2009/03/22/anbefaling-anug-podcasts-med-umbraco-niels/</link>
		<comments>http://dalager.com/blog/2009/03/22/anbefaling-anug-podcasts-med-umbraco-niels/#comments</comments>
		<pubDate>Sun, 22 Mar 2009 10:27:25 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ANUG]]></category>
		<category><![CDATA[Umbraco]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/?p=1257</guid>
		<description><![CDATA[Har lige hørt et rigtigt fint interview med Niels Hartvig fra Umbraco (Et open source web Content Management System, eller CMS).
Den er lavet af ANUG&#8217;s Søren Spelling Lund som en del af ANUGs podcast (ANUG står for Århus .Net User Group, og er nok den mest velkørende .net user group i landet.)
De tre dele sætter [...]]]></description>
			<content:encoded><![CDATA[<p>Har lige hørt et rigtigt fint interview med <a href="http://hartvig.com/">Niels Hartvig</a> fra <a href="http://umbraco.org/">Umbraco</a> (Et open source web Content Management System, eller CMS).</p>
<p>Den er lavet af <a href="http://www.anug.dk/">ANUG</a>&#8217;s <a href="http://www.publicvoid.dk/">Søren Spelling Lund</a> som en del af ANUGs podcast (ANUG står for Århus .Net User Group, og er nok den mest velkørende .net user group i landet.)</p>
<p>De tre dele sætter fokus på historien om Umbraco (som er rigtig rigtig god), forretningen og produktet.</p>
<p>De tekniske forudsætninger for at lytte med er lave, da det mest er historien om tilblivelsen af et succesfuldt open source CMS, herunder organiseringen, de personlige faktorer og forretningsudvikling.</p>
<p>Find det her: <a href="http://www.anug.dk/post/2009/02/15/ANUGCast-21-Niels-Hartvig-om-Umbracos-oprindelse.aspx">Del 1</a>, <a href="http://www.anug.dk/post/2009/02/22/ANUGCast-22-Niels-Hartvig-om-Umbraco-forretningen.aspx">Del 2</a>, <a href="http://www.anug.dk/post/2009/03/01/ANUGCast-23-Niels-Hartvig-om-Umbraco-40-releasen.aspx">Del 3</a>. </p>
<p>Hvis man interesserer sig lidt for open source eller godt kunne tænke sig at finde ud af, hvordan i alverden man kan tjene penge på noget der er gratis, så er det et godt lyt.</p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2009/03/22/anbefaling-anug-podcasts-med-umbraco-niels/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Månedens what?</title>
		<link>http://dalager.com/blog/2009/03/17/manedens-what/</link>
		<comments>http://dalager.com/blog/2009/03/17/manedens-what/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 09:24:02 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/?p=1252</guid>
		<description><![CDATA[Er netop landet fra raaaar ferie i der-hvor-solen-næsten-altid-skinner (på en måde det modsatte af der-hvor-solen-aldrig-skinner, men ikke helt alligevel).
Har så fået et par tillykker fordi jeg er blevet månedens blogger i MSDNs danske news flash. Det er rettet mod det danske .Net udviklercommunity og jeg er vældig stolt omend en smule overrasket.
Problemet er nu at [...]]]></description>
			<content:encoded><![CDATA[<p>Er netop landet fra raaaar ferie i der-hvor-solen-næsten-altid-skinner (på en måde det modsatte af der-hvor-solen-aldrig-skinner, men ikke helt alligevel).</p>
<p>Har så fået et par tillykker fordi jeg er blevet <a href="http://www.msdncommunity.dk/udviklere/maanedensblogger">månedens blogger</a> i MSDNs danske news flash. Det er rettet mod det danske .Net udviklercommunity og jeg er vældig stolt omend en smule overrasket.</p>
<p>Problemet er nu at jeg ikke har været superskarp til at tech-blogge på det seneste, og selvom jeg har et par små nørdede indlæg i ærmet så har det aldrig været meningen at min blog skulle være en 100% tech zone &#8212; jeg vil jo nødigt gøre det helt ulæseligt for non-techies som trods alt stadig fylder mest i mit &#8220;publikum&#8221;, min &#8220;læserskare&#8221; eller bare dem der ikke lige orker at arbejde at se tv og derfor kigger forbi&#8230;</p>
<p>Nå, men jeg skal nok techblogge igen. Snart. Om en bog måske endda. Eller et oplæg jeg skal holde. Eller om den tabernar der har implementeret taxakøen i lufthavnen.</p>
<p>Enough with the cliff hangers!</p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2009/03/17/manedens-what/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>ASP.NET MVC + Castle Windsor + NHibernate</title>
		<link>http://dalager.com/blog/2008/11/04/aspnet-mvc-castle-windsor-nhibernate/</link>
		<comments>http://dalager.com/blog/2008/11/04/aspnet-mvc-castle-windsor-nhibernate/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 09:12:54 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Programmering]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/?p=1180</guid>
		<description><![CDATA[Jeg har i den sidste tid arbejdet på at etablere webprojekt, der benytter sig af en håndfuld interessante  teknologier, og vil i den forbindelse lige dele en håndfuld ressourcer, der har været nyttige for mig.
Grundlæggende går det ud på at lave en webarkitektur, som giver en høj grad af afkobling mellem komponenter, så man [...]]]></description>
			<content:encoded><![CDATA[<p>Jeg har i den sidste tid arbejdet på at etablere webprojekt, der benytter sig af en håndfuld interessante  teknologier, og vil i den forbindelse lige dele en håndfuld ressourcer, der har været nyttige for mig.</p>
<p>Grundlæggende går det ud på at lave en webarkitektur, som giver en høj grad af afkobling mellem komponenter, så man opnår øget testbarhed og mulighed for at konfigurere og komponere sit system på en lettere måde.</p>
<h3>ASP.NET MVC</h3>
<p><a href="http://www.asp.net/mvc/">MVC frameworket</a> er ude i beta og så ready-for-prime-time at man godt kan bygge rigtige ting med det (se f.eks. <a href="http://stackoverflow.com">stackoverflow.com</a>), og det giver fuld markup-kontrol og andre fordele for folk, der er lidt trætte af traditionelle webforms.</p>
<ul>
<li><a href="http://www.asp.net/mvc/">Asp.Net MVC</a></li>
<li>Scott Guthrie&#8217;s <a href="http://weblogs.asp.net/scottgu/archive/tags/MVC/default.aspx">blogindlæg tagget med mvc</a></li>
<li>Rob Conery&#8217;s <a href="http://blog.wekeroad.com/mvc-storefront/">MVC Storefront screen cast serie</a></li>
</ul>
<h3>Castle Windsor</h3>
<p><a href="http://www.castleproject.org/container/index.html">Windsor </a>er en <a href="http://en.wikipedia.org/wiki/Dependency_injection" title="Artikel på wikipedia">Dependency Injection</a> container fra <a href="http://www.castleproject.org/">Castle Project</a>. </p>
<p>DI er en teknik, der gør det let at vælge composition fremfor inheritance, når man designer objektorienteret. Nedarvning er godt til meget, men bliver nemt noget uoverskueligt rod, hvis man vælger at nedarve blot for at udvide funktionalitet &#8212; her er komposition tit et bedre valg. Og med en DI container bliver det meget lettere at designe og vedligeholde hvilke komponenter man udvider sin funktionalitet med.</p>
<ul>
<li><a href="http://www.castleproject.org/index.html">Castle Project</a></li>
<li><a href="http://www.castleproject.org/container/index.html">Windsor</a></li>
<li><a href="http://www.castleproject.org/container/documentation/index.html">Dokumentation</a></li>
</ul>
<h3>NHibernate</h3>
<p><a href="http://www.nhibernate.org/">NHibernate </a>er en <a href="http://en.wikipedia.org/wiki/Object-relational_mapping" title="Artikel på wikipedia">Object/Relational Mapper</a> (ORM), og en .Net port fra javamoderen Hibernate. NHibernate er som Castle Windsor open source og en meget udbredt ORM. </p>
<p>NHibernates nærmeste Microsoft-konkurrent er nok <a href="http://msdn.microsoft.com/en-us/library/bb399572.aspx">MS Entity Framework</a> (EF), men EF vurderes af mange til ikke at være modent nok til at kaste sig over før den næste version og andre igen mener at man helt skal holde sig væk. NHibernate kan ikke sammenlignes med Linq2Sql, som har et helt andet og reduceret featureset.</p>
<ul>
<li><a href="http://www.hibernate.org/343.html">NHibernate.org</a></li>
<li><a href="http://nhforge.org/">NHibernate Forge</a> &#8211; community site med interessante NHibernate-relaterede projekter</li>
<li><a href="http://www.summerofnhibernate.com/">Summer of NHibernate</a> &#8212; screencast serie og gode links. Version 1.2, dog.</li>
<li>Oren Eini er meget aktiv comitter og blogger på <a href="http://ayende.com/Blog/">ayende.com</a></li>
<li><a href="http://groups.google.com/group/nhusers">NHUsers @ google groups</a> &#8212; aktiv mailingliste som jeg skimmer i digest format</li>
<li><a href="http://jeffreypalermo.com/blog/use-this-nhibernate-wrapper-to-keep-your-repository-classes-simple/">Kig også på</a> Jeffrey Palermos teknik til at koble NHibernate ISession lifecycle med Http-requests</li>
</ul>
<h3>Outtro</h3>
<p>Det link, som jeg har fået mest ud af har jeg gemt til sidst. <a href="http://jeffreypalermo.com/blog/">Jeffrey Palermo</a>, der er ved at skrive en <a href="http://manning.com/palermo/">bog om Mvc-frameworket</a>, er tovholder på open source eksempelprojektet <a href="http://code.google.com/p/codecampserver/">CodeCampServer</a>. </p>
<p>Projektet benytter sig af Windsor, Mvc og NHibernate, det indeholder masser af unittests og er et rigtigt godt eksempel på at strukturere et webprojekt. </p>
<p>Happy hacking.</p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2008/11/04/aspnet-mvc-castle-windsor-nhibernate/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Vender ryggen til Rails</title>
		<link>http://dalager.com/blog/2008/09/03/vender-ryggen-til-rails/</link>
		<comments>http://dalager.com/blog/2008/09/03/vender-ryggen-til-rails/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 19:28:41 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Programmering]]></category>
		<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/?p=1135</guid>
		<description><![CDATA[Mens hele Rails-banden er på railsconf melder jeg pas.
I de seneste to-tre år har jeg lavet og leget en del Ruby on Rails &#8211; primært ved siden af min daglige .Net tjans, men også fra tid til anden noget på jobbet.
Tiden er kommet til at melde lidt pas til det hersens parallelløb og få lidt [...]]]></description>
			<content:encoded><![CDATA[<p>Mens hele <a href="http://copenhagenrb.dk/">Rails-banden</a> er på <a href="http://en.oreilly.com/railseurope2008/public/content/home">railsconf</a> melder jeg pas.</p>
<p>I de seneste to-tre år har jeg lavet og leget en del Ruby on Rails &#8211; primært ved siden af min daglige .Net tjans, men også fra tid til anden noget på jobbet.</p>
<p>Tiden er kommet til at melde lidt pas til det hersens parallelløb og få lidt fokus for en stund.</p>
<p>På .Net scenen sker der i øjeblikket en hel bunke interessante ting inden for web, som gør at det er der jeg vil opholde mig fremover: </p>
<p><a href="http://www.asp.net/mvc/">ASP.NET MVC </a> er på mange måder en Rails implementation i .Net der benytter sig af alt det .Net stads man kender i forvejen og er et tiltrængt alternativ til asp.net webforms som altid (synes jeg) har været en kamp-irriterende måde at lave web apps på.</p>
<p><a href="http://ironruby.net/">IronRuby</a> giver lidt sig selv &#8211; men det er en Ruby implementation oven på .Nets common language runtime (CLR), bygget på en ny runtime for dynamiske sprog (DLR). Spændende projekt, der dog ikke helt er i mål endnu.</p>
<p><a href="http://msdn.microsoft.com/en-us/data/bb931106.aspx">ADO Data Services</a> gør det superlet at eksponere data som REST (f.eks. xml eller json) </p>
<p><a href="http://silverlight.net/">Silverlight</a> er en teknologi, putter statiske og dynamiske .NET sprog direkte i browseren og udvider rækkevidden af ens .net code base &#8212; også uden for Internet Explorer. Var netop i dag til en cool tech talk hos microsoft i Hellerup, hvor et par fyre fra <a href="http://tenteo.dk/">Tenteo</a> viste kode frem.</p>
<p>Der er en helt ny generation af tekniske profiler hos Microsoft, der åbner kommunikation og produktudviklingen op mod deres omverden gennem open sourcing, blogs, podcasts og hvad har vi. <a href="http://www.hanselman.com">Scott Hanselmann</a>, <a href="http://haacked.com/">Phil Haack</a>, <a href="http://www.iunknown.com/">John Lam</a>  og <a href="http://blog.wekeroad.com/">Rob Conery</a> er nogle eksempler.</p>
<p><a href="http://altdotnet.org/">ALT.NET</a> er et .Net community udenfor microsoft, der også repræsenterer en ny generation af .Net udviklere &#8211; en gruppe som jeg i høj grad kan identificere mig med. Det er der hvor TDD og BDD og den slags bliver drøftet livligt.</p>
<p>At jeg holder en længere pause med Rails, betyder dog ikke at jeg er færdig med ruby, der helt klart er mit foretrukne day-to-day scripting sprog til småopgaver, automatiserede tests etc. Og det betyder heller ikke at jeg holder op med at følge med i Rails-land, da der indtil videre er kommet utroligt mange gode og banebrydende ideer derfra.</p>
<p>Nå. Så min <a href="http://www.vmware.com/products/fusion/">VMWare Fusion</a> kommer til at trække nogle flere cpu cykler gennem aftenerne fremover (meget meget nørdet og usjov joke, men jeg kan ikke nænne at slette noget, når jeg nu endelig får skrevet et blogindlæg, så du hænger på den, Birger).</p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2008/09/03/vender-ryggen-til-rails/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>MIX08 &#8211; Microsoft techkonference med fokus på www</title>
		<link>http://dalager.com/blog/2008/03/09/mix08-microsoft-techkonference-med-fokus-pa-www/</link>
		<comments>http://dalager.com/blog/2008/03/09/mix08-microsoft-techkonference-med-fokus-pa-www/#comments</comments>
		<pubDate>Sun, 09 Mar 2008 15:17:06 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/2008/03/09/mix08-microsoft-techkonference-med-fokus-pa-www/</guid>
		<description><![CDATA[Microsoft-konferencen MIX08 rullede af stablen i sidste uge og alle præsentationer er nu online. Hvilket faktisk gør den interessant for os der ikke var der på en måde, der rækker ud over misundelig murren.
MIX har primært fokus på webteknologi, og det er her Microsoft præsenterer fancysmancy lir til vores allesammen www.
De større nyheder eller product [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft-konferencen <a href="http://visitmix.com">MIX08</a> rullede af stablen i sidste uge og <a href="http://sessions.visitmix.com">alle præsentationer er nu online</a>. Hvilket faktisk gør den interessant for os der ikke var der på en måde, der rækker ud over misundelig murren.</p>
<p>MIX har primært fokus på webteknologi, og det er her Microsoft præsenterer fancysmancy lir til vores allesammen www.</p>
<p>De større nyheder eller product announcements findes i konferencens <a href="http://sessions.visitmix.com/?selectedSearch=KYN0801">keynote</a>, og indeholder</p>
<ul>
<li>Internet explorer 8 (langt bedre css-rendering, fixet javascript performance, kan emulere IE7, indeholder ret cool firebug klon) &#8211; <a href="http://www.microsoft.com/windows/products/winfamily/ie/ie8/getitnow.mspx">download beta</a>. Update: <a href="http://www.microsoft.com/windows/products/winfamily/ie/ie8/getitnow.mspx"></a><a href="http://ejohn.org/blog/javascript-in-internet-explorer-8/">sammendrag af nyheder i IE8 hos John Resig</a></li>
<li>Silverlight 2 (nu med ironruby, ironpython, jscript og nogle kontroller, desuden versioner til windows mobile og Nokia s60 og s40 series )</li>
<li>ASP.NET MVC (tænk Ruby on Rails ala .Net eller Monorail inhoused) &#8211; <a href="http://blogs.msdn.com/webdevtools/archive/2008/03/07/asp-net-mvc-framework-preview-2-mix-2008-resources.aspx">downloads her</a></li>
<li>En masse snak om forbedrede muligheder for at lave reklamer i silverlight, hvilket af en eller anden grund irriterer mig. Måske fordi Silverlight som teknologi er blændende til at lave rasende irriterende multimediereklamer med</li>
</ul>
<p>Ellers er der som sagt mange timers tech entertainment (for folk som f.eks. mig og muligvis også dig, hvis du har læst så langt som hertil&#8230;) på <a href="http://sessions.visitmix.com/">sessions.visitmix.com</a>.<br />
Blandt andet en god <a href="http://sessions.visitmix.com/?selectedSearch=T22">ASP.NET MVC præsentation</a> fra min .Net helt  <a href="http://www.hanselman.com/blog/">Scott Hanselman</a>, og <a href="http://sessions.visitmix.com/?selectedSearch=T28">en om dynamiske sprog i Silverlight</a> af <a href="http://www.iunknown.com/">John Lam</a>.</p>
<p>Jeg er i gang med nogle eksperimenter med MVC frameworket, som er den bedste webnyhed fra Microsoft i mange år &#8211; jeg har aldrig lært at elske ASP.NET webforms med deres viewstates, postbacks, hemmelige event hooks og control life cycles. Men det er  vist til en anden blogpost.</p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2008/03/09/mix08-microsoft-techkonference-med-fokus-pa-www/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Natn\rderi</title>
		<link>http://dalager.com/blog/2008/02/09/natnrderi/</link>
		<comments>http://dalager.com/blog/2008/02/09/natnrderi/#comments</comments>
		<pubDate>Sat, 09 Feb 2008 00:25:02 +0000</pubDate>
		<dc:creator>dalager</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Programmering]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://dalager.com/blog/2008/02/09/natnrderi/</guid>
		<description><![CDATA[Jeg burde være i byen, til koncert med Megadeth eller bare sove.
I stedet er jeg ved at blive sindssyg i mit forsøg på at bygge Mono på OS X &#8211; omtrent sådan her, men det spiller ikke rigtigt.
Målet er at eksperimentere med IronRuby under OS X, men jeg nærmer mig snart det punkt, hvor jeg [...]]]></description>
			<content:encoded><![CDATA[<p>Jeg burde være i byen, til koncert med Megadeth eller bare sove.</p>
<p>I stedet er jeg ved at blive sindssyg i mit forsøg på at bygge <a href="http://www.mono-project.com/Main_Page">Mono</a> på OS X &#8211; omtrent <a href="http://flanders.co.nz/blog/archive/2008/02/05/compiling-mono-and-ironruby-on-osx-leopard.aspx">sådan her</a>, men det spiller ikke rigtigt.</p>
<p>Målet er at eksperimentere med IronRuby under OS X, men jeg nærmer mig snart det punkt, hvor jeg hopper over smertegrænsen og bare laver mine eksperimenter under Windows XP gennem VMWare Fusion. Der må også være grænser for, hvor stædig man kan tillade sig at være.</p>
]]></content:encoded>
			<wfw:commentRss>http://dalager.com/blog/2008/02/09/natnrderi/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
