<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2germanfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>BEIER-CHRISTIAN.eu</title>
	
	<link>http://www.beier-christian.eu/blog</link>
	<description />
	<lastBuildDate>Tue, 25 May 2010 11:37:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/beier-christian" /><feedburner:info uri="beier-christian" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fbeier-christian" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/beier-christian" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fbeier-christian" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fbeier-christian" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fbeier-christian" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://add.my.yahoo.com/content?lg=de&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2Fbeier-christian" src="http://us.i1.yimg.com/us.yimg.com/i/de/my/addtomyyahoo4.gif">Subscribe with Mein Yahoo!</feedburner:feedFlare><item>
		<title>Rails 2.3.6, Rails 2.3.7 und Rails 2.3.8</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/W7WzqAsQPxo/</link>
		<comments>http://www.beier-christian.eu/blog/weblog/rails-2-3-6-rails-2-3-7-und-rails-2-3-8/#comments</comments>
		<pubDate>Tue, 25 May 2010 11:36:37 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Weblog]]></category>
		<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=651</guid>
		<description><![CDATA[In den letzten Tagen war ziemlich viel Wirbel in der Rails Community, da drei neue Versionen veröffentlicht wurden – die letzten beiden (2.3.7 und 2.3.8) allerdings nicht ganz freiwillig.

Die Version 2.3.6 ist neben einigen Fehlerbehebungen als Vorbereitung für den Umstieg auf Rails 3 gedacht. Entsprechend sollte bei bestehenden Anwendungen (wenn ein Umstieg geplant ist) auf [...]]]></description>
			<content:encoded><![CDATA[<p>In den letzten Tagen war ziemlich viel Wirbel in der Rails Community, da drei neue Versionen veröffentlicht wurden – die letzten beiden (2.3.7 und 2.3.8) allerdings nicht ganz freiwillig.</p>

<p>Die Version <a href="http://weblog.rubyonrails.org/2010/5/23/ruby-on-rails-2-3-6-released">2.3.6</a> ist neben einigen Fehlerbehebungen als Vorbereitung für den Umstieg auf Rails 3 gedacht. Entsprechend sollte bei bestehenden Anwendungen (wenn ein Umstieg geplant ist) auf die neuen Deprecated-Warnungen geachtet werden. Anwendungen die keine Deprecated-Warnungen ausgeben, sollten später ohne ernsthafte Probleme unter Rails 3 funktionieren.</p>

<p>In der neuen Version wurden teilweise schon Funktionen von Rails 3 übernommen. So unter anderem die Funktionen für den Schutz gegen XSS, welche auf dem <a href="http://github.com/rails/rails_xss">rails-xss-Plugin</a> basieren. Da dort einige Bugs dem HAML-Entwickler aufgefallen sind, wurde relativ schnell eine aktualisierte Version (<a href="http://weblog.rubyonrails.org/2010/5/24/ruby-on-rails-2-3-7-released">2.3.7</a>) veröffentlicht. Doch damit waren die Probleme nicht beseitigt: Einer der Patchs in Rails 2.3.7 soll wiederum für einige Fehler gesorgt haben, weshalb die Version <a href="http://weblog.rubyonrails.org/2010/5/25/ruby-on-rails-2-3-8-released">2.3.8</a> hinterher geschoben werden musste.</p>

<blockquote>I apologize for wasting a chunk of your day on installing what ought to have been a patch-level update only to find it breaks your app. That’s well out of line with our stable release process and it’s my fault for stepping out of it. I got caught up in a sky-is-falling response to a 2.3.6 bug that affected a handful of users and responded with a fix that exposed a new flaw to nearly all users, despite testing and sanity checking.</blockquote>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/W7WzqAsQPxo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/weblog/rails-2-3-6-rails-2-3-7-und-rails-2-3-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/weblog/rails-2-3-6-rails-2-3-7-und-rails-2-3-8/</feedburner:origLink></item>
		<item>
		<title>CBpictures, mein neues Foto-Zuhause</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/Xidsr-UUKCI/</link>
		<comments>http://www.beier-christian.eu/blog/weblog/cbpictures-mein-neues-foto-zuhause/#comments</comments>
		<pubDate>Sun, 25 Apr 2010 14:14:18 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Weblog]]></category>
		<category><![CDATA[fotografie]]></category>
		<category><![CDATA[intern]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=648</guid>
		<description><![CDATA[

Heute mal ein Posting in eigener Sache: Vor einigen Jahren war diese Website noch in zwei Hauptbereiche unterteilt: dem Webdesign und der Fotografie. Nachdem ich aber – da das Webdesign und die Programmierung einen höheren Stellenwert hatte – den Fotografie-Teil stark vernachlässigt hatte, entfernte ich diesen Bereich komplett. Allerdings fehlte mir die ganze Zeit immer [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.cbpictures.de"><img src="http://www.beier-christian.eu/blog/wp-content/uploads/2010/04/screenshot_cbpictures-548x406.jpg" alt="Screenshot von CBpictures" title="CBpictures – Fotografien von Christian Beier" width="548" height="406" class="aligncenter size-medium wp-image-650" /></a></p>

<p>Heute mal ein Posting in eigener Sache: Vor einigen Jahren war diese Website noch in zwei Hauptbereiche unterteilt: dem Webdesign und der Fotografie. Nachdem ich aber – da das Webdesign und die Programmierung einen höheren Stellenwert hatte – den Fotografie-Teil stark vernachlässigt hatte, entfernte ich diesen Bereich komplett. Allerdings fehlte mir die ganze Zeit immer etwas.</p>

<p>In den letzten Tagen habe ich an einer neuen Website für die Fotografie gearbeitet. Und jetzt ist sie – zumindest vorläufig – fertig. Wer sich also nicht nur für meine Arbeit in der Webentwicklung interessiert, sollte einmal bei <a href="http://www.cbpictures.de">CBpictures</a> vorbeischauen …</p>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/Xidsr-UUKCI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/weblog/cbpictures-mein-neues-foto-zuhause/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/weblog/cbpictures-mein-neues-foto-zuhause/</feedburner:origLink></item>
		<item>
		<title>Persönliches Fazit zum PolitCamp 2010, Berlin</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/PMOobQjVp1U/</link>
		<comments>http://www.beier-christian.eu/blog/weblog/personliches-fazit-zum-politcamp-2010-berlin/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 15:32:53 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Weblog]]></category>
		<category><![CDATA[politik]]></category>
		<category><![CDATA[veranstaltung]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=647</guid>
		<description><![CDATA[ Am vergangenen Wochenende fand in Berlin das PolitCamp 2010 im »Radial System V« (Berlin) statt. Gleich vorneweg: Die Location und auch die Aussicht ist super und wirklich zu empfehlen. Zwei Tage nach dem PolitCamp hier meine ganz persönlichen Eindrücke in Kurzform:


    Noch einmal zur Location: Die Räume dort sind angenehm groß [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://10.politcamp.org/"><img class="alignright size-full wp-image-636" title="Logo des Politcamp" src="http://www.beier-christian.eu/blog/wp-content/uploads/2010/02/politcamp.jpg" alt="" width="212" height="37" /></a> Am vergangenen Wochenende fand in Berlin das <a href="http://10.politcamp.org/">PolitCamp 2010</a> im »<a href="http://www.radialsystem.de/">Radial System V</a>« (Berlin) statt. Gleich vorneweg: Die Location und auch die Aussicht ist super und wirklich zu empfehlen. Zwei Tage nach dem PolitCamp hier meine ganz persönlichen Eindrücke in Kurzform:</p>

<ul>
    <li>Noch einmal zur Location: Die Räume dort sind angenehm groß und trotz der hohen Anzahl der Teilnehmer fand man auch immer problemlos einen vernünftigen Sitzplatz. Stehen oder auf dem Boden sitzen musste ich jedenfalls in keiner einzigen Session. Auch für eine vernünftige Stromversorgung wurde dank der »Netzsteckers« gesorgt. Meine vorsorglich mitgebrachte 10 Meter Stromleitung konnte jedenfalls im Rucksack bleiben. Daumen hoch dafür.</li>
    <li>Wie bei einer solchen Veranstaltung üblich, ist das WLAN instabil und langsam.  Ständig ist man rausgeflogen und musste sich erneut einloggen. Zudem war es kriechend langsam. Aber da man das ja eigentlich vorher schon weiß,  und ich mich entsprechend vorbereitet habe, war dies für mich jetzt nicht besonders tragisch. So war der Nervfaktor bei mir zumindest nach 10-Minuten erledigt. <span id="more-647"></span></li>
    <li>Problematischer war schon die Verteilung der Sessions: Die interessanten Themen finden immer zur selben Zeit statt. Gerade am ersten Tag war das recht nervig. Zudem wäre zu überlegen, dass bei Sessions mit Promifaktor (z.B. Frau Schröder) keine weiteren Sessions daneben stattfinden. Denn für die bleibt sowieso kein Besucher mehr übrig.</li>
    <li>Auch war es ziemlich blöd, dass zwischen den Sessions keine Pause war. So konnte man nach einer Session kaum mit dem Referenten sprechen, ohne die Hälfte der nächsten Session verpassen zu müssen. Hier sollte im nächsten Jahr ein Puffer von vielleicht 10-15 Minuten eingeplant werden. Zudem ist man den ganzen Tag so nur von Session zu Session gehetzt.</li>
    <li>Im Vorfeld der Konferenz konnten die geplanten Sessions mit einem neuen und interessanten Tool »<a href="http://www.liquidsession.de/">Liquid Session</a>« eingereicht und bewertet werden. Warum auf dieses Meinungsbild dann aber in der Konferenz aber nicht zurückgegriffen wurde, bleibt mir verschlossen, was eigentlich recht schade ist. Eine Idee wäre auch, jeder Session einen Tag zu geben. Dieser könnte nicht nur bei Twitter verwendet werden, sondern auch um zusätzliche Informationen zu einer Session an einem zentralen Ort (Liquid Session) zur Verfügung zu stellen.</li>
    <li>Recht schade fand ich auch, dass für die meisten Sessions zu wenig Zeit vorgesehen war (das Problem wird aber wahrscheinlich immer bestehen). So sind die Diskussionen leider immer sehr weit an der Oberfläche geblieben und auf wirklich interessante Aspekte konnte so nicht tief genug eingegangen werden. Auf wirklich konkrete Feststellungen und Ergebnisse sind so leider ausgeblieben. Vielleicht habe ich da aber auch einfach mit zu hohen und vielleicht auch falschen Erwartungen (ich bin ja doch eher als Entwickler an handfesten Dingen interessiert) herangegangen.</li>
    <li>Das PolitCamp habe ich hauptsächlich als eine Veranstaltung zum Kontakte knüpfen und Netzwerken verstanden. Leider ist aufgrund des vollen und interessanten Sessionplan dies leider etwas zu kurz bei mir gekommen. Vielleicht sollte auch schon in der Planung der Veranstaltung dafür mehr Raum gegeben werden.</li>
</ul>

<p>Insgesamt war das PolitCamp aber sehr interessant, spannend und wirklich gut gelungen. Eine solche Veranstaltung in der Größenordnung muss man auch erst einmal so reibungslos über die Bühne bringen. Allein das verdient schon sehr großen Respekt an die Organisatoren des PolitCamp 2010.</p>

<p>Für alle die nicht beim PolitCamp dabei sein konnten: Die Videos von den Sessions und Diskussionsrunden in der großen Halle stehen alle <a href="http://blog.politik.de/kategorie/politcamp/">bei Politik.de zur Verfügung</a>.</p>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/PMOobQjVp1U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/weblog/personliches-fazit-zum-politcamp-2010-berlin/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/weblog/personliches-fazit-zum-politcamp-2010-berlin/</feedburner:origLink></item>
		<item>
		<title>»Ruby Best Practices« zum Download</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/UWyFa5gfFP8/</link>
		<comments>http://www.beier-christian.eu/blog/sideblog/%c2%bbruby-best-practices%c2%ab-zum-download/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 12:42:41 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Sideblog]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[ebook]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=646</guid>
		<description><![CDATA[»Ruby Best Practices« zeigt erprobte und praxistaugliche Ansätze und Lösungen für die Programmierung mit Ruby. Ein besonderer Augenmerk wird auf das Test-Driven-Development (TDD) gelegt, aber auch die Bereiche APIs, Debugging und Internationalisierung werden behandelt. Das Buch von Gregory T. Brown ist jetzt als Open Source eBook bei Github veröffentlicht worden. Das gedruckte »Original« gibt es [...]]]></description>
			<content:encoded><![CDATA[<p><strong>»<a href="http://blog.rubybestpractices.com/posts/gregory/022-rbp-now-open.html">Ruby Best Practices</a>«</strong> zeigt erprobte und praxistaugliche Ansätze und Lösungen für die Programmierung mit Ruby. Ein besonderer Augenmerk wird auf das Test-Driven-Development (TDD) gelegt, aber auch die Bereiche APIs, Debugging und Internationalisierung werden behandelt. Das Buch von Gregory T. Brown ist jetzt als Open Source eBook bei <a href="http://github.com/sandal/rbp-book">Github veröffentlicht</a> worden. Das gedruckte »Original« gibt es weiterhin bei <a href="http://oreilly.com/catalog/9780596523015/">O&#8217;Reilly</a>.</p>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/UWyFa5gfFP8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/sideblog/%c2%bbruby-best-practices%c2%ab-zum-download/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/sideblog/%c2%bbruby-best-practices%c2%ab-zum-download/</feedburner:origLink></item>
		<item>
		<title>Eigenentwicklung vs. Standardsoftware</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/2MW_daElvyE/</link>
		<comments>http://www.beier-christian.eu/blog/weblog/eigenentwicklung-vs-standardsoftware/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 07:00:47 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Weblog]]></category>
		<category><![CDATA[konzeption]]></category>
		<category><![CDATA[projektmanagement]]></category>
		<category><![CDATA[webentwicklung]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=643</guid>
		<description><![CDATA[Vor der Entwicklung einer umfangreichen Website oder Community steht am Anfang immer die Frage: Soll das System komplett selbst entwickelt werden (Individuallösung) oder auf eine fertige Lösung – die meist nur noch angepasst werden muss – zurückgegriffen werden. Diese Entscheidung klingt einfach, kann aber im weiteren Betrieb weitreichende Auswirkungen und Konsequenzen auf die Erweiterbarkeit, Kosten [...]]]></description>
			<content:encoded><![CDATA[<p>Vor der Entwicklung einer umfangreichen Website oder Community steht am Anfang immer die Frage: Soll das System komplett selbst entwickelt werden (Individuallösung) oder auf eine fertige Lösung – die meist nur noch angepasst werden muss – zurückgegriffen werden. Diese Entscheidung klingt einfach, kann aber im weiteren Betrieb weitreichende Auswirkungen und Konsequenzen auf die Erweiterbarkeit, Kosten und den wirtschaftlichen Erfolg eines Projektes haben. Welche Entscheidung nun die Richtige ist, hängt von verschiedenen Faktoren ab:</p>

<ul>
    <li>Welche Funktionen muss das System / die Website besitzen?</li>
    <li>Was sind die relevanten Anforderungen und was ist »nice to have«?</li>
    <li>Wie sind die Randbedingungen (einen Server, welche Programmiersprache, etc.)?</li>
    <li>Welches Budget und Zeit für die Realisierung stehen zur Verfügung?</li>
</ul>

<p>Diese Punkte sollte noch vor einer Entscheidung vollständige geklärt und mit allen Projektbeteiligten abgestimmt sein.</p>

<p><span id="more-643"></span></p>

<h3>Vorteile einer Eigenentwicklung</h3>

<ul>
    <li><strong>Know-how:</strong> Durch die Eigenentwicklung erhöhen sich die Fähigkeiten der beteiligten Personen. Sie lernen von Grund auf die Problematiken kennen und können so schnell und kompetent bei Problemen und Störungen eingreifen. Sie stecken praktisch in der Software drin. Dieses Wissen betrifft nicht nur die Anwendung an sich, sondern auch das Wissen über die verwendete Technologien und Programmiersprachen erhöht sich. Dies kann wiederum in Drittprojekten vermarktet werden.</li>
    <li><strong>Schlanke Software:</strong> Durch die Eigenentwicklung bleibt die Software schlank. Es wird nur die Funktionalität entwickelt und integriert, die auch wirklich benötigt wird. Dagegen möchte Standardsoftware ein möglichst breites Spektrum an Funktionen und Einsatzzwecke abdecken, was meist zu einer erheblichen Überdimensionierung und zu mittelmäßigen Kompromissen führt.</li>
    <li><strong>Keine Abhängigkeit:</strong> Bei kommerziellen Softwareanbietern besteht die Gefahr, dass diese ihre Strategie ändern oder gar Insolvent werden. Grundsätzlich besteht immer die Abhängigkeit, in welche Richtung die software weiterentwickelt wird und auch die möglichen Sicherheitsrisiken kennt meist nur der Anbieter (dies gilt meist auch bei Open Source Software). Bei einer Eigenentwicklung hat man selbst die Kontrolle über den Quellcode und die Weiterentwicklung.</li>
    <li><strong>Bessere Wartbarkeit:</strong> Änderungen und neue Funktionen können meist in kürzerer Zeit als bei einer Standardsoftware integriert werden. Die Software kann flexibler mit dem Projekt bzw. Unternehmen wachsen.</li>
    <li><strong>Adaptierbarkeit der Standardsoftware:</strong> In den seltensten Fällen bringt die Software alle benötigten Funktionen und Konfigurationen mit. Sie muss meist an die eigenen Bedürfnisse erst angepasst werden. Auch dies kostet Zeit und der Entwickler muss sich erst in die Dokumentation und den Aufbau des Codes einarbeiten. Gerade bei kommerziellen Systemen ist dies vielfach erst gar nicht möglich, da der Quellcode geschützt ist. Hier wäre man wieder vom Softwareanbieter abhängig.</li>
    <li><strong>Differenzierung von Wettbewerbern: </strong>Durch die Entwicklung eigener Funktionen kann sie ein Unternehmen mit einer Eigenentwicklung viel bessern von Konkurrenten abgrenzen.</li>
</ul>

<h3>Nachteile von Eigenentwicklungen</h3>

<ul>
    <li><strong>Entwicklungskosten:</strong> Je nach Komplexität der Software können die Entwicklungskosten sehr hoch sein. Zudem lassen sich diese zu Beginn eines Projektes nur sehr schwer und ungenau einschätzen, da viele Probleme erst während des Entwicklungsprozesses auftreten und nicht eingeplant werden können.</li>
    <li><strong>Zeitbedarf:</strong> Nicht nur die Kosten, sondern auch der Zeitbedarf ist am Anfang nur sehr schwer abschätzbar. Bei der Planung sollten daher grundsätzlich sehr großzügige Pufferzeiten eingeplant werden. Auch neue Methoden des Projektmanagement wie z.B. <a href="http://de.wikipedia.org/wiki/Scrum">SCRUM</a> können helfen. Ansonsten bedeutet ein steigender Entwicklungsaufwand auch sehr schnell eine Zeitverschiebung.</li>
    <li><strong>Qualitätsprobleme:</strong> Die Entwicklung von fehlerfreier Software ist nicht möglich. Und je komplexer die Software ist, desto länger kann es auch dauern, bis das System in der Pilotphase (in dieser die Software unter realen Bedingungen im Einsatz ist) die notwendige Stabilität erreicht hat. Dieser Problematik kann durch entsprechende Entwicklungs-Methoden wie z.B. <a href="http://de.wikipedia.org/wiki/Modultest">Unit Tests</a> begegnet werden.</li>
    <li><strong>Abhängigkeit:</strong> Was auf der einen Seite ein Vorteil ist, ist auf der anderen ein Nachteil. Bei einer Eigenentwicklung man man sich von den Mitarbeitern bzw. Firmen abhängig, die das System entwickelt haben. Zusätzlich steigt bei den Mitarbeitern die Kompetenz und damit ihr Marktwert. Dies kann sich in steigenden Gehaltsforderungen oder einer Kündigung ausdrücken. Selbst bei einer umfangreichen Dokumentation der Software, muss sich ein neuer Mitarbeiter oder eine neue Firma erst in die Denkweisen der alten Entwickler einarbeiten.</li>
    <li><strong>Technologiewechsel:</strong> Der technologische Wandelt in der IT-Industrie ist sehr schnell. Dadurch kann eine Software bzw. eine eingesetzte Technologie recht schnell veralten. Und je älter sie ist, desto schwieriger wird es Entwickler zu finden, die sich mit der Wartung beschäftigen können.</li>
</ul>

<h3>Vorteile von Standardlösungen</h3>

<ul>
    <li><strong>Zeitgewinn:</strong> Je nach dem wie vollständig die festgelegten Anforderungen von der Softwarelösung abgedeckt werden, kann das System sofort oder nach kurzer Zeit eingesetzt werden.</li>
    <li><strong>Niedrigere Kosten:</strong> Sofern die Standardsoftware viele der benötigten Funktionen erfüllt und auch den qualitativen Anforderungen gerecht wird, sind die Kosten für die Einführung und Betrieb meist geringer, als bei einer Eigenentwicklung.</li>
    <li><strong>Qualität:</strong> Weil Standardprodukte bei verschiedenen Anwendern im Einsatz sind, wurden viele Fehler von diesen bereits entdeckt und entfernt. Daher ist die Qualität gerade am Anfang bei Standardsoftware höher, als bei Eigenentwicklungen.</li>
    <li><strong>Regelmäßige Verbesserungen:</strong> Jeder Einzelne profitiert bei Standardlösungen von der Kreativität und Ideen aller. Zudem verteilen sich die Entwicklungskosten neuer Funktionen auf viele Kunden.</li>
</ul>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/2MW_daElvyE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/weblog/eigenentwicklung-vs-standardsoftware/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/weblog/eigenentwicklung-vs-standardsoftware/</feedburner:origLink></item>
		<item>
		<title>Nächster Halt: Ruby on Rails 3.0</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/_-XwFx60urQ/</link>
		<comments>http://www.beier-christian.eu/blog/weblog/nachster-halt-ruby-on-rails-3-0/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 13:03:31 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Weblog]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[webentwicklung]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=644</guid>
		<description><![CDATA[Mit Rails 3.0 ist ein großes, neues Release für das beliebte Ruby Framework im Anmarsch. Neben vielen Fehlerbehebungen gibt es auch viele neue Funktionen und Verbesserungen. Eine der größten Neuerung ist wohl die neue Abfragesprache für Active Record. Dazu gibt es einen verbesserten Router, der besonders gut RESTful Anwendungen abbilden kann und eine neue Mailer [...]]]></description>
			<content:encoded><![CDATA[<p>Mit Rails 3.0 ist ein großes, neues Release für das beliebte Ruby Framework im Anmarsch. Neben vielen Fehlerbehebungen gibt es auch viele neue Funktionen und Verbesserungen. Eine der größten Neuerung ist wohl die neue Abfragesprache für Active Record. Dazu gibt es einen verbesserten Router, der besonders gut RESTful Anwendungen abbilden kann und eine neue Mailer API. Mit dieser können dann auch endlich Multipart Nachrichten ohne Bauschmerzen versendet werden.</p>

<p>Die aktuelle Beta von Rails 3.0 ist noch nicht für produktive Anwendungen geeignet. Aber um sich schon einmal mit den neuen Möglichkeiten und Funktionen vertraut zu machen, kann ein früher Blick sicherlich nicht schaden. Zu beachten ist jedoch, dass die aktuelle Version und die neue Vorabversion von Ruby (als Grundlage für Ruby on Rails) nicht zeitgleich betrieben werden können. Daher ist die Installation über <a href="http://rvm.beginrescueend.com/">RVM</a> (Ruby Version Manger) zu empfehlen.</p>

<p><span id="more-644"></span></p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">rvm install 1.9.1<br />
rvm 1.9.1<br />
gem install tzinfo builder memcache-client rack rack-test rack-mount erubis mail text-format thor bundler i18n<br />
gem install rails --pre</div></div>

<p>Schon ist Rails 3.0 lauffähig und es kann eine neue Rails Anwendung erstellt oder bestehende portiert werden. Um zur aktuellen Ruby-Version zurückzukehren, muss »rvm system« im Terminal eingegeben werden. Wie genau eine bestehende Anwendung portiert werden kann, zeigt ein <a href="http://blog.peepcode.com/tutorials/2010/live-coding-rails-3-upgrade">25-minütiger Screencast bei PeepCode</a>, der kostenlos erhältlich ist.</p>

<h3>Die Neuerungen von Ruby on Rails 3.0</h3>

<h4>Active Record</h4>

<p>Die wohl auffälligste Änderung von Rails 3.0 ist de neue Abfragesprache für Active Record. Statt bisher alle in eine »find«-Methode zu schreiben, werden die einzelnen Bestandteile einer Datenbankabfrage in einzelne Methoden zerlegt.</p>

<div class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Books.<span style="color:#9900CC;">find</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:all</span>, <span style="color:#ff3333; font-weight:bold;">:order</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;updated_at desc&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:limit</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006666;">15</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 2.x</span><br />
Books.<span style="color:#9900CC;">order</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;updated_at desc&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">limit</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006666;">15</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 3.x</span><br />
<br />
Books.<span style="color:#9900CC;">find</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:first</span>, <span style="color:#ff3333; font-weight:bold;">:conditions</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">&quot;title = ?&quot;</span>, <span style="color:#996600;">'Ruby 3.0'</span><span style="color:#006600; font-weight:bold;">&#93;</span>, <span style="color:#ff3333; font-weight:bold;">:order</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;updates_at desc&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 2.x</span><br />
Books.<span style="color:#9900CC;">where</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;title = ?&quot;</span>, <span style="color:#996600;">'Rails 3.0'</span><span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">last</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 3.x</span></div></div>

<p class="code_description">Ein paar Beispiele für die neue Abfragesprache von Ruby on Rails 3.0</p>

<p>Aber keine Angst: Zumindest bis zur Version 3.1 von Rails soll die bisherige <abbr title="Application Interface">API</abbr> weiter unterstützt werden.</p>

<h4>Routing</h4>

<p>Auch das Routing wurde etwas aufgeräumt und übersichtlicher gestaltet. Unter anderem wurde auf das »map« am Anfang einer Route verzichtet. Ansonsten gibt es viele neue Funktionen und Möglichkeiten, unter anderem lassen sich Requests besser nach bestimmten Mustern verarbeiten und Routes zuweisen.</p>

<div class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">map.<span style="color:#9900CC;">root</span> <span style="color:#ff3333; font-weight:bold;">:controller</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;pages&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:action</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;index&quot;</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 2.x</span><br />
root <span style="color:#ff3333; font-weight:bold;">:to</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;pages#index&quot;</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 3.0</span><br />
<br />
map.<span style="color:#9900CC;">login</span> <span style="color:#996600;">&quot;/login&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:controller</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;sessions&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:action</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;login&quot;</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 2.x</span><br />
match <span style="color:#996600;">&quot;/login&quot;</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;sessions#login&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:as</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#ff3333; font-weight:bold;">:login</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 3.x</span><br />
<br />
<span style="color:#008000; font-style:italic;">#-&gt; Rails 2.x</span><br />
map.<span style="color:#9900CC;">resources</span> <span style="color:#ff3333; font-weight:bold;">:books</span>, <span style="color:#ff3333; font-weight:bold;">:collection</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006600; font-weight:bold;">&#123;</span> <span style="color:#ff3333; font-weight:bold;">:filter</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#ff3333; font-weight:bold;">:get</span> <span style="color:#006600; font-weight:bold;">&#125;</span> <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>books<span style="color:#006600; font-weight:bold;">|</span><br />
&nbsp; books.<span style="color:#9900CC;">resources</span> <span style="color:#ff3333; font-weight:bold;">:reviews</span><br />
<span style="color:#9966CC; font-weight:bold;">end</span><br />
<br />
<span style="color:#008000; font-style:italic;">#-&gt; Rails 3.x</span><br />
resources <span style="color:#ff3333; font-weight:bold;">:books</span> <span style="color:#9966CC; font-weight:bold;">do</span><br />
&nbsp; get <span style="color:#ff3333; font-weight:bold;">:filter</span>, <span style="color:#ff3333; font-weight:bold;">:on</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#ff3333; font-weight:bold;">:collection</span><br />
&nbsp; resources <span style="color:#ff3333; font-weight:bold;">:reviews</span><br />
<span style="color:#9966CC; font-weight:bold;">end</span></div></div>

<p class="code_description">Code-Beispiele für die neue Routes <abbr title="Application Interface">API</abbr> von Rails 3.0</p>

<h4>Action Mailer</h4>

<p>Obwohl die Entwicklung von Rails Anwendungen eher Spaß als Arbeit ist, waren der Versand von E-Mails bisher die am meisten gemiedene Aufgabe. Mit Rails 3.0 gibt es eine neue API, die den Versand von E-Mail vereinfachen soll. So gibt es jetzt einen eigenen Ort unter »app/mailers« und es werden bei Bedarf die E-Mails als Multipart (Text und HTML-Teil) versendet. Sehr schön finde ich es auch, dass ein Mail in Rails jetzt als Objekt behandelt wird:</p>

<div class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Notifier.<span style="color:#9900CC;">deliver_signup_notification</span><span style="color:#006600; font-weight:bold;">&#40;</span>recipient<span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 2.x</span><br />
Notifier.<span style="color:#9900CC;">signup_notification</span><span style="color:#006600; font-weight:bold;">&#40;</span>recipient<span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">deliver</span> <span style="color:#008000; font-style:italic;">#-&gt; Rails 3.x</span><br />
<br />
<span style="color:#008000; font-style:italic;"># Beispiel für eine Multipart E-Mail in Ruby on Rails 3.x</span><br />
<span style="color:#9966CC; font-weight:bold;">def</span> multipart_email<br />
&nbsp; mail<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:to</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> recipient.<span style="color:#9900CC;">email</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>format<span style="color:#006600; font-weight:bold;">|</span><br />
&nbsp; &nbsp; <span style="color:#CC0066; font-weight:bold;">format</span>.<span style="color:#9900CC;">text</span> <span style="color:#006600; font-weight:bold;">&#123;</span> render <span style="color:#ff3333; font-weight:bold;">:text</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;Text-Alternative der E-Mail&quot;</span> <span style="color:#006600; font-weight:bold;">&#125;</span><br />
&nbsp; &nbsp; <span style="color:#CC0066; font-weight:bold;">format</span>.<span style="color:#9900CC;">html</span> <span style="color:#006600; font-weight:bold;">&#123;</span> render <span style="color:#ff3333; font-weight:bold;">:text</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;&lt;h1&gt;Dies ist eine HTML-E-Mail&lt;/h1&gt;&quot;</span> <span style="color:#006600; font-weight:bold;">&#125;</span><br />
&nbsp; <span style="color:#9966CC; font-weight:bold;">end</span><br />
<span style="color:#9966CC; font-weight:bold;">end</span></div></div>

<p>Das sind so die größten Neuerungen von Ruby on Rails 3.0. Natürlich gibt es noch viele weitere zu entdecken. Zudem hat sich einiges unter der Oberfläche getan und die Geschwindigkeit von Rails wurde verbessert. Was sich alle genau ändert, wird im <a href="http://guides.rails.info/3_0_release_notes.html">offiziellen Release Note</a> verraten.</p>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/_-XwFx60urQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/weblog/nachster-halt-ruby-on-rails-3-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/weblog/nachster-halt-ruby-on-rails-3-0/</feedburner:origLink></item>
		<item>
		<title>Hobo 1.0: Mehr Spaß mit Ruby on Rails</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/1lNMQAuTJzg/</link>
		<comments>http://www.beier-christian.eu/blog/weblog/hobo-1-0-mehr-spass-mit-rails/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 07:43:32 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Weblog]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[webentwicklung]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=641</guid>
		<description><![CDATA[Wer dachte, mit Ruby on Rails lassen sich Webanwendungen schon schnell und einfach entwickeln, hat bisher noch nicht von Hobo gehört. Hobo ist eine Erweiterung für Rails (in Form eines Gem) und bringt viele praktische Dinge mit, die den Entwickleralltag erleichtern: z.B. fertig eingerichtete Authentifizierung, Rechtesystem, AJAX-Interface, …

Aktuell liegt Hobo in der Version 1.0 vor [...]]]></description>
			<content:encoded><![CDATA[<p>Wer dachte, mit Ruby on Rails lassen sich Webanwendungen schon schnell und einfach entwickeln, hat bisher noch nicht von Hobo gehört. <a href="http://hobocentral.net/">Hobo</a> ist eine Erweiterung für Rails (in Form eines Gem) und bringt viele praktische Dinge mit, die den Entwickleralltag erleichtern: z.B. fertig eingerichtete Authentifizierung, Rechtesystem, AJAX-Interface, …</p>

<p>Aktuell liegt Hobo in der Version 1.0 vor und hat den Stable Status erreicht. Somit kann Hobo ohne größere Bedenken auch produktiv eingesetzt werden. Die Erweiterung eignet sich sowohl für das schnelle Prototyping, wie auch für komplette Anwendungen. Mitgebracht wird eine eigene Markup Sprache: DRYML (»Dont Repeat Yourself Markup Language«). Diese hilft dabei, die Entwicklung von Templates zu abstrahieren und stark zu beschleunigen.</p>

<p>Sehr schön finde ich auch, dass sich die Entwickler nicht nur rein auf Hobo konzentriert haben, sondern mit »<a href="http://cookbook.hobocentral.net/">Hobo Cookbook</a>« auch gleich eine sehr hilfreiche Ressource geschaffen haben. Im Cookbook befinden sich sich praktische Codeschnipsel und Hilfestellungen für die Arbeit mit Hobo.</p>

<p>Für den Einstieg in Hobo ist auch der 18-minütige <a href="http://vimeo.com/7897205?hd=1">Screencast bei Vimeo</a> sehr zu empfehlen. Und wer sich erst von den Ergebnissen – die mit Hobo erreicht werden können – überzeugen möchte, schaut am besten in der <a href="http://hobocentral.net/gallery/">Galerie</a> vorbei.</p>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/1lNMQAuTJzg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/weblog/hobo-1-0-mehr-spass-mit-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/weblog/hobo-1-0-mehr-spass-mit-rails/</feedburner:origLink></item>
		<item>
		<title>jQuery: Ausgewählte Option aus Select-Box auslesen</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/JCYnTmAtvPA/</link>
		<comments>http://www.beier-christian.eu/blog/weblog/jquery-ausgewahlte-option-aus-select-box-auslesen/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 20:44:52 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Weblog]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[snippet]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=642</guid>
		<description><![CDATA[Manche Dinge sind eigentlich recht einfach, aber man tut sich mit ihnen schwer. So ist es zum Beispiel, wenn es darum geht, den ausgewählten Wert auf einem Select-Feld mit jQuery auszulesen. Nehmen wir an, das Dropdown-Feld sieht wie folgt aus:

&#60;label for=&#34;obst&#34;&#62;Obst&#60;/label&#62;
&#60;select name=&#34;obst&#34; id=&#34;obst&#34;&#62;
&#160; &#60;option value=&#34;1&#34;&#62;Orange&#60;/option&#62;
&#160; &#60;option value=&#34;2&#34;&#62;Apfel&#60;/option&#62;
&#160; &#60;option value=&#34;3&#34;&#62;Banane&#60;/option&#62;
&#60;/select&#62;



Ausgelesen kann der aktuelle Wert – eigentlich [...]]]></description>
			<content:encoded><![CDATA[<p>Manche Dinge sind eigentlich recht einfach, aber man tut sich mit ihnen schwer. So ist es zum Beispiel, wenn es darum geht, den ausgewählten Wert auf einem Select-Feld mit <a href="http://jquery.com/">jQuery</a> auszulesen. Nehmen wir an, das Dropdown-Feld sieht wie folgt aus:</p>

<div class="codecolorer-container html4strict default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">label</span> <span style="color: #000066;">for</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;obst&quot;</span>&gt;</span>Obst<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">label</span>&gt;</span><br />
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">select</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;obst&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;obst&quot;</span>&gt;</span><br />
&nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">option</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;1&quot;</span>&gt;</span>Orange<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">option</span>&gt;</span><br />
&nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">option</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;2&quot;</span>&gt;</span>Apfel<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">option</span>&gt;</span><br />
&nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">option</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;3&quot;</span>&gt;</span>Banane<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">option</span>&gt;</span><br />
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">select</span>&gt;</span></div></div>

<p><span id="more-642"></span></p>

<p>Ausgelesen kann der aktuelle Wert – eigentlich wie bei jedem anderen Input-Feld auch – mit val():</p>

<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'select#obst'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">val</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>

<p class="code_description">Ausgabe des Value-Wertes</p>

<p>Soll aber der Text, anstatt der Value ausgegeben werden, funktioniert die val-Funktion nicht mehr. Hier kann aber mit dem &#8220;:selected&#8221; Selektor gearbeitet werden:</p>

<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'select#obst :selected'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">text</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>

<p class="code_description">Ausgabe des Textes vom ausgewählten Listenpunkt</p>

<p>Ein weiteres mögliches Szenario bei der Arbeit mit Select-Boxen ist die Ausgabe von mehreren ausgewählten Optionen:</p>

<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'select#obst :selected'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>i<span style="color: #339933;">,</span> option<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #006600; font-style: italic;">// Verarbeitung der Optionen</span><br />
&nbsp; <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>option.<span style="color: #660066;">value</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">' '</span> <span style="color: #339933;">+</span> option.<span style="color: #660066;">text</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/JCYnTmAtvPA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/weblog/jquery-ausgewahlte-option-aus-select-box-auslesen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/weblog/jquery-ausgewahlte-option-aus-select-box-auslesen/</feedburner:origLink></item>
		<item>
		<title>Ruby on Rails, Passenger unter Debian/Ubuntu</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/XWGRVQDk1Ac/</link>
		<comments>http://www.beier-christian.eu/blog/weblog/ruby-on-rails-passenger-unter-debianubuntu/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 07:23:56 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Weblog]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=611</guid>
		<description><![CDATA[An dieser Stelle eine kleine Anleitung für die Installation von Ruby on Rails unter Debian/Ubuntu mit Passenger als Connector für den Apache Webserver.

Für die Installation der Debian-Pakete nutze ich aptitude. Der Paketverwalter apt-get sollte an dieser Stelle aber genauso gut funktionieren. Wenn du also apt-get statt aptitude einsetzt, bitte statte aptitude immer apt-get schreiben. ;)


Zuerst [...]]]></description>
			<content:encoded><![CDATA[<p>An dieser Stelle eine kleine Anleitung für die Installation von Ruby on Rails unter Debian/Ubuntu mit Passenger als Connector für den Apache Webserver.</p>

<p>Für die Installation der Debian-Pakete nutze ich aptitude. Der Paketverwalter apt-get sollte an dieser Stelle aber genauso gut funktionieren. Wenn du also apt-get statt aptitude einsetzt, bitte statte aptitude immer apt-get schreiben. ;)
<span id="more-611"></span></p>

<p>Zuerst installieren wir die benötigten Pakete:</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">aptitude install ruby rubygems irb ruby-dev php5 mysql-server rake build-essential libopenssl-ruby apache2-prefork-dev libapr1-dev libaprutil1-dev libxslt1-dev libxml2-dev libxml2 libxml2-dev</div></div>

<p>Dann ein freundliches</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">gem update --system</div></div>

<p>zur Sicherheit.</p>

<p>Jetzt noch die erforderlichen Gems herunterladen und installieren (unter anderem Rails und Passenger):</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">gem install rails builder haml hpricot  passenger mysql sqlite3-ruby nokogiri will_paginate --include-dependencies</div></div>

<p>Das Ganze dauert ein ziemliches Weilchen. Anschließend muss noch das Setup von Passenger gestartet werden:</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">passenger-install-apache2-module</div></div>

<p>Nachdem der Installer erfolgreich durchgelaufen ist und du alle Anweisungen vom Installer beachtet hast und alles korrekt durchgeführt hast, sollte Rails bei dir jetzt laufen.</p>

<h3>Einrichtung einer Apache vHost</h3>

<p>Damit du dein Rails-Projekt auch erreichen kannst, muss noch kurz in Apache ein vHost zu dieser Domain eingerichtet werden. Lege dazu unter /etc/apache2/sites-available/ eine neue Datei z.B. mit dem Namen mein_projekt an.</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&lt;VirtualHost www.mein-projekt.de:80&gt;<br />
&nbsp; ServerName www.mein-projekt.de<br />
&nbsp; DocumentRoot /var/www/mein_projekt/public<br />
&nbsp; &lt;Directory /var/www/mein_projekt/public&gt;<br />
&nbsp; &nbsp; AllowOverride all<br />
&nbsp; &nbsp; Options -MultiViews<br />
&nbsp; &lt;/Directory&gt;<br />
&lt;/VirtualHost&gt;</div></div>

<p class="code_description">/etc/apache2/sites-available/mein_projekt</p>

<p>Wichtig ist, dass du das Verzeichnis auf rails_projekt/<strong>public</strong> legst. Zum Schluss musst du noch einen Symlink anlegen:</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:520px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ln -s /etc/apache2/sites-available/mein_projekt /etc/apache2/sites-enabled/mein_projekt</div></div>

<p>und den Apache reloaden <em>/etc/init.d/apache2 force-reload</em>.</p>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/XWGRVQDk1Ac" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/weblog/ruby-on-rails-passenger-unter-debianubuntu/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/weblog/ruby-on-rails-passenger-unter-debianubuntu/</feedburner:origLink></item>
		<item>
		<title>Usability-Test mit Menschen mit Behinderungen</title>
		<link>http://feedproxy.google.com/~r/beier-christian/~3/SC_5sxvOAV0/</link>
		<comments>http://www.beier-christian.eu/blog/sideblog/usability-test-mit-menschen-mit-behinderungen/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 20:30:43 +0000</pubDate>
		<dc:creator>Christian Beier</dc:creator>
				<category><![CDATA[Sideblog]]></category>
		<category><![CDATA[accessibility]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://www.beier-christian.eu/blog/?p=639</guid>
		<description><![CDATA[Die Agentur aperto hat unter dem Titel »Einfach-teilhaben.de im Usability-Test mit Menschen mit Behinderung« einen sehr interessanten Praxisbericht veröffentlicht. Leider sind solche Daten aus der Praxis (wenn Barrierefreiheit und Usability zusammenkommen) recht selten, weshalb der Bericht umso spannender ist.
&#169;2010 Christian Beier – Dieser Artikel stammt von BEIER-CHRISTIAN.eu .]]></description>
			<content:encoded><![CDATA[<p>Die Agentur aperto hat unter dem Titel <strong>»<a href="http://blog.aperto.de/?p=635">Einfach-teilhaben.de im Usability-Test mit Menschen mit Behinderung</a>«</strong> einen sehr interessanten Praxisbericht veröffentlicht. Leider sind solche Daten aus der Praxis (wenn Barrierefreiheit und Usability zusammenkommen) recht selten, weshalb der Bericht umso spannender ist.</p>
<br /><hr /><br /><p>&copy;2010 Christian Beier – Dieser Artikel stammt von <a href="http://www.beier-christian.eu/blog">BEIER-CHRISTIAN.eu</a> .<img src="http://feeds.feedburner.com/~r/beier-christian/~4/SC_5sxvOAV0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.beier-christian.eu/blog/sideblog/usability-test-mit-menschen-mit-behinderungen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.beier-christian.eu/blog/sideblog/usability-test-mit-menschen-mit-behinderungen/</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 1.421 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-09-08 21:32:32 -->
