<?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>Software Dev Blog &#187; Interview</title>
	<atom:link href="http://www.software-dev-blog.de/tag/interview/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.software-dev-blog.de</link>
	<description>Multicore-Programmierung, Multithreading &#38; Visual Computing</description>
	<lastBuildDate>Thu, 09 Feb 2012 19:54:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Trend Report 2011: Gordon Breuer gibt Antworten zu Tools, Programmiersprachen und mehr</title>
		<link>http://www.software-dev-blog.de/trend-report-2011-gordon-breuer-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/</link>
		<comments>http://www.software-dev-blog.de/trend-report-2011-gordon-breuer-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/#comments</comments>
		<pubDate>Thu, 20 Oct 2011 12:35:13 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Trend Report 2011]]></category>
		<category><![CDATA[Umfrage]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1810</guid>
		<description><![CDATA[Unser allseits beliebter Trend Report 2011 geht in die nächste Runde, und heute stellt sich Gordon Breuer unseren Fragen, die er sehr ausführlich und sehr gewissenhaft beantwortet. Was lernen wir daraus? Nun, Gordon ist &#8220;Technology Producer&#8221; bei der DATA MODA digital Engineering GmbH, hält das Programmierer-Nerd-Konzept für überholt und glaubt, dass parallel programmierte Anwendungen der Zukunft [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1811" class="wp-caption alignright" style="width: 242px"><a href="http://www.software-dev-blog.de/wp-content/images/2011/10/Gordon-Breuer.jpg"><img class="size-full wp-image-1811 " style="margin-top: 5px; margin-bottom: 5px; margin-left: 10px; margin-right: 10px;" title="Gordon Breuer" src="http://www.software-dev-blog.de/wp-content/images/2011/10/Gordon-Breuer.jpg" alt="Gordon Breuer" width="232" height="300" /></a><p class="wp-caption-text">Gordon Breuer</p></div>
<p>Unser allseits beliebter <a href="http://www.software-dev-blog.de/trend-report-2011/">Trend Report 2011</a> geht in die nächste Runde, und heute stellt sich <a title="Gordon Breuer auf Twitter folgen" href="http://twitter.com/anheledir" target="_blank">Gordon Breuer</a> unseren Fragen, die er sehr ausführlich und sehr gewissenhaft beantwortet. Was lernen wir daraus? Nun, Gordon ist &#8220;Technology Producer&#8221; bei der <a href="http://www.dmde.net/" target="_blank">DATA MODA digital Engineering GmbH</a>, hält das Programmierer-Nerd-Konzept für überholt und glaubt, dass parallel programmierte Anwendungen der Zukunft ordentlich skalieren müssen.</p>
<p><em><strong>Software Dev Blog:</strong> Herr Breuer, mit welchem Satz reagieren Sie auf das Vorurteil „Programmieren ist der langweilige Zeitvertreib von Nerds, die keine Freunde haben.“?</em></p>
<p><strong>Gordon Breuer:</strong> Auf Personen ohne Bezug zur Materie mag Programmieren sicherlich genauso langweilig erscheinen wie für mich die Arbeit als Jurist, Arzt oder Laborant. Auch wenn es für Außenstehende nur nach seltsamen Begriffen und unzähligen Sonderzeichen aussieht, so finde ich es durchaus spannend, sich immer wieder neue Lösungsansätze und Ideen auszudenken.</p>
<p>Und ob man einen großen oder kleinen Freundeskreis hat, hängt meiner Meinung nach nicht vom Beruf ab, sondern maßgeblich von der eigenen Persönlichkeit. Ein Romanautor kann ebenso introvertiert sein und sich deshalb in seine selbstgeschaffenen Fantasiewelten flüchten, wie ein Programmierer ein Party-Tier sein kann.</p>
<p>Dass man sich unter einem Programmierer auch heute noch einen blassen, Koffein- und Fastfood-süchtigen Menschen vorstellt, ist ein völlig überholtes Klischee. Der moderne Entwickler ist vielmehr eine Mischung aus Künstler, Analytiker, Querdenker und Visionär. Doch am schönsten hat es Andrée Beaulieu-Green ausgedrückt: „Programmieren ist wie Küssen: Man kann darüber reden, man kann es beschreiben, aber man weiß erst, was es bedeutet, wenn man es getan hat.“</p>
<p><em><strong>SDB:</strong> Von welchem Programmier-Tipp oder Leitsatz haben Sie persönlich am meisten profitiert?</em></p>
<p><strong>Breuer:</strong>  Den „ultimativen Tipp“ oder „wegweisenden Leitsatz“ habe ich leider auch noch nicht entdeckt. Am meisten konnte ich vermutlich aber von meiner Neugier nach allem Technischen profitieren. Aber Neugier alleine ist auch nur die halbe Miete: Man muss auch den Ehrgeiz und die Fantasie besitzen, sich Tag für Tag neuen Herausforderungen zu stellen und das, was man gelernt hat, bei jeder Aufgabe aufs Neue zu hinterfragen. Nirgendwo werden Ideen und Prinzipien schneller verworfen und durch neue ersetzt als in der Informationstechnologie! Es ist ein wenig wie mit einer Modelleisenbahn: Man muss immer ein wenig basteln und verändern, denn sobald man fertig ist, wird sie schnell langweilig und bleibt in der Ecke liegen.</p>
<p><em><strong>SDB:</strong> Mit welchen aktuellen Programmiersprachen und/oder Tools sollten sich Developer in diesem Jahr unbedingt beschäftigen, um „up-to-date“ zu bleiben?</em></p>
<p><strong>Breuer:</strong> Das Thema 2011 ist sicherlich HTML5, CSS3 und Javascript. Offensichtlich will diese rund 20 Jahre alte Technik heute jeder überall einsetzen: Sei es, um Programme für <a title="Windows 8 – HTML5 statt Silverlight?" href="http://www.software-dev-blog.de/windows-8-%e2%80%93-html5-statt-silverlight/06/2011/">Windows 8</a> zu schreiben, plattformunabhängige Mobile-Anwendungen oder multimediale Websites ohne Zusatz-Plugins. Ob sich dieser Trend auch die kommenden Jahre durchsetzen kann, bleibt jedoch abzuwarten.</p>
<p>Auch immer wichtiger werden Systeme, die für eine beliebige Anzahl an parallelen Prozessen skalieren können: War man früher dankbar für eine schnelle CPU, ist heute das Minimum schon ein Prozessor mit vier Kernen. In modernen Servern verrichten normalerweise mindestens 2 CPUs mit 8 Kernen ihren Dienst. Nicht zuletzt durch die immer erschwinglicher werdenden Cloud-Systeme sind heute Anwendungen mit hunderten Prozessen gleichzeitig denkbar, für die man noch vor zehn Jahren einen Supercomputer benötigt hätte. Dabei wird auch die dezentralisierte und redundante Datenhaltung für jedermann nutzbar und in den nächsten Jahren erheblich an Relevanz gewinnen.</p>
<p><em><strong>SDB:</strong> Für das Betriebssystem der Zukunft haben Sie drei Wünsche frei! Welche sind das?</em></p>
<ul>
<li>Eine intuitive Oberfläche, die sich den jeweiligen Bedürfnissen des Benutzers ohne sein Zutun intelligent anpasst. Die Maschine richtet sich ganz nach dem Menschen, nicht umgekehrt.</li>
</ul>
<ul>
<li>Schnell und zuverlässig: der Mensch sollte nicht in seiner Arbeit ausgebremst oder gar behindert werden durch langsame Systemstarts oder Backups.</li>
</ul>
<ul>
<li>Immer und überall sofort verfügbar, unabhängig davon, ob im Internetcafé oder auf Smartphones, Notebooks, Tablets oder klassischen Workstations. Die Synchronisierung und Aktualisierung aller Komponenten und Daten muss unsichtbar und nicht unbemerkt im Hintergrund funktionieren.</li>
</ul>
<p><em><strong>SDB:</strong> Welchen Tipp haben Sie für Programmierer, die möglichst schnell ihre Apps erfolgreich im Markt platzieren möchten?</em></p>
<p><strong>Breuer:</strong> Wenn es dafür ein Allround-Konzept gäbe, hätte ich es wohl schon längst umgesetzt. Wichtigstes Element ist die Zielgruppe: Hierfür sollte man sich möglichst frühzeitig mit potentiellen Anwendern zusammensetzen, um die Oberfläche, Abläufe und Funktionalität zu planen. Nur eine außergewöhnliche Idee zu haben hilft nichts, wenn die Anwendung hinterher niemand vernünftig benutzen kann oder das wahre Potential unerkannt bleibt, weil es zu versteckt ist.</p>
<p>Umgekehrt wird eine Applikation, die mehr Schein als Sein ist, auch keine Preise gewinnen. Es geht nicht darum, was man selber für sinnvoll oder logisch erachtet, wenn die Mehrzahl der späteren Benutzer eine völlig andere Erwartung mitbringt. Nur wer im ständigen Dialog mit den Anwendern steht, kann eine erfolgreiche App erstellen. Das bedeutet natürlich auch eine kontinuierliche Weiterentwicklung. Der Anwender muss nicht nur sehen und erleben, dass er und seine Bedürfnisse im Mittelpunkt stehen. Er will sich auch darauf verlassen können, stets eine aktuelle und &#8220;weitergedachte&#8221; Anwendung zu verwenden.</p>
<p><em><strong>SDB:</strong> Welche(s) Webseite oder Online-Magazin empfehlen Sie, die oder das jeder Entwickler kennen sollte?</em></p>
<p>Breuer: Die „Bibel“ und erste Anlaufstelle bei Problemen für jeden Entwickler ist die Community rund um <a href="http://StackOverflow.com" target="_blank">StackOverflow.com</a>. Nirgendwo sonst findet man in kürzester Zeit eine so breit gefächerte Kompetenzvielfalt.</p>
<p><em><strong>SDB:</strong> Was gefällt Ihnen am Software Dev Blog? Was könnten wir besser machen?</em></p>
<p><strong>Breuer:</strong> Das Wichtigste sind sicherlich die Inhalte, und diese sind in der Regel immer gut recherchiert und geschrieben. Doch die schönsten Inhalte nützen nichts, wenn die Präsentation nicht stimmig ist. Auf modernen Monitoren mit einer Auflösung jenseits der 1.600 Pixel in der Breite wirken die Beiträge zusammengedrängt. Hier könnte man durch ein moderneres Layout und eine kleinere Marginalie den vorhandenen Platz deutlich besser nutzen.</p>
<p>Auch wird man von der Textmenge erdrückt und verliert so leider schnell die Lust am Lesen: Ein paar Illustrationen, Grafiken oder Fotos innerhalb der Artikel lockern den Lesefluss auf einfache Weise auf und ermöglichen auch das ermüdungsfreie Lesen längerer Beiträge.</p>
<p>Leider wirkt das Software Dev Blog auch ein wenig unpersönlich. Entwickler sind eben nicht nur „Nerds in Kellerräumen“, sondern ganz normale Menschen. Kann man einem Artikel zu einem technischen Thema ein Gesicht geben, nimmt man die ansonsten formlos wirkenden Inhalte ganz anders wahr: „Jemand teilt seine fachlichen Kompetenzen mit anderen“ ist, wenn auch nur unterbewusst, eine ganz andere Botschaft als „Jemand versucht die fachlichen Kompetenzen einer Firma zu vertreten“ – wenn man es auf die Spitze treibt.</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/trend-report-2011-gordon-breuer-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/&via=sw_devtwits&text=Trend Report 2011: Gordon Breuer gibt Antworten zu Tools, Programmiersprachen und mehr &related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/trend-report-2011-gordon-breuer-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/&via=sw_devtwits&text=Trend Report 2011: Gordon Breuer gibt Antworten zu Tools, Programmiersprachen und mehr &related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/trend-report-2011-gordon-breuer-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trend Report 2011: Max Seelemann gibt Antworten zu Tools, Programmiersprachen und mehr</title>
		<link>http://www.software-dev-blog.de/trend-report-2011-max-seelemann-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/</link>
		<comments>http://www.software-dev-blog.de/trend-report-2011-max-seelemann-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/#comments</comments>
		<pubDate>Wed, 12 Oct 2011 14:00:02 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Trend Report 2011]]></category>
		<category><![CDATA[Umfrage]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1802</guid>
		<description><![CDATA[Sie ahnen es schon: Neue Woche, neues Interview aus unserer Reihe &#8220;Was tut sich eigentlich gerade im Software-Entwickler-Land?&#8221;. Heute ist am Start: Max Seelemann, Mac-Entwickler aus Leidenschaft, Referent auf diversen Veranstaltungen wie der Macoun und Inhaber einer eigenen Firma, die sich The Soulmen nennt. Für Max kommt Funktionalität vor Design, und er empfiehlt allen Entwicklern, [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1803" class="wp-caption alignright" style="width: 272px"><a href="http://www.software-dev-blog.de/wp-content/images/2011/10/Max-Seelemann.jpg"><img class="size-full wp-image-1803 " style="margin-top: 5px; margin-bottom: 5px; margin-left: 10px; margin-right: 10px;" title="Max Seelemann" src="http://www.software-dev-blog.de/wp-content/images/2011/10/Max-Seelemann.jpg" alt="Max Seelemann" width="262" height="300" /></a><p class="wp-caption-text">Max Seelemann</p></div>
<p>Sie ahnen es schon: Neue Woche, neues Interview aus unserer Reihe &#8220;Was tut sich eigentlich gerade im Software-Entwickler-Land?&#8221;. Heute ist am Start: Max Seelemann, Mac-Entwickler aus Leidenschaft, Referent auf diversen Veranstaltungen wie der <a href="http://macoun.de/" target="_blank">Macoun</a> und Inhaber einer eigenen Firma, die sich <a href="http://www.the-soulmen.com" target="_blank">The Soulmen</a> nennt.</p>
<p>Für Max kommt Funktionalität vor Design, und er empfiehlt allen Entwicklern, sich doch mehr mit <a href="http://www.software-dev-blog.de/mac-os-x-106-erleichtert-die-multicore-programmierung/08/2009/">Grand Central Dispatch</a> zu beschäftigen. Für optimal skalierende Multicore-Anwendungen.</p>
<p><em><strong>Software Dev Blog:</strong> Herr Seelemann, mit welchem Satz reagieren Sie auf das Vorurteil „Programmieren ist der langweilige Zeitvertreib von Nerds, die keine Freunde haben.“?</em></p>
<p><em>Max Seelemann: Ich kenne nicht viele Programmierer, auf die das zutrifft. Meiner Meinung nach ist dieses Vorurteil, wenn es jemals richtig war, schon lange überholt.</em></p>
<p><em><strong>SDB:</strong> Von welchem Programmier-Tipp oder Leitsatz haben Sie persönlich am meisten profitiert?</em></p>
<p><em>Seelemann: &#8220;Eat your own dogfood!&#8221;. Soll heißen: wer sein eigenes Programm nicht ernsthaft selber nutzt, merkt wahrscheinlich nie, wo sich die wahren Probleme verstecken.</em></p>
<p><em><strong>SDB</strong>: Mit welchen aktuellen Programmiersprachen und/oder Tools sollten sich Developer in diesem Jahr unbedingt beschäftigen, um „up-to-date“ zu bleiben?</em></p>
<p><em>Seelemann: Da ich ja nur in der Apple-Welt unterwegs bin, kann ich auch nur dazu etwas sagen: Das ist derzeit vor allem <a href="http://developer.apple.com/technologies/ios5/" target="_blank">Automatic Reference Counting für OS X Lion und iOS 5</a>. Aber auch die Unterstützung des neuen Dienstes <a href="http://developer.apple.com/icloud/index.php" target="_blank">iCloud</a> wird innerhalb kürzester Zeit zum Standard für alle Programme werden. Aktuell sind auch immer noch Grand Central Dispatch für die Parallelprogrammierung und Blöcke einen genaueren Blick wert. Wer das immer noch nicht nutzt, ist selber schuld.</em></p>
<p><em><strong>SDB</strong>: Für das Betriebssystem der Zukunft haben Sie drei Wünsche frei! Welche sind das? </em></p>
<p><em>Seelemann: Wenn ich ganz ehrlich bin, ist der Status Quo mittlerweile schon relativ ausgereift. Mir fallen zwar eine Masse an kleineren Ideen ein, für drei große Wünsche bin ich aber überfragt.</em></p>
<p><em><strong>SDB</strong>: Welchen Tipp haben Sie für Programmierer, die möglichst schnell ihre Apps erfolgreich im Markt platzieren möchten?</em></p>
<p><em>Seelemann: Natürlich müssen ein paar Grundvoraussetzungen erfüllt sein: Das Programm muss eine klare Funktion bieten und diese zuverlässig erfüllen. Desweiteren sollte es sich von der Konkurrenz deutlich abgrenzen und (sinnvolle) Funktionen bieten</em><em>, die kein anderes Programm aufweist.</em></p>
<p><em>Es geht aber auch um ein optisch ansprechendes Äußeres („Design“), das sehr wichtig und oft sogar essentiell ist. Design darf aber nicht über fehlende Funktionen hinwegtäuschen.</em></p>
<p><em>Und schlussendlich muss Marketing betrieben werden. Hierzu sollte man viele (Presse-/Blog-)Leute persönlich anschreiben, gezielt Coupon Codes verteilen, öffentlich auf <a title="Software Dev Blog auf Twitter folgen" href="http://twitter.com/sw_devtwits" target="_blank">Twitter</a> und Co auftreten, und vieles mehr.</em></p>
<p><em><strong>SDB</strong>: Welche(s) Webseite oder Online-Magazin empfehlen Sie, die oder das jeder Entwickler kennen sollte?</em></p>
<p><em>Seelemann: <a href="http://StackOverflow.com" target="_blank">StackOverflow.com</a> ist die wohl mit Abstand am besten funktionierende und hilfreichste Webseite für Entwickler. Wenige Fragen wurden dort bisher noch nicht gestellt. Wenn dennoch eine Antwort fehlt, wird sie meistens innerhalb von ein paar Stunden von der Community gefunden.</em></p>
<p><em><strong>SDB:</strong> Was gefällt Ihnen am Software Dev Blog? Was könnten wir besser machen?</em><br />
<em></em></p>
<p><em>Seelemann: Ich muss ganz ehrlich zugeben, dass ich den Blog erst kürzlich kennengelernt habe. Er deckt sich auch nur sehr wenig mit meinen <a title="Mac OS X Lion steht vor der Tür: Das bringt es für Entwickler" href="http://www.software-dev-blog.de/mac-os-x-lion-steht-vor-der-tur-das-bringt-es-fur-entwickler/07/2011/">Aktionsfeldern Mac und iOS</a>. Vielleicht kann man in diese Richtung etwas tun?</em></p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/trend-report-2011-max-seelemann-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/&via=sw_devtwits&text=Trend Report 2011: Max Seelemann gibt Antworten zu Tools, Programmiersprachen und mehr &related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/trend-report-2011-max-seelemann-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/&via=sw_devtwits&text=Trend Report 2011: Max Seelemann gibt Antworten zu Tools, Programmiersprachen und mehr &related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/trend-report-2011-max-seelemann-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trend Report 2011: Klaus Bock gibt Antworten zu Tools, Programmiersprachen und mehr</title>
		<link>http://www.software-dev-blog.de/trend-report-2011-klaus-bock-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/</link>
		<comments>http://www.software-dev-blog.de/trend-report-2011-klaus-bock-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/#comments</comments>
		<pubDate>Wed, 05 Oct 2011 11:48:24 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Trend Report 2011]]></category>
		<category><![CDATA[Umfrage]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1791</guid>
		<description><![CDATA[Neue Woche, neues Interview in Sachen Trend Report 2011. Dieses Mal ist Klaus Bock an der Reihe, der schon mal gern Dieter Nuhr zitiert, sich eine verbesserte Sprachsteuerung wünscht und MSDN grundsätzlich für eine nützliche Webseite hält. Software Dev Blog: Herr Bock, mit welchem Satz reagieren Sie auf das Vorurteil „Programmieren ist der langweilige Zeitvertreib [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1792" class="wp-caption alignright" style="width: 210px"><img class="size-full wp-image-1792 " style="margin-top: 5px; margin-bottom: 5px; margin-left: 10px; margin-right: 10px;" title="Klaus Bock" src="http://www.software-dev-blog.de/wp-content/images/2011/10/Klaus-Bock.jpg" alt="Klaus Bock" width="200" height="300" /><p class="wp-caption-text">Klaus Bock</p></div>
<p>Neue Woche, neues Interview in Sachen <a title="Trend Report 2011" href="http://www.software-dev-blog.de/trend-report-2011/">Trend Report 2011</a>. Dieses Mal ist <a title="Klaus Bock auf Twitter folgen" href="http://twitter.com/klaus_b0" target="_blank">Klaus Bock</a> an der Reihe, der schon mal gern Dieter Nuhr zitiert, sich eine verbesserte Sprachsteuerung wünscht und MSDN grundsätzlich für eine nützliche Webseite hält.</p>
<p><em><strong>Software Dev Blog:</strong> Herr Bock, mit welchem Satz reagieren Sie auf das Vorurteil „Programmieren ist der langweilige Zeitvertreib von Nerds, die keine Freunde haben“?</em></p>
<p><em>Klaus Bock: Hier würde ich gerne Dieter Nuhr zitieren: „Wenn man keine Ahnung hat, einfach mal die Fresse halten.“</em></p>
<p><em><strong>SDB:</strong> Von welchem Programmier-Tipp oder Leitsatz haben Sie persönlich am meisten profitiert?</em></p>
<p><em>Bock: &#8220;All input is evil until proven otherwise!&#8221;</em></p>
<p><em><strong>SDB</strong>: Mit welchen aktuellen Programmiersprachen und/oder Tools sollten sich Developer in diesem Jahr unbedingt beschäftigen, um „up-to-date“ zu bleiben?</em></p>
<p><em>Bock: Da sich mobile Endgeräte immer mehr vom Gadget zum Arbeitsgerät entwickeln, sollte man sich mit möglichst vielen Dingen rund um diese Thematik beschäftigen. Ob das Apps sind oder Webseiten für mobile Geräte, kann jeder für sich entscheiden.</em></p>
<p><em><strong>SDB</strong>: Für das Betriebssystem der Zukunft haben Sie drei Wünsche frei! Welche sind das? </em></p>
<p><em></em><em>1. Verbesserte Benutzbarkeit, d.h. die Anwender sollten besser <em>mit Hilfe verständlicher Hilfemenüs </em>unterstützt und nicht durch verwirrende</em><em> Fehlermeldungen verunsichert werden.</em></p>
<p><em></em><em>2. Zeitnahe Unterstützung aktueller Hardware-Standards. Ich will nicht jedes Mal erst auf die nächste Version warten müssen.</em></p>
<p><em></em><em>3. Sprachsteuerung auf Betriebssystemebene.</em></p>
<div>
<p><em><strong>SDB</strong>: Welchen Tipp haben Sie für Programmierer, die möglichst schnell ihre Apps erfolgreich im Markt platzieren möchten?</em></p>
<p><em>Bock: Erkundigt euch, was wirklich benötigt wird und bleibt realistisch in der Preisgestaltung. Und eine fehlerfreie Funktionalität ist Grundvoraussetzung für ein gutes Produkt. Ihr wollt ja schließlich Geld dafür.</em></p>
<p><em><strong>SDB</strong>: Hier können Sie eine Webseite oder ein Online-Magazin empfehlen, die oder das jeder Entwickler kennen sollte.</em></p>
<p><em>Bock: Auch wenn viele darüber schimpfen, mir hat das <a href="http://www.msdn.de" target="_blank">MSDN</a> immer gute Dienste erwiesen.</em></p>
<p><em><strong>SDB:</strong> Was gefällt Ihnen am Software Dev Blog? Was könnten wir besser machen?</em></p>
<p><em>Bock: Mir gefallen der hohe Informationsgehalt sowie die Professionalität des Blogs. Trotzdem könnte es mehr die Persönlichkeit des Autors widerspiegeln. Es ist nun mal ein Blog und kein Nachschlagewerk. Oder etwa doch?</em></p>
</div>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/trend-report-2011-klaus-bock-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/&via=sw_devtwits&text=Trend Report 2011: Klaus Bock gibt Antworten zu Tools, Programmiersprachen und mehr &related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/trend-report-2011-klaus-bock-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/&via=sw_devtwits&text=Trend Report 2011: Klaus Bock gibt Antworten zu Tools, Programmiersprachen und mehr &related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/trend-report-2011-klaus-bock-gibt-antworten-zu-tools-programmiersprachen-und-mehr/10/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Live von der GDC Europe 2011: Christian Heckl von Lumatix im Interview</title>
		<link>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-christian-heckl-von-lumatix-im-interview/08/2011/</link>
		<comments>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-christian-heckl-von-lumatix-im-interview/08/2011/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 15:10:06 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Visual Computing]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Lumatix]]></category>
		<category><![CDATA[Raytracing]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1731</guid>
		<description><![CDATA[Wenn es um 3D-Visualisierungen und Visual Effects geht, hat sich Intel-Partner Lumatix bereits einen internationalen Namen gemacht. Nun möchte das Unternehmen seine innovative Global Illumination-Technologie auch im Spielemarkt platzieren. Im Interview klärt Managing Director Christian Heckl, welche Software-Hersteller von den aktuellen Lösungen profitieren können und wie sein Unternehmen den Intel VTune Amplifier beim Software-Design gewinnbringend [...]]]></description>
			<content:encoded><![CDATA[<p>Wenn es um 3D-Visualisierungen und Visual Effects geht, hat sich Intel-Partner <a href="http://www.lumatix.com/?lang=de" target="_blank">Lumatix</a> bereits einen internationalen Namen gemacht. Nun möchte das Unternehmen seine innovative Global Illumination-Technologie auch im Spielemarkt platzieren. Im Interview klärt Managing Director Christian Heckl, welche Software-Hersteller von den aktuellen Lösungen profitieren können und wie sein Unternehmen den Intel VTune Amplifier beim Software-Design gewinnbringend eingesetzt hat. Zudem gibt er eine kurze Demo des Tools Atrium Designer.</p>
<p>Hier das sehr sehenswerte Video dazu:</p>
<p>&nbsp;<br />
<object style="height: 304px; width: 500px"><param name="movie" value="http://www.youtube.com/v/-h8sk6ZnH7w?version=3"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><embed src="http://www.youtube.com/v/-h8sk6ZnH7w?version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="500" height="304"></object><br />
&nbsp;</p>
<p>Und weitere Informationen finden Sie auf der Webseite unter <a href="http://www.lumatix.com/?lang=de" target="_blank">www.lumatix.com</a>.</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-christian-heckl-von-lumatix-im-interview/08/2011/&via=sw_devtwits&text=Live von der GDC Europe 2011: Christian Heckl von Lumatix im Interview&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-christian-heckl-von-lumatix-im-interview/08/2011/&via=sw_devtwits&text=Live von der GDC Europe 2011: Christian Heckl von Lumatix im Interview&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-christian-heckl-von-lumatix-im-interview/08/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Live von der GDC Europe 2011: Andrew Bowell von Havok im Interview</title>
		<link>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-andrew-bowell-von-havok-m-interview/08/2011/</link>
		<comments>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-andrew-bowell-von-havok-m-interview/08/2011/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 12:07:43 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Visual Computing]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[GDC Europe 2011]]></category>
		<category><![CDATA[GDC11]]></category>
		<category><![CDATA[Havok]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Simulation]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1724</guid>
		<description><![CDATA[In diesem Jahr ist das irische Unternehmen Havok aus Dublin Partnerunternehmen von Intel auf der GDC Europe. Havok ist einer der weltweit wichtigsten Software-Schmieden für Simulationstechnologien und Middleware. Zu deutsch: Sie produzieren Scripts und Code, die die Figuren im Spiel, deren Bewegungen, Optik, Kämpfe und Klamotten real erscheinen lassen. Havok arbeitet mit Spielefabrikanten auf der [...]]]></description>
			<content:encoded><![CDATA[<p>In diesem Jahr ist das irische Unternehmen <a href="http://www.havok.com/" target="_blank">Havok</a> aus Dublin Partnerunternehmen von Intel auf der GDC Europe. Havok ist einer der weltweit wichtigsten Software-Schmieden für Simulationstechnologien und Middleware. Zu deutsch: Sie produzieren Scripts und Code, die die Figuren im Spiel, deren Bewegungen, Optik, Kämpfe und Klamotten real erscheinen lassen. Havok arbeitet mit Spielefabrikanten auf der ganzen Welt zusammen. Klassiker wie Halo:Reach nutzen Havok-Lösungen, um komplizierte Rendering- und Textur-Probleme zu lösen.</p>
<p>Am Dienstagmittag hatte ich mit Tom zusammen die Gelegenheit mit Andrew Bowell, dem Head of Product Management, über das Unternehmen, die Lösungen, die Bedeutung der GDC und die Partnerschaft mit Intel zu sprechen.</p>
<p><center><br />
<object style="height: 304px; width: 500px"><param name="movie" value="http://www.youtube.com/v/_29FE9fZGiw?version=3"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><embed src="http://www.youtube.com/v/_29FE9fZGiw?version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="500" height="304"></object></p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-andrew-bowell-von-havok-m-interview/08/2011/&via=sw_devtwits&text=Live von der GDC Europe 2011: Andrew Bowell von Havok im Interview&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-andrew-bowell-von-havok-m-interview/08/2011/&via=sw_devtwits&text=Live von der GDC Europe 2011: Andrew Bowell von Havok im Interview&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-andrew-bowell-von-havok-m-interview/08/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Live von der GDC Europe 2011: Levent Akyil im Interview</title>
		<link>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-levent-akyil-im-interview/08/2011/</link>
		<comments>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-levent-akyil-im-interview/08/2011/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 10:48:11 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Visual Computing]]></category>
		<category><![CDATA[GDC Europe 2011]]></category>
		<category><![CDATA[GDC11]]></category>
		<category><![CDATA[Interview]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1722</guid>
		<description><![CDATA[Nach seiner Session “Hotspot Flops &#38; uOps” hatten Tom und ich die Gelegenheit, Levent zu interviewen, um ein paar Kernthemen seiner Präsentation zu vertiefen. Wir wollten von ihm wissen, welche Anforderungen sich auch unter Sandy Bridge-Architekturen für Programmierer ergeben, die Wert auf fehlerbereinigten, parallelen Code legen. Zudem haben wir ihn gebeten, die Idee hinter AVX [...]]]></description>
			<content:encoded><![CDATA[<p>Nach seiner <a href="http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-levent-akyil-zu-%E2%80%9Chotspot-flops-uops%E2%80%9D/08/2011/">Session “Hotspot Flops &amp; uOps”</a> hatten Tom und ich die Gelegenheit, Levent zu interviewen, um ein paar Kernthemen seiner Präsentation zu vertiefen. Wir wollten von ihm wissen, welche Anforderungen sich auch unter Sandy Bridge-Architekturen für Programmierer ergeben, die Wert auf fehlerbereinigten, parallelen Code legen. Zudem haben wir ihn gebeten, die Idee hinter AVX zu erklären und zu erläutern, warum der VTune Amplifier 2011 XE ein unverzichtbares Tool ist – nicht nur für Games Developer. Viel Spaß damit!</p>
<p><object style="height: 304px; width: 500px"><param name="movie" value="http://www.youtube.com/v/aIT7cr9J7eM?version=3"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><embed src="http://www.youtube.com/v/aIT7cr9J7eM?version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="500" height="304"></object></p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-levent-akyil-im-interview/08/2011/&via=sw_devtwits&text=Live von der GDC Europe 2011: Levent Akyil im Interview&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-levent-akyil-im-interview/08/2011/&via=sw_devtwits&text=Live von der GDC Europe 2011: Levent Akyil im Interview&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/live-von-der-gdc-europe-2011-levent-akyil-im-interview/08/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Live-Berichterstattung von der Dotnet Cologne 2011 – Teil 1</title>
		<link>http://www.software-dev-blog.de/live-bericht-von-der-dotnet-cologne-2011-%e2%80%93-teil-1/05/2011/</link>
		<comments>http://www.software-dev-blog.de/live-bericht-von-der-dotnet-cologne-2011-%e2%80%93-teil-1/05/2011/#comments</comments>
		<pubDate>Fri, 06 May 2011 13:16:40 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Parallel Studio XE]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1584</guid>
		<description><![CDATA[Start frei für die dotnet Cologne 2011 – eine der kleineren, aber durchaus wichtigen Entwicklerkonferenzen für den .NET-Bereich. Positiv fällt auf, dass die Location wirklich schön ist. Freundliche Konferenzräume, heller, wenn auch sehr kleiner Ausstellungsbereich. Negativ bleibt festzuhalten, dass es im Ausstellungs-und Pausenbereich absolut keine Stühle gibt (ich sitze auf einer Kiste). Liebe Veranstalter, das [...]]]></description>
			<content:encoded><![CDATA[<p><a title="DNC11: Eröffnungskeynote von und mit Roland Weigelt und Albert Weinert by SoftwareDevBlog, on Flickr" href="http://www.flickr.com/photos/softwaredevblog/5692307109/"><img src="http://farm6.static.flickr.com/5307/5692307109_6fcc94c45f.jpg" alt="DNC11: Eröffnungskeynote von und mit Roland Weigelt und Albert Weinert" width="500" height="375" /></a></p>
<p>Start frei für die <a href="http://www.dotnet-cologne.de" target="_blank">dotnet Cologne 2011</a> – eine der kleineren, aber durchaus wichtigen Entwicklerkonferenzen für den .NET-Bereich.</p>
<p>Positiv fällt auf, dass die Location wirklich schön ist. Freundliche Konferenzräume, heller, wenn auch sehr kleiner Ausstellungsbereich. Negativ bleibt festzuhalten, dass es im Ausstellungs-und Pausenbereich absolut keine Stühle gibt (ich sitze auf einer Kiste). Liebe Veranstalter, das könnt ihr beim nächsten Mal sicher besser machen.</p>
<p>In diesem Jahr nehmen die Themen Silverlight und <a href="http://www.it-techblog.de/fazit-das-war-die-wp7-teched-europe-2010/11/2010/" target="_blank">Windows Phone 7</a> sehr viel Raum ein. Unser Highlight ist aber selbstverständlich der Vortrag zum Thema „<a href="http://www.dotnet-cologne.de/Vortraege.ashx#IntelParallel" target="_blank">Parallelisierung und Skalierbarkeit in nativer C/C++ Softwareentwicklung &#8211; leichter als je zuvor</a>“ von Hubert Haberstock.</p>
<p>Ich werde live davon bloggen, hatte aber schon vorher die Möglichkeit, Hubert ein paar Fragen zu stellen.</p>
<div id="attachment_1590" class="wp-caption alignleft" style="width: 160px"><a href="http://www.software-dev-blog.de/wp-content/images/2011/05/hubert-portrait.png"><img class="size-thumbnail wp-image-1590" title="Hubert Haberstock" src="http://www.software-dev-blog.de/wp-content/images/2011/05/hubert-portrait-150x150.png" alt="Hubert Haberstock" width="150" height="150" /></a><p class="wp-caption-text">Hubert Haberstock</p></div>
<p><strong>Wen adressiert Intel Parallel Studio XE? Welche Programmierer profitieren am meisten davon?</strong><br />
<em>Parallel Studio XE ist ein Visual Studio-Plug-In, das Parallelisierung von nativem Code unter C und C++ ermöglicht. Es bietet diverse Multithreading-Methoden und Tools, die Entwicklern helfen, auf der Hardware-Ebene schnellere und fehlerbereinigte Apps zu programmieren. Auch Fortran wird von Parallel Studio unterstützt.</em></p>
<p><strong>Von welchen Funktionen profitieren Anwender?</strong><br />
<em>Vor allem natürlich von der Vektorisierung. Programmierer können ab sofort Multimedia-Register-OPs verwenden wie AVX, und so mit einfachen Methoden parallelen Code produzieren. Zudem profitieren Entwickler von der Möglichkeit, ohne Managed Code direkt die Hardware zu steuern. </em></p>
<p><strong>Stichwort Debugging: Was können Programmierer von den Debugger-Erweiterungen erwarten?</strong><br />
<em>Es gibt eine Parallel Debugging Extension, die selbstverständlich nicht den Microsoft-Compiler ersetzt, unter Cilk, OpenMP und TBB (Intel Threading Building Blocks) aber sehr gute Dienste leistet.</em></p>
<p><strong>Data Races und Bootlenecks gehören zu den häufigsten Schwachstellen in parallelem Code. Was leistet hier Parallel Studio XE, um Fehler dieser Art zu vermeiden?</strong><br />
<em>Parallel Studio XE bietet leistungsstarke Performance- und Analyse-Tools, die dazu beitragen, typische Fehlerquellen im Code offenzulegen, selbstverständlich zunächst im seriellen Code. Allen voran der VTune Amplifier, der Bottlenecks aufspürt. Ein weiteres wichtiges Tool ist der Inspector, mit dem Entwickler sehr schnell Data Races und Deadlocks erkennen können. Insofern arbeitet der Inspector als Debugger. Als sehr praktisch erweist sich die Option, den kompletten Code zunächst mit dem Statitc Security Analyzer einer sehr schnellen, statischen Analyse zu unterziehen und im Anschluss Codebestandteile in Echtzeit zu prüfen. Der Programmierer weiß dann, wie sich der Code tatsächlich innerhalb der App verhalten wird.</em></p>
<p><strong>Intel Array Building Blocks steht mit der Beta-Version in den Startlöchern. Kannst du unseren Lesern das Konzept hinter den Intel Array Building Blocks kurz erklären?</strong><br />
<em>Intel Array Building Blocks sind Spracherweiterungen für parallele Patterns, die eine Parallelisierung schon auf Code-Ebene ermöglichen. So werden unter Intel Array Buildung Blocks (ArBB) „for“-Loops durch Vektoranweisungen ersetzt. Ein zweiter Aspekt: Die dynamische Laufzeitumgebung passt den Code auf die Target-Architektur an, also exakt auf die Hardware, für die der Code konzipiert wurde.</em></p>
<p><strong>Letzte Frage: Mit welchen Tools zur Parallelprogrammierung sollten sich Entwickler unbedingt beschäftigen, um effizienter zu arbeiten?</strong><br />
<em>Keine Frage, das ist Parallel Studio – ein komplettes Öko-System aus optimierenden Compilern, Libraries, Tuning-Tools und Analyzer-Werkzeugen für native Code-Umgebungen. Nicht nur, aber auch gerade für Einsteiger ein unverzichtbares Tool-Set.</em></p>
<p>Heute nachmittag geht es weiter. Dann werde ich selbstverständlich auch von Huberts Präsentation berichten.</p>
<p><a title="DNC11: Erste Gespräche und ein zweites Frühstück by SoftwareDevBlog, on Flickr" href="http://www.flickr.com/photos/softwaredevblog/5692307217/"><img src="http://farm6.static.flickr.com/5106/5692307217_1c05ca24f2.jpg" alt="DNC11: Erste Gespräche und ein zweites Frühstück" width="500" height="375" /></a></p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/live-bericht-von-der-dotnet-cologne-2011-%e2%80%93-teil-1/05/2011/&via=sw_devtwits&text=Live-Berichterstattung von der Dotnet Cologne 2011 – Teil 1&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/live-bericht-von-der-dotnet-cologne-2011-%e2%80%93-teil-1/05/2011/&via=sw_devtwits&text=Live-Berichterstattung von der Dotnet Cologne 2011 – Teil 1&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/live-bericht-von-der-dotnet-cologne-2011-%e2%80%93-teil-1/05/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lernen von erfahrenen Programmierern &#8211; Teil 2</title>
		<link>http://www.software-dev-blog.de/lernen-von-erfahrenen-programmierern-teil-2/04/2011/</link>
		<comments>http://www.software-dev-blog.de/lernen-von-erfahrenen-programmierern-teil-2/04/2011/#comments</comments>
		<pubDate>Thu, 28 Apr 2011 20:06:28 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Entwickler]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Tipps]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1579</guid>
		<description><![CDATA[Am Mittwoch erst habe ich Auszüge eines Interviews mit eigenen Anmerkungen veröffentlicht, das die Kollegen des SoftTalk-Blog mit dem Software-Entwickler Asaf Shelly geführt haben. Im ersten Teil ging es vor allem um Fragen wie: Was war deine größte Herausforderung beim Umstieg auf die Parallelprogrammierung? Was ist ein guter Tipp für angehende Parallelprogrammierer? Was bringen Sandy [...]]]></description>
			<content:encoded><![CDATA[<p>Am Mittwoch erst habe ich Auszüge eines Interviews mit eigenen Anmerkungen <a title="Lernen von einem erfahrenen Programmierer: Asaf Shelly" href="http://www.software-dev-blog.de/lernen-von-einem-erfahrenen-programmierer-asaf-shelly/04/2011/">veröffentlicht</a>, das die Kollegen des SoftTalk-Blog mit dem Software-Entwickler Asaf Shelly geführt haben. Im ersten Teil ging es vor allem um Fragen wie:</p>
<blockquote><p>Was war deine größte Herausforderung beim Umstieg auf die Parallelprogrammierung?</p></blockquote>
<blockquote><p>Was ist ein guter Tipp für angehende Parallelprogrammierer?</p></blockquote>
<blockquote><p>Was bringen Sandy Bridge und AVX für parallel ablaufende Anwendungen?</p></blockquote>
<p>Der zweite Teil hingegen befasst sich mit Fragen wie:</p>
<blockquote><p>Welche Programmiermodelle werden sich durchsetzen?</p></blockquote>
<p>Laut Asafs Aussage werden objektorientierte Programmiermodelle wie C++ zwar weiterhin bestehen, allerdings stoßen sie beim Parallelprogrammieren immer wieder an ihre Grenzen, da es sehr schwer ist, Tasks zu kontrollieren. Asaf glaubt, dass man in Zukunft auf der obersten Abstraktionsebene viel stärker in Tasks denken muss, um dann im weiteren Verlauf mit Objekten arbeiten zu können. Allerdings behebt auch diese Heransgehensweise nicht das Problem immer wieder auftretender Zufallsabstürze, wie man sie beispielsweise bei Borland C++ 5.0 beobachten kann. Fazit: neue Programmiermodelle müssen her! Und Tools wie der <a title="Intel Software Developer Conference 2011 (II): Intel VTune Amplifier XE in Action" href="http://www.software-dev-blog.de/intel-software-developer-conference-2011-ii-intel-vtune-amplifier-xe-in-action/04/2011/">VTune Amplifier XE</a> für das Aufspüren potenzieller Abstürze von parallel programmierten Anwendungen.</p>
<blockquote><p>Welche Programmiersprachen bevorzugst du?</p></blockquote>
<p>Asaf setzt für seine Programme &#8211; der ersten Frage zum Trotz &#8211; am liebsten noch auf C und C++ (für den Programmcode) und auf C# (für das Programmieren für Bedieneroberflächen). Zudem lassen sich beide Sprachen mithilfe von .NET-Wrappern prima innerhalb derselben Entwicklungsumgebung wie <a title="AVX mit Visual Studio 2010 und OpenMP optimal einsetzen" href="http://www.software-dev-blog.de/avx-mit-visual-studio-2010-und-openmp-optimal-einsetzeni/01/2011/">Visual Studio</a> verwenden.</p>
<blockquote><p>Was sollte man Studenten empfehlen, die sich mit dem Thema Parallelprogrammierung beschäftigen wollen?</p></blockquote>
<p>Guter parallel programmierter Code beginnt bereits mit dem Design. Denkt also nicht seriell, sondern parallel! Gute Anwendungen müssen sogar parallel programmiert sein, da der Computer von Haus parallel arbeitet, da er ja auf mehrere Ereignisse aus unterschiedlichen Richtungen gleichzeitig reagieren muss. Um den seriellen Eingabestrang, dem wir immer noch unterworfen sind, aufzubrechen, sollte man laut Asaf mit Threads oder Thread-Pools arbeiten. Parallelprogrammierung beginnt also in den Köpfen und erfordert sehr viel Arbeit und Umdenken beim Einsatz bekannter Modelle.</p>
<p>Das vollständige Interview können Sie auf dem SoftTalk-Blog nachlesen (<a href="http://softtalkblog.com/2011/04/26/programmer-profile-asaf-shelly/" target="_blank">Teil 1</a> und <a href="http://softtalkblog.com/2011/04/27/programmer-profile-asaf-shelly-part-2/" target="_blank">Teil 2</a>).</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/lernen-von-erfahrenen-programmierern-teil-2/04/2011/&via=sw_devtwits&text=Lernen von erfahrenen Programmierern - Teil 2&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/lernen-von-erfahrenen-programmierern-teil-2/04/2011/&via=sw_devtwits&text=Lernen von erfahrenen Programmierern - Teil 2&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/lernen-von-erfahrenen-programmierern-teil-2/04/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lernen von einem erfahrenen Programmierer: Asaf Shelly</title>
		<link>http://www.software-dev-blog.de/lernen-von-einem-erfahrenen-programmierer-asaf-shelly/04/2011/</link>
		<comments>http://www.software-dev-blog.de/lernen-von-einem-erfahrenen-programmierer-asaf-shelly/04/2011/#comments</comments>
		<pubDate>Wed, 27 Apr 2011 13:52:16 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Entwickler]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Tipps]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1568</guid>
		<description><![CDATA[Die lieben Kollegen des SoftTalk-Blog haben einen Intel Black-Belter interviewt, namentlich Asaf Shelly. Asaf Shelly ist Software-Entwickler und arbeitet unter anderem am Thema Parallelprogrammierung. Darüber hinaus wird er auf dem Intel-Entwickler-Event teilnehmen, das am 10. Mai in München stattfinden wird. Grund genug, Teile des Interviews mit Asaf hier wiederzugeben. Zudem möchten wir Sie an dieser [...]]]></description>
			<content:encoded><![CDATA[<p>Die lieben Kollegen des <a href="http://softtalkblog.com/2011/04/26/programmer-profile-asaf-shelly/" target="_blank">SoftTalk-Blog</a> haben einen Intel Black-Belter interviewt, namentlich Asaf Shelly. Asaf Shelly ist Software-Entwickler und arbeitet unter anderem am Thema Parallelprogrammierung. Darüber hinaus wird er auf dem <a title="Auf geht’s: Intel-Entwickler-Event in München am 10. Mai" href="http://www.software-dev-blog.de/auf-gehts-intel-entwickler-event-in-munchen-am-10-mai/04/2011/">Intel-Entwickler-Event</a> teilnehmen, das am 10. Mai in München stattfinden wird. Grund genug, Teile des Interviews mit Asaf hier wiederzugeben.</p>
<p><strong>Zudem möchten wir Sie an dieser Stelle noch einmal herzlich zu der exklusiven und kostenlosen Entwickler-Veransaltung einladen! Es sind nur noch wenige Plätze frei. <a href="http://software.intel.com/en-us/articles/isn-black-belts-event-munichlondon-registration/">Melden Sie sich am besten noch heute an</a>!</strong></p>
<p>Nun aber zu dem Interview: Eine wichtige Frage handelt von den Herausforderungen, mit denen Asaf in Sachen Parallelprogrammierung konfrontiert wurde. Dazu hat er eine ganz einfache Antwort parat: Der Umstieg war die größte Hürde, da es gar nicht so einfach war, parallel und nicht mehr seriell zu denken. So hatte er echte Schwierigkeiten, für kritische Code-Abschnitte einen Mutex anstatt eines Locks zu verwenden. Außerdem musste er beispielsweise erst mal lernen, dass ein Mutex nicht die kritische Sektion, sondern die betreffende Ressource, also die involvierten Speicherbereiche schützt.</p>
<p>Ein sehr schönes Bild hält Asaf auf die Frage bereit, was denn der beste Tipp in Sachen Parallelprogrammierung sei. Sein Antwort: Man muss wie Menschen und nicht wie Maschinen denken. Als konkreten Fall nennt er einen Schnellimbiss, bei dem mehrere Leute an mehreren Verkaufstheken gleichzeitig bestellen, und diese Bestellungen anschließend von verschiedenen Mitarbeitern des Restaurants bearbeitet und an die Kunden ausgegeben werden. Genau so verhält es sich nämlich mit asynchroner Datenverarbeitung mithilfe von Task-Queues, Worker-Threads und vielem mehr.</p>
<p>Interessant sind auch Asafs Antworten auf die Fragen, was <a title="Sandy Bridge, AVX und Core-CPUs: GCC 4.6 mag Intel" href="http://www.software-dev-blog.de/sandy-bridge-avx-und-core-cpus-gcc-4-6-mag-intel/03/2011/">Sandy Bridge</a> und <a title="Wie Entwickler von neuen Sandy-Bridge-Registern und -Ops profitieren" href="http://www.software-dev-blog.de/wie-entwickler-von-neuen-sandy-bridge-registern-und-ops-profitieren/02/2011/">AVX</a> für Entwickler tun können. So sieht er in der neuen Core-Architektur eine erhebliche Verbesserung für parallel programmierte Anwendungen, da aufgrund des Core-to-Core-Designs Daten schneller zwischen den einzelnen Prozessorkernen hin- und herfließen können, was die Zahl an Bottlenecks erheblich reduziert.</p>
<p>Als Beispiel führt er die Berechnung einer Aufgabe an, die ohne AVX vier Prozessorkerne mitsamt aller Sycnhronisationsalgorithmen erfordert. Mithilfe von AVX geschieht dies wegen der breiteren Register auf einem einzigen Prozessorkern, was natürlich viel zu besser handhabbar ist. AVX kann laut Asaf in bestimmten Fällen bis zu 16 Prozessorkerne eliminieren.</p>
<p>Die Fortsetzung des interssanten Interviews können Sie am Freitag hier lesen.</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/lernen-von-einem-erfahrenen-programmierer-asaf-shelly/04/2011/&via=sw_devtwits&text=Lernen von einem erfahrenen Programmierer: Asaf Shelly&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/lernen-von-einem-erfahrenen-programmierer-asaf-shelly/04/2011/&via=sw_devtwits&text=Lernen von einem erfahrenen Programmierer: Asaf Shelly&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/lernen-von-einem-erfahrenen-programmierer-asaf-shelly/04/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Videochat] Manuel Wille von Nik Software zu Multicore-Optimierungen, AVX und Parallel Studio XE</title>
		<link>http://www.software-dev-blog.de/videochat-manuel-wille-von-nik-software-zu-multicore-optimierungen-avx-und-parallel-studio-xe/04/2011/</link>
		<comments>http://www.software-dev-blog.de/videochat-manuel-wille-von-nik-software-zu-multicore-optimierungen-avx-und-parallel-studio-xe/04/2011/#comments</comments>
		<pubDate>Wed, 20 Apr 2011 20:40:51 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Bildbearbeitung]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[ISC11]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1561</guid>
		<description><![CDATA[Hoch droben über den Dächern von Dubrovnik bekam ich ihn vor die HD-Kamera, inklusive Wind und Meerrauschen: Manuel Wille, seines Zeichen Vice President Engineering bei der Nik Software GmbH. Manuel spricht in unserem Interview über die Optimierungen, die Nik Software an HDR Efex Pro vorgenommen hat. Die Rede ist aber auch von den Leistungssteigerungen, die [...]]]></description>
			<content:encoded><![CDATA[<p>Hoch droben über den Dächern von <a title="Ausblick auf die Intel Software Conference 2011 in Dubrovnik" href="http://www.software-dev-blog.de/ausblick-auf-die-intel-software-conference-2011-in-dubrovnik/03/2011/">Dubrovnik</a> bekam ich ihn vor die HD-Kamera, inklusive Wind und Meerrauschen: <a title="Skalierende Filter: Nik Software setzt auf Multicore" href="http://www.software-dev-blog.de/skalierende-filter-nik-software-setzt-auf-multicore/01/2009/">Manuel Wille</a>, seines Zeichen Vice President Engineering bei der <a href="http://www.niksoftware.com/index/de/entry.php" target="_blank">Nik Software GmbH</a>.</p>
<p>Manuel spricht in unserem Interview über die Optimierungen, die Nik Software an <a href="http://www.niksoftware.com/hdrefexpro/de/entry.php?view=intro" target="_blank">HDR Efex Pro</a> vorgenommen hat. Die Rede ist aber auch von den Leistungssteigerungen, die das Lübecker Unternehmen dank des Einsatzes von <a title="Wie Entwickler von neuen Sandy-Bridge-Registern und -Ops profitieren" href="http://www.software-dev-blog.de/wie-entwickler-von-neuen-sandy-bridge-registern-und-ops-profitieren/02/2011/">AVX-Operationen</a> erzielen konnte. Manuel spricht dabei von 30 bis 40 Prozent.</p>
<p>Und zu guter Letzt geht es noch um die Frage, welche Intel-Tools Nik Software zur Multicore-Optimierung seiner Anwendungen einsetzt. Die zugehörige <a title="Intel Software Developer Conference 2011 (II): Intel VTune Amplifier XE in Action" href="http://www.software-dev-blog.de/intel-software-developer-conference-2011-ii-intel-vtune-amplifier-xe-in-action/04/2011/">Antwort</a> fand ich dann doch einigermaßen überraschend. Doch seht am besten selbst&#8230;</p>
<p><iframe title="YouTube video player" width="520" height="320" src="http://www.youtube.com/embed/GV4zMqRUfok" frameborder="0" allowfullscreen></iframe></p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/videochat-manuel-wille-von-nik-software-zu-multicore-optimierungen-avx-und-parallel-studio-xe/04/2011/&via=sw_devtwits&text=[Videochat] Manuel Wille von Nik Software zu Multicore-Optimierungen, AVX und Parallel Studio XE&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/videochat-manuel-wille-von-nik-software-zu-multicore-optimierungen-avx-und-parallel-studio-xe/04/2011/&via=sw_devtwits&text=[Videochat] Manuel Wille von Nik Software zu Multicore-Optimierungen, AVX und Parallel Studio XE&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/videochat-manuel-wille-von-nik-software-zu-multicore-optimierungen-avx-und-parallel-studio-xe/04/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Videochat] James Reinders von Intel über Entwicklertools, 2012 und MeeGo</title>
		<link>http://www.software-dev-blog.de/videochat-james-reinders-von-intel-uber-entwicklertools-2012-und-meego/04/2011/</link>
		<comments>http://www.software-dev-blog.de/videochat-james-reinders-von-intel-uber-entwicklertools-2012-und-meego/04/2011/#comments</comments>
		<pubDate>Tue, 19 Apr 2011 15:19:37 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Visual Computing]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[ISC11]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1559</guid>
		<description><![CDATA[Auf der diesjährigen Intel Software Conference im wundervollen Dubrovnik hatte ich die Gelegenheit, mit Chief Evangelist James Reinders von Intel ein paar Worte zu wechseln. Dabei ging es um vier schlichte Fragen, die er allesamt recht ausführlich beantwortet hat. Zusammengefasst kann man sagen, dass Entwickler ein oder zwei Augen auf die neuen Intel Array Building [...]]]></description>
			<content:encoded><![CDATA[<p>Auf der diesjährigen <a title="Intel Software-Konferenz 2010: Parallel und mobil" href="http://www.software-dev-blog.de/intel-software-konferenz-2010-parallel-und-mobil/04/2010/">Intel Software Conference</a> im wundervollen Dubrovnik hatte ich die Gelegenheit, mit Chief Evangelist <a title="Intel Software Conference 2011 (I) –  Erste Eindrücke und Ausblicke" href="http://www.software-dev-blog.de/intel-software-conference-2011-i-%e2%80%93-erste-eindrucke-und-ausblicke/04/2011/">James Reinders</a> von Intel ein paar Worte zu wechseln. Dabei ging es um vier schlichte Fragen, die er allesamt recht ausführlich beantwortet hat.</p>
<p>Zusammengefasst kann man sagen, dass Entwickler ein oder zwei Augen auf die neuen <a href="http://software.intel.com/en-us/articles/intel-array-building-blocks/" target="_blank">Intel Array Building Blocks</a> werfen sollten, mit deren Hilfe mathematische Operationen in Zukunft recht einfach auf mehreren Prozessorkernen parallel ausgeführt werden können. Darüber hinaus nahm er sich sogar die Zeit, das Konzept hinter den verwandten <a title="Intel TBB 3.0 mit neuen Funktionen und VS2010-Support" href="http://www.software-dev-blog.de/intel-tbb-3-0-mit-neuen-funktionen-und-vs2010-support/05/2010/">Intel Threading Building Blocks</a> zu erläutern.</p>
<p>Darüber hinaus verfolgt Intel mit <a title="OOP 2011: Ralph de Wargny zu Tools und Trends für Software-Entwickler" href="http://www.software-dev-blog.de/oop-2011-ralph-de-wargny-zu-tools-und-trends-fur-software-entwickler/01/2011/">MIC</a> eine interessante Strategie: dieser Quasi-Nachfolger von Larrabee wird wohl im nächsten Jahr auf den Markt kommen und von sämtlichen Tools unterstützt werden, die es jetzt auch schon gibt. Nur in angepasster und verbesserter Form, natürlich.</p>
<p>Aber auch zu <a href="http://www.it-techblog.de/ubersicht-zu-den-wichtigsten-meego-features/09/2010/" target="_blank">MeeGo</a> und den passenden Entwicklertools hatte James eine dedizierte Meinung, wie sich anhand der Beispiele für künftige MeeGo-Gerätschaften erkennen lässt: so nennt er Tablet-PCs an Nummer Eins, aber auch Handhelds, In-Car-Infotainment- und andere Gadgets werden in Zukunft mit MeeGo laufen. Sagt zumindest Chefentwickler James Reinders.</p>
<p><iframe title="YouTube video player" width="520" height="320" src="http://www.youtube.com/embed/P9ioFgvc-9g" frameborder="0" allowfullscreen></iframe></p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/videochat-james-reinders-von-intel-uber-entwicklertools-2012-und-meego/04/2011/&via=sw_devtwits&text=[Videochat] James Reinders von Intel über Entwicklertools, 2012 und MeeGo&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/videochat-james-reinders-von-intel-uber-entwicklertools-2012-und-meego/04/2011/&via=sw_devtwits&text=[Videochat] James Reinders von Intel über Entwicklertools, 2012 und MeeGo&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/videochat-james-reinders-von-intel-uber-entwicklertools-2012-und-meego/04/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OOP 2011: Stephen Blair-Chappell über die Parallelisierung von Anwendungen</title>
		<link>http://www.software-dev-blog.de/oop-2011-stephen-blair-chappell-uber-die-parallelisierung-von-anwendungen/01/2011/</link>
		<comments>http://www.software-dev-blog.de/oop-2011-stephen-blair-chappell-uber-die-parallelisierung-von-anwendungen/01/2011/#comments</comments>
		<pubDate>Thu, 27 Jan 2011 08:15:08 +0000</pubDate>
		<dc:creator>Oliver</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Basics]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1465</guid>
		<description><![CDATA[Während der OOP 2011 in München hatte ich die Gelegenheit mit Stephen Blair-Chappell zu sprechen, der auf der Entwicklerkonferenz am zweiten Tag seinen Vortrag hielt. Die Präsentation lief unter dem Titel &#8220;Introducing parallelism into legacy code: Three case studies&#8221;. Kurz danach stand uns Stephen für drei kurze Fragen parat: In welche Fallen tappen Software-Entwickler gemeinhin, [...]]]></description>
			<content:encoded><![CDATA[<p>Während der <a href="http://www.software-dev-blog.de/oop-2011-ralph-de-wargny-zu-tools-und-trends-fur-software-entwickler/01/2011/">OOP 2011 in München</a> hatte ich die Gelegenheit mit Stephen Blair-Chappell zu sprechen, der auf der Entwicklerkonferenz am zweiten Tag <a href="http://www.software-dev-blog.de/oop-2011-stephen-blair-chappell-uber-chancen-und-grenzen-der-parallel-programmierung/01/2011/">seinen Vortrag hielt</a>. Die Präsentation lief unter dem Titel &#8220;Introducing parallelism into legacy code: Three case studies&#8221;. Kurz danach stand uns Stephen für drei kurze Fragen parat:</p>
<blockquote><p>In welche Fallen tappen Software-Entwickler gemeinhin, wenn sie versuchen, seriell programmierte Anwendungen zu parallelisieren?</p></blockquote>
<blockquote><p>Gibt es Fälle, in denen es keinen Sinn macht, Teile einer Software-Anwendung zu parallelisieren?</p></blockquote>
<blockquote><p>Existieren gute Beispiele für erfolgreiche und erfolglose Versuche, bestehenden Code zu parallelisieren?</p></blockquote>
<p>Na, dann viel Spaß mit dem Videointerview!</p>
<p><iframe title="YouTube video player" type="text/html" width="500" height="311" src="http://www.youtube.com/embed/FE_cGNMQ0jw" frameborder="0" allowFullScreen></iframe></p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/oop-2011-stephen-blair-chappell-uber-die-parallelisierung-von-anwendungen/01/2011/&via=sw_devtwits&text=OOP 2011: Stephen Blair-Chappell über die Parallelisierung von Anwendungen&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/oop-2011-stephen-blair-chappell-uber-die-parallelisierung-von-anwendungen/01/2011/&via=sw_devtwits&text=OOP 2011: Stephen Blair-Chappell über die Parallelisierung von Anwendungen&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/oop-2011-stephen-blair-chappell-uber-die-parallelisierung-von-anwendungen/01/2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maxon setzt auf Intel Softwaretools für optimierte Apps</title>
		<link>http://www.software-dev-blog.de/maxon-setzt-auf-intel-softwaretools-fur-optimierte-apps/12/2009/</link>
		<comments>http://www.software-dev-blog.de/maxon-setzt-auf-intel-softwaretools-fur-optimierte-apps/12/2009/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 16:58:37 +0000</pubDate>
		<dc:creator>Michael Hülskötter</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Optimieren]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=1271</guid>
		<description><![CDATA[Dass Maxon alles dafür getan hat, ihre Software-Anwendungen wie Cinema 4D für die aktuellen Intel-Prozessoren zu optimieren, darüber habe ich schon vor längeren gebloggt. Und wie es der Zufall wollte (ok, der natürlich keiner war), konnten wir mit Maxon höchstpersönlich darüber reden, wie sie es immer wieder schaffen, dass ihre Anwendungen besonders performant auf Rechnern [...]]]></description>
			<content:encoded><![CDATA[<p>Dass Maxon alles dafür getan hat, ihre Software-Anwendungen wie Cinema 4D für die aktuellen Intel-Prozessoren zu optimieren, darüber habe ich schon <a title="Maxon-Multithreading: Darum ist Cinema 4D so performant" href="http://www.software-dev-blog.de/maxon-multithreading-darum-ist-cinema-4d-so-performant/06/2009/">vor längeren gebloggt</a>. Und wie es der Zufall wollte (ok, der natürlich keiner war), konnten wir mit Maxon höchstpersönlich darüber reden, wie sie es immer wieder schaffen, dass ihre Anwendungen besonders performant auf Rechnern mit Intel-Architektur laufen.</p>
<p>Ein wesentlicher Punkt ist unter anderem der Einsatz des <a title="Optimierte Compiler helfen beim Parallelisieren" href="http://www.software-dev-blog.de/optimierte-compiler-helfen-beim-parallelisieren/12/2008/">Intel C++ Compilers</a>, der laut Maxon schon mal ohne nennenswerte Änderungen am Code etwa 15 Prozent mehr Speed bringt. Aber auch der <a title="Thread Profiler: Parallelisierte Anwendungen grafisch testen" href="http://www.software-dev-blog.de/thread-profiler-parallelisierte-anwendungen-grafisch-testen/02/2009/">Intel Thread Profiler</a> steht bei Maxon ganz oben auf der Liste, wenn es darum geht herauszufinden, wie sich das parallelisierte Programm verhält, ob also die anfallenden Threads möglichst gleichmäßig auf die vorhandenen Ressourcen verteilt werden (Skalierung ist hier das Zauberwort).</p>
<p>Darüber hinaus kommen <a href="http://www.software-dev-blog.de/thread-profiler-parallelisierte-anwendungen-grafisch-testen/02/quellcode-schwachstellen-mit-intel-vtune-aufspuren/11/2008/">VTune Performance Analyzer</a> und <a title="Neue Version der Intel Threading Building Blocks" href="http://www.software-dev-blog.de/neue-version-der-intel-threading-building-blocks/08/2009/">Intel Threading Building Blocks</a> zur Sprache. Ok, dann würde ich mal sagen, den Rest solltet ihr euch am besten selbst ansehen. Viel Spaß dabei!</p>
<p style="text-align: center;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="520" height="290" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/-M1eX5Vvrg8&amp;hl=de_DE&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="520" height="290" src="http://www.youtube.com/v/-M1eX5Vvrg8&amp;hl=de_DE&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/maxon-setzt-auf-intel-softwaretools-fur-optimierte-apps/12/2009/&via=sw_devtwits&text=Maxon setzt auf Intel Softwaretools für optimierte Apps&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/maxon-setzt-auf-intel-softwaretools-fur-optimierte-apps/12/2009/&via=sw_devtwits&text=Maxon setzt auf Intel Softwaretools für optimierte Apps&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/maxon-setzt-auf-intel-softwaretools-fur-optimierte-apps/12/2009/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Skalierende Musikprojekte dank Multithreading: Sonar 8</title>
		<link>http://www.software-dev-blog.de/skalierende-musikprojekte-dank-multithreading-sonar-8/03/2009/</link>
		<comments>http://www.software-dev-blog.de/skalierende-musikprojekte-dank-multithreading-sonar-8/03/2009/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 12:23:25 +0000</pubDate>
		<dc:creator>Michael Hülskötter</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Optimieren]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=960</guid>
		<description><![CDATA[Der Name Cakewalk ist wohl hauptsächlich eingefleischten Audio-Freaks ein Begriff. So entwickelt das in Boston, Massachusetts beheimatete Unternehmen Software für Musiker und ähnliche Menschen. Eines der wichtigsten Software-Titel von Cakewalk ist Sonar, ein professioneller Audio-Sequenzer, mit dem sich sowohl Audio- als auch MIDI-Tracks parallel mischen, arrangieren und aufnehmen lassen. Ach ja: Sonar hieß irgendwann mal [...]]]></description>
			<content:encoded><![CDATA[<p>Der Name <strong>Cakewalk</strong> ist wohl hauptsächlich eingefleischten Audio-Freaks ein Begriff. So entwickelt das in Boston, Massachusetts beheimatete Unternehmen Software für Musiker und ähnliche Menschen. Eines der wichtigsten Software-Titel von Cakewalk ist <a title="Wikiinfos zu Cakewalk, Sonar und Co." href="http://en.wikipedia.org/wiki/Cakewalk_(company)" target="_self">Sonar</a>, ein professioneller Audio-Sequenzer, mit dem sich sowohl Audio- als auch MIDI-Tracks parallel mischen, arrangieren und aufnehmen lassen. Ach ja: <em>Sonar </em>hieß irgendwann mal<em> Cakewalk Pro </em>resp.<em> Cakewalk Pro Audio</em>. Aber das nur so am Rande.</p>
<p>Warum ich das alles erzähle? Nun, ich hatte gestern die exklusive Gelegenheit, mit Noel Borthwick ein ausführliches Telefonat zu führen. Noel ist CTO von Cakewalk, also der führende technische Kopf des Unternehmens. So gesehen hat Noel eine ganze Menge über <em>Sonar </em>und dessen Multithread-Fähigkeiten zu erzählen.</p>
<p>Zunächst einmal gab es ein wenig Geschichtliches. So erfuhr ich, dass <em>Cakewalk Pro Audio</em> etwa 1993/94 entstanden ist und damals schon multithread-fähig war. Ok, natürlich nur auf einer Multisocket-Plattform mit zwei parallel geschalteten Prozessoren, mit deren Hilfe es möglich war, die komplette Bedieneroberfläche auf einen separaten Thread auszulagern und die Audio Engine auf die zweite CPU. Das war sicherlich nicht sonderlich effektiv, zeigt aber, das sich Cakewalk schon seit mehr als 15 Jahren mit dem Thema Multithreading beschäftigt &#8211; und das sehr erfolgreich, wie die Firmenhistorie zeigt.</p>
<p>Im Jahr 2001 vollzog Cakewalk dann den Namenswechsel: Aus <em>Cakewalk Pro Audio</em> wurde <em>Sonar </em>und damit ein skalierendes Produkt, das auf Basis einer komplett neu entwickelten Audio Engine die Möglichkeiten des damals aufkommenden Software-Multithreadings erheblich besser ausnutzen konnte als sein Vorgänger. Hierfür war neben dem Redesign der Software auch ein eigener Task Scheduler notwendig, der in Sachen Funktionsumfang dem Task Scheduler der <a title="Intel Threading Building Blocks" href="http://www.software-dev-blog.de/software-projekte-mit-multicore-bibliotheken-optimieren/12/2008/">Intel TBB</a> ähnelt. Für eine optimale Skalierung werden also die vorhandenen Ressourcen (Kerne) ermittelt und anhand dessen die anstehenden Aufgaben (Tasks) intern in Threads umgewandelt und zur Laufzeit dynamisch auf die vorhandenen Prozessorkerne verteilt.</p>
<p><span id="more-960"></span>Um diese Software-Skalierung zu perfektionieren, arbeitet Cakewalk kontinuierlich an <em>Sonar</em>. So kommt beispielsweise permanent der <a title="VTune Performance Analyzer" href="http://www.software-dev-blog.de/quellcode-schwachstellen-mit-intel-vtune-aufspuren/11/2008/">VTune Performance Analyzer</a> zum Einsatz, um ausgeglichene Kernel Workloads zu erzielen. Aber auch Treiberprobleme lassen sich auf diesem Weg ermitteln und beheben. Dies führt insgesamt zu geringeren Ladezeiten, was sich vor allem bei großen Musikprojekten positiv bemerkbar macht, die sich aus einer Vielzahl von Tracks, Plugins und anderen Objekten zusammensetzen. Zudem lassen sich mit VTune recht einfach Cache Misses und andere unschöne Dinge ausfindig machen.</p>
<p>Der <a title="Thread Checker" href="http://www.software-dev-blog.de/12-thesen-und-antithesen-zur-multicore-programmierung/01/fehler-im-multithread-code-aufspuren-thread-checker/11/2008/">Thread Checker</a> ist für Cakewalk immer wieder von Vorteil, wenn es zum Beispiel um das Aufspüren von <a title="Threads unter .NET synchronisieren" href="http://www.software-dev-blog.de/workshop-alles-uber-net-threads-teil-4/03/2009/">Synchronisationsproblemen</a> von Threads geht, die ja meist erst zur Laufzeit auftauchen. So half Thread Checker Cakewalk beim Eliminieren eines Priority Inversion-Problems, das sich eines Tages in <em>Sonar 8</em> bemerkbar machte: Aufgrund einer falschen Thread-Priorisierung verhielt sich das Tool an manchen Stellen völlig anders als erwartet, was natürlich mit unzufriedenen Kunden endete. Dank Thread Checker konnte das Laufzeitproblem behoben werden und alle waren wieder glücklich.</p>
<p><strong>Surftipp:</strong> Wenn ihr mal sehen wollt, wie sich Multithreading in <em>Sonar 8 </em>bemerkbar macht, solltet ihr unbedingt <a title="Multihreading-Erfolge à la Cakewalk: Sonar 7 vs. Sonar 8" href="http://www.cakewalk.com/Products/SONAR/English/benchmark.asp" target="_blank">diese Webseite ansurfen</a>. Dort gibt es sehr aufschlussreiche Benchmarks, die <em>Sonar 8</em> mit dessen Vorgänger<em> Sonar 7</em> vergleichen. Vor allem beim <em>Sonar</em>-eigenen Benchmark kamen Steigerungsraten von bis zu 240 Prozent heraus. Ich sag mal, da haben die Cakewalk-Entwickler multithreading-seitig ganze Arbeit geleistet!</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/skalierende-musikprojekte-dank-multithreading-sonar-8/03/2009/&via=sw_devtwits&text=Skalierende Musikprojekte dank Multithreading: Sonar 8&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/skalierende-musikprojekte-dank-multithreading-sonar-8/03/2009/&via=sw_devtwits&text=Skalierende Musikprojekte dank Multithreading: Sonar 8&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/skalierende-musikprojekte-dank-multithreading-sonar-8/03/2009/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Multicore-Fähigkeiten mit Spezialtool herausfinden</title>
		<link>http://www.software-dev-blog.de/multicore-fahigkeiten-mit-spezialtool-herausfinden/02/2009/</link>
		<comments>http://www.software-dev-blog.de/multicore-fahigkeiten-mit-spezialtool-herausfinden/02/2009/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 08:15:00 +0000</pubDate>
		<dc:creator>Michael Hülskötter</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Optimieren]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=791</guid>
		<description><![CDATA[Im bayerischen Pilsting-Großköllnbach kennt man sich ziemlich gut aus mit der Archivierung von relationalen Datenbanken. Denn in Pilsting-Großköllnbach sitzt die Software-Schmiede CSP GmbH und Co. KG, die das Archivierungstool Chronos entwickelt hat. Diese Anwendung lagert nicht permanent benötigte Daten in ein Langzeitarchiv aus, um so die vorhandenen Datenbankserver kontinuierlich zu entlasten. Das Extrahieren dieser Daten [...]]]></description>
			<content:encoded><![CDATA[<p>Im bayerischen Pilsting-Großköllnbach kennt man sich ziemlich gut aus mit der Archivierung von relationalen Datenbanken. Denn in Pilsting-Großköllnbach sitzt die Software-Schmiede CSP GmbH und Co. KG, die <a title="mehr Infos zu Chronos" href="http://www.csp-sw.de/de/inhalt.php?kategorie=c114_L_sungen_CHRONOS" target="_blank">das Archivierungstool Chronos</a> entwickelt hat. Diese Anwendung lagert nicht permanent benötigte Daten in ein Langzeitarchiv aus, um so die vorhandenen Datenbankserver kontinuierlich zu entlasten.</p>
<p>Das Extrahieren dieser Daten geschieht in Echtzeit, also während des laufenden Betriebs. Um eine möglichst reibungslose Archivierung zu garantieren, hat sich die CSP schon sehr früh auf das Multithreaden ihrer Anwendung konzentriert.</p>
<p>Das <a title=" In der Parallelprogrammierung steckt die Zukunft" href="http://www.software-dev-blog.de/in-der-parallelprogrammierung-steckt-die-zukunft/01/2009/">gesamte Konzept</a> ist also auf parallele Datenverarbeitung ausgelegt. Es findet sogar eine doppelte Parallelisierung statt: Es kommt ein Mini-Cluster zum Einsatz, in dem einzelne Server bestimmte Aufgaben übernehmen. Und innerhalb dieser Server gibt es eine hohe Multithreading-Kultur, die eine skalierende Ausführung der Anwendung sicherstellt.</p>
<p>Chronos ist übrigens vollständig in Java programmiert und findet innerhalb der Java Runtime Environment statt, die standardmäßig mit Java-Threads auskommt. Auf diesem Weg können Java-Anwendungen mithilfe bestimmter Bibliotheken und Klassen parallelisiert werden. Für die komplette Verwaltung sämtlicher Threads hat CSP übrigens einen eigenen Threadmanager entwickelt, der im Hintergrund analog zu den <a title=" Mit Intel Threading Building Blocks parallel programmieren " href="http://www.software-dev-blog.de/mit-intel-threading-building-blocks-parallel-programmieren/12/2008/">Threading  Building Blocks</a> die einzelnen Tasks auf die vorhandenen Prozessoren und Threads verteilt. Für eine bestmögliche Auslastung der Ressourcen.</p>
<p>Wieso können sich die Entwickler von CSP aber so sicher sein, dass Chronos wirklich optimal auf Intel Multicore-Plattformen skaliert? Nun, um das herauszufinden, besorgte man sich in Pilsting-Großköllnbach das kostenlose Tool <a title="Mehr Infos zum Concurrency Checker" href="http://www.software-dev-blog.de/concurrency-checker-wie-parallel-ist-parallel/02/2009/" target="_self">Concurrency Checker</a>, mit dessen Hilfe festgestellt werden kann, ob eine Anwendung effizient auf Intel Multicore-Plattformen läuft.</p>
<p>Und die Entwickler der CSP GmbH waren ziemlich schnell davon überzeugt, dass der Concurrency Checker das richtige Tool für ihre Zwecke ist. Denn sie waren sehr zufrieden mit der Bedienbarkeit des Programms, da sie für einen ausführlichen Multicore-Test gerade mal einen halben Tag investieren mussten. Danach war den CSP-Programmierern klar, dass sich der Concurrency Checker für ihre Zwecke optimal einsetzen lässt. Und dass Chronos auch das hält, was es verspricht: eine optimale Ausnutzung der vorhandenen Systemressourcen, sprich der Prozessorkerne und Threads.</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/multicore-fahigkeiten-mit-spezialtool-herausfinden/02/2009/&via=sw_devtwits&text=Multicore-Fähigkeiten mit Spezialtool herausfinden&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/multicore-fahigkeiten-mit-spezialtool-herausfinden/02/2009/&via=sw_devtwits&text=Multicore-Fähigkeiten mit Spezialtool herausfinden&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/multicore-fahigkeiten-mit-spezialtool-herausfinden/02/2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interview: Visual Studio 2010 und seine Multicore-Fähigkeiten</title>
		<link>http://www.software-dev-blog.de/interview-visual-studio-2010-und-seine-multicore-fahigkeiten/02/2009/</link>
		<comments>http://www.software-dev-blog.de/interview-visual-studio-2010-und-seine-multicore-fahigkeiten/02/2009/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 12:23:12 +0000</pubDate>
		<dc:creator>Michael Hülskötter</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[dotNET]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=779</guid>
		<description><![CDATA[Während der OOP 2009 gab es die Möglichkeit, mit Microsoft zusammenzusitzen und ein wenig über Visual Studio 2010 und das zugehörige .NET Framework 4.0 zu plaudern. So der Plan! Leider kam es anders, was dazu führte, dass ich am vorigen Mittwoch via Festnetz mit einem der Technikgurus, Dariusz Parys, über diverse Aspekte der Parallelprogrammierung mithilfe [...]]]></description>
			<content:encoded><![CDATA[<p>Während der <a title="Multicore-Programmierung auf der OOP 2009" href="http://www.software-dev-blog.de/multicore-programmierung-auf-der-oop-2009/01/2009/">OOP 2009</a> gab es die Möglichkeit, mit Microsoft zusammenzusitzen und ein wenig über <a title="Multicore-Programmierung im .NET-Umfeld" href="Multicore-Programmierung im .NET-Umfeld - Teil 1 ">Visual Studio 2010</a> und das zugehörige .NET Framework 4.0 zu plaudern. So der Plan! Leider kam es anders, was dazu führte, dass ich am vorigen Mittwoch via Festnetz mit einem der Technikgurus, <a title="Das Blog von Dariusz Parys" href="http://blogs.msdn.com/dparys/default.aspx" target="_blank">Dariusz Parys</a>, über diverse Aspekte der Parallelprogrammierung mithilfe des .NET-Framework in der Version 4.0 sprach. Und das ist dabei herausgekommen.</p>
<p><em><strong>Wie unterstützt das .NET Framework 4.0 die parallele Programmierung?</strong></em><strong><br />
</strong>Hierfür gibt es diverse Komponenten. Es wird sowohl für den Bereich &#8220;Managed Applications&#8221; &#8211; also C# und Konsorten &#8211; als auch für  native Programmiersprachen (Fortran, C++ etc.) Bibliotheken und ähnliche Dinge geben. Für beide Programmiermodelle wurde die Concurrency Runtime entsprechend aufgebohrt.</p>
<p>Für die .NET-Entwickler gibt es dann zwei neue Modelle, und zwar die <a title=" Multicore-Programmierung im .NET-Umfeld" href="http://www.software-dev-blog.de/multicore-programmierung-im-net-umfeld-teil-2/01/2009/">Task Parallel Library</a> (TPL) und PLING. Mit der TPL lassen sich Aufgaben abstrahieren, was unter der Oberfläche und mithilfe der Concurrency Runtime zu Threads führt, um deren Verteilung auf die einzelnen Prozessorkerne sich der Entwickler nicht mehr kümmern muss. PLINQ stellt eine parallelisierte Erweiterung von LINQ dar. Und LINQ wiederum ist &#8220;eine Komponente von Microsofts .NET-Framework, mit der SQL-, XLink- und XQuery-Anfragen direkt in .NET-Programmiersprachen wie C# 3.0 oder <span class="mw-redirect">VB.Net</span> 9.0 als Code statt als String eingebunden werden können&#8221; (Quelle: Wikipedia).</p>
<p>Aber auch bei den nativen Sprachen gibt es neue Ansätze bezüglich der Concurrency Runtime: Dies ist zum einen die Parallel Pattern Library, die sich mit den <a title="Intel Threading Building Blocks" href="http://www.software-dev-blog.de/mit-intel-threading-building-blocks-parallel-programmieren/12/2008/">Intel Threading Building Blocks</a> vergleichen lässt. Zum anderen bietet Visual Studio 2010 eine Agent Library für C++ und Co, die bestimmte Aufgaben verwalten und ausführen kann.</p>
<p><em><strong>Was sagen Sie Entwicklern, wenn Sie mit ihnen über die parallele Programmierung reden?</strong></em><br />
Das hängt davon ab, mit wem ich spreche. Entwickler, die sich zum Beispiel schon länger mit serviceorientierten Anwendungen beschäftigen, in denen separate Aufgaben durch Dienste erledigt werden, verstehen das Konzept der parallelen Programmierung oft schneller als Programmierer, die nur die rein serielle Entwicklung kennen. Wichtig dabei ist die Erkenntnis, dass es in den meisten Anwendungen Programmteile gibt, die man loslösen kann von der restlichen Programmlogik. Ein Beispiel hierfür ist die parallele Speicherung von Daten.</p>
<p><span id="more-779"></span>Für viele Entwickler stellt aber die Parallelisierung von Bedieneroberflächen ein großes Problem dar, da hier vieles noch vom Betriebssystem mithilfe von Nachrichtenschlangen verwaltet wird. Hierfür wird es in .NET 4.0 entsprechende Bibliotheken geben, die diese Aufgaben automatisch übernehmen.</p>
<p><em><strong>Welche Anwendungsgruppen werden von der Parallelisierung hauptsächlich profitieren?</strong></em><br />
Da sind zum einen die algorithmus-basierten Anwendungen zu nennen (<a title="Optimierte Filter von Nik Software" href="http://www.software-dev-blog.de/skalierende-filter-nik-software-setzt-auf-multicore/01/2009/">Bildbearbeitung</a>, <a title="Darum skaliiert DivX 7 besonders gut auf Multicore-Plattformen" href="http://www.software-dev-blog.de/how-to-deshalb-skaliert-divx-7-auf-multicore-plattformen/01/2009/">Encoder</a> etc.), aber auch klassische Geschäftsanwendungen wie CRM-Systeme bergen viel paralleles Potenzial. Hier können beispielsweise Anfragen an das Backend simultan ausgeführt werden, was die Wartezeiten auf das Ergebnis verkürzt. Allerdings liegt allen parallelisierten Anwendungen eine bestimmte Arbeit <strong><em>vor</em></strong> dem eigentlichen Kodieren zugrunde: Welche Programmbereiche kann ich logisch zusammenfassen und daraus einzelne Aufgaben machen, die als Tasks abstrahiert werden können und sich dann von der Concurrency Runtime als separate Threads ausführen lassen.</p>
<p><em><strong>Wie unterstützt Microsoft die Community in Sachen Visual Studio 2010, .NET 4.0 und Parallelprogrammierung?</strong></em><br />
Neben den kommerziellen Konferenzen wie der <a title="Infos und Videos rund um die Microsoft Tech-Ed" href="http://www.software-dev-blog.de/tag/tech-ed/">Microsoft Tech-Ed</a> oder dem <a title="Intel auf dem Tech Summit 2008" href="http://www.software-dev-blog.de/intel-auf-der-microsoft-technical-summit-2008/11/2008/">Tech Summit</a> gibt es beispielsweise die Möglichkeit, über Microsoft in ein Early-Adopter-Programm hineinzukommen, um auf diesem Weg Betatester zu werden. Darüber hinaus kann man <a title="So kommt man an die Techgurus von Microsoft heran" href="http://www.microsoft.com/germany/msdn/kontakt/devevangelists.mspx" target="_blank">uns auch direkt</a> auf gewünschte Workshops und ähnliche Dinge ansprechen. Und natürlich nutzen wir die gesamte Online-Vielfalt wie <a title="MSDN ist die zentrale Anlaufstelle für Entwickler" href="http://msdn.microsoft.com/de-de/default.aspx">Webcasts und Blogs</a>, um unsere Themen zu kommunizieren. Aber auch viele Microsoft-nahe Communities stehen derlei Themen offen gegenüber. Dort trägt Microsoft an und ab selbst zur Aufklärung in Sachen Multicore und ähnlichen Dingen bei.</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/interview-visual-studio-2010-und-seine-multicore-fahigkeiten/02/2009/&via=sw_devtwits&text=Interview: Visual Studio 2010 und seine Multicore-Fähigkeiten&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/interview-visual-studio-2010-und-seine-multicore-fahigkeiten/02/2009/&via=sw_devtwits&text=Interview: Visual Studio 2010 und seine Multicore-Fähigkeiten&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/interview-visual-studio-2010-und-seine-multicore-fahigkeiten/02/2009/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Multicore-Programmierung auf der OOP 2009 [Upd]</title>
		<link>http://www.software-dev-blog.de/multicore-programmierung-auf-der-oop-2009/01/2009/</link>
		<comments>http://www.software-dev-blog.de/multicore-programmierung-auf-der-oop-2009/01/2009/#comments</comments>
		<pubDate>Tue, 27 Jan 2009 08:27:24 +0000</pubDate>
		<dc:creator>Michael Hülskötter</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[dotNET]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Interview]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=670</guid>
		<description><![CDATA[Seit gestern läuft eine der größten Entwicklerkonferenzen im deutschsprachigen Raum, die OOP 2009. Dort geht es um vielfältige Softwarethemen und natürlich auch um die Multicore-Programmierung. Aus diesem Grund werde ich mich heute und morgen Nachmittag im Messezentrum München herumtreiben und diesbezügliche Informationen zusammentragen. So treffe ich unter anderem die Leute der Dotnetpro, die auf der [...]]]></description>
			<content:encoded><![CDATA[<p>Seit gestern läuft eine der größten Entwicklerkonferenzen im deutschsprachigen Raum, die <a title="Entwicklergemeinde trifft sich auf der OOP 2009" href="http://www.software-dev-blog.de/entwicklergemeinde-trifft-sich-auf-der-oop-2009/01/2009/">OOP 2009</a>. Dort geht es um vielfältige Softwarethemen und natürlich auch um die Multicore-Programmierung.</p>
<p>Aus diesem Grund werde ich mich heute und morgen Nachmittag im Messezentrum München herumtreiben und diesbezügliche Informationen zusammentragen. So treffe ich unter anderem die Leute der <a title="Webseite der dotnetpro" href="http://www.dotnetpro.de/" target="_blank">Dotnetpro</a>, die auf der OOP mit einem eigenem Stand vertreten sein werden. Eines ihrer Themen wird die erste deutschsprachige <a title="Münchner Multicore-Powerday: Preise und weitere Infos" href="http://www.software-dev-blog.de/munchner-multicore-powerday-preise-und-weitere-infos/01/2009/">Multicore-Konferenz</a> sein, die am 23. April diesen Jahres ebenfalls in München stattfindet.</p>
<p>Am Dotnetpro-Stand hoffe ich die Hauptredner des Multicore-Powerday zu treffen, <a title="Webseite von Ralf Westphal" href="http://www.ralfw.de/default.html" target="_blank">Ralf Westphal</a> und <a title="Profil von Bernd Marquardt auf codezone.de" href="http://www.codezone.de/DetailPage.Codezone?GUID=b1fe4d6f-69d6-435c-beb4-8558a9f0defb" target="_blank">Bernd Marquardt</a>. Mit beiden plane ich kurze Interviews, in denen sie mir hoffentlich ein wenig mehr über ihre Sessions auf der <a title="Multicore-Powerday 2009 am 23. April in München" href="http://www.software-dev-blog.de/multicore-powerday-2009-am-23-april-in-munchen/01/2009/">Eintagesveranstaltung</a> im April erzählen werden.</p>
<p>Nach diesen Interviews treffe ich mich mit einer weiteren Koryphäe der Multicore-Programmierung: Walter F. Tichy von der Uni Karlsruhe, der um 17:45 Uhr mit seinem Vortrag <a title="12 Thesen und Antithesen zur Multicore-Programmierung " href="http://www.software-dev-blog.de/12-thesen-und-antithesen-zur-multicore-programmierung/01/2009/">&#8220;Herausforderung Mehrkernsysteme&#8221;</a> dran ist. Im Gespräch mit ihm werde ich versuchen, die scheinbaren Widersprüche aufzulösen, die in seinem <a title="In der Parallelprogrammierung steckt die Zukunft!" href="http://www.software-dev-blog.de/in-der-parallelprogrammierung-steckt-die-zukunft/01/2009/">Gastbeitrag</a> zu stecken scheinen, den er für die Online-Ausgabe der <em>Computerzeitung </em>geschrieben hat. <a title="Mehr Infos zu Walter F. Tichys Vortrag auf der OOP 2009" href="http://www.sigs-datacom.de/sd/kongresse/oop_2009/program.php?cat=session&amp;ID=51" target="_blank">In seinem Vortrag</a> scheint er ebenfalls ein, zwei diskussionswürdige Thesen zu vertreten:</p>
<blockquote><p>Der Vortrag skizziert die gegenwärtige Hardwareentwicklung und geht dann auf erste Erfahrungen mit der Parallelisierung nicht-numerischer Anwendungen ein. Insbesondere werden einige der üblichen Parallelisierungsempfehlungen als Mythen entlarvt.</p></blockquote>
<p>Wie dem auch sei, ich bin schon sehr gespannt, was die Herren Westphal, Marquardt und Tichy zu erzählen haben. Und was sonst noch alles auf der OOP 2009 los ist, sehe ich mir ebenfalls an und werde darüber live und in Farbe berichten. <a title="Verfolgen kann man das auch via Twitter" href="http://www.twitter.com/mhuelskoetter" target="_blank">So, stay tuned &#8230;</a></p>
<p><strong>Update:</strong> Ich habe während der OOP 2009 zwei Vorträge zum Thema Multicore-Programmierung besucht. Daraus sind <a title="12 Thesen und Antithesen zur Multicore-Programmierung " href="http://www.software-dev-blog.de/12-thesen-und-antithesen-zur-multicore-programmierung/01/2009/">12 Thesen zur Multithread-Entwicklung</a> enstanden sowie eine mehrteilige Mini-Serie zum Thema Multicore-Programmierung (<a title="Erster Teil der Mini-Serie &quot;Multicore-Programmierung im .NET-Umfeld&quot;" href="http://www.software-dev-blog.de/multicore-programmierung-im-net-umfeld-teil-1/01/2009/">Teil 1</a>, <a title="Zweiter Teil der Mini-Serie &quot;Multicore-Programmierung im .NET-Umfeld&quot;" href="http://www.software-dev-blog.de/multicore-programmierung-im-net-umfeld-teil-2/01/2009/">Teil 2</a>, <a title="Dritter Teil der Mini-Serie &quot;Multicore-Programmierung im .NET-Umfeld&quot;" href="http://www.software-dev-blog.de/multicore-programmierung-im-net-umfeld-teil-3/02/2009/">Teil 3</a>).</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/multicore-programmierung-auf-der-oop-2009/01/2009/&via=sw_devtwits&text=Multicore-Programmierung auf der OOP 2009 [Upd]&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/multicore-programmierung-auf-der-oop-2009/01/2009/&via=sw_devtwits&text=Multicore-Programmierung auf der OOP 2009 [Upd]&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/multicore-programmierung-auf-der-oop-2009/01/2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lernen mit Crytek: Deshalb ist Crysis erfolgreich</title>
		<link>http://www.software-dev-blog.de/lernen-mit-crytek-deshalb-ist-crysis-erfolgreich/01/2009/</link>
		<comments>http://www.software-dev-blog.de/lernen-mit-crytek-deshalb-ist-crysis-erfolgreich/01/2009/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 13:18:01 +0000</pubDate>
		<dc:creator>Michael Hülskötter</dc:creator>
				<category><![CDATA[Multicore]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Gaming]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Referenz]]></category>

		<guid isPermaLink="false">http://www.software-dev-blog.de/?p=585</guid>
		<description><![CDATA[Anfang Dezember haben Crytek und Ascaron den Deutschen Entwicklerpreis 2008 verliehen bekommen. Acscaron für Sacred 2 &#8211; Fallen Angel und Crytek für Crysis. Beiden Spielen liegt eine Menge an Optimierungsarbeit zugrunde. Soll heißen, dass beide Softwareschmieden ihre Erfolgstitel intensiv auf Multicore-Plattformen abgestimmt haben, damit diese bestmöglich auf zwei, vier, acht oder mehr Prozessorkernen skalieren. In [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-592" style="margin-left: 10px; margin-right: 0px;" title="Director of Technology, Mister Mark Atkinson von Crytek" src="http://www.software-dev-blog.de/wp-content/images/2009/01/mark_atkinson.jpg" alt="Director of Technology, Mister Mark Atkinson von Crytek" height="250" />Anfang Dezember haben Crytek und Ascaron den <a title="Crysis und Sacred 2 räumen beim Entwicklerpreis 2008 ab" href="http://www.software-dev-blog.de/crysis-und-sacred-2-raumen-beim-entwicklerpreis-2008-ab/12/2008/">Deutschen Entwicklerpreis 2008 verliehen</a> bekommen. Acscaron für <em>Sacred 2 &#8211; Fallen Angel</em> und Crytek für <em>Crysis</em>. Beiden Spielen liegt eine Menge an Optimierungsarbeit zugrunde. Soll heißen, dass beide Softwareschmieden ihre Erfolgstitel intensiv auf Multicore-Plattformen abgestimmt haben, damit diese bestmöglich auf zwei, vier, acht oder mehr Prozessorkernen skalieren.</p>
<p>In beiden Fällen wollten wir natürlich wissen, welche Anstrengungen unternommen wurden, um die Spieletitel zu parallelisieren. Tja, und heute haben wir Teil eins unserer Fragen zurückbekommen, und zwar von Crysis. Geantwortet hat der Director of Technology höchstpersönlich, Mister <a title="LinkedIn-Profile von Mark Atkinson" href="http://www.linkedin.com/in/markatkinson99" target="_blank">Mark Atkinson</a>. Mark zeichnet übrigens verantwortlich für erfolgreiche Titel wie <em>Burnout Revenge</em> und <em>Football Manager 2009,</em> die er vor seiner Zeit bei Crytek mitentwickelt hat.</p>
<p><span style="color: #000080;"><em>Software Dev Blog: Mit welchen Tools haben Sie </em>Crysis <em>für Multicore-Plattformen optimiert?</em></span><strong><br />
Mark Atkinson:</strong> Wir setzen im Wesentlichen eigene Tools ein, um den Quellcode unserer Spieletitel wie <em>Crysis </em>für Multicore-Plattformen zu optimieren. Aber auch externe Anwendungen wie der <a title="Quellcode-Schwachstellen mit Intel VTune aufspüren " href="http://www.software-dev-blog.de/quellcode-schwachstellen-mit-intel-vtune-aufspuren/11/2008/">VTune Performance Analyzer</a> kommen bei uns zum Einsatz. Dieser ist für uns vor allem wegen des Thread Profilers interessant, mit dessen Hilfe wir überprüfen können, in welchem Umfang und in welcher Qualität die Parallelisierung des Spieletitels gelungen ist.</p>
<p><span id="more-585"></span><span style="color: #000080;"><em> Welche Hürden mussten Sie bei der </em></span><span style="color: #000080;"><em>Multicore</em></span><span style="color: #000080;"><em>-Optimierung überwinden?</em></span><strong><br />
Atkinson:</strong> Die wesentliche Arbeit bestand darin, die Game-Engine völlig umzukrempeln. Wir mussten nämlich große Teile des sequenziell programmierten Quellcodes parallelisieren, damit bestimmte Aufgaben wie die KI, Effekte etc. gleichzeitig ablaufen. Nur so konnten wir das optimale Spielerlebnis erreichen, das <em>Crysis </em>auszeichnet.</p>
<p><span style="color: #000080;"><em>Welche Tipps würden Sie Entwicklern geben, wenn diese parallelen Programmcode schreiben wollen?</em></span><br />
<strong>Atkinson:</strong> Die Hauptregel lautet: Erstelle fehlerfreien Sourcecode vom ersten Moment an. Denn parallel programmierte Anwendungen und Spiele lassen sich nur sehr aufwändig testen und debuggen. Daher sollte man von Anfang an darauf achten, dass sich erst gar keine Fehler in den Code einschleichen. Wir setzen hierfür erprobte <a title="Multithreading-Konzepte: OpenMP, APIs und Intel TBB" href="http://www.software-dev-blog.de/multithreading-konzepte-openmp-apis-und-intel-tbb/11/2008/">Methoden</a>, <a title="Software-Projekte mit Multicore-Bibliotheken optimieren " href="http://www.software-dev-blog.de/software-projekte-mit-multicore-bibliotheken-optimieren/12/2008/">Bibliotheken</a> und Hilfesysteme ein, die uns dabei unterstützen. Außerdem sorgen wir dafür, dass unsere Software-Entwickler bestens in Sachen Paralellprogrammierung <a title="Ausbildungslücken bei der Multicore-Programmierung" href="http://www.software-dev-blog.de/ausbildungslucken-bei-der-multicore-programmierung/12/2008/">ausgebildet</a> sind. Denn nichts erfordert mehr Know-how als der Umstieg von der sequenziellen auf die parallele Programmierung.</p>
<div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/lernen-mit-crytek-deshalb-ist-crysis-erfolgreich/01/2009/&via=sw_devtwits&text=Lernen mit Crytek: Deshalb ist Crysis erfolgreich&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div style="float: left margin-left: 30px; margin-buttom: 20px"><a href="http://twitter.com/share?url=http://www.software-dev-blog.de/lernen-mit-crytek-deshalb-ist-crysis-erfolgreich/01/2009/&via=sw_devtwits&text=Lernen mit Crytek: Deshalb ist Crysis erfolgreich&related=:&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.software-dev-blog.de/lernen-mit-crytek-deshalb-ist-crysis-erfolgreich/01/2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

