<?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>Communardo Techblog &#187; Softwareentwicklung</title>
	<atom:link href="http://www.communardo.de/home/techblog/category/softwareentwicklung/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.communardo.de/home/techblog</link>
	<description></description>
	<lastBuildDate>Fri, 30 Jul 2010 12:18:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Microsoft Web Camps (M&#252;nchen) – Tag 2</title>
		<link>http://www.communardo.de/home/techblog/2010/07/01/microsoft-web-camps-muenchen-tag-2/</link>
		<comments>http://www.communardo.de/home/techblog/2010/07/01/microsoft-web-camps-muenchen-tag-2/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 08:33:35 +0000</pubDate>
		<dc:creator>Torsten Hufsky</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[München]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[Webcamps]]></category>

		<guid isPermaLink="false">http://www.communardo.de/home/techblog/?p=3686</guid>
		<description><![CDATA[<img alt="thu" src="http://www.gravatar.com/avatar.php/8743398aa3c764388e375dd2cab2b092/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/thu/" title="Artikel von Torsten Hufsky">Torsten Hufsky</a><p>14 + x Tage ist das Microsoft Web Camp in M&#252;nchen zum Thema: ASP.NET MVC2  nun schon vorbei. Meine Eindr&#252;cke des ersten Tages hatte ich bereits im  letzten Blogbeitrag, <a href="http://www.communardo.de/home/techblog/2010/06/08/microsoft-web-camps-muenchen-tag-1/" target="_blank">&#8220;Microsoft  Web Camps (M&#252;nchen) &#8211; Tag 1&#8243;</a>, in Worte gefasst. F&#252;r all  diejenigen, die sich fragen wie so ein Workshop Tag abl&#228;uft, werde ich  versuchen den zweiten Tag nocheinmal Revue passieren zu lassen.</p>
<p>Nach  einem informativen ersten Tag sollte ein Workshop Tag folgen, an dem das Erlernte sofort in die Praxis umgesetzt werden konnte. Im Bericht &#252;ber Tag 1 habe ich bereits erw&#228;hnt, dass am Ende des ersten Tages Ideen gesammelt wurden welche am zweiten Tag in Projektteams bearbeitet werden sollten. Die Vielfalt an Projektideen war toll. Hier einige Vorschl&#228;ge:</p>
<ul>
<li>Schiffe versenken mit ASP.NET MVC und Entity Model ( der sp&#228;tere Sieger )</li>
<li>Ein Warenkorb f&#252;r Online Shops</li>
<li>Ein Geo Tagging Tool</li>
<li>Eine Hochzeitsw&#252;nscheverteilermaschine <img src='http://www.communardo.de/home/techblog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>Oder aber unser glorreiches Business Bingo (IOC, ASP.NET MVC, Unit Tests, Command Patterns)</li>
</ul>
<p><span id="more-3686"></span></p>
<p style="text-align: center"><a href="http://www.communardo.de/home/techblog/files/2010/06/pano.jpg"><img class="size-medium wp-image-3687 aligncenter" title="pano" src="http://www.communardo.de/home/techblog/files/2010/06/pano-300x88.jpg" alt="" width="460" height="134" /></a></p>
<p style="text-align: left">
<p style="text-align: center">
<p>Nach dem obligatorischen Kaffee am Morgen hie&#223; es, sich einem Team seiner Wahl anzuschlie&#223;en. Ich habe mich direkt Robert, Oliver, Ken und Tom und der Idee ein Business Bingo zu entwickeln angeschlossen. Die Idee der Veranstalter war, dass alle Teams direkt nach dem Teamzusammenschlu&#223; mit der Umsetzung ihrer Projekte beginnen. Die Realit&#228;t sah jedoch ein wenig anders aus.</p>
<p>Gest&#228;rkt von der Vision ihrer Beispielprojekte, mussten die Teams, inklusive unserem, zuerst einmal einen Weg finden wie &#252;berhaupt effektiv zusammen gearbeitet werden konnte. Nach kurzer Zeit fanden wir die L&#246;sung in Form eines Codeplex Projektes, welches anschlie&#223;end im Visual Studio von jedem Entwickler ausgecheckt werden konnte. An diesem Punkt wurden wir direkt mit dem n&#228;chstem gr&#246;&#223;eren Problem konfrontiert &#8211; Der Internetverbindung des Hotels. Da sich gef&#252;hlte 80 -100 Personen die WLAN Zelle im Konferenzraum teilten waren maximal gef&#252;hlte Fr&#252;hstadiums &#8211; Modem &#8211; Geschwindigkeiten m&#246;glich. Die L&#246;sung des Problems war relativ simpel und bestand darin den Raum zu verlassen. Also suchten wir die herrliche Hotel &#8211; Terrasse auf (siehe Bild &#8211; v.l. Robert, Tom, Ken &amp; Oliver).</p>
<p>Doch die Problemserie sollte nicht abrei&#223;en. Die Mehrzahl der vertretenen Notebook Akkus n&#228;herten sich der Ersch&#246;pfungsgrenze. Also begab sich Oliver auf die Reise den Hoteltechniker ausfindig zu machen, um die Steckdosen zu akivieren. Der Moment war unbeschreiblich als wir herausfanden, dass wir die ganze Zeit unsere Notebooks nur an Dummy Steckdosen betrieben.</p>
<p>Nach gef&#252;hlten 3h war dann auch das Codeplex Projekt bereit um ausgecheckt zu werden. Es war Mittag und die Entwicklung konnte beginnen (Christian &amp; John meinten zu Mittag m&#252;sste die erste lauff&#228;hige Version stehen). Leider nicht f&#252;r mich, da ich ungl&#252;cklicherweise nur eine RC Version von VS2010 besa&#223;, welche sich hartn&#228;ckig weigerte eine Verbindung mit dem Codeplex TFS aufzunehmen. So konnte ich die Zeit nutzen um mal bei den Kollegen &#252;ber die Schulter zu schauen.</p>
<p>Am Ende des Tages standen wir mit einem Mammut Projekt da, was zwar nicht fertig war aber daf&#252;r sehr gut als Lehrbeispiel durchgehen k&#246;nnte. Vertreten waren Technologien wie ASP.NET MVC2, IOC, Command Patterns sowie Unit Tests. F&#252;r die Tests erhielt Robert bei der Pr&#228;sentation nat&#252;rlich den verdienten Applaus. F&#252;r einen Preis reichte es leider nicht.</p>
<p>Zusammenfassend kann gesagt werden, dass es zwei sehr sch&#246;ne Tage in Unterschlei&#223;heim waren. Ich h&#228;tte mir gew&#252;nscht, dass der erste Tag etwas tiefer in die Materie gegangen und der zweite Tag etwas besser vom Veranstalter organisiert gewesen w&#228;re. Trotzdessen eine gelunge Veranstaltung.</p>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/07/01/microsoft-web-camps-muenchen-tag-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Communardo ist Medienpartner der prio.conference 2010</title>
		<link>http://www.communardo.de/home/techblog/2010/06/22/communardo-ist-medienpartner-der-prio-conference-2010/</link>
		<comments>http://www.communardo.de/home/techblog/2010/06/22/communardo-ist-medienpartner-der-prio-conference-2010/#comments</comments>
		<pubDate>Tue, 22 Jun 2010 06:46:04 +0000</pubDate>
		<dc:creator>Dorrit Riemenschneider</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Architektur]]></category>
		<category><![CDATA[konferenz]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://www.communardo.de/home/techblog/?p=3665</guid>
		<description><![CDATA[<img alt="dri" src="http://www.gravatar.com/avatar.php/787c944feb23a1f3f8e2bd4d150fa67d/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/dri/" title="Artikel von Dorrit Riemenschneider">Dorrit Riemenschneider</a><div id="_mcePaste"><strong><a href="http://www.prioconference.de"><img class="alignleft size-full wp-image-3670" style="margin-right: 10px;margin-bottom: 10px" title="prio-Banner_300x250" src="http://www.communardo.de/home/techblog/files/2010/06/prio-Banner_300x250.gif" alt="" width="180" height="150" /></a>Verteilte Architektur &#8211; Von der Mehrkernsoftware zur Unternehmensanwendung</strong> ist das Thema der <strong><a href="http://www.prioconference.de/">prio.conference 2010</a></strong>, die am <strong>19. und 20. Oktober in der Meistersingerhalle N&#252;rnberg</strong> stattfindet.</div>
<p>Vier parallele Sessions bieten Ihnen Konzepte, Technologien, Tools und Best Practices rund um die Verteilung von Software im Gro&#223;en wie im Kleinen. Denn Verteilung muss gekonnt sein, oder es drohen schlechte Performance, ungen&#252;gende Skalierbarkeit und Unwartbarkeit.</p>
<p>23 Referenten informieren Sie an zwei Tagen u.a. zu folgenden Themen:</p>
<div id="_mcePaste">
<ul>
<li>Verteilte Architekturen und ihre Qualit&#228;tsmerkmale</li>
<li>WCF Data Services f&#252;r Fortgeschrittene</li>
<li>ArchiMate &#8211; Unternehmensarchitekturen in drei Schichten modelliert</li>
<li>Jabber/XMPP: Kommunikation in verteilten Anwendungen</li>
</ul>
</div>
<p>Das komplette Programm der prio.conference ist hier herunterladbar: <a href="http://www.prioconference.de/Programm">http://www.prioconference.de/Programm</a>. Alle Informationen und den Link zur Anmeldung finden Sie unter <a href="http://www.prioconference.de/">www.prioconference.de</a>.</p>
<p>Pr&#228;sentiert wird Ihnen die Veranstaltung von der dotnetpro, dem Profi-Magazin f&#252;r Entwickler und der Neue Mediengesellschaft Ulm &#8211; Kongresse &amp; Messen.</p>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/06/22/communardo-ist-medienpartner-der-prio-conference-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft Web Camps (M&#252;nchen) &#8211; Tag 1</title>
		<link>http://www.communardo.de/home/techblog/2010/06/08/microsoft-web-camps-muenchen-tag-1/</link>
		<comments>http://www.communardo.de/home/techblog/2010/06/08/microsoft-web-camps-muenchen-tag-1/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 04:48:12 +0000</pubDate>
		<dc:creator>Torsten Hufsky</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[Webcamp]]></category>

		<guid isPermaLink="false">http://www.communardo.de/home/techblog/?p=3627</guid>
		<description><![CDATA[<img alt="thu" src="http://www.gravatar.com/avatar.php/8743398aa3c764388e375dd2cab2b092/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/thu/" title="Artikel von Torsten Hufsky">Torsten Hufsky</a><p>Unter dem Motto &#8220;Make Web, Not War&#8221; tourt Microsoft zur Zeit mit seinen <a href="http://www.webcamps.ms/" target="_blank">Webcamps</a> durch die Welt. Am 07. und 08. Juni (war) ist Zwischenstopp in Unterschlei&#223;heim / M&#252;nchen. Ich hatte das Gl&#252;ck dabei zu sein. An beiden Tagen haben sich <a href="http://webcampsms.cloudapp.net/Speaker/christianwenz" target="_blank">Christian Wenz</a> sowie <a href="http://webcampsms.cloudapp.net/Speaker/jongalloway" target="_blank">John Galloway</a> (ASP.NET Community Program Manager) auf die Fahne geschrieben uns die Microsoft Web Platform und die damit verbundenen Tools n&#228;her zu bringen. Schwerpunkt lag dabei vor allem auf ASP.NET MVC 2, Entity Framework sowie IIS 7.x.</p>
<p><p style="text-align:center" class="notie6">
  <a href="http://www.communardo.de/home/techblog/wp-content/filebase/asp.net/Wallpaper_Munich_1024x768.jpg" onclick="wpfilebase_dlclick(20, 'wp-content/filebase/asp.net/Wallpaper_Munich_1024x768.jpg')" class="lightbox">
    <img class="notie6" align="aligncenter" src="http://www.communardo.de/home/techblog/wp-content/plugins/wp-filebase/wp-filebase_thumb.php?fid=20" alt="Webcamps M&#252;nchen" style="width:300px"/>
  </a>
<p>
<p style="text-align:center" class="forie6">
  <a href="http://www.communardo.de/home/techblog/wp-content/filebase/asp.net/Wallpaper_Munich_1024x768.jpg" onclick="wpfilebase_dlclick(20, 'wp-content/filebase/asp.net/Wallpaper_Munich_1024x768.jpg')" class="lightbox">
    <img class="forie6" align="aligncenter" src="http://www.communardo.de/home/techblog/wp-content/filebase/asp.net/Wallpaper_Munich_1024x768.jpg" alt="Webcamps M&#252;nchen" style="width:300px"/>
  </a>
<p></p>
<p>Diese Wallpaper <a href="http://www.webcamps.ms/Blog/Web-Camps-Wallpapers" target="_blank">k&#246;nnen hier heruntergeladen</a> werden.</p>
<p>Angekommen im <a href="http://www.dolcemunich.com/" target="_self">Dolce Munich,</a> im sch&#246;nen Unterschlei&#223;heim, konnte man sich ersteinmal bei einem tollen Kaffee kennenlernen.</p>
<p>Anschlie&#223;end folgte eine Begr&#252;&#223;ung durch Frank Fischer von Microsoft, welcher gleich auch noch ein paar Worte &#252;ber Microsoft <a href="http://www.microsoft.com/web/websitespark/" target="_blank">WebsiteSpark</a> und <a href="http://www.microsoft.com/bizspark/" target="_blank">BizSpark</a> verlor.</p>
<p>Im Ersten Teil ging es noch einmal tief in den &#8220;Urschleim&#8221; zur&#252;ck. Nach einem Gesamt&#252;berblick &#252;ber ASP.NET, ASP.NET Webforms sowie Neuerungen in ASP.NET 4 gab es noch einen &#220;berblick &#252;ber die Micrsoft Web Platform. Danach wurde es interessant. In 3 Teilen haben Christian und John eine &#8220;Rich web application&#8221; mit MVC und dem Entity Framework erstellt. Vorrangig ging es dabei um die Grundprinzipien der Web Entwicklung mit Model &#8211; View &#8211; Controller (MVC). Das Beispiel wurde dabei nach und nach zu einer datengetriebenen Anwendung, mit Hilfe des Entity Frameworks weiterentwickelt.</p>
<p>Im zweiten Teil wurden weitere neue Features von ASP.NET MVC 2 vorgestellt. Unter anderem die HTML Helpers, Datenvalidatoren, Templating sowie die Zusammenarbeit mit Visual Stuido 2010.</p>
<p>Letztlich wurde noch gezeigt wie ASP mit jQery zusammenarbeiten kann und wie das Deployment von statten geht. Auch die Verwendung des neuen IIS und dessen IIS Erweiterungen wurde erl&#228;utert.</p>
<p>Am Ende des Tages wurden Ideen gesammelt was f&#252;r Projekte an Tag 2 durchgef&#252;hrt werden. Dabei kamen viele, teils lustige aber auch teils sehr kreative Ideen zusammen und fanden ihre Anh&#228;nger in Form von Teams.</p>
<p>Fazit Tag 1: F&#252;r mich hat sich dieser Tag auf jeden Fall gelohnt. Es wurden teilweise sehr interessante Themen vorgestellt, welche direkt mit gecoded werden konnten. Ein bisschen Faden Beigeschmack hatte die schon nostalgische Internetverbindung im Dolce Munich, die teilweise nicht &#252;ber 5 kbyte hinaus kam. Man wurde direkt an die gute alte Modemzeit erinnert.</p>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/06/08/microsoft-web-camps-muenchen-tag-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Treffen der .NET Usergroup Dresden am 05.05.2010</title>
		<link>http://www.communardo.de/home/techblog/2010/05/18/treffen-der-net-usergroup-dresden-am-05-05-2010/</link>
		<comments>http://www.communardo.de/home/techblog/2010/05/18/treffen-der-net-usergroup-dresden-am-05-05-2010/#comments</comments>
		<pubDate>Tue, 18 May 2010 11:36:31 +0000</pubDate>
		<dc:creator>Anne Rüger</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Expression Blend]]></category>
		<category><![CDATA[silverlight]]></category>
		<category><![CDATA[SketchFlow]]></category>
		<category><![CDATA[UserGroup]]></category>

		<guid isPermaLink="false">http://www.communardo.de/home/techblog/?p=3566</guid>
		<description><![CDATA[<img alt="aru" src="http://www.gravatar.com/avatar.php/97bdd3bf3d48cd4622f292ba1f05e65d/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/aru/" title="Artikel von Anne Rüger">Anne Rüger</a><p>Am 5. Mai war es wieder soweit: es wurde zur .NET-Usergroup eingeladen. In den R&#228;umen der Communardo Software GmbH waren diesmal <a href="http://www.xamlfab.net" target="_blank">Peggy Reuter</a> und <a href="http://www.xamllab.net" target="_blank">Lars Heinrich</a> zu Gast, um ihre Erfahrungen mit Expression Blend und Silverlight mit uns und der Community zu teilen.</p>
<p><span id="more-3566"></span></p>
<object width="400" height="328"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=dnugdresdenblend-100518061946-phpapp02"/><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=dnugdresdenblend-100518061946-phpapp02"  type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="400" height="328"></embed></object>
<p>Lars, der eher aus dem Bereich der Softwareentwicklung stammt, brachte uns die Portierung einer Silverlight Anwendung von Visual Studio zu Expression Blend n&#228;her. Dabei sind einige wichtige „Tricks und Kniffe“ zu beachten. Danach gab Peggy, welche eher im Bereich Design „beheimatet“ ist, anhand einer prototypischen Layout-Umsetzung, Einblicke in die facettenreiche Nutzung von Expression Blend. Wer Lust und das entsprechende Equipment dabei hatte, konnte die Applikation live nachbauen. Anschlie&#223;end wurde noch SketchFlow vorgestellt und dessen Nutzung diskutiert. Das Resultat dieser Diskussion war vor allem, dass mit SketchFlow umgesetzte Prototypen prinzipiell f&#252;r die weitere Umsetzung genutzt werden k&#246;nnen, jedoch aus professioneller Sicht nicht genutzt werden sollten. SketchFlow ist eben „nur“ ein Tool zum prototypen.</p>
<p>Einige lie&#223;en den gelungenen Abend dann noch bei einem Bier ausklingen.</p>
<p>Wir sind sehr froh Peggy und Lars als Vortragende f&#252;r unsere UserGroup gewonnen zu haben. Aus zeitlichen Gr&#252;nden konnten sie leider nicht alle Themen ansprechen, die geplant waren. Wir werden die beiden aber bestimmt in einer der n&#228;chsten UserGroups wiedersehen, wo sie die M&#246;glichkeit haben uns weitere Eindr&#252;cke aus Themenbereichen wie WPF, Windows Phone 7 oder Multitouch/NUI n&#228;her zu bringen. Wir sind gespannt.</p>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/05/18/treffen-der-net-usergroup-dresden-am-05-05-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>R&#252;ckblick auf das erste .NET Coding Dojo</title>
		<link>http://www.communardo.de/home/techblog/2010/04/14/rueckblick-auf-das-erste-net-coding-dojo/</link>
		<comments>http://www.communardo.de/home/techblog/2010/04/14/rueckblick-auf-das-erste-net-coding-dojo/#comments</comments>
		<pubDate>Wed, 14 Apr 2010 05:50:17 +0000</pubDate>
		<dc:creator>Martin Hey</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Coding Dojo]]></category>

		<guid isPermaLink="false">http://www.communardo.de/home/techblog/?p=3427</guid>
		<description><![CDATA[<img alt="mhy" src="http://www.gravatar.com/avatar.php/b2628bda407a7ae43f62dd191beb6335/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/mhy/" title="Artikel von Martin Hey">Martin Hey</a><p>Am Abend des 29.03. verwandelte sich der Besprechungsraum von Communardo in eine Trainingshalle. Begeisterte und interessierte Mitarbeiter waren eingeladen, an einem Coding Dojo teilzunehmen.</p>
<p><strong>Was ist ein Coding Dojo eigentlich? </strong></p>
<p>Im weiteren Sinne kann man dazu auch Programmier-&#220;bung sagen. Dojo ist ein aus der japanischen Kampfkunst &#252;bernommener Begriff. Dort steht er f&#252;r den &#220;bungsraum, in dem die einzelnen &#220;bungen (= Kata) durchgef&#252;hrt werden. In der &#220;bertragung auf den Entwicklerbereich kann man es dann auch als &#8220;Zusammentreffen von Entwicklern&#8221; &#252;bersetzen, die sich gemeinsam einer meist einfachen Aufgabe annehmen und spielerisch daran neue Techniken oder Technologien trainieren.</p>
<p><strong>Wie lief der Abend?</strong></p>
<p>Vom Reiz des Neuen angezogen, war auch das Interesse team- und  abteilungs&#252;bergreifend erfreulicherweise sehr gro&#223; und der Abend konnte  (fast p&#252;nktlich) beginnen. Nach einer kurzen Erkl&#228;rung des Prinzips von  Test Driven Development und wie man eine Kata eigentlich durchf&#252;hrt,  ging es auch schon los.</p>
<p>Um nicht gleich zuviel Neues zu bringen, war das erste Beispiel BubbleSort. Hier kannten einige den Algorithmus nicht mehr, gibt es doch im .NET-Framework Methoden, die das f&#252;r einen &#252;bernehmen. Als dieser dann klar war, war dies aber eine gute M&#246;glichkeit, TDD auszuprobieren, ohne sich gleichzeitig noch Gedanken darum machen zu m&#252;ssen, wie das Problem gel&#246;st werden kann. Da die Kata FizzBuzz dann recht schnell gel&#246;st war, haben wir auch noch die Kata Potter angefangen, allerdings war dann irgendwann die Zeit auch vorbei und die letzte Optimierung fehlt uns noch.</p>
<p><strong>Was nehme ich mit? </strong></p>
<p>Dojos sind eine einfache und interessante M&#246;glichkeit, neue Technologien oder Techniken zu erlernen und auszuprobieren. Man kann damit Interesse auch technologie&#252;bergreifend wecken &#8211; diese Art der Durchf&#252;hrung ist nicht auf .NET beschr&#228;nkt. Dojos machen Spa&#223; und auch wenn man keinen passenden Algorithmus findet, sieht man Ans&#228;tze der Anderen und kann sich selbst einbringen oder bekommt Ans&#228;tze f&#252;r Herangehensweisen, an die man nicht gedacht hat.</p>
<p><strong>Wie geht&#8217;s weiter?</strong></p>
<p>Der Plan ist, dass die Reihe fortgesetzt wird. In unregelm&#228;&#223;igen Abst&#228;nden wird es hier weitere interne Dojos zu unterschiedlichen Themen geben. &#214;ffentliche Dojos wird es vermutlich in Zukunft im Rahmen der .NET Usergroup geben.</p>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/04/14/rueckblick-auf-das-erste-net-coding-dojo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>4. ASQF Fachgruppentreffen Software-Test Sachsen</title>
		<link>http://www.communardo.de/home/techblog/2010/03/31/4-asqf-fachgruppentreffen-software-test-sachsen/</link>
		<comments>http://www.communardo.de/home/techblog/2010/03/31/4-asqf-fachgruppentreffen-software-test-sachsen/#comments</comments>
		<pubDate>Wed, 31 Mar 2010 10:55:46 +0000</pubDate>
		<dc:creator>Lukas Lischka</dc:creator>
				<category><![CDATA[Softwaretest]]></category>
		<category><![CDATA[ASQF]]></category>
		<category><![CDATA[Fachgruppe]]></category>

		<guid isPermaLink="false">http://www.communardo.de/home/techblog/?p=3415</guid>
		<description><![CDATA[<img alt="lli" src="http://www.gravatar.com/avatar.php/60c0cebf4df04944ac8facbc09b34125/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/lli/" title="Artikel von Lukas Lischka">Lukas Lischka</a><p>Am 30.03.2010 fand das 4. <a href="http://www.asqf.de/" target="_blank">ASQF</a> Fachgruppentreffen Software-Test Sachsen in Dresden statt. Michael Kieser von der Saxonia Systems AG hielt einen Vortrag zum Thema <strong>Die Qual der Wahl oder Wie finde ich das richtige (Test-) Werkzeug</strong>.</p>
<p>Der Vortrag ging auf die verschiedenen Aspekte ein, wie ein Werkzeug im Allgemeinen richtig ausgesucht werden kann. Angefangen von dem richtigen Personenkreis, darin enthalten die sp&#228;teren Anwender und Geldgeber, hinzu der Erstellung eines Kriterienkatalogs, worin die einzelnen Kriterien gruppiert werden sollten und anschlie&#223;end nicht nur die einzelnen Kriterien gewichtet werden, sondern auch die Gruppierung. Damit kann nicht ein Kriterium, welches eigentlich sehr wichtig ist, hinter die anderen Kriterien gestellt und somit vernachl&#228;ssigt werden. Am Ende der Auswahl eines Werkzeuges sollten, so war die Empfehlung, nur noch maximal 3 Tools zur Auswahl stehen, welche dann im Detail evaluiert, eine Teststellung aufgesetzt und ggf. ein „Proof of Concepts“ durchgef&#252;hrt werden sollte.</p>
<p>Beim anschlie&#223;enden Imbiss kam noch ein Gespr&#228;ch zum eigentlich erwarteten Thema, wie finde ich das richtige <span style="text-decoration: underline">Test</span>werkzeug, zustande. Die Meinung verst&#228;rkte sich auch hier, dass man entscheiden sollte, ob z.B. die Automatisierung m&#246;glichst wenig Personal kosten darf (und damit aber das Testwerkzeug mehr) oder ob man daf&#252;r direkt Personal einstellt, wodurch auf OpenSource-Tools zur&#252;ckgreifen kann. Diese Entscheidung sollte m&#246;glichst am Anfang einer Evaluierung gekl&#228;rt werden, da daran sehr stark die Tool-Auswahl beeinflusst wird.</p>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/03/31/4-asqf-fachgruppentreffen-software-test-sachsen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Confluence Profiler aktivieren</title>
		<link>http://www.communardo.de/home/techblog/2010/03/18/confluence-profiler-aktivieren/</link>
		<comments>http://www.communardo.de/home/techblog/2010/03/18/confluence-profiler-aktivieren/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 15:08:18 +0000</pubDate>
		<dc:creator>Andreas Reif</dc:creator>
				<category><![CDATA[Confluence]]></category>
		<category><![CDATA[JEE]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Profiler]]></category>

		<guid isPermaLink="false">http://www.communardo.de/home/techblog/?p=3406</guid>
		<description><![CDATA[<img alt="are" src="http://www.gravatar.com/avatar.php/8f6ee468c4960f5d77966266ada2f51d/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/are/" title="Artikel von Andreas Reif">Andreas Reif</a><h2 style="margin-top:10px">Was ist Profiling?</h2>
<hr />
<blockquote><p>Als Profiler werden Programmierwerkzeuge bezeichnet, die das Laufzeitverhalten von Software analysieren. Es gibt unterschiedliche Problembereiche in der Softwareentwicklung, die durch ineffiziente Programmierung ausgel&#246;st werden. Ein Profiler hilft dem Entwickler durch Analyse und Vergleich von laufenden Programmen die Problembereiche aufzudecken. Daraus kann man Ma&#223;nahmen zur strukturellen und algorithmischen Verbesserung des Quellcodes ableiten.</p></blockquote>
<blockquote><p>Die h&#228;ufigste Anwendung eines Profilers ist das Z&#228;hlen und Messen der Aufrufe und Durchl&#228;ufe von Funktionen. Dies erm&#246;glicht es dem Programmierer herauszufinden, wo sich eine Optimierung des Programms lohnt. Eine Optimierung von Funktionen, die nicht h&#228;ufig verwendet werden, ist der Gesamtleistung des Programms nicht sonderlich zutr&#228;glich und erschwert in der Regel die Wartbarkeit des Quellcodes. Deshalb wird das Hauptaugenmerk auf Funktionen gelegt, die oft aufgerufen werden und in der Summe der Aufrufe viel Zeit ben&#246;tigen.</p></blockquote>
<div style="margin:20px">
<table style="background-color:#FFFFCE">
<tbody>
<tr>
<td style="width:540px;padding:5px"><b>Referenzlink der Zitate</b><br />
<a rel="nofollow" href="http://de.wikipedia.org/wiki/Profiler_%28Programmierung%29">http://de.wikipedia.org/wiki/Profiler_%28Programmierung%29</a></td>
</tr>
</tbody>
</table>
</div>
<h2 style="margin-top:10px">Wie aktiviere ich die Profiling Funktionalit&#228;t von Confluence?</h2>
<hr />
<ol>
<li>Damit das Profiling in Confluence generell funktioniert, muss
<ol>
<li>entweder die folgende Zeile in die <tt>log4j.properties</tt> (Fundort: <tt>&lt;tomcat-path&gt;/confluence/WEB-INF/classes</tt>) eingepflegt werden
<div style="border-width: 1px">
<div>
<pre style="margin-left:0px;width:535px">## Atlassian Profiling
log4j.logger.com.atlassian.util.profiling.UtilTimerStack=DEBUG</pre>
</div>
</div>
</li>
<li>oder in der <tt>Administrationskonsole</tt> der aktuellen <tt>Confluence</tt>-Instanz unter <em>Protokoll- und Profilerstellung</em> der Eintrag <tt>log4j.logger.com.atlassian.util.profiling.UtilTimerStack</tt> auf <tt>DEBUG</tt> hinzugef&#252;gt werden.</li>
</ol>
</li>
<li>Des Weiteren muss in der <tt>Administrationskonsole</tt> der aktuellen <tt>Confluence</tt>-Instanz unter <em>Protokoll- und Profilerstellung</em> die <em>Profilerstellung</em> aktiviert werden.</li>
<li><b>optional:</b> Man kann mittels <tt>log4j</tt> es noch so einrichten, dass die Profile-Log Ausgaben in eine separate Datei landen. Die folgenden &#196;nderungen m&#252;ssen wieder in der Datei <tt>log4j.properties</tt> (Fundort: <tt>&lt;tomcat-path&gt;/confluence/WEB-INF/classes</tt>) umgesetzt werden.
<ol>
<li>Es ist notwendig einen neuen <tt>FileAppender</tt> zu definieren.
<div style="border-width: 1px">
<div>
<pre style="margin-left:0px;width:535px">####
# PROFILING LOG APPENDER
###
log4j.appender.profiling=org.apache.log4j.RollingFileAppender
log4j.appender.profiling.Threshold=DEBUG
log4j.appender.profiling.File=${catalina.home}/logs/profiling.log
log4j.appender.profiling.layout=org.apache.log4j.PatternLayout
log4j.appender.profiling.layout.ConversionPattern=%d %p [%c{4}] %m%n</pre>
</div>
</div>
</li>
<li>Letztlich muss der Appender der zu &#252;berwachenden Klasse angehangen werden. Dazu &#228;ndert man lediglich die Zeile:
<div style="border-width: 1px">
<div>
<pre style="margin-left:0px;width:535px">log4j.logger.com.atlassian.util.profiling.UtilTimerStack=DEBUG</pre>
</div>
</div>
<p>in</p>
<div style="border-width: 1px">
<div>
<pre style="margin-left:0px;width:535px">log4j.logger.com.atlassian.util.profiling.UtilTimerStack=DEBUG, profiling</pre>
</div>
</div>
<p>ab!</li>
</ol>
</li>
</ol>
<div style="margin:20px">
<table style="background-color:#FFFFCE">
<tbody>
<tr>
<td style="width:540px;padding:5px"><b>Referenzlink zur Confluence Dokumentation</b><br />
<a rel="nofollow" href="http://confluence.atlassian.com/display/CONF210/Troubleshooting+Slow+Performance+Using+Page+Request+Profiling">http://confluence.atlassian.com/display/CONF210/Troubleshooting+Slow+Performance&#8230;</a></td>
</tr>
</tbody>
</table>
</div>
<h2 style="margin-top:10px">andere Werkzeuge</h2>
<hr />
Zur Erg&#228;nzung werden an dieser Stelle noch zwei Profiler genannt, auf die allerdings nicht n&#228;her eingegangen wird.</p>
<h3>YourKit Profiler</h3>
<p>Als Besonderheit bei diesem Profiler ist zu nennen, dass es f&#252;r <tt>Confluence</tt> ein Plugin existiert, welches dem Administrator erm&#246;glicht, die f&#252;r die Auswertung notwendigen Dumps (CPU und Speicher) &#252;ber die Administrationskonsole zu generieren.</p>
<div style="margin:20px">
<table style="background-color:#FFFFCE">
<tbody>
<tr>
<td style="width:540px;padding:5px"><b>Referenzlinks</b><br />
YourKit Profiler: <a rel="nofollow" href="http://www.yourkit.com/">http://www.yourkit.com/</a><br />
Confluence Dokumentation zum Plugin: <a rel="nofollow" href="http://confluence.atlassian.com/display/CONF210/Profiling+using+the+YourKit+Plugin">http://confluence.atlassian.com/display/CONF210/Profiling+using+the+YourKit+Plugin</a></td>
</tr>
</tbody>
</table>
</div>
<div style="margin:20px">
<table style="background-color:#FFCCCC">
<tbody>
<tr>
<td style="width:540px;padding:5px"><b>Achtung!</b><br />
F&#252;r die Software <tt>YourKit Profiler</tt>, die zur Dump-Auswertung ben&#246;tigt wird, braucht man eine Lizenz. Es gibt eine Evaluierungslizenz, die allerdings nur f&#252;r 15 Tage ausgelegt ist. Nach Ablauf dieser Frist muss eine Lizenz erworben/gekauft werden.</td>
</tr>
</tbody>
</table>
</div>
<h3>JProfiler</h3>
<p>Dies Software besitzt vergleichbare Funktionalit&#228;ten, wie der <tt>YourKit Profiler</tt>.</p>
<div style="margin:20px">
<table style="background-color:#FFFFCE">
<tbody>
<tr>
<td style="width:540px;padding:5px"><b>Referenzlink zum JProfiler</b><br />
<a rel="nofollow" href="http://www.ej-technologies.com/products/jprofiler/overview.html">http://www.ej-technologies.com/products/jprofiler/overview.html</a></td>
</tr>
</tbody>
</table>
</div>
<div style="margin:20px">
<table style="background-color:#FFCCCC">
<tbody>
<tr>
<td style="width:540px;padding:5px"><b>Achtung!</b><br />
F&#252;r die Software <tt>JProfiler</tt>, die zur Dump-Auswertung ben&#246;tigt wird, braucht man eine Lizenz. Es gibt eine Evaluierungslizenz, die allerdings nur f&#252;r 10 Tage ausgelegt ist. Nach Ablauf dieser Frist muss eine Lizenz erworben/gekauft werden.</td>
</tr>
</tbody>
</table>
</div>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/03/18/confluence-profiler-aktivieren/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eindr&#252;cke vom dotnetpro CCD-Powerday</title>
		<link>http://www.communardo.de/home/techblog/2010/03/10/eindruecke-vo-ccd-powerday/</link>
		<comments>http://www.communardo.de/home/techblog/2010/03/10/eindruecke-vo-ccd-powerday/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 16:20:31 +0000</pubDate>
		<dc:creator>Martin Hey</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[CCD]]></category>
		<category><![CDATA[München]]></category>
		<category><![CDATA[PowerDay]]></category>
		<category><![CDATA[Termin]]></category>

		<guid isPermaLink="false">http://www.communardo.de/home/techblog/?p=3354</guid>
		<description><![CDATA[<img alt="mhy" src="http://www.gravatar.com/avatar.php/b2628bda407a7ae43f62dd191beb6335/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/mhy/" title="Artikel von Martin Hey">Martin Hey</a><p>Was macht eigentlich einen professionellen Software-Entwickler aus? Mit dieser Frage starten <a href="http://www.ralfw.de" target="_blank">Ralf Westphal</a> und <a href="http://www.lieser-online.de/" target="_blank">Stefan Lieser</a> gern, wenn sie erkl&#228;ren, worum es bei der <a href="http://www.clean-code-developer.de/" target="_blank">Clean-Code-Developer-Initiative</a> eigentlich geht. Und auch genau mit dieser Frage startete die Keynote des dotnetpro Powerdays zum Thema CCD, der am 09.03.2010 in M&#252;nchen die Einleitung zu einem dreit&#228;gigen Workshop bot. Und die Antworten aus dem Publikum sind sehr reichhaltig: &#8220;Man hat Spa&#223; daran, guten Code zu schreiben&#8221; und &#8220;Man hat Erfahrung.&#8221; h&#246;rt man aus der einen Richtung, &#8220;Jemand ist bereit, einem f&#252;r ein Programm Geld zu geben&#8221; und &#8220;Man schreibt Code den andere verstehen&#8221; aus der anderen Richtung. Letztenendes ist klar: Dies sind nicht die Kriterien f&#252;r einen professionellen Softwareentwickler, sondern Professionalit&#228;t aus dem Blickwinkel von CCD ist eine Mischung aus Bewusstheit und Prinzipien. Mit viel Witz und mehren verschenkten Mausmatten als Belohnung f&#252;r interessante Antworten f&#252;hren die beiden durch die Keynote und bringen so jedem das Thema n&#228;her.</p>
<p>Mit einem kleinen Ausflug in die Softwarearchitektur und einer Betrachtung von Test Driven Development geht der Tag weiter. Klar ist, die beiden wissen was sie r&#252;berbringen wollen und vertreten da auch ihre Meinung recht konsequent. Aussagen wie &#8220;Wozu brauche ich einen Debugger &#8211; meine Tests zeigen mir doch, wo der Fehler ist&#8221;, &#8220;Zum Erstellen einer Softwarearchitektur braucht man keine Tools &#8211; nur ein Flipchart&#8221; sorgen daf&#252;r, dass selbst langj&#228;hrige und erfahrene Entwickler das Problem mal aus einer anderen Richtung betrachten &#8211; und wenn uns jemand nach einer Software-Architektur f&#252;r ein Warenwirtschaftssystem gefragt hat, haben wir dann nicht alle mit einem einzigen &#8220;gro&#223;en Kreis mit Bubbel in der Mitte&#8221; auf dem Flipchartpapier geantwortet?</p>
<p>Nach einem Abstecher in Richtung Event Based Programming mit den Hauptakteuren &#8220;Paula Portal&#8221;, &#8220;Anton Adapter&#8221;, &#8220;Frieda Filter&#8221; und &#8220;Zacharias Z&#228;hler&#8221; bestand der Nachmittag darin, eine &#8220;Brownfield-Anwendung&#8221; im Sinne von CCD sauber zu machen. Leider musste ich nach der Ermittlung der guten und schlechten Eigenschaften der Anwendung die Veranstaltung verlassen, weil sonst mein Flieger ohne mich gestartet w&#228;re, aber ich denke das anschlie&#223;ende Refactoring der Anwendung war auch noch sehr interessant.</p>
<p>Zusammenfassend: Ja, ich mag diese Art von Stefan und Ralf, wie sie solche Veranstaltungen durchf&#252;hren, unabh&#228;ngig davon ob sie kostenfrei auf Usergroups sind oder ob sie Workshops durchf&#252;hren. Denn so wird man abseits vom t&#228;glichen Gesch&#228;ft dazu animiert, mal neue Wege einzuschlagen oder anders an ein Thema heranzugehen. Schade ist, dass es im Tagungsraum im Untergeschoss kein WLAN oder UMTS gab, denn sonst w&#228;ren einige der Spr&#252;che der beiden sicher sofort per Twitter in der virtuellen Welt gelandet.</p>
<p>Und der Ausspruch eines Teilnehmers &#8220;Ich bin der, der unbedingt hierher wollte, weil es interessant ist; mein Kollege h&#228;tte es aber eigentlich n&#246;tig gehabt, das mal mitzumachen.&#8221; zeigt, dass das Thema durchaus interessant ist, aber noch nicht alle die Notwendigkeit gesehen haben, wirklich professionell zu arbeiten.</p>
<p><a href="http://dotnet-kicks.de/kick/?url=http%3a%2f%2fwww.communardo.de%2fhome%2ftechblog%2f2010%2f03%2f10%2feindruecke-vo-ccd-powerday%2f"><img src="http://dotnet-kicks.de/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.communardo.de%2fhome%2ftechblog%2f2010%2f03%2f10%2feindruecke-vo-ccd-powerday%2f" border="0" alt="kick it on dotnet-kicks.de" /></a></p>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/03/10/eindruecke-vo-ccd-powerday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Neues aus der .Net und SharePoint-Welt von der Basta! Spring (3. Tag)</title>
		<link>http://www.communardo.de/home/techblog/2010/02/27/neues-aus-der-net-und-sharepoint-welt-von-der-basta-spring-3-tag/</link>
		<comments>http://www.communardo.de/home/techblog/2010/02/27/neues-aus-der-net-und-sharepoint-welt-von-der-basta-spring-3-tag/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 22:08:54 +0000</pubDate>
		<dc:creator>Dorrit Riemenschneider</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Microsoft Sharepoint]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[konferenz]]></category>
		<category><![CDATA[ORMapper]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[SharePoint 2010]]></category>

		<guid isPermaLink="false">http://www.communardo.de/techblog/?p=3270</guid>
		<description><![CDATA[<img alt="dri" src="http://www.gravatar.com/avatar.php/787c944feb23a1f3f8e2bd4d150fa67d/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/dri/" title="Artikel von Dorrit Riemenschneider">Dorrit Riemenschneider</a><p>Den Auftakt zum letzten Tag auf der Basta! macht f&#252;r mich <strong><em>Custom Field Types &#8211; Entwicklung und Einsatzm&#246;glichkeiten</em></strong> mit Oliver Wirkus. Die Entwicklung eines Custom Field Type f&#252;r SharePoint ist eher unspektakul&#228;r und wer das schon einmal gemacht hat, wird dazu hier nicht viel Neues erfahren. Einen Tipp m&#246;chte ich noch weitergeben: F&#252;r die Festlegung von Konfigurationseinstellungen bieten sich die <em>Custom Properties</em> in der <em>fldtype_xxx.xml</em> an &#8211; allerdings sollte man bedenken, dass diese bei einem Update immer wieder &#8220;&#252;berb&#252;gelt&#8221; wird (dennoch sind die Daten dort allemal besser aufgehoben als &#8220;hard coded&#8221;). Folgende &#8220;Unsch&#246;nheiten&#8221; bzgl. Custom Field Types sollte man bei deren Verwendung bedenken:<span id="more-3270"></span></p>
<ul>
<li>Office (bis incl. 2007) unterst&#252;tzt keine Custom Field Types -&gt; diese werden beim Speichern in einer DocLib z.B. aus Word heraus nicht ber&#252;cksichtigt.</li>
<li>Custom Field Types werden beim Export einer Liste nach Excel nicht mit &#252;bernommen.</li>
<li>Custom Field Types werden in der Datenblattansicht nicht angezeigt.</li>
</ul>
<p>Zum Schluss noch ein paar Anwendungsbeispiele f&#252;r Custom Field Types:</p>
<ul>
<li>Implementierung von Validierungsregeln (Anmerkung: geht mit SharePoint 2010 out-of-the-box)</li>
<li>Implementierung von Field Level Permissions</li>
<li>Anbindung externer Sytems (z.B. Stammdaten f&#252;r Lookups aus SAP) &#8211; Anmerkung: die Anbindung externer Listen &#252;ber die BDS in SharePoint 2010 d&#252;rfte auch hier in etlichen F&#228;llen mit Bordmitteln Abhilfe schaffen</li>
<li>Lookups auf Listen in einer anderen SharePoint Website</li>
<li>Lookups mit besserer GUI als im SharePoint-Standard (z.B. f&#252;r sehr viele Eintr&#228;ge)</li>
</ul>
<p><em><strong>SharePoint Deluxe mit Silverlight Dynamic Data</strong></em> mit Stephan Kitzler-Walli ist zur Abwechslung mal eine etwas anspruchsvollere Session zu SharePoint-Entwicklung. Es geht um die Erstellung eines dynamischen Listeninhaltseditors (Webpart) auf der Basis von Silverlight. Die Idee ist ebenso einfach wie bestechend: (generischer) C#-Code sorgt f&#252;r das Einlesen der Daten, die interne Umwandlung der SharePoint-Datentypen in .Net-Datentypen (welche von Silverlight verarbeitet werden k&#246;nnen) und das Speichern des ListItems. Das Rendern wird dann &#252;ber XAML gesteuert &#8211; spezifisch f&#252;r die jeweilige Liste bzw. den Content Type, auf dem der Listeneintrag basiert. Es gibt jede Menge Code und das Ergebnis kann sich blicken lassen.</p>
<p>Nun die letzte Keynote dieser Konferenz: <strong><em>Why does functional code matter?</em></strong> mit Ted Neward, der sich darum bem&#252;ht, die funktionale Programmierung aus der Ecke f&#252;r akademische Sonderf&#228;lle herauszubringen. Der Einstieg gelingt provozierend mit &#8220;<em>In the beginning god created objects&#8230;</em>&#8221; &#8211; und er sah, dass es gut war, m&#246;chte man erg&#228;nzen. Warum um alles in der Welt sollte man sich davon jetzt wieder abwenden? Man soll gar nicht. Die Botschaft der Keynote ist: Funktionale Programmierung wird die objektorientierte nicht verdr&#228;ngen, sondern erg&#228;nzen. Sie ist mit objektorientierten Konzepten kombiniert besonders m&#228;chtig und sollte einfach als &#8220;zus&#228;tzliches Tool in der Toolbox&#8221; gesehen werden.</p>
<p><strong><em>Datengetriebene Applikationen mit NHibernate und Spring.NET</em></strong> mit Manfred Steyer gibt eine gute Einf&#252;hrung in den OpenSource-O/R-Mapper, der als starke Alternative zum Entity Framework gilt. NHibernate zeichnet sich durch folgende Features aus:</p>
<ul>
<li>Beziehungen aller m&#246;glicher Kardinalit&#228;ten (1:n, n:1, 1:1, n:m)</li>
<li>Wahlweise Lazy oder Eager Loading</li>
<li>viele verschiedene Fetch-Strategien</li>
<li>Implementierung von Kaskaden (z.B. L&#246;schweiterleitung)</li>
<li>Implementierung von Vererbung mit verschiedenen Strategien</li>
<li>Concurrency (wahlweise Lockmechanismen aus der zugrunde liegenden Datenbank oder eigene)</li>
</ul>
<p>Nat&#252;rlich gibt es auch Codebeispiele &#8220;am lebenden Objekt&#8221;. Fazit: Nhibernate ist sehr m&#228;chtig, es geht fast alles, was in der Datenbank geht&#8230;</p>
<p>Das Applikationsframework Spring.NET unterst&#252;tzt dar&#252;ber hinaus bei immer wieder anfallenden Aufgaben. Insbesondere sei hier das Testing datenbank-lastiger Anwendungen aufgef&#252;hrt. Zusammen mit NHibernate kann sich Spring.Net zu voller Gr&#246;&#223;e entfalten, um z.B. das Transaktionsmanagement zu &#252;bernehmen oder das Testen noch einfacher zu gestalten. Die Vorteile der beiden Frameworks liegen auf der Hand. Dennoch sollte man auch die Nachteile nicht au&#223;er Acht lassen, z.B. die relativ hohe Einstiegsh&#252;rde, die komplexe Konfiguration und das teilweise etwas schwierige Versionsmanagement (insbesondere zwischen Spring.Net und NHibernate).</p>
<p>Last but not least gibt es mit<strong><em> 10 spannende Sachen, die man mit der SQL-Server-CLR-Integration machen kann</em></strong> mit Thorsten Kansy ein Angebot an Anwendungsbeispielen f&#252;r CLR Funktionen &#8211; nat&#252;rlich mit Codebeispielen. Einsatzm&#246;glichkeiten sind z.B.</p>
<ul>
<li>Validierungen (E-Mail-Adressen, ISBN, &#8230;) mittels regul&#228;rer Ausdr&#252;cke</li>
<li>Datumsformatierung</li>
<li>Konkatenation von Zeichenketten</li>
<li>Verschl&#252;sselung</li>
<li>Dublettensuche (hier mit <a href="http://de.wikipedia.org/wiki/Levenshtein-Distanz#Damerau-Levenshtein-Distanz">Damerau-Levenshtein-Distanz</a>)</li>
<li>E-Mail-Versand mit SMTP</li>
<li>Abfragen von W&#228;hrungskursen mittels Webservice</li>
</ul>
<p>Und so geht sie also dem Ende entgegen, die BASTA! Spring 2010. Nach 3 Tagen Konferenz f&#252;hlt der Kopf sich ungef&#228;hr genauso voll an wie der Magen, nun gilt es, das Geh&#246;rte weiterzutragen und, wo m&#246;glich, in der t&#228;glichen Arbeit anzuwenden&#8230;</p>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/02/27/neues-aus-der-net-und-sharepoint-welt-von-der-basta-spring-3-tag/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>R&#252;ckblick zum Treffen der .NET Usergroup Dresden am 24.02.2010</title>
		<link>http://www.communardo.de/home/techblog/2010/02/25/rueckblick-zum-treffen-der-net-usergroup-dresden-am-24-02-2010/</link>
		<comments>http://www.communardo.de/home/techblog/2010/02/25/rueckblick-zum-treffen-der-net-usergroup-dresden-am-24-02-2010/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 09:19:59 +0000</pubDate>
		<dc:creator>Torsten Hufsky</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Dresden]]></category>
		<category><![CDATA[Resümee]]></category>
		<category><![CDATA[Rückblick]]></category>
		<category><![CDATA[UserGroup]]></category>

		<guid isPermaLink="false">http://www.communardo.de/techblog/?p=3259</guid>
		<description><![CDATA[<img alt="thu" src="http://www.gravatar.com/avatar.php/8743398aa3c764388e375dd2cab2b092/?s=76" class="com-blog-icon"/><a href="http://www.communardo.de/home/techblog/author/thu/" title="Artikel von Torsten Hufsky">Torsten Hufsky</a><p>Am 24.02.2010 haben sich die .NET Freaks aus Dresden und Umgebung zur .NET Usergroup bei uns im Hause zusammen gefunden. Diesmal wurde es gruselig. <a href="https://www.xing.com/profile/Alexander_Gross7" target="_blank">Alexander  Gro&#223;</a> f&#252;hrte uns durch ein aktuelles Projekt, welches sich rund um die  Bestattung und Ein&#228;scherung dreht. Die Idee des Vortrages, welcher eigentlich kein Vortrag im engeren Sinne darstellte, war die gemeinsame Betrachtung eines aktuellen Projektes und deren verwendeten Techniken.</p>
<p>Schon nach einigen Minuten kam es zu interessanten Diskussionen.</p>
<p>Alexander zeigte beispielswei&#223;e wie in seinem Projekt Rake verwendet wird um auf einfache Weise Konfigurationen leicht wartbar zu halten. Au&#223;erdem wie Rake und MSDeploy zusammen ein super Team darstellen um Anwendungen zu deployen.</p>
<p><span id="more-3277"></span>Weiter ging es mit IOC Containern (Inversion of Control Containers and the Dependency Injection pattern) und deren M&#246;glichkeiten der Verwendung.  Aufbauend darauf entfachte eine Diskussion &#252;ber das Prinzip des ServiceLocators und deren Gefahren.</p>
<p>Weitere gezeigte Techniken und Frameworks waren:</p>
<ul>
<li>FubuMVC</li>
<li>NHibernate</li>
<li>AutoMapper</li>
<li>ReSharper</li>
<li>Rake und MSDeploy</li>
<li>IOC</li>
</ul>
<p>Ein gelungener Abend aus dem jeder mit etwas mehr Wissen heraus gehen konnte. Der Ein oder Andere wahrscheinlich auch etwas gepl&#228;ttet von der F&#252;lle und Qualit&#228;t der gebotenen Themen. Bleibt nur zu sagen: Vielen Dank Alexander f&#252;r diesen tollen Einblick.</p>
<p>Wir werden uns alle auf dem <a href="http://netopenspace.de/2010/" target="_blank">.NET Open Space 2010</a> wiedersehen, bei dem die eine oder andere Diskussion bestimmt weiter gef&#252;hrt werden kann.</p>
<div style="width: 1px;height: 1px;overflow: hidden">
<h2 style="padding-bottom: 4px"><a title="Permalink zu Einladung zum Treffen der .NET  Usergroup Dresden am 24.02.2010" rel="bookmark" href="../2010/02/19/einladung-zum-treffen-der-net-usergroup-dresden-am-24-02-2010/">Treffen der .NET Usergroup Dresden am  24.02.2010</a></h2>
</div>
]]></description>
		<wfw:commentRss>http://www.communardo.de/home/techblog/2010/02/25/rueckblick-zum-treffen-der-net-usergroup-dresden-am-24-02-2010/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
