Einen richtigen Programmierer erkennt man daran, dass jeder
seiner Sätze mit den Worten »Aber das Problem ist ...« beginnt.

Das Problem ist, dass er es ernst meint.

Die gute Nachricht: Programmierer lösen Probleme logisch. Sie haben kein Problem mit Problemen, solange sie Rückmeldungen über die Art derselben erhalten und gezielt Fehler beheben können. Das ist ihr Beruf. Programmierer müssen auch Fehlermeldungen schreiben und tun das mit mehr oder weniger literarischem Talent. Manche Programmierer überschreiten bei Bedarf auch ihre Kompetenz, wenn sie bemerken, dass eine Problemstellung ihren unmittelbaren Einflussbereich verlässt:

Wenn Problem
	frage ob Problem = Fehler
	Wenn Problem kein Fehler
		kein Problem.
	Wenn kein Problem doch Fehler
		zeige Fehlermeldung.
		Wenn keine Fehlermeldung vorhanden
			erfinde Fehlermeldung.
		Wenn nicht Fantasie fuer Fehlermeldung
			Fehler = ohne Problem.
	Wenn Kunde zufrieden mit ohne Fehler
		verschweige Problem.
		Wenn Kunde nicht glücklich ohne Problem
			mach Logo von Kunde doppelt so groß.

Damit haben wir das Fehlerproblem abgehandelt und können uns der wesentlichen Eigenschaft Ihrer Website widmen: Sie muss funktionieren. In erster Linie funktionieren. Denn wird auch nur eine Kleinigkeit falsch gezeigt, darf es sich nicht um eben diese Kleinigkeit handeln, die Ihren Kunden interessiert hätte. Darum beschäftigen wir keine Programmierer, die nur bis zu Mittag denken.

 

Das Spiel mit dem Baukasten

An den wenigsten kommerziellen Webseiten wird heute noch so viel programmiert wie früher. Der Trend ist, Produkte anderer Programmierer dem aktuellen Bedarf anzupassen. Das ermöglicht kürzere Herstellungszeiten, geringere Kosten, und man freut sich über weniger Fehler, da die vorgefertigte Software häufig eingesetzt und laufend verbessert wird. Die Anpassung bestehender Produkte für anspruchsvolle Websites ist nach wie vor nicht trivial, dafür braucht man Programmierer mit Talent für die Schnittstelle zwischen Technik und Web-Besucher.

Diese Entwicklung hat auch Nachteile, da vorgefertigte Software nicht auf spezielle Anwendungen Rücksicht nehmen kann. Der Code ist nicht auf Geschwindigkeit oder effektive Datenlieferung optimiert, sondern möglichst modular, im weitesten Sinn objektorientiert aufgebaut. Das heisst, Programmierer arbeiten nicht direkt an den Funktionen, sondern sprechen vom Hersteller gelieferte Module an und biegen das Ergebnis so zurecht, wie es verwendbar ist. Für den Programmierer ist das einfacher, was die Herstellungszeit verkürzt. Für die Daten bedeutet es aber einen oft beachtlichen Umweg, die Website wird langsam.

Ein weiterer Effekt der Arbeit mit großzügig modularer Software ist die Komplexität der Module. Da der Programmierer dazu angehalten wird, in kurzer Zeit viele Funktionen zu implementieren, verlässt er sich auf Module mit vielen Funktionen. Dabei kann er sich nicht mit effektivem Code beschäftigen, sondern verwendet den bereitgestellten »Baukasten«. Wie bei jedem Baukasten sehen die Endprodukte einander sehr ähnlich.

Dabei geht es nicht um Design, sondern tatsächlich um Programmierung. Wenn eine Software von Haus aus einen Kopfstreifen, ein Bild, mehrere Blöcke Kurztext und einen Seitenstreifen dem jeweiligen Zeitgeschmack entsprechend liefert, werden diese Elemente auch verwendet. Auch wenn man sich bei der Gestaltung Mühe gibt, kann man nicht in jedes Detail eingreifen und wird in jedem Fall ein Erscheinungsbild erzeugen, das einem gewissen Stil entspricht, den man nicht bewusst gewählt hat. Der mag für Sie brauchbar sein, übersehen Sie aber nicht, dass Sie zum Sklaven von Programmierern geworden sind, die Sie nie beauftragt haben. Sub-Programmierern sozusagen, die ihrerseits Bausteine woanders beziehen.

 

Wo ist die Grenze der Baukastensysteme?

Wenn der Stil einer vorgefertigten Software nicht dem Ihren entspricht, sind umfassende Änderungen nötig, die den anfangs günstig erscheinenden Herstellungspreis in die Höhe treiben. Eine solche Vorgehensweise kann noch immer effektiv sein, da fertige Software viele Funktionen enthält, die Sie andernfalls programmieren lassen müssten. Irgendwann ist aber Schluss, dann erreichen Sie den break even nicht mehr, eine andere Methode wäre günstiger gewesen und hätte Ihren Anforderungen und Ihrem Budget besser entsprochen.

Eine typische Situation bei multifunktionalen Websites ist die Kombination von Standardfunktionen und solchen, die speziell für Sie programmiert werden müssen. Für solche Sites wählen Sie ein System, das möglichst einfach zu bedienen ist und ohne großen Aufwand die Website so anzeigt, wie Sie das wünschen. Finger weg von riesigen Systemen mit Hunderten von Features, denn Sie können nur einen Bruchteil davon verwenden. Für Sites dieser Art ist das wichtigste Kriterium, wie gut sich eigens programmierte Funktionen integrieren lassen. Im besten Fall brauchen Sie höchstens ein paar Zeilen Code, um zusätzliche Funktionen einzubinden. Je besser eine Software die Einbindung von fremdem Code unterstützt, um so flexibler wird Ihre Website. Das schlägt sich auch unmittelbar in den Kosten nieder, denn die Programmierer müssen bei der Einbindung Ihrer Funktion mit den Möglichkeiten auskommen, die in der Baukasten-Software vorhanden sind.

 

Sind eigenständige Entwicklungen wirklich so teuer?

Individuelle Entwicklung ist nicht zwangsläufig teuer. Wenn Sie als Geschäftspartner allerdings einen wählen, der hauptsächlich als Verkäufer und Projektmanager auftritt, kann eine relativ einfache Website richtig teuer werden. Die tatsächliche Wertschöpfung findet beim Konzeptionisten, beim Designer und beim Programmierer statt. Wenn Ihr Partner in der Kette weit hinten steht, mag er für Sie ein eloquenter Gesprächspartner sein, aber Sie müssen damit rechnen, dass ein Großteil des Honorars in die Organisation fließt. Obwohl das gerade für große Unternehmen eine vertraute Situation ist, ziehen es viele vor, mit eindeutig abgegrenzten Projekte jemanden zu betrauen, der näher am tatsächlichen Hersteller positioniert ist. So erreicht man ein besseres Preis/Leistungs-Verhältnis.

 

Zwei »Oldies« sind nicht mehr von dieser Welt:
1. Form follows function
2. Inhalt von Funktion trennen

Solche verstaubte Aussagen können heute niemanden mehr beeindrucken und mittlerweile sind sie sogar falsch. Die Karosserie eines Personenwagens schraubt man heute nicht mehr auf einen stabilen Rahmen und montiert dann wahllos verschiedenes Zubehör. Moderne technische Systeme sind integrierte Systeme, jedes Teil ab einer gewissen Größe muss tragen. Das sollte auch für Software gelten und insbesonders für kommerzielle Web-Software, deren einziger Sinn darin besteht, Informationen zu vermitteln.

Web-Programmierer sollten sich darauf besinnen, wofür Ihre Arbeit gebraucht wird. Websites werden von Inhalten getragen, nicht von genialen technischen Schachzügen. Je wichtiger und aussagekräftiger der Inhalt einer Website ist, umso weniger Gimmicks braucht sie, bei starken Inhalten sind technische Spielereien entbehrlich. Die heutigen Netzwerke und Computer erlauben ein Vielfaches der Datenmenge von früher. Vergeben Sie diesen Vorteil nicht durch technischen Overhead. Nützen sie ihn für die Lieferung von Daten, die für Ihre Web-Besucher relevant sind.

 

Im Grunde sehen alle Websites gleich aus.

Gehen Ihnen graubunte Eintönigkeit und Kästchen mit nichtssagenden Kurzinformationen im Web schon auf die Nerven? Haben Sie mehr zu sagen und wollen eine eigenständige Website entwickeln, die Funktionen enthält, die Sie im Baukasten nicht angeboten bekommen? Dann sind Sie bei uns richtig. Wir können das.

Mit einer eigenständigen Programmierung kaufen Sie sich auch Arbeit, das muss Ihnen klar sein. Jetzt sagt Ihnen niemand mehr was geht und dass Sie sich doch bitte eine attraktive Version aussuchen möchten. Jetzt ist alles möglich und Sie müssen darüber nachdenken, was Sie wirklich wollen. Damit die neu gewonnene Freiheit nicht zum Entscheidungsnotstand führt, brauchen Sie einen kompetenten Partner, der klar zwischen Ihren Interessen und der technischen Ausführung unterscheidet.

 

Wann ist eine Website fertig?

Diese Frage kann nicht allgemein beantwortet werden. Manche Sites sind ein paar Wochen nach dem Launch fertig, wenn die zuletzt auftretenden Fehler bereinigt wurden. Manche Websites werden nie fertig, aus welchen Gründen auch immer. Die Faszination des World Wide Web besteht auch darin, jederzeit alles ändern zu können. Dass das Geld kostet, versteht sich von selbst. Nur die größten Unternehmen leisten sich ein ganzes Team für die permanente Weiterentwicklung einer einzigen Website. Aber planen Sie neben dem Budget für die Erstellung Ihrer Website auch etwas für Wartung und Pflege des Programmcodes ein. Dann haben Sie eine Website, die langsamer altert und dabei immer besser wird.

Zwei Beispiele:

Bereits in den späten 90er Jahren programmierten wir einen mehrsprachigen Webshop für einen internationalen Versandhandel. Sieben Sprachen, darunter Tschechisch, Ungarisch und Polnisch. Landesspezifisch unterschiedliche Preise. Diese damals innovative Applikation lief mehr als zehn Jahre lang mit praktisch unverändertem Programmcode und sorgte für einen beachtlichen Anteil am Gesamtgeschäft des Unternehmens. Die rasante Entwicklung im Web und steigende Erwartungen des Auftraggebers hielten uns dazu an, praktisch durchgehend an Erweiterungen und Änderungen zu arbeiten. Die Kunst dabei war, nicht den Trends von Webdesign und Programmierung zu folgen, sondern die Wünsche der Endverbraucher vorauszuahnen. Wenn der Konsument auf die Idee kam, dass eine Funktion doch recht praktisch wäre, war diese bereits implementiert.

Für einen großen Baustoffhandel wiederum entwickelten wir ein System, das Produktdaten, Bilder und Preise aus einer internen Applikation ins Web transportierte. Diese Applikation war dafür gar nicht vorgesehen, die Web-Fähigkeit wurde vom Hersteller für die nächsten Jahre unter Vorbehalt angekündigt. Durch unsere Erfahrung mit Produkt- und Bilddatenbanken aus dem Prepress-Bereich konnten wir die erforderliche Technik schon viel füher entwickeln. Wir wussten genau, was wir für eine solche Applikation brauchen und was nicht. Wir wussten mehr als der Hersteller der Software, weil wir uns nicht bloß um die Programmierung, sondern auch um die Logistik kümmerten. Zwischen das betriebsinterne Programm und den Webserver setzten wir einen Konvertierungs-Server mit einer Datenbank-Applikation als Middleware, die Bilder und Produktdaten aus der Datenbasis holte, aufbereitete und in die Website einfließen ließ.

 

Sie brauchen kein Spezialwissen für die Entwicklung Ihrer Website.

Fast alles ist möglich, wenn man sich damit beschäftigt. Diesen Part übernehmen wir. Sie müssen nur die scheinbar bequemen ausgetretenen Pfade verlassen und an Ihre Visionen glauben. Lassen Sie sich nicht mit Massenprodukten abspeisen, deren genaue Funktion niemand mehr versteht und die nur mehr eines können: Ihre Website möglichst kompliziert so darzustellen, wie Abertausende andere Websites aussehen.

Während der technischen Konzeption muss man abwägen, wie groß der Anteil an Standardfunktionen gegenüber neu zu programmierenden Funktionen ist. Das Geheimnis liegt in der Ausgeglichenheit. Lassen Sie zu viel programmieren, wird die Sache teuer. Lassen Sie zu wenig programmieren, fehlen Ihnen Funktionen und Ihre Website wird im besten Fall hübsch aussehen.

Schwebt Ihnen eine Website vor, die nur für Sie gemacht ist, die keinen Overhead durch unnötige Funktionen produziert, eine Site, die sich von Webseiten der Konkurrenz in den Eigenschaften absetzt, die Ihnen wichtig sind? Die durch pragmatische Auswahl der Programmierwerkzeuge entsprechend performant ist? Dann wissen Sie jetzt an wen Sie sich wenden: an OSTRY UMSETZUNGEN.