<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>red@ktiv - die etwas andere WebAgentur &#187; programmierung</title>
	<atom:link href="http://webdesign.redaktiv.de/category/programmierung/feed" rel="self" type="application/rss+xml" />
	<link>http://webdesign.redaktiv.de</link>
	<description>WebDesign &#124; Webprogrammierung &#124; CSS &#124; HTML &#124; PHP</description>
	<lastBuildDate>Tue, 16 Sep 2008 09:37:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Warum das Rad neuerfinden?</title>
		<link>http://webdesign.redaktiv.de/design/opensource-systeme.html</link>
		<comments>http://webdesign.redaktiv.de/design/opensource-systeme.html#comments</comments>
		<pubDate>Sun, 08 Oct 2006 23:00:00 +0000</pubDate>
		<dc:creator>Stefan Kremer</dc:creator>
				<category><![CDATA[design]]></category>
		<category><![CDATA[programmierung]]></category>
		<category><![CDATA[technik]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[eCommerce]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Typo3]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[xtCommerce]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Wer eine Webpräsenz aufbauen will, steht immer vor der Entscheidung &#8220;Make or Buy?&#8221;. Einerseits gibt es für alles und jedes &#8211; Foren, Gästebücher, Content-Management-Systeme, eCommerce-Shops, … fix-fertige und oft genug sogar kostenlose Dinge aus der OpenSource Gemeinde. Andererseits sind doch immer noch genügend &#8220;Extrawünsche&#8221; vorhanden, die doch der individuellen Programmierung bedürfen. Und leider ist bei [...]]]></description>
			<content:encoded><![CDATA[<p>Wer eine Webpräsenz aufbauen will, steht immer vor der Entscheidung &#8220;Make or Buy?&#8221;. Einerseits gibt es für alles und jedes &#8211; Foren, Gästebücher, Content-Management-Systeme, eCommerce-Shops, … fix-fertige und oft genug sogar kostenlose Dinge aus der OpenSource Gemeinde. Andererseits sind doch immer noch genügend &#8220;Extrawünsche&#8221; vorhanden, die doch der individuellen Programmierung bedürfen. Und leider ist bei einigen OS-Projekten die Codequalität und/oder die Dokumentation so schlecht, das man&#8217;s genauso gut (oder besser) gleich selbst neuprogrammiert anstatt sich in den Code des Kollegen einzufummeln.
<p>Bei red@ktiv sind wir zwischenzeitlich dazu übergegangen, an uns herangetragene Projekte gegen folgende OpenSource-Lösungen zu prüfen:</p>
<ul>
<li><span class="strong"><a href="http://typo3.org">Typo3</a>:</span> ein sehr mächtiges Content-Management-System, das mit TypoScript fast eine eigene Programmiersprache mitbringt. Ist die Einrichtung einer Präsenz mit der Festlegung von Templates, Funktionen und Gestaltung erst einmal erfolgt, wird man jedoch mit einem leistungsfähigen Tool belohnt, mit dem man dennoch Kunden nach kurzer Einarbeitung guten Gewissens bei der Pflege ihrer Seiten weitgehend alleine lassen kann. Insbesondere die Möglichkeit mehrere Sprachvarianten einer Seite zu haben ist ein schlagendes Argument pro Typo3. Vorgehende Versuche ähnliches mit Mambo zu realisieren endeten in einem ziemlichen Desaster, so daß wir davon komplett abgekommen sind. Auch wenn die Einrichtung und Verwaltung unter Mambo sehr viel einfacher und oft genug auch ausreichend wäre, greifen wir auch für kleinere Projekte bevorzugt auf Typo3 zurück. </li>
<li><span class="strong"><a href="http://wordpress.de">WordPress</a>:</span> Blog-Systeme sind nach wie vor en vogue und für kleine, private Webseiten ein gutes Mittel der Wahl um aktuelle Begebenheiten zu erfassen und zu publizieren. Darüberhinaus können Blogs eine wichtige Begleitmusik in Sachen Suchmaschinenoptimierung spielen. Aktualität ein wichtiges Kriterium für das Ranking bei Suchmaschinen. Und einfacher als mit einem Blog lassen sich aktuelle Dinge kaum erfassen. Über ein gut ausgebautes System von PlugIns lassen sich leicht zusätzliche Funktionen in WordPress implementieren.</li>
<li><span class="strong"><a href="http://xtcommerce.de">xt:Commerce</a>:</span> auch wenn das Vertriebskonzept mit kostenpflichtiger Zwangsmitgliedschaft im Supportforum der Hauptentwickler mit dem Opensoure-Gedanken in krassem Widerspruch steht und etliches am HTML- und CSS-Code von xtCommerce ziemlich krank ist &#8211; es ist das Mittel der Wahl, wenn es um einen guten Webshop geht! Sowohl funktional als auch gestalterisch (wenn man denn die elementarsten Fehler mal gerade gerückt hat) bietet xt-Commerce eine exzellente Basis für eCommerce Anwendungen. Wie auch bei Typo3 ist die Möglichkeit mehrere Sprachvarianten zu verwalten sehr ausgeprägt und für ein Online-Business geradezu elementar. Über das smarty-System das für die Generierung der Templates verantwortlich ist, kann man zu dem die Gestaltung der Seiten sehr gut anpassen und in valides XHTML überführen, so daß ein gute Grundlage für die Gestaltung mit CSS besteht. Die in der Szene gehandelten oder bereitgestellten total veralteten Tabellenlayout-Konstrukte, die mit i</li>
<li><span class="strong"><a href="http://phpicalendar.net/">phpiCalender</a>/<a href="http://www.bssd.org/calendars/phpMyCal/about.phpMyCal.php">phpMyCal</a>:</span> wenn es um die Erfassung und Verwaltung von Terminen geht kann es nur eine Wahl gegen &#8211; ein System das den iCal-Standard unterstützt. phpiCalendar tut dies vorbildlich. In Zusammenarbeit mit phpMyCal entsteht noch ein Webfrontend über das Termine zu erfassen und zu pflegen sind. Leider ist phpMyCal derzeit vom Netz verschwunden, so daß wir hier eine von <a href="http://relateme.net/">Relate Me</a> >bereitgestellte Version, die wir auf Standalone-Betrieb rückentwickelt haben, nach den Regeln der GPL zum Download einstellen.</li>
</ul>
<p><a href="http://webdesign.redaktiv.de/phpMyCalendar.zip">Modifizierte Version von phpiCalendar mit phpMyCal-Extension</a></p>
<p>Wie man an den aufgeführten Beispielen unschwer erkennen kann: es bleibt in allen Fällen genügend Arbeit übrig um die &#8220;fertigen&#8221; System passend für die Kundenanforderunge zu modifizieren. Durch die Offenheit des Quelltextes ist es uns jedoch leicht möglich zusätzliche Funktionaliäten oder kundenspezifische Änderungen zu erstellen. Der Fall, das eine OpenSource-Software out-of-the-box die Anforderungen des Kunden erfüllt ist höchst selten. Mindestens die Identifikation und Installation von PlugIns gehört zum Standardrepertoire. Im nächsten Schritt steht dann die Entwicklung eigner Erweiterungen. Erst wenn die Anforderungen soweit vom Grundsystem abweichen, das schon die Umprogrammierung und -konfigurierung des Grundsystems einer kompletten Neuentwicklung gleich kommt, greift noch &#8220;Plan B&#8221; und wir entwickeln Dinge von Grund auf neu und kundenspezifisch. </p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign.redaktiv.de/design/opensource-systeme.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Barrieren gibt es nur in den Köpfen von WebDesignern</title>
		<link>http://webdesign.redaktiv.de/programmierung/barrierefrei.html</link>
		<comments>http://webdesign.redaktiv.de/programmierung/barrierefrei.html#comments</comments>
		<pubDate>Mon, 17 Jan 2005 23:00:00 +0000</pubDate>
		<dc:creator>Stefan Kremer</dc:creator>
				<category><![CDATA[programmierung]]></category>
		<category><![CDATA[Barrierefrei]]></category>
		<category><![CDATA[BITV]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[»Ich schau mal schnell im Internet nach«. Längst gehört das Internet zu den täglichen Werkzeugen in Haushalt, Schule und Beruf. Ein Werkzeug, das sich zudem auch noch eine grunddemokratische Struktur auszeichnet. Jeder kann hier seine Botschaften einstellen, jeder kann diese Informationen nutzen. Wirklich jeder? Bekanntermassen ist nicht jeder Mensch mit allen Sinnen gleich gut ausgestattet. [...]]]></description>
			<content:encoded><![CDATA[<p>»Ich schau mal schnell im Internet nach«. Längst gehört das Internet zu den täglichen Werkzeugen in Haushalt, Schule und Beruf. Ein Werkzeug, das sich zudem auch noch eine grunddemokratische Struktur auszeichnet. Jeder kann hier seine Botschaften einstellen, jeder kann diese Informationen nutzen. Wirklich jeder?
<p>Bekanntermassen ist nicht jeder Mensch mit allen Sinnen gleich gut ausgestattet. Unsere Wahrnehmung der Welt ist unterschiedlich &#8211; auch die der Netzwelt. Umso mehr gilt das Gebot, das diesen unterschiedlichen Wahrnehmungen Rechnung getragen werden muss. Ein Gebot, das durch WAI erstmals konkretisiert wurde. Später mündete es für deutsche Bundesbehörden sogar in die Verordnung zur Barrierefreiheit in der Informationstechnik (BITV) ein. In zunehmendem Masse wird diese Verordnung auch durch die Gleichstellungsgesetze der Bundesländer in die Länder- und Kommunalverwaltungen einziehen. Bei Unternehmen wird der Markt für den notwendigen Druck sorgen. Welcher klug rechnende Kaufmann wird es sich auf Dauer leisten können auch nur einen Teil seiner potentiellen Kundschaft von seinem Warenangebot aussperren zu können?</p>
<p>Die Umsetzung in der Praxis ist derzeit jedoch noch nicht sehr weit fortgeschritten. Unverständlicherweise, ist doch der Anspruch an einen barrierefreien Internetauftritt mit einem sehr geringen Aufwand zu realisieren. Alle notwendigen Techniken um einen barrierefreien Internetauftritt zu erstellen sind etabliert und verfügbar. Mehr noch: es sind die Techniken, die man braucht um den gängigen Anforderungen an einen Internetauftritt gerecht zu werden:</p>
<ul>
<li>Schnelle Ladezeiten durch »schmalen« Code</li>
<li>Leichte Pflegbarkeit der Präsenz durch stringente Trennung von Gestaltung und Inhalt </li>
<li>Suchmaschinenoptimierung durch textbasierten Inhalt in semantisch korrektem Kontext</li>
<li>Universelle Zugänglichkeit durch validen Code, der von allen Ausgabegeräten verarbeitet werden kann</li>
</ul>
<p>Von diesen Zielvorgaben ausgehend ist es nur noch ein kleiner Schritt hin zur Barrierefreiheit. Für die Aufteilung von Gestaltung und Inhalt stehen HTML und CSS zur Verfügung. Beschränkt sich der WebDesigner bei der Seitenerstellung auf die Hinzufügung von einigen wenigen HTML-Tags zum eigentlichen Inhalt ist damit die Zugänglichkeit für alle, ein schneller Seitenaufbau und eine optimale Suchmaschinenwahrnehmung sichergestellt. </p>
<p>Dieses »HTML-Gerippe« ist optisch alles andere als ansprechend. Wer durch eine Sehbehinderung jedoch von dieser Optik sowieso nichts erfährt, wird jedoch für eine klare Struktur die ein Screenreader optimal verarbeiten kann dankbar sein. Für die Sehenden kommt dann im zweiten Schritt via CSS ein ansprechende Gestaltung dazu. Funktion und Ästhetik müssen dabei keine Gegensätze sein. Die Möglichkeiten die CSS für moderne und reiche Gestaltungen liefern reichen von der Vielfalt an die von Printlayout heran. Halbtransparenzen, mehrspaltiger Satz mit überlappenden Bildern, Schriftvariationen, mitwachsende Layouts, … alles ist (mit etwas Hirnschmalz) machbar.</p>
<p>Barrieren können aber nicht nur in der Visualisierung bestehen. Auch motorische Beeinträchtigungen, Schwierigkeiten im Textverständnis (Pisa lässt grüßen!) oder auch Hörschäden können zur Barriere hin zu einen erfolgreichen Webauftritt werden. Auch diese Lösungen sind nicht schwer umzusetzen. Ein kurzer Text, der ein Bild beschreibt, ein Untertitel in einem Tonfilm oder die Möglichkeit Links einfach nur per Tastatur statt mit einer Maus zu erreichen. Alles einfaches Handwerkszeug, das ein WebDesigner in seiner Werkzeugkiste finden sollte.</p>
<p><strong>Fazit: schaut man sich im Netz um, finden sich immer wieder sehr gute Umsetzungen von Barrierefreien Internetseiten, die auch für uns »Normale« ansprechend und leicht zu bedienen sind. Leider überwiegen immer noch handwerklich schlechte Lösungen, die mit Frames, Javascripten oder Flash vielen ihrer Nutzer das Leben schwer machen. Bei einigen Internetauftritten muss man nicht mal behindert sein um daran zu verzweifeln. Die größte Barriere im Netz besteht leider immer noch in den Köpfen von WebDesignern.</strong></p>
<p>Dieser Artikel erschien Anfang Januar auch in der Zeitschrift <a href="http://www.bz.nuernberg.de/bzn/05225071">»Sprachrohr«</a></p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign.redaktiv.de/programmierung/barrierefrei.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Optimiert für &#8230;</title>
		<link>http://webdesign.redaktiv.de/design/optimiert-fuer.html</link>
		<comments>http://webdesign.redaktiv.de/design/optimiert-fuer.html#comments</comments>
		<pubDate>Thu, 25 Mar 2004 23:00:00 +0000</pubDate>
		<dc:creator>Stefan Kremer</dc:creator>
				<category><![CDATA[design]]></category>
		<category><![CDATA[programmierung]]></category>
		<category><![CDATA[technik]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Weil ich es gerade mal wieder &#8211; bei einem hochdekorierten Preisträger! &#8211; gefunden habe: es gibt nach wie vor WebDesigner die glauben, die Webwelt bestehe aus ihrer (beschränkten) Produktionsumgebung. Oder dem was Aldi verkauft. In der Konsequenz verlangt das nichts anderes als daß der Anbieter des Produkts als erstes nicht sein Produkt kommunizieren kann, sondern [...]]]></description>
			<content:encoded><![CDATA[<p>Weil ich es gerade mal wieder &#8211; bei einem hochdekorierten Preisträger! &#8211; gefunden habe: es gibt nach wie vor WebDesigner die glauben, die Webwelt bestehe aus ihrer (beschränkten) Produktionsumgebung. Oder dem was Aldi verkauft. In der Konsequenz verlangt das nichts anderes als daß der Anbieter des Produkts als erstes nicht sein Produkt kommunizieren kann, sondern seiner Kundschaft Rahmenbedinungen diktieren muß. Oder gleich auf deren Besuch verzichtet. Beide Alternativen sind unter Marketinggesichtspunkten eine schlichte Katastrophe. Kunden wünschen bedient zu werden, nicht belehrt oder gar abgewiesen. Wie würden Sie empfinden, wenn Ihnen vor dem Supermarkt ein Türsteher erklärt das Sie nur unter diesen oder jenen Bedingungen hier einkaufen könnten?
<p>Wir diskutieren mit einigen Kollegen. Und immer wieder mit welchen, die glauben an dieser Stelle die Statistiken auf ihrer Seite zu haben. Über den Verbreitungsgrad dieses oder jenes Betriebssystems, des Browsers XYZ, die Bildschirmauflösung 08/15 und des Sowieso-PlugIns.</p>
<h3>Ok, reden wir über Statistik:</h3>
<p>Blenden wir die auch in diesem Fall völlig richtige Weisheit Winston Churchills <cite>Man kann nur einer Statistik trauen, die man selbst gefälscht hat</cite> einmal komplett aus. Versuchen wir einfach den höchstmöglichen Verbreitungsgrad für die häufigst unterstellte Umgebung zu errechnen:</p>
<ul>
<li>aktueller Internet Explorer (ab Version 5 und neuer)</li>
<li>unter Windows (wir nehmen alles mit: 3.x, 95, 98, ME, 2000, NT, XP)</li>
<li>bei einer Bildschirmauflösung von mindestens 1024 x 768 Pixeln </li>
<li>mit installiertem Macromedia Flash-PlugIn, wahlweise aktiviertem JavaScript</li>
</ul>
<p>Unterstellen wir Windows einen Marktanteil von 90% (genaue Zahlen für Desktop Betriebssysteme sind leider nirgends zu bekommen &#8211; <a href="http://europa.eu.int/rapid/start/cgi/guesten.ksh?p_action.gettxt=gt&amp;doc=IP/04/382|0|RAPID&amp;lg=DE&amp;display=" target="_blank">wahrscheinlich aus gutem Grund</a> nicht mal von Microsoft selbst). Auch für die <a href="http://www.w3b.org/trends/browserwatch.html" target="_blank">Browserverteilung</a> gehen wir von 90% aus . Ebenso nehmen wir für Bildschirmauflösungen von 1024 x 768 und höher einen <a href="http://www.mikolajczyk.info/bildschirm_statistik_2004.html" target="_blank">Verbreitungsgrad von 90%</a> an. Bei der Auswahl zwischen <span style="text-decoration:line-through;">Pest und Cholera</span> Flash und JavaScript entscheiden wir uns für Flash und übernehmen die <a href="http://www.macromedia.com/de/software/player_census/" target="_blank">97% Verbreitungsgrad</a>  die Macromedia von sich selbst behauptet.
</p>
<h3>Jetzt wird&#8217;s spannend</h3>
<p>Nach einfachen Rechenregeln und der Annahme einer statistischen Normalverteilung macht das: 0,9 * 0,9 * 0,9 * 0,97 = 0,70713 oder großzügig gerundet: 71%! Nochmal: sämtliche Basiszahlen sind mit hoher Unsicherheit behaftet. Aber selbst wenn man einen &raquo;Sicherheitsaufschlag&laquo; dazu nähme und mit 0,95 * 0,95 * 0,95 * 0,99 rechnete, würden &raquo;nur&laquo; knappe 85% herauskommen. Das Szenario das eintritt, wenn die Zahlen schlechter sein sollten, mag sich jeder selbst ausmalen.</p>
<h3>Sind 85% viel?</h3>
<p>Nein, es sind glatte 15%, die an vollständiger Zugänglichkeit fehlen. Mal ehrlich: welcher klug rechnende Geschäftsmann kann es sich heutzutage leisten auf 15 oder gar 30% seiner potentiellen Kundschaft, seiner Umsätze, seiner Gewinne zu verzichten? Die Antwort ist ebenso einfach wie die Lösung für das oben beschriebene Dilemma: Verlangen Sie als Kunde von ihrem WebDesigner Seiten die auf <strong>allen</strong> Browsern, auf <strong>allen</strong> Betriebssystemen, bei <strong>allen</strong> Bildschirmauflösungen &#8211; richtiger sogar auf <strong>allen</strong> Ausgabegeräten, es gibt mehr als nur optische Ausgabegeräte! &#8211; mit <strong>allen</strong> Systemumgebungen funktionieren. Nicht auf einigen. Nicht auf den meisten. <strong>Auf allen</strong>! Der Aufwand für solche Seiten ist nicht größer als für das was die &raquo;optimiert für&laquo;-Fraktion abliefert.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign.redaktiv.de/design/optimiert-fuer.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
