<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.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/" version="2.0">

<channel>
	<title>t3n Magazin</title>
	
	<link>http://t3n.de/magazin</link>
	<description>Open. Web. Business.</description>
	<lastBuildDate>Wed, 17 Mar 2010 13:47:41 +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/t3n-magazin" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="t3n-magazin" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Neun nützliche, aber weitgehend unbekannte TYPO3-Extensions: Goldene Nadeln im Heuhaufen</title>
		<link>http://t3n.de/magazin/neun-nutzliche-weitgehend-unbekannte-typo3-extensions-224173/</link>
		<comments>http://t3n.de/magazin/neun-nutzliche-weitgehend-unbekannte-typo3-extensions-224173/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 13:47:41 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[CMS]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=224173</guid>
		<description><![CDATA[Die vierzig TYPO3-Extensions, die jeweils &#252;ber 10.000 Downloads aufweisen, kennt fast jeder, der sich schon einmal zumindest oberfl&#228;chlich mit TYPO3 auseinander gesetzt hat. Aber auch unter den Erweiterungen mit nur wenigen Downloads befinden sich wahre Kostbarkeiten, die sich als ideale L&#246;sungen f&#252;r viele Aufgabenstellungen anbieten. Das St&#246;bern lohnt sich &#8211; dieser Artikel bietet eine Ausgangsbasis [...]]]></description>
			<content:encoded><![CDATA[<p>Die vierzig TYPO3-Extensions, die jeweils &#252;ber 10.000 Downloads aufweisen, kennt fast jeder, der sich schon einmal zumindest oberfl&#228;chlich mit TYPO3 auseinander gesetzt hat. Aber auch unter den Erweiterungen mit nur wenigen Downloads befinden sich wahre Kostbarkeiten, die sich als ideale L&#246;sungen f&#252;r viele Aufgabenstellungen anbieten. Das St&#246;bern lohnt sich &#8211; dieser Artikel bietet eine Ausgangsbasis und stellt neun dieser n&#252;tzlichen Helfer vor.</p>
<p><span id="more-224173"></span> 
</p>
<p>Im September 2009 wurde die Grenze von 4.000 frei verf&#252;gbarer Erweiterungen (von knapp 1.800 unterschiedlichen Entwicklern) in TYPO3 &#252;berschritten. Doch die Flut an Extensions h&#228;lt an und t&#228;glich kommen neue hinzu. F&#252;r viele Anwender ist es schwierig, in dieser F&#252;lle an n&#252;tzlichen Erweiterungen den &#220;berblick zu bewahren. Ein gro&#223;er Teil der Extensions hat zudem den Status &#8222;Alpha&#8220; oder &#8222;Experimental&#8220; oder wurde seit langer Zeit nicht mehr gepflegt oder aktualisiert. Betrachtet man nur die Erweiterungen, die den Status &#8222;Stable&#8220; oder zumindest &#8222;Beta&#8220; haben und zugleich in den letzten zw&#246;lf Monaten aktualisiert wurden, so bleiben nur 800 Extensions &#252;brig.</p>
<div id="attachment_224181" class="wp-caption wp-caption-large" style="width:608px"><a href="http://t3n.de/magazin/?p=224173dms_a14f83c862abc0d814e6ba36eb98010e"><img src="http://t3n.de/magazin/wp-content/uploads/2009/10/dms_a14f83c862abc0d814e6ba36eb98010e-596x445.jpg" alt="Alte Bekannte: die 40 Extensions mit den meisten Downloads." title="Alte Bekannte: die 40 Extensions mit den meisten Downloads." width="596" height="445" class="alignleft size-large wp-image-224181" /></a></p>
<p class="wp-caption-text">Alte Bekannte: die 40 Extensions mit den meisten Downloads.</p>
</p></div>
<p>Nur ein Prozent der Extensions hat Download-Zahlen jenseits der 10.000er-Grenze. Diese sind praktisch allen Entwicklern bekannt. Unter den &#252;brigen Extensions befinden sich einige Sch&#228;tze, die
weitgehend unbekannt sind und vielleicht zu Unrecht nur wenige
Downloads aufweisen.</p>
<h4>rgnewsce: tt_news aufgebohrt</h4>
<p>Die Extension tt_news ist die bei Weitem am h&#228;ufigsten eingesetzte Erweiterung (siehe auch Artikel zu tt_news 3.0 ab Seite 108). Einerseits verf&#252;gt fast jede Webseite &#252;ber einen Bereich &#8222;Aktuelles&#8220;, andererseits ist tt_news durch die vielen M&#246;glichkeiten auch f&#252;r ganz andere Bereiche einsetzbar.</p>
<p>Eine Einschr&#228;nkung von tt_news ist die Erweiterbarkeit mit weiteren Elementen. Die relativ starre Struktur des Eingabeformulars l&#228;&#223;t hier nur wenig Spielraum. Diese L&#252;cke schlie&#223;t die Extension rgnewsce. Sie erm&#246;glicht es, einem Nachrichtenbeitrag beliebige weitere Inhaltselemente hinzuzuf&#252;gen.</p>
<p>Nach der Installation steht ein neuer Reiter &#8222;Extra&#8220; zur Ver&#252;fgung. &#220;ber die Option &#8222;Create new&#8220; k&#246;nnen weitere Content-Elemente ausgew&#228;hlt werden. Dadurch kann man die Beitr&#228;ge mit Formularen, Tabellen, Videos oder weiteren Bild/Text-Elementen versehen.</p>
<div id="attachment_224182" class="wp-caption wp-caption-large" style="width:608px"><a href="http://t3n.de/magazin/?p=224173dms_06dee49b023c588dec7a6eced11fbb33"><img src="http://t3n.de/magazin/wp-content/uploads/2009/10/dms_06dee49b023c588dec7a6eced11fbb33-596x307.jpg" alt="Die Extension rgnewsce erweitert tt_news um einen Reiter &#8222;Extra&#8220;, mit dem man Beiträge um Formulare, Tabellen, Videos und mehr erweitern kann." title="Die Extension rgnewsce erweitert tt_news um einen Reiter &#8222;Extra&#8220;, mit dem man Beiträge um Formulare, Tabellen, Videos und mehr erweitern kann." width="596" height="307" class="alignleft size-large wp-image-224182" /></a></p>
<p class="wp-caption-text">Die Extension rgnewsce erweitert tt_news um einen Reiter &#8222;Extra&#8220;, mit dem man Beiträge um Formulare, Tabellen, Videos und mehr erweitern kann.</p>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/neun-nutzliche-weitgehend-unbekannte-typo3-extensions-224173/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Passende Bezahlverfahren und Datensicherheit sind wichtig für den Erfolg: Wie Webshops Chancen im Ausland nutzen</title>
		<link>http://t3n.de/magazin/passende-bezahlverfahren-datensicherheit-wichtig-erfolg-223982/</link>
		<comments>http://t3n.de/magazin/passende-bezahlverfahren-datensicherheit-wichtig-erfolg-223982/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 12:29:44 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[Business]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=223982</guid>
		<description><![CDATA[Das Internet kennt bekanntlich keine Grenzen. Wenn Onlineshops die Weite des Webs nutzen und Waren auch im Ausland anbieten wollen, k&#246;nnen sie die Kundenzahl wie auch den Umsatz bedeutend steigern. Doch wer mit seinen Angeboten ins Ausland expandiert, sollte auf die gravierenden Unterschiede bei den Zahlverfahren achten.
 

Krise hin, Krise her &#8211; der Internethandel hat [...]]]></description>
			<content:encoded><![CDATA[<p>Das Internet kennt bekanntlich keine Grenzen. Wenn Onlineshops die Weite des Webs nutzen und Waren auch im Ausland anbieten wollen, k&#246;nnen sie die Kundenzahl wie auch den Umsatz bedeutend steigern. Doch wer mit seinen Angeboten ins Ausland expandiert, sollte auf die gravierenden Unterschiede bei den Zahlverfahren achten.</p>
<p><span id="more-223982"></span> 
</p>
<p>Krise hin, Krise her &#8211; der Internethandel hat der allgemeinen Wirtschaftsschw&#228;che getrotzt. Der Hauptverband des Deutschen Einzelhandels (HDE) geht davon aus, dass der Onlinehandel in Deutschland dieses Jahr mit 21,9 Mrd. Euro eine neue Rekordmarke erreichen wird. Mit 21,8 Mrd. Euro beziffert der Bundesverband f&#252;r Versandhandel das diesj&#228;hrige Volumen im Onlinehandel &#228;hnlich hoch. Auch in der Schweiz gedeiht der Handel per Mausklick. Der Universit&#228;t von St. Gallen zufolge kauften die Konsumenten in der Alpenrepublik 2008 Produkte im Wert von 5,87 Mrd. Franken (rund 3,9 Mrd. Euro).</p>
<p>Auch wenn die Ums&#228;tze weiter wachsen &#8211; die Zeiten exorbitanter Wachstumsraten sind vorbei, zumal immer mehr Onlineshops auf den Markt dr&#228;ngen. Nach Angaben des HDE klettern die Online-Ums&#228;tze in Deutschland k&#252;nftig nur noch im einstelligen Prozentbereich, w&#228;hrend fr&#252;her zweistellige Zuwachsraten die Regel waren. Wer weiterhin die Ums&#228;tze kr&#228;ftig steigern will, braucht daher Alternativen.</p>
<h2>Das Ausland lockt</h2>
<p>Zus&#228;tzliches Wachstum erm&#246;glicht der Eintritt in ausl&#228;ndische M&#228;rkte. Dabei bietet sich f&#252;r die meisten deutschen Webshops zun&#228;chst die Expansion nach &#214;sterreich und in die Schweiz an, weil hier die Inhalte nicht erst noch in eine andere Sprache &#252;bertragen werden m&#252;ssen. Schreckt ein Shopbetreiber vor anderen Sprachen nicht zur&#252;ck, bieten auch weitere L&#228;nder interessante Perspektiven. Dazu einige Beispiele:</p>
<ul>
<li>Belgien: 2007 kauften die 10,7 Millionen Einwohner online f&#252;r 1,8 Mrd. Euro ein.</li>
<li>Frankreich: Der gr&#246;&#223;te Nachbarstaat Deutschlands z&#228;hlt 65 Millionen Einwohner. Sie setzten online 2007 rund 16 Mrd. Euro um.</li>
<li>Niederlande: Bei 16,5 Millionen Einwohnern erreichte der Onlinemarkt 2008 ein Volumen von 5 Mrd. Euro.</li>
</ul>
<p>F&#252;r den Erfolg eines Webshops im neuen Zielmarkt reicht es jedoch nicht, dort einfach die Produkte feilzubieten. Dann ist der Misserfolg vorprogrammiert. Der Onlineh&#228;ndler muss nicht nur genau darauf achten, dass er mit seinen Angeboten m&#246;glichst viele Kunden erreicht, die Margen stimmen und der Zahlungsausfall durch Betrug m&#246;glichst niedrig ist.</p>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/passende-bezahlverfahren-datensicherheit-wichtig-erfolg-223982/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HTML5 – Den kommenden Webstandard schon heute nutzen: Evolution statt Revolution</title>
		<link>http://t3n.de/magazin/html5-kommenden-webstandard-schon-heute-nutzen-evolution-224127/</link>
		<comments>http://t3n.de/magazin/html5-kommenden-webstandard-schon-heute-nutzen-evolution-224127/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 08:32:36 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[Webentwicklung]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=224127</guid>
		<description><![CDATA[HTML5 wird XHTML 1 als aktuellen Standard f&#252;r WWW-Dokumente und
Webapplikationen abl&#246;sen. Nur &#252;ber Details herrscht noch Unstimmigkeit
und niemand kann mit Sicherheit sagen, wann das World Wide Web Consortium (W3C) HTML5 zur
offiziellen Empfehlung macht. Fakt ist jedoch: An HTML5 wird bald kein Weg
mehr vorbeif&#252;hren.
 


HTML5 ermöglicht die Einbindung von Video ohne Flash-Plugin.

Das Jahr 2010 r&#252;ckt langsam [...]]]></description>
			<content:encoded><![CDATA[<p>HTML5 wird XHTML 1 als aktuellen Standard f&#252;r WWW-Dokumente und
Webapplikationen abl&#246;sen. Nur &#252;ber Details herrscht noch Unstimmigkeit
und niemand kann mit Sicherheit sagen, wann das World Wide Web Consortium (W3C) HTML5 zur
offiziellen Empfehlung macht. Fakt ist jedoch: An HTML5 wird bald kein Weg
mehr vorbeif&#252;hren.</p>
<p><span id="more-224127"></span> 
</p>
<div id="attachment_224130" class="wp-caption wp-caption-large" style="width:608px"><a href="http://t3n.de/magazin/?p=224127dms_ddb1ed09add69d1837bf992007355489"><img src="http://t3n.de/magazin/wp-content/uploads/2009/10/dms_ddb1ed09add69d1837bf992007355489-596x469.jpg" alt="HTML5 ermöglicht die Einbindung von Video ohne Flash-Plugin." title="HTML5 ermöglicht die Einbindung von Video ohne Flash-Plugin." width="596" height="469" class="alignleft size-large wp-image-224130" /></a></p>
<p class="wp-caption-text">HTML5 ermöglicht die Einbindung von Video ohne Flash-Plugin.</p>
</p></div>
<p>Das Jahr 2010 r&#252;ckt langsam in Sichtweite und geht es nach dem
offiziellen Zeitplan der HTML Working Group des W3C, so wird in genau
diesem Jahr HTML5 Recommendation-Status erhalten und damit &#8222;XHTML 1&#8220; als den aktuellen HTML-Webstandard abl&#246;sen <a title="HTML Working Group Charter" href="http://bit.ly/3F3F3N" target="_blank">[1]</a>.
Zum Vergleich: Die eigentlichen Sch&#246;pfer der neuen Spezifikation, vereint in der
&#8222;Web Hypertext Application Technology Working Group&#8220; (WHATWG), gehen von
einem Termin irgendwann um 2022 herum aus <a title="WHATWG-FAQ &#8211; When will HTML5 be finished?" href="http://bit.ly/1UsZ1K" target="_blank">[2]</a>.
Beide Arbeitsgruppen werkeln weitgehend unbehelligt voneinander an der Spezifikation, die m&#246;glichst bald von vielen Browsern vollst&#228;ndig implementiert werden
soll. Trotz dieser leicht chaotisch anmutenden Umst&#228;nde steht fest:
HTML5 kommt und wird nach dem im Jahr 2000 zum Standard erhobenen XHTML 1 der n&#228;chste neue HTML-Standard sein.</p>
<h2>Evolution statt Revolution</h2>
<p>XHTML 1, wie es sich heute weiter Verbreitung erfreut, ist
eigentlich gar kein XHTML. Es sieht zwar aus wie XHTML, wird aber meist als HTML gesendet und von Browsern als HTML
interpretiert. Angesichts der Tatsache, dass XML-Dokumente schon bei
kleinsten Syntaxfehlern nicht mehr geparst werden k&#246;nnen und angesichts des
Umstands, dass der Internet Explorer mit XML &#252;berhaupt nichts
anzufangen wei&#223;, ist das auch nicht unbedingt schlecht.</p>
<p>Dessen ungeachtet trieb das W3C nach der im Jahr
2000 erfolgten Ver&#246;ffentlichung von XHTML 1 die &#8222;XMLisierung&#8220; des
Webs so energisch voran, dass einige Genervte aus dem Umfeld von Apple,
der Mozilla Foundation und Opera im Jahr 2004 kurzerhand ihre eigene
HTML-Arbeitsgruppe aufmachten und Entw&#252;rfe f&#252;r eine Spezifikation
namens &#8222;Web Applications 1.0&#8220; ver&#246;ffentlichten &#8211; der Grundstein f&#252;r HTML5
war gelegt. Das W3C hingegen verschrieb sich XHTML 2.</p>
<p>Der Hauptunterschied zwischen der Philosophie von HTML5 und der von XHTML 2 l&#228;sst sich in drei W&#246;rtern zusammenfassen: Evolution gegen
Revolution. XHTML 2 sollte mit den Vorg&#228;ngern HTML 4 und XHTML 1 kaum
noch etwas gemein haben und eine reine
XML-Angelegenheit sein. W&#228;hrenddessen setzte sich die WHATWG mit HTML5
Abw&#228;rtskompatibilit&#228;t zum Ziel und versuchte vor allem, HTML sinnvoll
zu erweitern und zu verbessern. Leitlinie dabei sollte vor allem sein, wie
HTML aktuell im WWW verwendet wird und wie man den Anliegen der
HTML-Autoren entgegenkommen kann.</p>
<p>Damit eine Spezifikation zum Webstandard werden kann, muss sie nicht
nur geschrieben, sondern auch implementiert werden. Da die
WHATWG im Wesentlichen aus den gro&#223;en Browserherstellern plus Google
besteht, hatte HTML5 im Kampf um die Zukunft die etwas g&#252;nstigere
Ausgangslage f&#252;r sich. Und so kam es, wie es kommen musste &#8211; das W3C
gr&#252;ndete erst eine neue HTML-Arbeitsgruppe und schloss letztlich seine
XHTML-Arbeitsgruppe komplett. Damit ist XHTML 2 bis auf Weiteres als
Working Draft eingefroren. Die Zukunft geh&#246;rt HTML5. Nur wozu brauchen wir
diese Zukunft?</p>
<h2>Das WWW ist kein Dokument</h2>
<p>Als Sir Timothy Berners-Lee einst HTML erfand, dachte er prim&#228;r an den
Austausch von Dokumenten. Von 1989 (erster Entwurf) bis 1999 (HTML
4.01) wurde HTML mit immer neuen Features f&#252;r Dokumente ausger&#252;stet. Es gab Tabellen, Bilder, Formatvorlagen
(Stylesheets). Nur f&#252;r die Bed&#252;rfnisse von heutigen Webapplikationen gibt es
nichts &#8211; keine M&#246;glichkeit, Videos einzubinden, keine M&#246;glichkeit,
Ladebalken anzuzeigen, keine M&#246;glichkeit, mehr als simple
GIF-Animationen abzuspielen. Andererseits gibt es einiges, was au&#223;er
f&#252;r echte HTML-Kenner verwirrend ist (die Koexistenz von
&#60;abbr&#62; und &#60;acronym&#62; oder das &#60;address&#62;-Element) oder
mit den heutigen Anforderungen an Barrierefreiheit nicht mehr konform
geht (Frames). HTML5 repariert diese Mankos, indem neue Elemente
eingef&#252;hrt werden, alte in Anpassung an ihren heute im Web beobachteten
Einsatz umdeklariert und einige wenige entfernt werden.</p>
<p>Eine Tatsache ist, dass im Web gerne unterschiedliche
HTML-Geschmacksrichtungen gemischt werden und dass es vor allem keine
Revolutionen gibt &#8211; demonstriert durch die loyale Nutzerschaft des acht
Jahre alten Internet Explorer 6. Die Konsequenz hieraus ist die
Abw&#228;rtskompatibilit&#228;t von HTML5. In den meisten F&#228;llen kann man den
neuen Doctype einfach &#252;ber eine valide XHTML-1- oder HTML-4-Website
setzen und man erh&#228;lt g&#252;ltiges HTML5. Die Syntax ist so flexibel, dass
man sich aussuchen kann, ob man in reinem HTML-Stil schreibt (optionale
Tags k&#246;nnen weggelassen werden, Gro&#223;- und Kleinschreibung ist egal),
weiter die XHTML-Syntax benutzt oder beides mischt. Auch ist XHTML noch
nicht wirklich tot &#8211; XHTML5 als XML-Serialisierung von HTML5 steht
allen zur Verf&#252;gung, die es mit XHTML ernst meinen. Anders als bei XHTML 1 sind HTML5-Dokumente per Definition echtes XHTML und mit allen
entsprechenden Vor- und Nachteilen gesegnet.</p>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/html5-kommenden-webstandard-schon-heute-nutzen-evolution-224127/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Interview mit SourceForge-Gründer Larry Augustin zu Open Source und Trends: „Open Source schafft die Voraussetzung für Cloud Computing in all seinen Ausprägungen“</title>
		<link>http://t3n.de/magazin/interview-sourceforge-grunder-larry-augustin-open-source-223984/</link>
		<comments>http://t3n.de/magazin/interview-sourceforge-grunder-larry-augustin-open-source-223984/#comments</comments>
		<pubDate>Mon, 15 Mar 2010 08:37:07 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[Magazin]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=223984</guid>
		<description><![CDATA[				    	
 Larry Augustin ist Angel Investor und berät Technologieunternehmen in ihrer Anfangsphase. Gegenwärtig ist er Mitglied im Vorstand von Appcelerator, Compiere, DeviceVM, DotNetNuke, Fonality, Hyperic, Medsphere, Pentaho und SugarCRM. Er ist Open-Source-Pionier, gründete die Open-Source-Software-Plattform SourceForge und gehörte zu den Leuten, die den Begriff „Open Source“ maßgeblich geprägt haben.
 


Larry Augustin: [...]]]></description>
			<content:encoded><![CDATA[<p>				    	
<p class="article_teaser"> Larry Augustin ist Angel Investor und berät Technologieunternehmen in ihrer Anfangsphase. Gegenwärtig ist er Mitglied im Vorstand von Appcelerator, Compiere, DeviceVM, DotNetNuke, Fonality, Hyperic, Medsphere, Pentaho und SugarCRM. Er ist Open-Source-Pionier, gründete die Open-Source-Software-Plattform SourceForge und gehörte zu den Leuten, die den Begriff „Open Source“ maßgeblich geprägt haben.</p>
<p><span id="more-223984"></span> 
</p>
<div id="attachment_223985" class="wp-caption wp-caption-medium" style="width:312px"><a href="http://t3n.de/magazin/?p=2239847773f997d5fe5aafcfbe6942c2888a86"><img src="http://t3n.de/magazin/wp-content/uploads/2009/10/7773f997d5fe5aafcfbe6942c2888a86-300x265.jpg" alt="Larry Augustin: „Android wird sich dank des offenen Charakters der Plattform durchsetzen.“" title="Larry Augustin: „Android wird sich dank des offenen Charakters der Plattform durchsetzen.“" width="300" height="265" class="alignleft size-medium wp-image-223985" /></a></p>
<p class="wp-caption-text">Larry Augustin: „Android wird sich dank des offenen Charakters der Plattform durchsetzen.“</p>
</p></div>
<p><em>t3n Magazin: </em><strong>Die Verbreitung und Akzeptanz von Open-Source-Software ist in den vergangenen Jahren enorm gestiegen. Wo steht Open Source im Jahr 2009?</strong></p>
<p><em>Larry Augustin: </em>Open Source ist inzwischen eine sichere Wahl. In den 1980er-Jahren hieß es, dass man nichts falsch macht und seinen Job behält, wenn man IBM kauft. In den 1990er-Jahren galt das für Microsoft. Heute für Open Source. Da zieht mittlerweile selbst die so genannte proprietäre Software den Kürzeren. Laut Gartner werden bis 2012 etwa 80 Prozent der kommerziellen Software-Produkte auch Elemente von Open-Source-Technologie enthalten. Die Leute werden Open Source also nutzen, ohne es zu wissen.</p>
<p><em>t3n Magazin: </em><strong>Sehen Sie in der aktuellen Finanzkrise eine Chance für Open Source?</strong></p>
<p><em>Larry Augustin: </em>Open Source ist in harten Zeiten immer im Aufwind, weil Budgets für Investitionen und Betriebskosten gekürzt werden. In der Rezession von 2001 gab dies Open Source einen großen Schub. So erreichte Open Source zwischen der letzten und der gegenwärtigen Rezession einen Punkt, an dem sich die Entwicklung nicht mehr umkehren ließ und unabhängig von den makroökonomischen Bedingungen eine stabile Entwicklung möglich ist.</p>
<p><em>t3n Magazin: </em><strong>Was heißt das in der Praxis?</strong></p>
<p><em>Larry Augustin: </em>Wenn ein CTO oder CIO Software für eine Neuanschaffung sondiert, wird er Open Source immer in Betracht ziehen. Quelloffene Software gilt nicht mehr als riskant oder instabil, sondern primär als Lösung, die zu geringeren Kosten mehr Qualität und Flexibilität bietet.</p>
<p><em>t3n Magazin: </em><strong>Was sind aus Ihrer Sicht die nächsten großen Trends im Bereich Open Source?</strong></p>
<p><em>Larry Augustin: </em>In den Technologiebereichen Business Applications und Cloud Computing erwarte ich ein großes Wachstum für Open Source. Auf der Infrastrukturebene ist Open Source ja bereits jetzt allgegenwärtig. Bis 2010 wird Open Source laut Gartner 80 Prozent der infrastrukturellen Softwareinvestitionen globaler IT-Organisationen ausmachen. Aber auch im Bereich Business Applications holt Open Source auf. Hier bedienen Firmen wie SugarCRM eine riesige und wachsende Nachfrage nach Open-Source-Geschäftsanwendungen. Laut Forrester gaben 58 Prozent der Entscheidungsträger im IT-Bereich an, für aufgabenkritische Anwendungen inzwischen Open Source einzusetzen. Open Source schafft zudem die Voraussetzung für das Phänomen Cloud Computing in all seinen Ausprägungen. Führende Cloud-Service-Provider wie Amazon greifen fast vollständig auf Open-Source-Technologien zurück. Weil diese Plattformen auf Open-Source-Infrastruktur aufsetzen, besteht auch eine natürliche Affinität zu Open-Source-Anwendungen. Eines der wichtigsten Features von Open-Source-Anwendungen auf Cloud-Plattformen wird aus meiner Sicht Portabilität sein, die dafür sorgt, dass Anwendungen Cloud-Provider-übergreifend laufen. Das schließt private und öffentliche Clouds gleichermaßen ein.</p>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/interview-sourceforge-grunder-larry-augustin-open-source-223984/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Eine Einführung in Magentos Layout-XML: Magento-Layouts im Griff</title>
		<link>http://t3n.de/magazin/einfuhrung-magentos-layout-xml-magento-layouts-griff-224023/</link>
		<comments>http://t3n.de/magazin/einfuhrung-magentos-layout-xml-magento-layouts-griff-224023/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 07:53:26 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[TOP]]></category>
		<category><![CDATA[Webentwicklung]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=224023</guid>
		<description><![CDATA[Magento besitzt ein sehr leistungsfähiges und flexibles Templating-System. Vielen Magento-Einsteigern fällt aber besonders der Umgang mit den dabei zum Einsatz kommenden Layout-XML-Dateien nicht leicht. Dieser Artikel vermittelt das Grundwissen, um Layout-Updates in eigenen Magento-Projekten umsetzen zu können.

Alle modernen Webanwendungen bieten Template-Systeme an, durch die sich die Programmlogik und die Darstellung von Inhalten trennen lassen. Dabei [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://t3n.de/magazin/wp-content/uploads/2010/03/magento_logo.png"><img class="alignleft size-medium wp-image-225008" title="magento_logo" src="http://t3n.de/magazin/wp-content/uploads/2010/03/magento_logo-300x94.png" alt="magento logo 300x94 Eine Einführung in Magentos Layout XML: Magento Layouts im Griff" width="300" height="94" /></a>Magento besitzt ein sehr leistungsfähiges und flexibles Templating-System. Vielen Magento-Einsteigern fällt aber besonders der Umgang mit den dabei zum Einsatz kommenden Layout-XML-Dateien nicht leicht. Dieser Artikel vermittelt das Grundwissen, um Layout-Updates in eigenen Magento-Projekten umsetzen zu können.</p>
<p><span id="more-224023"></span></p>
<p>Alle modernen Webanwendungen bieten Template-Systeme an, durch die sich die Programmlogik und die Darstellung von Inhalten trennen lassen. Dabei kommen die verschiedensten Systeme zum Einsatz. Ein prominenter Vertreter ist Smarty, das von vielen Open-Source-Projekten eingesetzt wird. Bei Magento <a title="Magento-Website" href="http://www.magentocommerce.com/" target="_blank">[1]</a> wird PHP direkt als Template-Engine verwendet. Alle Systeme haben gemeinsam, dass die HTML-Blöcke für die Darstellung in einzelne Template-Dateien ausgelagert sind, in denen die Applikation die Platzhalter durch die Inhalte ersetzt.</p>
<p>Die Programmlogik setzt die Template-Blöcke so zusammen, wie sie für den jeweiligen Fall gebraucht werden. Die meisten Webentwickler haben damit reichlich Erfahrung.</p>
<h2>Grundsätzliches zu Magento-Themes</h2>
<p>Bei Magento liegen die Template-Dateien in „app/design/frontend/default/THEME/template“. „THEME“ wird dabei durch das in der Konfiguration festgelegte Layout-Theme ersetzt, standardmäßig ist das „default“. Änderungen sollten Sie nie direkt in „default“ durchführen, da die Anpassungen beim nächsten Magento-Update überschrieben werden könnten. Sie sollten also ein neues Theme anlegen, indem Sie „app/design/frontend/default/default“ nach „app/desgn/frontend/default/meintheme“ kopieren und im Admin-Interface unter System &gt; Konfiguration &gt; Gestaltung &gt; Themes &gt; Standard „meintheme“ eintragen.</p>
<p>Soweit gibt es noch keinen Unterschied zu anderen Template-Systemen, bei denen direkt im Code steht, welche Datei zum Formatieren der Ausgabe verwendet wird. Das kann in etwa so aussehen:</p>
<div class="article_code_box">
<p><span class="article_code_title">Direkte Verknüpfung von Code und Template</span></p>
<pre>$template = 'templates/product/list.tmpl';
$html = $this-&gt;process($template);
</pre>
<p><span class="article_code_subtitle">Listing  1</span></p>
</div>
<p>Jetzt zu der Besonderheit bei Magento: Im Code steht statt des Namens der Datei ein Platzhalter für das Template.</p>
<div class="article_code_box">
<p><span class="article_code_title">Code in Magento</span></p>
<pre>$blockName = 'product.list';
$html = $this-&gt;getChildHtml($blockName);
</pre>
<p><span class="article_code_subtitle">Listing  2</span></p>
</div>
<p>Welche Datei für den Platzhalter verwendet werden soll, wird durch den Inhalt der Layout-XML-Dateien bestimmt.</p>
<div class="article_code_box">
<p><span class="article_code_title">Ein Layout-XML-Block in Magento</span></p>
<pre>&lt;block type=“catalog/product_list“ name=“product.list“ template=“catalog/product/list.phtml“ /&gt;
</pre>
<p><span class="article_code_subtitle">Listing  3</span></p>
</div>
<p>Magento unterscheidet also zwischen Templates (PHP-Dateien mit der Endung .phtml) und den Layout-Dateien mit dem XML.</p>
<p>Das „type“-Attribut legt fest, welche Klasse den Block rendert. Vor dem Slash wird das Modul angegeben, dahinter der Pfad innerhalb des Blockverzeichnisses des Moduls. So eröffnen sich zahlreiche Möglichkeiten:</p>
<ul>
<li>Ändern der zu verwendenden Template-Dateien</li>
<li>Ändern der Ausgabeposition von HTML-Blöcken</li>
<li>Hinzufügen und Entfernen von HTML-Blöcken</li>
<li>Daten zu der Ausgabe von anderen Modulen hinzufügen oder entfernen (z. B. Links in der Haupt-Navigation)</li>
<li>Hinzufügen von CSS- und JavaScript-Dateien</li>
<li>Ändern der Klasse für den Code-Block</li>
<li>Anpassung einzelner Kategorien und CMS-Seiten im Backend</li>
</ul>
<p>Die Anpassungen sind möglich, ohne dass Sie Core-Code verändern müssen. Bei konsequenter Nutzung bleibt das System so trotz weitreichender Anpassungen upgradefähig.</p>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/einfuhrung-magentos-layout-xml-magento-layouts-griff-224023/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Amazons Web Services im Überblick: Das Cloud-Computing-Universum</title>
		<link>http://t3n.de/magazin/amazons-web-services-uberblick-cloud-computing-universum-224005/</link>
		<comments>http://t3n.de/magazin/amazons-web-services-uberblick-cloud-computing-universum-224005/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 07:26:20 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[Web 2.0]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=224005</guid>
		<description><![CDATA[Spricht man von Cloud Computing, ist man schnell bei Amazon. Das Unternehmen setzt mit seinen zahlreichen Cloud-Services Maßstäbe und hat diese in den vergangenen Jahren stetig erweitert. Wir geben einen Überblick und zeigen, wie einfach der Start sein kann.

Beim Trendthema Cloud Computing führt kein Weg an Amazon vorbei. Der Onlineshop hat aus der eigenen Not [...]]]></description>
			<content:encoded><![CDATA[<p>Spricht man von Cloud Computing, ist man schnell bei Amazon. Das Unternehmen setzt mit seinen zahlreichen Cloud-Services Maßstäbe und hat diese in den vergangenen Jahren stetig erweitert. Wir geben einen Überblick und zeigen, wie einfach der Start sein kann.</p>
<p><span id="more-224005"></span></p>
<p>Beim Trendthema Cloud Computing führt kein Weg an Amazon vorbei. Der Onlineshop hat aus der eigenen Not eine Tugend gemacht und ganz nebenbei das dominierende Cloud-Infrastruktur-Angebot entwickelt. Als Betreiber einer der größten E-Commerce-Webseiten der Welt hat Amazon mit enormen Anforderungen an die Infrastruktur zu kämpfen und hat, um diese Herausforderung zu meistern, eine interne Infrastruktur samt Schnittstellen entwickelt. Der nächste Schritt war dann, diese Infrastruktur auch anderen zur Verfügung zu stellen.</p>
<p>Unter dem Oberbegriff „Amazon Web Services“ bietet Amazon neben seinen Infrastructure-as-a-Service-Diensten auch noch weitere Services wie „Mechanical Turk“, „Amazon Fulfillment“ oder Alexa-Schnittstellen an.  Der Artikel beschränkt sich allerdings auf Amazons Cloud-Infrastruktur-Dienste <a title="Übersicht über die Cloud-Dienste von Amazon" href="http://aws.amazon.com" target="_blank">[1]</a>.</p>
<h2>Cloud Computing mit Elastic Compute Cloud</h2>
<p>Der Amazon-Cloud-Dienst „Elastic Compute Cloud“ (EC2) bietet die Möglichkeit, virtuelle Server verschiedener Größen, so genannte Instanzen, stundenweise zu nutzen. Zahlen müssen Anwender dabei je angefangene Stunde pro Instanz. Es ist möglich, sowohl Unix- als auch Windows-Betriebssysteme einzusetzen. Die Stundenpreise unterscheiden sich auf Grund der Kosten für die Microsoft-Lizenzen leicht.</p>
<p>Die Instanzgröße bestimmt sich anhand des zur Verfügung gestellten Arbeitsspeichers, der zugeteilten virtuellen Festplattenkapazität und den reservierten EC2-Compute-Units. Technisch basiert EC2 auf der Open-Source-Virtualisierungslösung XEN. Eine Compute-Unit entspricht laut Amazon ungefähr der Leistung eines 1,0-1,2 GHz Opteron- oder Xeon-Prozessors aus dem Jahre 2007. Prozessor- und Arbeitsspeicherlimits werden den Instanzen fest zugewiesen.</p>
<p>Die große Stärke von EC2 liegt in der mächtigen API. Mit ihr können Nutzer ein hohes Maß an Kontrolle ausüben. So kann man durch Bestimmung der „Availability Zones“ sicherstellen, dass die physische Nähe zwischen verschiedenen Instanzen gewahrt wird. Dies senkt die Latenzzeit, verringert jedoch die Ausfallsicherheit. Neben den „Availability Zones“ kann der Anwender darüber hinaus den Standort des Rechenzentrums auswählen. Zur Auswahl stehen die Ostküste der USA und Westeuropa.</p>
<p>Entwickler haben direkt aus der eigenen Anwendung heraus die Möglichkeit, weitere Instanzen zu starten oder zu beenden. Eigene Server-Images kann der Anwender mit den von Amazon bereitgestellten EC2-Tools erzeugen. Es gibt auch eine große Auswahl an fertigen Images verschiedener Betriebssysteme, die bereits für unterschiedliche Einsatzzwecke optimiert sind <a title="Auflistung vorhandener Images für EC2" href="http://bit.ly/2TRm1U" target="_blank">[2]</a>.</p>
<p>Einer der größten Unterschiede zwischen EC2-Instanzen und anderen virtuellen Servern ist, dass jegliche während der Laufzeit der Instanz auf die Festplatte geschriebenen Informationen verloren sind, sobald man die Instanz beendet. Bei einer Vielzahl von Einsatzzwecken wird ein Entwickler aber Daten dauerhaft speichern wollen. Hier schafft Amazon mit dem „Elastic Block Store“ (EBS) Abhilfe.</p>
<p>Der Entwickler kann einzelnen Instanzen EBS-Volumes per API zuweisen, diese erscheinen dann wie lokale Festplatten. EBS-Volumes können mit dem Dateisystem der Wahl formatiert oder auch zu Softwareraids zusammengefasst werden. Jedoch kann man EBS-Volumes nicht mehreren Instanzen gleichzeitig zuweisen.</p>
<div id="attachment_224006" class="wp-caption wp-caption-large" style="width: 608px;">
<p><a href="http://t3n.de/magazin/wp-content/uploads/2009/11/amazon_werner_vogels.jpg"><img class="alignnone size-large wp-image-225005" title="amazon_werner_vogels" src="http://t3n.de/magazin/wp-content/uploads/2009/11/amazon_werner_vogels-596x447.jpg" alt="amazon werner vogels 596x447 Amazons Web Services im Überblick: Das Cloud Computing Universum" width="596" height="447" /></a></p>
<p class="wp-caption-text">Der Kopf hinter Amazons Cloud-Lösungen: CTO Werner Vogels. Foto: Andrew Mager, Flickr.com. Lizenz: CC BY-SA</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/amazons-web-services-uberblick-cloud-computing-universum-224005/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Warum das Social Web die Welt auf den Kopf stellt: Social Media (R)evolution</title>
		<link>http://t3n.de/magazin/social-web-welt-kopf-stellt-social-media-revolution-224864/</link>
		<comments>http://t3n.de/magazin/social-web-welt-kopf-stellt-social-media-revolution-224864/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 09:24:57 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[Magazin]]></category>
		<category><![CDATA[TOP]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=224864</guid>
		<description><![CDATA[Social Media ist in aller Munde und das Interesse am Social Web ist riesig: Während Otto-Normal-Surfer immer mehr Zeit in Social Networks wie Facebook oder StudiVZ verbringt, erkennen Unternehmen, NGOs, Agenturen und Freelancer das enorme Potenzial, das Social Media ihnen für den Kundendialog, die Kundenbindung, die Pflege der eigenen Reputation und den Aufbau völlig neuer [...]]]></description>
			<content:encoded><![CDATA[<p>Social Media ist in aller Munde und das Interesse am Social Web ist riesig: Während Otto-Normal-Surfer immer mehr Zeit in Social Networks wie Facebook oder StudiVZ verbringt, erkennen Unternehmen, NGOs, Agenturen und Freelancer das enorme Potenzial, das Social Media ihnen für den Kundendialog, die Kundenbindung, die Pflege der eigenen Reputation und den Aufbau völlig neuer Geschäftsmodelle bietet.</p>
<p><span id="more-224864"></span></p>
<p><a href="http://t3n.de/magazin/?p=224864dms_d4d19e1d3ccdb48eb4ff96a9652826f2"><img class="alignleft size-large wp-image-224867" src="http://t3n.de/magazin/wp-content/uploads/1970/01/dms_d4d19e1d3ccdb48eb4ff96a9652826f2-596x328.jpg" alt="dms d4d19e1d3ccdb48eb4ff96a9652826f2 596x328 Warum das Social Web die Welt auf den Kopf stellt: Social Media (R)evolution" width="596" height="328" title="Warum das Social Web die Welt auf den Kopf stellt: Social Media (R)evolution" /></a></p>
<p>Was früher gern als „Cyberspace“ bezeichnet wurde, ist mittlerweile für einen Großteil der Bevölkerung gelebte Realität. Der Erfolg von Internetriesen wie Facebook oder Twitter ist nicht mehr zu übersehen und sie sind längst im Mainstream angekommen. Social Media zu nutzen, ist fluffig-leicht geworden, Nutzer können sich voll und ganz darauf konzentrieren, ihre Inhalte ins Netz zu stellen, sie mit anderen zu teilen und sich auszutauschen, ohne sich um technische Voraussetzungen kümmern zu müssen. Das Ergebnis: Internet-Nutzer springen mittlerweile zwischen den verschiedensten Social-Media-Anwendungen hin und her und können das ganze Spektrum ihres realen Lebens auch in der digitalen Welt abbilden.</p>
<p>Es gibt professionelle Berufsnetzwerke wie Xing und LinkedIn,
Online-Treffpunkte für Schüler und Studenten wie SchülerVZ und StudiVZ,
lokale Netzwerke für Treffen und Flirts wie die lokalisten.de, Seiten
zum
Pflegen von Freundschaften wie wer-kennt-wen.de und StayFriends,
Plattformen für Musiker und Künstler wie MySpace und Netzwerke für jedermann wie Facebook oder Twitter. Daneben gibt es
noch Bilder- und Videoplattformen wie Flickr und YouTube sowie tausende Nischen-Netzwerke für jeden Geschmack. Die weltweit
führende Plattform Facebook hat alleine weltweit 400 Millionen Nutzer,
davon tauchen 100 Millionen bereits mobil in das Netzwerk ein
(Stand Februar 2010).</p>
<p>Millionen Menschen schaffen sich durch ihre sozialen Netzwerke eine real fiktive Umgebung, die für viele zur zweiten Heimat wird. Die Parallelwelt im Netz ist zur zweiten Wirklichkeit im Alltag geworden. Das Geflecht aus Beziehungen des realen Lebens – Familie, Freunde, Bekannte, Arbeitskollegen, Vorgesetzte, Mitbewohner des Hauses, des Stadtteils etc. – wird mit Hilfe von Social Media ins Web übertragen und findet dort sein Pendant.</p>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/social-web-welt-kopf-stellt-social-media-revolution-224864/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Webentwicklung für das iPhone – Teil 4: Offline-Datenbank für die eigene Webapplikation</title>
		<link>http://t3n.de/magazin/teil-4-offline-datenbank-eigene-webapplikation-223161/</link>
		<comments>http://t3n.de/magazin/teil-4-offline-datenbank-eigene-webapplikation-223161/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 07:24:56 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[Webentwicklung]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=223161</guid>
		<description><![CDATA[Spricht man im Zusammenhang von Websites oder Webapplikationen über Datenbanken, sind fast immer serverseitige Datenbanksysteme wie MySQL oder Oracle gemeint. Dabei gibt es viele Szenarien, in denen es sinnvoll ist, Daten nicht nur auf einem Server zu speichern, sondern sie auch lokal vorzuhalten – teilweise sogar ausschließlich. Hier kommen Offline-Storages ins Spiel. Wir zeigen, wie [...]]]></description>
			<content:encoded><![CDATA[<p>Spricht man im Zusammenhang von Websites oder Webapplikationen über Datenbanken, sind fast immer serverseitige Datenbanksysteme wie MySQL oder Oracle gemeint. Dabei gibt es viele Szenarien, in denen es sinnvoll ist, Daten nicht nur auf einem Server zu speichern, sondern sie auch lokal vorzuhalten – teilweise sogar ausschließlich. Hier kommen Offline-Storages ins Spiel. Wir zeigen, wie man sie für seine eigene iPhone-WebApp nutzt.</p>
<p><span id="more-223161"></span></p>
<p>Offline-Storages sind Bestandteil von HTML5 und bieten die Möglichkeit, Daten auf dem Client in einer SQLite-Datenbank zu speichern. Diese Daten werden persistent vorgehalten und unterliegen keinem Verfallsdatum. Daher eignen sie sich gut zum Speichern von Benutzereinstellungen, zum Zwischenspeichern von Daten vor dem Senden an einen Server und um Informationen nur einmal vom Server zu übertragen und vorzuhalten, wenn sich der Inhalt serverseitig selten ändert. Da die Datenbank lokal abgelegt ist, wird keine Internetverbindung benötigt, um darauf zuzugreifen.</p>
<p>Als Beispiel dient in diesem Artikel eine fiktive Videodatenbank. Diese verwendet folgenden HTML-Code als Grundgerüst:</p>
<div class="article_code_box">
<p><span class="article_code_title">HTML-Grundgerüst</span></p>
<pre>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;
&lt;html xmlns="http://www.w3c.org/1999/xhtml"&gt;
&lt;head&gt;
	&lt;title&gt;Videobestand&lt;/title&gt;
	&lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/&gt;
	&lt;meta name="viewport" content="width=320; initial-scale=1.0; user-scalable=0;"/&gt;
	&lt;style type="text/css" media="screen"&gt;
		@import "lib/iUI/iui.css";
	&lt;/style&gt;
	&lt;style type="text/css" media="screen"&gt;
		@import "css/videobestand.css";
	&lt;/style&gt;
	&lt;script type="application/x-javascript" xsrc="js/videobestand.js"&gt;&lt;/script&gt;
	&lt;script type="application/x-javascript" xsrc="lib/iUI/iui.js"&gt;&lt;/script&gt;
&lt;/head&gt;
&lt;body style="overflow:hidden;" onLoad="initDB();"&gt;
&lt;div class="toolbar"&gt;
	&lt;h1 id="pageTitle"&gt;&lt;/h1&gt;
	&lt;a id="backButton" class="button" href="#"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;ul id="home" title="Videobestand" selected="true"&gt;
&lt;/ul&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p><span class="article_code_subtitle">Listing  1</span></p>
</div>
<p>Das Grundgerüst basiert auf dem iPhone-Userinterface-Framework iUI, das im Verlauf der Serie schon mehrfach zum Einsatz kam. Das eigentliche JavaScript ist in eine externe Datei ausgelagert. Im Body-Bereich befinden sich nur der DIV-Container für die Toolbar am Anfang der Seite und eine ungeordnete leere Liste. Diese Liste soll mit JavaScript gefüllt werden.</p>
<h2>Initialisieren der Datenbank</h2>
<p>Als erstes müssen Sie die Datenbank initialisieren. Dabei testet das Skript in Listing 2, ob der Browser Offline-Datenbanken unterstützt, indem es versucht, eine Datenbank zu öffnen. Tritt dabei ein Fehler auf, weil die entsprechende Funktion nicht existiert, fängt das Skript den Fehler ab, gibt eine Fehlermeldung aus und bricht an dieser Stelle ab. Im Erfolgsfall wird die Datenbank initialisiert.</p>
<div class="article_code_box">
<p><span class="article_code_title">Initialisieren der Datenbank</span></p>
<pre>function initDB() {

try {
	if (!window.openDatabase) {
		alert('JavaScript-Datenbanken werden von Ihrem Client nicht unterstützt!');
	} else {
		var shortName = 'videodb';
		var version = '1.0';
		var displayName = 'Videobestand';
		var maxSize = 65536; // max. Größe der Datenbank in bytes
		// Im Erfolgsfall enthält mydb eine Instanz des Datenbank-Objekts
		var mydb = openDatabase(shortName, version, displayName, maxSize);

			createTables(mydb);
		queryDB(mydb);
	}
} catch(e) {
	// Hierher kommt der Code für die Fehlerbehandlung (Error Handling)
	if (e == INVALID_STATE_ERR) {
		// Falsche Datenbank-Version.
		alert("Ungültige Datenbank-Version!");
	} else {
		alert("Unbekannter Fehler "+e+".");
	}
	// return;
}
}</pre>
<p><span class="article_code_subtitle">Listing  2</span></p>
</div>
<p>Die Initialisierung beginnt mit dem Erzeugen der Datenbank. Das Skript versucht, die Datenbank zu öffnen. Scheitert dies, weil sie noch nicht existiert, wird sie neu angelegt und geöffnet. Der weitere Zugriff erfolgt dann über das Datenbankobjekt und seine Methoden.</p>
<p>Der „shortName“ identifiziert die Datenbank im System und dient als eindeutiger Bezeichner. Der „displayName“ wird vom Browser angezeigt, wenn es zu Benutzerinteraktionen kommt. Die Variante „version“ spielt im Moment noch keine Rolle und wird erst interessant, wenn die geplante Update-Funktion implementiert ist.</p>
<p>Bis es soweit ist, belassen Sie den Wert am besten auf „1.0“. Der Wert „maxSize“ gibt die zu erwartende Größe der Datenbank an und ermöglicht dem System so eine Ressourcenplanung. Wird mehr Speicher erwartet, gibt das System eine Alert-Box aus, die der Anwender bestätigen muss.</p>
<h2>Tabelle anlegen und befüllen</h2>
<p>Um auf die Datenbank zuzugreifen, bedienen Sie sich SQL-Queries, die Sie auch von anderen relationalen Datenbanken wie MySQL kennen. Die Funktion, mit der die Queries an die Datenbank geschickt werden, heißt „executeSql“ und ist Teil der Transaktion des Datenbankobjekts.</p>
<div class="article_code_box">
<p><span class="article_code_title">SQL-Befehle absetzen</span></p>
<pre>function createTables(db) {
	db.transaction(
		function (transaction) {
			transaction.executeSql('SQL-Statement', [], nullDataHandler, errorHandler);
		}
	}
}</pre>
<p><span class="article_code_subtitle">Listing  3</span></p>
</div>
<p>Statt SQL-Statement setzen Sie hier das gewünschte SQL-Kommando ein. „NullDataHandler“ ist eine Funktion, die nichts macht. Erwarten Sie einen Rückgabewert, beispielsweise das Ergebnis einer Abfrage, steht hier die Funktion, die das Ergebnis annehmen soll. Die Funktion „errorHandler“ wird nur aufgerufen, wenn ein Fehler bei der Abfrage auftritt.</p>
<div class="article_code_box">
<p><span class="article_code_title">Anlegen und Befüllen der Tabelle</span></p>
<pre>function createTables(db) {
	db.transaction(
		function (transaction) {
			transaction.executeSql('DROP TABLE IF EXISTS videos;',
															[], nullDataHandler, errorHandler);
				transaction.executeSql('CREATE TABLE IF NOT EXISTS videos (VideoID INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT , Name TEXT NOT NULL, Genre TEXT NOT NULL, gesamt INT NOT NULL, verliehen TEXT NULL );',[], nullDataHandler, errorHandler);
				transaction.executeSql('INSERT INTO videos (VideoID, Name, Genre, gesamt, verliehen) VALUES (NULL, "Alien", "SciFi", "12", "11");', [], nullDataHandler, errorHandler);
         transaction.executeSql('INSERT INTO videos (VideoID, Name, Genre, gesamt, verliehen) VALUES (NULL, "Fight Club", "Action", "24", "14");', [], nullDataHandler, errorHandler);
				transaction.executeSql('INSERT INTO videos (VideoID, Name, Genre, gesamt, verliehen) VALUES (NULL, "Keinohrhasen", "Liebeskomödie", "20", "18");', [], nullDataHandler, errorHandler);
				transaction.executeSql('INSERT INTO videos (VideoID, Name, Genre, gesamt, verliehen) VALUES (NULL, "Monster", "Drama", "3", "3");', [], nullDataHandler, errorHandler);
				transaction.executeSql('INSERT INTO videos (VideoID, Name, Genre, gesamt, verliehen) VALUES (NULL, "Serenity", "SciFi", "8", "8");', [], nullDataHandler, errorHandler);
		}
	);
}

function nullDataHandler(transaction, results) { } 

function errorHandler(transaction, error) {
	// error enthält die Fehlermeldung
	alert('ACHTUNG! Es ist ein Fehler aufgetreten: '+error.message+' (Code '+error.code+')');
	return true;
}</pre>
<p><span class="article_code_subtitle">Listing  4</span></p>
</div>
<p>Da die Tabelle nun befüllt ist, können Sie sie auch abfragen. Mittels DOM-Scripting werden die Ergebnisse in die Seite eingebaut. Der zugehörige Code sieht wie folgt aus:</p>
<div class="article_code_box">
<p><span class="article_code_title">Abfrage</span></p>
<pre>function queryDB(db) {
	function dataHandler(transaction, results) {
		var panel = "";
			for (var i=0; i&lt;results.rows.length; i++) {
				var row = results.rows.item(i);
				listElem = document.createElement("li");
				anchorElem = document.createElement("a");
				anchorElem.setAttribute("href","'#"+row['VideoID']+"'");
				anchorElem.appendChild(document.createTextNode(row['Name']));
				listElem.appendChild(anchorElem);
				document.getElementById("home").appendChild(listElem);
					panel = document.createElement("div");
					panel.setAttribute("id",row['VideoID']);
					panel.setAttribute("class","panel");
					panel.setAttribute("title",row['Name']);
					headline = document.createElement("h2");
					headline.appendChild(document.createTextNode("Lokation: " + row['Name']));
					panel.appendChild(headline);
					fieldset = document.createElement("fieldset");
					ptag = document.createElement("p");
					ptag.setAttribute("class","ptext");
					ptag.appendChild(document.createTextNode("Verliehene Videos: " + row['verliehen'] + " von " + row['gesamt']));
			fieldset.appendChild(ptag);
			panel.appendChild(fieldset);
			document.getElementsByTagName("body")[0].appendChild(panel);
		}

	}
	db.transaction(
		function (transaction) {
			transaction.executeSql("SELECT * FROM videos ORDER BY Name;", [], dataHandler, errorHandler);
		}
	);
}</pre>
<p><span class="article_code_subtitle">Listing  5</span></p>
</div>
<p>Die abgefragten Daten werden als &lt;li&gt;-Elemente in die Liste eingefügt. Für jedes Element wird ein neuer Container mit der ID des betreffenden Videos angelegt. iUI kümmert sich um die Verknüpfung.</p>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/teil-4-offline-datenbank-eigene-webapplikation-223161/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Tipps zur Hoster-Wahl bei vServern: Virtuelle Heimat</title>
		<link>http://t3n.de/magazin/tipps-hoster-wahl-vservern-virtuelle-heimat-223097/</link>
		<comments>http://t3n.de/magazin/tipps-hoster-wahl-vservern-virtuelle-heimat-223097/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 14:21:38 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[Business]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=223097</guid>
		<description><![CDATA[Wem reiner „Webspace“ nicht die gewünschten Freiheiten bietet, der kann sich für ein Root-System entscheiden. Dabei muss es nicht immer gleich eine dedizierte Maschine sein. Für kleine Projekte und bei geringerem Ressourcenbedarf sind virtuelle Server oft eine interessante Alternative. 
Bei einem vServer werden auf einer physischen Maschine, dem Hostsystem, mehrere separate Arbeitsumgebungen eingerichtet. Diese verhalten [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://t3n.de/magazin/wp-content/uploads/2010/02/hosting-room.jpg"><img src="http://t3n.de/magazin/wp-content/uploads/2010/02/hosting-room-300x225.jpg" alt="hosting room 300x225 Tipps zur Hoster Wahl bei vServern: Virtuelle Heimat" title="hosting room" width="300" height="225" class="alignleft size-medium wp-image-224966" /></a>Wem reiner „Webspace“ nicht die gewünschten Freiheiten bietet, der kann sich für ein Root-System entscheiden. Dabei muss es nicht immer gleich eine dedizierte Maschine sein. Für kleine Projekte und bei geringerem Ressourcenbedarf sind virtuelle Server oft eine interessante Alternative. <span id="more-223097"></span></p>
<p>Bei einem vServer werden auf einer physischen Maschine, dem Hostsystem, mehrere separate Arbeitsumgebungen eingerichtet. Diese verhalten sich fast wie ein „richtiger“ Server. Das Hostsystem ist meist in Bezug auf RAM und CPU großzügig dimensioniert, um die notwendigen Ressourcen für eine Vielzahl virtueller Maschinen bereitstellen zu können. Nicht genutzte Resourcen, insbesondere CPU-Zeit, stehen bei einer virtualisierten Umgebung anderen Systemen auf der gleichen Maschine zur Verfügung.</p>
<h2>Die Zielgruppe</h2>
<p>Wer lediglich auf der Suche nach Speicherplatz für eine Website ist und mit Standardangeboten zurecht kommt, entscheidet sich am besten für ein vom Hoster bereitgestelltes und gewartetes Webspace-Angebot.</p>
<p>Benötigt man allerdings individuelle Lösungen oder möchte selbst als Admin tätig werden, kann ein vServer durchaus eine Überlegung wert sein. Wie bei einem dedizierten Rootserver gilt: Wer sich für ein derartiges System entscheidet, muss dieses auch warten und im Griff haben. Es ist auch in Verbindung mit einem vServer möglich, Administrationswerkzeuge zu nutzen – ganz ohne Kenntnisse des Basissystems wird man aber auf Dauer nicht auskommen. Während es bei dedizierten Root-Servern auch aktiv und individuell durch einen Provider betreute Systeme gibt (Managed Server), stehen bei einem vServer in der Regel maximal über ein zentrales Administrationssystem verwaltete Server zur Verfügung.</p>
<p>Gegenüber einer dedizierten Maschine sind die verfügbaren beziehungsweise zugesicherten Ressourcen auf einem vServer geringer. Wer aber keine Highend-Anwendungen unter Volllast betreiben muss, bekommt mit einem vServer durchaus eine sinnvolle Lösung. Neben Vorteilen wie dem effizienten Einsatz von Energie, Hardware und Rackspace sprechen vor allem die vergleichsweise überschaubaren Kosten für einen vServer.</p>
<h2>Leistungsfähigkeit</h2>
<p>Natürlich kommt die Leistungsfähigkeit von vServern nicht zwingend an die einer dedizierten Maschine heran. Für eine „betagte“ Hardware können sie aber durchaus ein ebenbürtiger oder gar leistungsfähigerer Ersatz sein. Heutige Virtualisierungslösungen setzen entweder auf Hardware-Virtualisierungsfeatures oder ausgereifte Paravirtualisierung. So wird eine durchaus beachtliche Leistung erreicht. Hinzu kommt, dass virtuelle Server in der Regel auf relativ aktueller Hardware betrieben werden – gegebenenfalls in Verbindung mit Redundanzmöglichkeiten wie einem Failover auf eine alternative Maschine oder einer aktiven Lastverteilung – was sich positiv auf die Verfügbarkeit des eigenen Systems auswirken kann.</p>
<p>In Verbindung mit aktuellen Linux-Systemen ist der Einsatz einer Virtualisierung im Allgemeinen unproblematisch. Wer andere Systeme wie Windows innerhalb einer virtuellen Umgebung betreiben möchte, sollte nach Möglichkeit darauf achten, dass passende Treiber für die verwendete Virtualisierungslösung zur Verfügung stehen, um eine optimierte Festplatten- und Netzwerkleistung zu erreichen.</p>
<p>Welche Leistung die virtuellen Systeme effektiv zur Verfügung stellen, schwankt je nach gewähltem Virtualisierungsansatz sowie der Auslastung des Hostsystems durch die vServer anderer Nutzer. Häufig wird hier CPU-Leistung nach dem „fair use“-Prinzip bereitgestellt. Nur wenige Hoster garantieren die Verfügbarkeit einer bestimmten CPU-Leistung oder erlauben gar die Zubuchung einer höheren Priorität.</p>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/tipps-hoster-wahl-vservern-virtuelle-heimat-223097/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Praxis-Workshop für Einsteiger: Extension-Entwicklung mit Extbase und Fluid</title>
		<link>http://t3n.de/magazin/praxis-workshop-einsteiger-extension-entwicklung-extbase-223999/</link>
		<comments>http://t3n.de/magazin/praxis-workshop-einsteiger-extension-entwicklung-extbase-223999/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 12:34:21 +0000</pubDate>
		<dc:creator>Jan Tißler</dc:creator>
				<category><![CDATA[CMS]]></category>

		<guid isPermaLink="false">http://t3n.de/magazin/?p=223999</guid>
		<description><![CDATA[Die grundlegendsten Neuerungen in TYPO3 4.3 sind sicherlich das MVC-Framework Extbase und die Template-Engine Fluid. Doch diese k&#246;nnen nicht einfach im Backend per Checkbox aktiviert werden, sondern sie stellen sehr komplexe Konzepte dar, die zudem auch noch vom zuk&#252;nftigen TYPO3-Technologie-Tr&#228;ger FLOW3 zur&#252;ckportiert wurden. Doch keine Angst &#8211; ein einfacher Einstieg ist auch hier m&#246;glich. Wir [...]]]></description>
			<content:encoded><![CDATA[<p>Die grundlegendsten Neuerungen in TYPO3 4.3 sind sicherlich das MVC-Framework Extbase und die Template-Engine Fluid. Doch diese k&#246;nnen nicht einfach im Backend per Checkbox aktiviert werden, sondern sie stellen sehr komplexe Konzepte dar, die zudem auch noch vom zuk&#252;nftigen TYPO3-Technologie-Tr&#228;ger FLOW3 zur&#252;ckportiert wurden. Doch keine Angst &#8211; ein einfacher Einstieg ist auch hier m&#246;glich. Wir zeigen, wie es geht.</p>
<p><span id="more-223999"></span> 
</p>
<p>Auch wenn Extbase und Fluid gerade in aller Munde sind, ist es wie bei jeder neuen Technologie schwierig, einen einfachen Einstieg in die Thematik zu finden. Das liegt weniger an den beiden Newcomern selbst, sondern eher daran, dass noch wenig Literatur existiert und es Einsteigern oft nicht leicht f&#228;llt, sich durch die bereits bestehenden Beispiele zu hangeln. Grund genug f&#252;r diesen ausf&#252;hrlichen Workshop.</p>
<h2>Was sind Extbase und Fluid genau?</h2>
<p>In t3n Nr. 16 hat Extbase-Entwickler Jochen Rau ausf&#252;hrlich erkl&#228;rt, welche Rolle Extbase spielt und warum man es verwenden sollte <a title="t3n Nr. 16, Die Zukunft der Extension-Entwicklung" href="http://t3n.de/magazin/neues-mvc-framework-extbase-ebnet-weg-4x-flow3-zukunft-222472/" target="_blank">[1]</a>.</p>
<p>Extbase ist zun&#228;chst eine ganz normale Systemextension, die als Alternative zur herk&#246;mmlichen Extension-Programmierung mittels Erweiterung der tslib_pibase-Klasse verwendet werden kann. Gerne auch parallel, denn Extbase vertr&#228;gt sich prima mit klassischen Extensions. Extbase f&#252;hrt dabei unter anderem solch schwergewichtige Konzepte wie Domain Driven Design und das MVC-Pattern ein. Damit ist es m&#246;glich, sehr elegant auch komplexe Erweiterungen zu schreiben, die sich leicht erweitern lassen. Dar&#252;ber hinaus &#8211; und genau das wird einer der Hauptgr&#252;nde f&#252;r die Verwendung sein &#8211; werden sich solche Extensions leicht in die zuk&#252;nftige TYPO3-Version 5.0 migrieren lassen.</p>
<p>Fluid, entwickelt von Core-Developer Sebastian Kurf&#252;rst, &#252;bernimmt dabei die Aufgabe einer Template-Engine und ist f&#252;r alle Ein- und Ausgaben zust&#228;ndig. Auch Fluid ist dabei eine neue Systemextension und kann bei Bedarf gegen eine andere Templating-Engine ausgetauscht werden. Einen ausf&#252;hrlichen Einblick in Fluid liefert ein Artikel in t3n Nr. 16 <a title="t3n Nr. 16, Fluid &#8211; Templating leicht gemacht" href="http://t3n.de/magazin/neue-template-eingine-flow3-typo3-4x-fluid-templating-222468/" target="_blank">[2]</a>.</p>
<h2>Es geht los</h2>
<p>Um nun mit Extbase und Fluid loslegen zu k&#246;nnen, brauchen Sie eine Installation von TYPO3 4.3 (stable oder beta2). Im Extension-Manager m&#252;ssen Sie nun noch die beiden Systemextensions Extbase und Fluid installieren, da diese per Default zwar mitgeliefert, aber noch nicht installiert sind. Nun brauchen Sie noch eine Seite im Seitenbaum, bei der Sie sicherstellen m&#252;ssen, dass Inhalte darauf ausgegeben werden k&#246;nnen. Dazu reicht das Aktivieren von &#8222;css_styled_content&#8220; und das folgende TypoScript:</p>
<div class="article_code_box">
                           							<span class="article_code_title">Minimales Setup</span></p>
<pre>page = PAGE
page.10 &#60; styles.content.get
</pre>
<p>                           							<span class="article_code_subtitle">Listing  1</span>
                           						</div>
<p>Als n&#228;chstes installieren Sie die Extension &#8222;efempty&#8220; aus dem TER und platzieren diese auf der vorher angelegten Seite. Wenn Sie nun den Cache leeren und die Seite im Frontend laden, sollten Sie &#8222;Hello World!&#8220; lesen k&#246;nnen. Wenn dies bei Ihnen der Fall ist, sind Extbase und Fluid ordnungsgem&#228;&#223; installiert und grunds&#228;tzlich einsatzf&#228;hig.</p>
<p>Die Extension &#8222;efempty&#8220; (als Abk&#252;rzung f&#252;r &#8222;Extbase Fluid Empty&#8220;) ist dabei ein leerer Container, der die minimale Konfiguration enth&#228;lt, die f&#252;r den Betrieb der Extension im Zusammenspiel mit Extbase und Fluid notwendig ist. Sie k&#246;nnen damit beispielsweise mit Fluid experimentieren, ohne auf Extbase achten zu m&#252;ssen oder die Extension einfach Datei f&#252;r Datei erkunden, um zu sehen, wie das Zusammenspiel der Dateien funktioniert.</p>
<p>In diesem Workshop werden Sie allerdings eine neue Extension manuell aufbauen, um alle wichtigen Bereiche kennenzulernen.</p>
<h2>Extension: &#8222;guestbook&#8220;</h2>
<p>Ihre eigene Extbase-Extension soll ein sehr einfaches G&#228;stebuch realisieren. Diese soll eine Liste von G&#228;stebucheintr&#228;gen anzeigen und jedem die M&#246;glichkeit bieten, eigene Eintr&#228;ge hinzuzuf&#252;gen. Ein G&#228;stebucheintrag hat dabei einen Titel, einen Text und nat&#252;rlich ein Datum.</p>
<p>Wenn man den Paradigmen des Domain Driven Design folgt, dann ist der Eintrag (Englisch: Entry) eine Entity mit den Eigenschaften &#8222;Title,&#8220; &#8222;Text&#8220; und &#8222;Date&#8220;. Eine Entity ist dabei ein eigenes Objekt mit einer Identit&#228;t &#8211; das hei&#223;t die Eintr&#228;ge unterscheiden sich, auch wenn diese den selben Inhalt haben sollten. Daf&#252;r werden wir gleich noch eine eigene Klasse ben&#246;tigen. Vorher aber zum prinzipiellen Ablauf. Im MVC-Paradigma brauchen Sie einen Controller, der die so genannten Aktionen (Actions) verwaltet. Sie ben&#246;tigen zwei offensichtliche Actions &#8211; eine, um das G&#228;stebuch anzuzeigen (diese nennen wir index), dann eine Action, um das Formular anzuzeigen, mit dem man neue Eintr&#228;ge hinzuf&#252;gen kann (add) und eine Action, die den Eintrag dann tats&#228;chlich in die Datenbank schreibt (create).</p>
<h2>Convention over Configuration</h2>
<p>Innerhalb der Programmierung mittels Extbase und Fluid gibt es sehr viele Konventionen (Vereinbarungen) in Bezug auf Benennungen, beispielsweise von Dateiklassen oder Verzeichnisnamen. Das mag anfangs verwirren, weil man nicht genau wei&#223;, warum und wie etwas festgelegt wurde &#8211; hat man das System aber einmal verinnerlicht, so hilft es einem enorm, wenn es darum geht, sich im Code zurechtzufinden. Die Konventionen helfen aber nicht nur dem Programmierer, sondern auch Extbase selbst, da Extbase automatisch bestimmte Funktionen ausf&#252;hren kann, selbst wenn diese vorher nicht definiert wurden.</p>
]]></content:encoded>
			<wfw:commentRss>http://t3n.de/magazin/praxis-workshop-einsteiger-extension-entwicklung-extbase-223999/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>
