<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.2.1" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Kommentare fuer Jens Coldeweys Blog</title>
	<link>http://blog.coldewey.com</link>
	<description>Agile Software Entwicklung, Berichte, Anmerkungen und Politisches</description>
	<pubDate>Fri, 21 Nov 2008 22:26:48 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.1</generator>

	<item>
		<title>Kommentar zu Refactoring von C++ von Jens Coldewey</title>
		<link>http://blog.coldewey.com/agile/2007/11/27/refactoring-von-c/#comment-549</link>
		<author>Jens Coldewey</author>
		<pubDate>Fri, 12 Sep 2008 10:27:59 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2007/11/27/refactoring-von-c/#comment-549</guid>
		<description>Hallo Daniel,

natürlich hast Du Recht, dass man auch in C++ gute Systeme bauen kann. Das ist ja auch geschehen, schließlich gibt es sehr viele erfolgreiche Systemem mit C++ vor allem im technischen Umfeld.

Meine Erfahrung ist aber auch, dass die meisten C++ Systeme im C/S- oder Webumfeld, die ich bisher gesehen habe, genau nicht klein modularisiert und entkoppelt waren. Und dass dann zu zerlegen ist ein (technischer und wirtschaftlicher) Albtraum. Und die Werkzeugunterstützung ist für Systeme &gt;500 Klassen eine schlichte Katastrophe.

Ich glaube aber auch, dass es dafür viele sprach-inherente Gründe gibt, wie Redundanz in den Headerfiles, das Typsystem und viele goldene Henkel, die eine Automatisierung derart erschweren, dass Refactoring extrem schwierig wird. Dazu kommt noch, dass das verbreitetste Werkzeug Visual Studio keinen vollständigen AST aller Klassen eines Workspaces hält, sondern eher eine klassische Compiler-Linker-Toolkette ist mit ein paar GUI-Gimmicks vorne dran (Visual Studio für .NET ist da deutlich besser implementiert!). 

Alles in allem eine sehr frustrierende Angelegenheit, insbesondere wenn man sich anschaut, was Werkzeuge wie Eclipse oder TogetherJ da seit fast zehn Jahren vormachen. Und noch dazu bei der Produktivität der Entwickler ein Desaster (für die Manager unter den Bloglesern :-)</description>
		<content:encoded><![CDATA[<p>Hallo Daniel,</p>
<p>natürlich hast Du Recht, dass man auch in C++ gute Systeme bauen kann. Das ist ja auch geschehen, schließlich gibt es sehr viele erfolgreiche Systemem mit C++ vor allem im technischen Umfeld.</p>
<p>Meine Erfahrung ist aber auch, dass die meisten C++ Systeme im C/S- oder Webumfeld, die ich bisher gesehen habe, genau nicht klein modularisiert und entkoppelt waren. Und dass dann zu zerlegen ist ein (technischer und wirtschaftlicher) Albtraum. Und die Werkzeugunterstützung ist für Systeme >500 Klassen eine schlichte Katastrophe.</p>
<p>Ich glaube aber auch, dass es dafür viele sprach-inherente Gründe gibt, wie Redundanz in den Headerfiles, das Typsystem und viele goldene Henkel, die eine Automatisierung derart erschweren, dass Refactoring extrem schwierig wird. Dazu kommt noch, dass das verbreitetste Werkzeug Visual Studio keinen vollständigen AST aller Klassen eines Workspaces hält, sondern eher eine klassische Compiler-Linker-Toolkette ist mit ein paar GUI-Gimmicks vorne dran (Visual Studio für .NET ist da deutlich besser implementiert!). </p>
<p>Alles in allem eine sehr frustrierende Angelegenheit, insbesondere wenn man sich anschaut, was Werkzeuge wie Eclipse oder TogetherJ da seit fast zehn Jahren vormachen. Und noch dazu bei der Produktivität der Entwickler ein Desaster (für die Manager unter den Bloglesern <img src='http://blog.coldewey.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Refactoring von C++ von daniel</title>
		<link>http://blog.coldewey.com/agile/2007/11/27/refactoring-von-c/#comment-548</link>
		<author>daniel</author>
		<pubDate>Wed, 10 Sep 2008 09:20:31 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2007/11/27/refactoring-von-c/#comment-548</guid>
		<description>Hmmmm,

Also mal zu c++: c++ ist meiner meinung nach die einzige portable high-level sprache di ohne vom auskommt. c# ist microsoft spezifisch, objective-c apple, java ist eigentlich schon eine eigene plattform (es gibt ja sogar schon den java desktop). ausserdem kann man in c++ highlevel konstrukte (objekte, reference counting, abstrahierte io, funktionale paradigmen, operator overloading etc.) fast ohne runtime penalty machen.

zur kompilation: ja, du musst natürlich kleine bausteine bilden, aber nicht unbedingt um bilbiothejen zu bauen, sondern um das kompilat (*.o) zu cachen, und parallel zu kompilieren. komplett rekompilieren sollte man eh selten, und ausserdem sollte irgendwo im team ein schneller kompilationsrechner stehen, den man per distcc ansteuern kann. wenn das alles gegeben ist glaube ich kaum, dass du oft kompilationszeiten von mehr als ein paar minuten hast.

und: ja, es gibt viele wege etwas zu machen. man muss sich schon selbst überlegen, welches tool das beste für ein bestimmtes problem ist, aber es gibt auch ne menge bücher die man lesen kann. ausserdem gibt es die stl und boost, die viele standardlösungen vorschlagen.

was refactoring angeht: da fehlt sicher was (gibt es da nix kommerzielles? strange...). aber: man kann sowas ähnliches heute schohn mit gccxml machen, und bald auch mit clang (clang.llvm.org).

Gruss</description>
		<content:encoded><![CDATA[<p>Hmmmm,</p>
<p>Also mal zu c++: c++ ist meiner meinung nach die einzige portable high-level sprache di ohne vom auskommt. c# ist microsoft spezifisch, objective-c apple, java ist eigentlich schon eine eigene plattform (es gibt ja sogar schon den java desktop). ausserdem kann man in c++ highlevel konstrukte (objekte, reference counting, abstrahierte io, funktionale paradigmen, operator overloading etc.) fast ohne runtime penalty machen.</p>
<p>zur kompilation: ja, du musst natürlich kleine bausteine bilden, aber nicht unbedingt um bilbiothejen zu bauen, sondern um das kompilat (*.o) zu cachen, und parallel zu kompilieren. komplett rekompilieren sollte man eh selten, und ausserdem sollte irgendwo im team ein schneller kompilationsrechner stehen, den man per distcc ansteuern kann. wenn das alles gegeben ist glaube ich kaum, dass du oft kompilationszeiten von mehr als ein paar minuten hast.</p>
<p>und: ja, es gibt viele wege etwas zu machen. man muss sich schon selbst überlegen, welches tool das beste für ein bestimmtes problem ist, aber es gibt auch ne menge bücher die man lesen kann. ausserdem gibt es die stl und boost, die viele standardlösungen vorschlagen.</p>
<p>was refactoring angeht: da fehlt sicher was (gibt es da nix kommerzielles? strange&#8230;). aber: man kann sowas ähnliches heute schohn mit gccxml machen, und bald auch mit clang (clang.llvm.org).</p>
<p>Gruss</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Gunter Dueck zur Konstruktion von Prozessleichen von Felix</title>
		<link>http://blog.coldewey.com/agile/2008/09/05/gunter-dueck-zur-konstruktion-von-prozessleichen/#comment-546</link>
		<author>Felix</author>
		<pubDate>Sun, 07 Sep 2008 09:56:12 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2008/09/05/gunter-dueck-zur-konstruktion-von-prozessleichen/#comment-546</guid>
		<description>Besonders deutlich hat Dueck in seinem Announcement zum Posting geschrieben:
"
Eigentlich erklärt das Management ja das Konstruieren des
noch Toten für wichtiger als das Beleben, was heute an die Mitarbeiter
delegiert wird. Nein, sage ich! Das Beleben ist auch Aufgabe des
Managements!
"

Genau das möchten doch die agilen Methoden ändern - wenige (aber wichtige) Regeln, ansonsten Fokus auf die Beteilligten und damit Fokus auf das Beleben.</description>
		<content:encoded><![CDATA[<p>Besonders deutlich hat Dueck in seinem Announcement zum Posting geschrieben:<br />
&#8221;<br />
Eigentlich erklärt das Management ja das Konstruieren des<br />
noch Toten für wichtiger als das Beleben, was heute an die Mitarbeiter<br />
delegiert wird. Nein, sage ich! Das Beleben ist auch Aufgabe des<br />
Managements!<br />
&#8221;</p>
<p>Genau das möchten doch die agilen Methoden ändern - wenige (aber wichtige) Regeln, ansonsten Fokus auf die Beteilligten und damit Fokus auf das Beleben.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Jazz nur in &#8220;Mini-Fassung&#8221; frei verfügbar von Felix@ArmerKater.de</title>
		<link>http://blog.coldewey.com/agile/2008/07/24/jazz-nur-in-mini-fassung-frei-verfugbar/#comment-479</link>
		<author>Felix@ArmerKater.de</author>
		<pubDate>Thu, 24 Jul 2008 14:27:26 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2008/07/24/jazz-nur-in-mini-fassung-frei-verfugbar/#comment-479</guid>
		<description>Auf dem Java Forum Stuttgart hat Erich (Gamma) ganz klar gesagt, dass die Gerüchte, JAZZ würde mit einer "freien Lizenz" veröffentlich nicht stimmen.
Ja, ich gebe Dir Recht - so wird JAZZ nie eine ausreichende Marktdurchdringung erreichen und ein IBM-Gewächs bleiben.</description>
		<content:encoded><![CDATA[<p>Auf dem Java Forum Stuttgart hat Erich (Gamma) ganz klar gesagt, dass die Gerüchte, JAZZ würde mit einer &#8220;freien Lizenz&#8221; veröffentlich nicht stimmen.<br />
Ja, ich gebe Dir Recht - so wird JAZZ nie eine ausreichende Marktdurchdringung erreichen und ein IBM-Gewächs bleiben.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Warum Auftraggeber agil sein sollten von Alfi</title>
		<link>http://blog.coldewey.com/agile/2008/07/07/warum-auftraggeber-agil-sein-sollten/#comment-468</link>
		<author>Alfi</author>
		<pubDate>Fri, 11 Jul 2008 09:28:11 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2008/07/07/warum-auftraggeber-agil-sein-sollten/#comment-468</guid>
		<description>Von agiler Entwicklung profitieren beide Seiten gleichermaßen. Die Entwickler haben weniger Stress und die Auftraggeber bessere Software. Deswegen finde ich das "vor allem" im Fazit etwas deplatziert. Zugegeben: Es ist Korinthenkackerei. Sonst stimme ich dem Artikel in jedem Punkte zu.</description>
		<content:encoded><![CDATA[<p>Von agiler Entwicklung profitieren beide Seiten gleichermaßen. Die Entwickler haben weniger Stress und die Auftraggeber bessere Software. Deswegen finde ich das &#8220;vor allem&#8221; im Fazit etwas deplatziert. Zugegeben: Es ist Korinthenkackerei. Sonst stimme ich dem Artikel in jedem Punkte zu.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Warum Auftraggeber agil sein sollten von Johannes Link</title>
		<link>http://blog.coldewey.com/agile/2008/07/07/warum-auftraggeber-agil-sein-sollten/#comment-464</link>
		<author>Johannes Link</author>
		<pubDate>Tue, 08 Jul 2008 10:46:07 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2008/07/07/warum-auftraggeber-agil-sein-sollten/#comment-464</guid>
		<description>Endlich den vollen Artikel im RSS-Feed :-) Danke!</description>
		<content:encoded><![CDATA[<p>Endlich den vollen Artikel im RSS-Feed <img src='http://blog.coldewey.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> Danke!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Start zu neuen Ufern von Bernd Schiffer</title>
		<link>http://blog.coldewey.com/allgemein/2008/05/15/start-zu-neuen-ufern/#comment-385</link>
		<author>Bernd Schiffer</author>
		<pubDate>Sat, 17 May 2008 11:22:41 +0000</pubDate>
		<guid>http://blog.coldewey.com/allgemein/2008/05/15/start-zu-neuen-ufern/#comment-385</guid>
		<description>Herzlichen Glückwunsch zum Chefredakteur!</description>
		<content:encoded><![CDATA[<p>Herzlichen Glückwunsch zum Chefredakteur!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Architektur und Agilität von Markus Voelter</title>
		<link>http://blog.coldewey.com/agile/2008/05/01/architektur-und-agilitat/#comment-346</link>
		<author>Markus Voelter</author>
		<pubDate>Fri, 02 May 2008 06:35:56 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2008/05/01/architektur-und-agilitat/#comment-346</guid>
		<description>Es geht nicht darum, Änderungen zu vermeiden. Sondern darum, mit mit erträglichem Aufwand dafür zu sorgen, dass das System konsistent ist. Nur dadurch kann man die üblichen -ilities sicherstellen. Änderungen sind jederzeit ok - aber idealerweise von einem konsistenten Zustand in einen anderen.</description>
		<content:encoded><![CDATA[<p>Es geht nicht darum, Änderungen zu vermeiden. Sondern darum, mit mit erträglichem Aufwand dafür zu sorgen, dass das System konsistent ist. Nur dadurch kann man die üblichen -ilities sicherstellen. Änderungen sind jederzeit ok - aber idealerweise von einem konsistenten Zustand in einen anderen.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Ideen zu Mini-Retrospektiven von Ilja Preuß</title>
		<link>http://blog.coldewey.com/agile/2008/03/13/ideen-zu-mini-retrospektiven/#comment-66</link>
		<author>Ilja Preuß</author>
		<pubDate>Fri, 14 Mar 2008 15:05:23 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2008/03/13/ideen-zu-mini-retrospektiven/#comment-66</guid>
		<description>Persönlich würde ich eine solche abgespeckte Retrospektive nur im "begründeten Einzelfall" durchführen. Nach meiner Erfahrung ist es durchaus möglich und erstrebenswert, eine "vollwertige" Iterations-Retrospektive in angemessener Zeit durchzuführen - insbesondere wenn die Teilnehmer "Übung" darin bekommen. Z.B. halte ich eine zwei-Stunden-Retro alle zwei Wochen für durchaus angemessen.* Ein gutes Format für den Einstieg findet man z.B. in James Shore's "The Art of Agile Development".

Auch das ist aber kein Ersatz für größere Release- oder Projekt-Retrospektiven, sondern "nur" eine (wertvolle) Ergänzung.</description>
		<content:encoded><![CDATA[<p>Persönlich würde ich eine solche abgespeckte Retrospektive nur im &#8220;begründeten Einzelfall&#8221; durchführen. Nach meiner Erfahrung ist es durchaus möglich und erstrebenswert, eine &#8220;vollwertige&#8221; Iterations-Retrospektive in angemessener Zeit durchzuführen - insbesondere wenn die Teilnehmer &#8220;Übung&#8221; darin bekommen. Z.B. halte ich eine zwei-Stunden-Retro alle zwei Wochen für durchaus angemessen.* Ein gutes Format für den Einstieg findet man z.B. in James Shore&#8217;s &#8220;The Art of Agile Development&#8221;.</p>
<p>Auch das ist aber kein Ersatz für größere Release- oder Projekt-Retrospektiven, sondern &#8220;nur&#8221; eine (wertvolle) Ergänzung.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Sieben Jahre Agiles Manifest von Jens Coldewey</title>
		<link>http://blog.coldewey.com/agile/2008/02/15/sieben-jahre-agiles-manifest/#comment-53</link>
		<author>Jens Coldewey</author>
		<pubDate>Tue, 19 Feb 2008 12:07:22 +0000</pubDate>
		<guid>http://blog.coldewey.com/agile/2008/02/15/sieben-jahre-agiles-manifest/#comment-53</guid>
		<description>Da kann ich nur spekulieren: Vielleicht weil Martin Fowler zwar bei der Formulierung des Manifests dabei war, aber nicht bei XP oder Scrum, deren Formulierungen vor 2001 waren?</description>
		<content:encoded><![CDATA[<p>Da kann ich nur spekulieren: Vielleicht weil Martin Fowler zwar bei der Formulierung des Manifests dabei war, aber nicht bei XP oder Scrum, deren Formulierungen vor 2001 waren?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
