Warum ColdFusion benutzen?

Regelmässig und seit Jahren werde ich gebeten, zu erklären weshalb ich und mein Arbeitgeber backslash auf ColdFusion für die Entwicklung von Webapplikationen setze. Die Technologie sei veraltet, nicht verbreitet, proprietär und teuer im Vergleich zu anderen Web-Technologien, heisst es oftmals. Mitnichten, behaupte ich! Und Gelegenheit, ein wenig Überzeugungsarbeit zu leisten.

Eins gleich vorneweg: Jede Webtechnologie hat ihre Vorzüge und deshalb ihre Daseinsberechtigung. Es liegt mir fern, andere Technologien zu verteufeln. Folglich möchte ich jegliche abschätzigen Bemerkungen gegenüber anderen Produkten oder Lösungen vermeiden. Wo Vergleiche mit anderen Produkten angestellt werden, sollen sie kritisch betrachtet werden – selbstverständlich findet sich für jede Statistik eine zweite, die das Gegenteil beweist. Da ich keine Hersteller-Firma vertrete, bin ich mit meinen Theorien auch niemandem Rechenschaft schuldig. Denn ich muss keine Technologie an die Kundschaft bringen, sondern mit Lösungen zu fairen Preisen überzeugen. Folglich kann ich auf den üblichen Marketing-Blabla grundsätzlich verzichten und das wichtigste Argument ins Feld führen, weshalb ich gerne mit ColdFusion arbeite.

  1. technisch

    Warum kompliziert…

    … wenn’s auch einfach geht! So simpel ist der Hauptgrund. Die Einfachheit des Produkts sehe ich anhand verschiedener Merkmale. Zum Beispiel ist die Syntax von ColdFusion äusserst schnell zu erlernen. Einsteiger finden schnell Gefallen an der Umgebung und den Möglichkeiten. Und Umsteiger bekunden ebenfalls keine Mühe. So ist es zwar in der Regel nicht ganz einfach, auf dem Stellenmarkt ausgewiesene ColdFusion-Fachleute zu finden. Im Nun lassen sich aber Programmierer mit andere Technologie-Skills für CF begeistern.

    Effizienz pur

    Gerade bei den zur Verfügung stehenden Befehlen, den Tags und Funktionen besticht das Produkt. Und zwar nicht durch die Fülle, sondern durch deren Effizienz und Schlankheit. So zählt die aktuelle Beta-Version von Adobe, ColdFusion 9 gerade einmal 147 Tags und 380 Funktionen. Doch die haben es in sich.

    Integration in die Office-Welt

    Im Backend-Bereich von Webapplikationen sind sehr oft Schnittstellen zur Office-Welt nötig. Sprich es müssen Daten importiert, exportiert, integriert, indexiert und mutiert werden können. Word, Excel, Powepoint und Acrobat zählen da zu den häufigsten Programmen. Und was hat Adobe hier zu bieten? CFSPREADSHEET, CFDOCUMENT, CFPRESENTATION, CFPDF und CFPDFFORM. Für Grafiken bieten sich CFCHART und CFREPORT an. Bildmanipulationen lassen sich mit CFIMAGE spielend erledigen.

    Exchange- und Mail-Integration

    Seit ColdFusion 8 wird die Anbindung an Exchange-Server zum Kinderspiel. E-Mails, Kalender, Kontakte und Tasks können mit den Tags rund um CFEXCHANGE… abgerufen und verwaltet werden. Mails versenden geht schon seit Urzeiten mit einem einzigen Befehl: CFMAIL. Mailkonten konnten bislang mit CFPOP abgerufen und verwaltet werden, neu auch mit CFIMAP. Was will man denn mehr?

    Sicherheit und Userinformationen

    Für die Anbindung an Verzeichnisdienste wie zum Beispiel das Active Directory von Microsoft steht uns CFLDAP zur Verfügung. Ein Authentifizierungssystem wird mit dem Application-Framework und CFLOGIN bereitgestellt. CFSHAREPOINT wird in CF9 den Austausch zu einer weiteren Plattform erheblich erleichtern.

    Ajax-Komponenten und Flash-/Flex-Anbindung

    Ajax-Komponenten erleichtern uns das einfache Erstellen von brauchbaren User Interfaces. Adobe setz hierbei auf die JavaScript-Bibliothek von ExtJS und der Eigenentwicklung Spry. Mit dem OpenSource-WYSIWYG-Editor FCKEditor hat man dank dem CFTEXTAREA-Tag bereits ein halbes Content-Management-System zur Verfügung. Mit CFMAP werden Google Maps eingebunden und CFMEDIAPLAYER erledigt genau das, was der Name besagt. Auch immer wieder benötigt werden Dateiuploads. CFFILEUPLOAD löst die Aufgabe elegant, kommt mit mehreren Dateien zurecht und bietet einen Fortschrittbalken (CFPROGRESSBAR). Die Kommunikation mit Flash- oder Flex-Applikationen ist problemlos möglich, schliesslich stammen die Technologien ebenfalls von Adobe.

    Webservice und XML

    Komfortabel gelöst sind aus meiner Sicht die Bereiche XML und Webservices. Seit 2002, repsektive seit der Einführung von ColdFusion MX benutzen wir intensiv XML-Dateien für alle möglichen Geschichten. Klaglos. Und auch Webservices setzen wir seither ein, ohne das mühselige Schreiben von WSDL-Dateien und dergleichen. Diese Arbeit wird von CF abgenommen.

    unkompliziertes Datenbank-Handling

    Datenbank-Abfragen waren schon immer clever gelöst in ColdFusion. Mit dem CFQUERY-Tag wird die Kommunikation mit Datenbanken hergestellt. Verbindung herstellen, SQL-Statements optimieren, absetzen und cachen sowie Verbindung schliessen in einem Arbeitsschritt. Das spart nicht nur Tipparbeit sondern reduziert Fehlerquellen. Auf Enterprise-Level sprechen wir von sogenannten ORM-Tools. ORM-Software übernimmt die Kommunikation mit Datenbanken, respektive ermöglicht das Erstellen von Applikationen, die mit Datenbanken verschiedener Hersteller funktionieren. Zudem übernimmt die Software die Transformation der Datenbank-Struktur in Objekte, was bei Objektorientierten Lösungen gefordert ist. Für CF9 bindet Adobe den defacto-Standard bei ORM-Lösungen ein: Hibernate. Natürlich stehen CF-Entwicklern aber bereits seit längerem andere kostenlose ORM-Frameworks zur Verfügung wie Reactor oder TransferORM.

    Prozedural und Objektorientiert

    Ich hab’s gerade erwähnt: Objektorientiert Lösung. Ja, ColdFusion ermöglicht Objektorientierte Programmierung. Aber es muss nicht sein. Applikationen, die auf prozeduralem Code basieren, funktionieren genauso gut, wie solche, die Objektorientiert aufgebaut worden sind. Bei der Wahl der Waffen sind die Entwickler also komplett frei. Welche Methoden eingesetzt werden, hängt grundsätzlich mit dem Umfang und den Anforderungen des Projekts zusammen. Kommt hinzu, dass für die Erstellung von Objektorientierten Lösungen ausgezeichnete OpenSource-Frameworks in den Bereichen MVC (ColdBox, ModelGlue, Fusebox, Mach-II), ORM (Reactor, Transfer) und Dependency Injection (ColdSpring, LightWire) zur Verfügungen stehen.

    Erweiterbarkeit mit CustomTags, UDF usw.

    Natürlich lassen sich alle Programmieraufgaben ohne die CF-Grundfunktionen erreichen. Oder fehlende Funktionen ergänzen. Hierbei stehen ColdFusion-Entwickler vor der Qual der Wahl: User-Defined-Functions (UDF), CustomTags, Components oder gleich Jar-Bibliotheken von Java oder .Net-Komponenten. Und spätestens jetzt merkt man, aus welch riesigem Fundus man schöpfen kann.

    Kompetente Community

    Im Vergleich zu anderen Websprachen verfügt ColdFusion sicherlich über eine kleinere Community – was allerdings nichts über deren Qualität besagen will. Denn sieht besteht aus meiner Sicht aus unzähligen, verdienten Koryphäen, wenn es um Webdevelopment geht. Entwickler-Konferenzen finden beinahe überall auf dem Globus statt, was auch zeigt, dass CF weit verbreitet ist. Und die Community ist im Alltag eine grosse Stütze. Dauerblooger wie Ray Camden oder Ben Nadel – um nur zwei aktive Vertreter der Szene zu nennen – verbreiten ihr Wissen mit schier unermüdlicher Motivation. Und dies in aller Regel kostenlos, also ohne sich einen Vorteil daraus zu erarbeiten. Und das führt mich zu einer zweiten Perspektive.

  2. finanziell

    Was bedeutet teuer?

    ColdFusion wurde lange Zeit gemieden, respektive es wurde als Nachteil ausgelegt, weil für den produktiven Einsatz Kosten angefallen sind. Entwickler-Lizenzen standen zwar seit jeher kostenlos zur Verfügung, für eine Standard-Lizenz mussten jedoch bisher rund 2000 Franken hingeblättert werden, die leistungsfähigere Enterprise-Version von Adobe kostet rund viermal mehr. Ein stolzer Preis – im Vergleich zu kostenlosen Alternativen, wenn man nur den Einsatz betrachtet und nicht auch die allenfalls verkürzte Entwicklungszeit und deshalb allfällig geringere Kosten. Doch dies ist Spekulation. Fakt ist jedoch, dass auch ColdFusion mittlerweile kostenlos erhältlich ist.

    ColdFusion auch OpenSource

    Und zwar bieten Railo und OpenBD OpenSource-Version an. Kostenlos, ich wiederhole es an dieser Stelle gerne. Mit OpenBD habe bislang keine grossen Erfahrungen gesammelt, die «Schweizer»-CF-Lösung von railo hat mich bis jetzt aber sehr überzeugt. Und wir haben bereits einige Projekte auf Railo-Servern am laufen. Unter anderem dieser Blog und unsere Coding Guidelines. ColdFusion ist folglich nicht mehr teuer und proprietär, sondern kostenlos und OpenSource. Und das Fortbestehen der Programmiersprache ist nicht mehr allein abhängig von den Launen und finanziellen Möglichkeiten von Adobe. Allerdings sehe ich derzeit keine dunklen Wolken für die Zukunft von ColdFusion bei Adobe. Der Softwarekonzern hat mit dem ColdFusion Builder endlich wieder eine IDE in den Startlöchern, die den Namen auch verdient. Und der Release von ColdFusion 9 aka Centaur steht auch kurz bevor.

    OpenSource für ColdFusion

    Für ColdFusion gibt es mittlerweile eine Vielzahl an OpenSource-Projekten. Für jeden erdenklichen Zweck findet man mittlerweile eine kostenlose Lösung. Natürlich ein Verdienst der grossartigen Community und deren selbstlosen Vertretern. Einstiegspunkt für OpenSource-Projekt ist beispielsweise riaforge.org.

  3. Marketing

    Bei Facts fürs Marketing muss ich mich auf externe Quellen verlassen. Deshalb ein paar Daten aus Kristen Schofields Präsentationen (Senior Product Marketing Managerin bei Adobe):

    • Mehr als die Hälfte der 500 Unternehmen auf der Fortunes-Liste setzt ColdFusion ein.
    • 75% der Top 100 Unternehmen der Fortunes-Liste verwendet CF
    • Beim Total Cost of Ownership distanziert CF Alternativen wie PHP, ASP oder JSP deutlich. Eingerechnet werden Lizenzen, Ausbildung, Entwicklung, Unterhalt und Support:

      1. CF: $27’000
      2. PHP: $41’000
      3. ASP.Net: $45’000
      4. Java/JSP: $60’000

    Adobe verweist gerne auf eine Studie von Gartner unter dem Titel «Adobe ColdFusion: Past, Present and Future». Gerne zitiert:

    A wide range of IT organizations has leveraged ColdFusion at one time or another over the last decade. While some have migrated from the toolset in recent years, many are rediscovering this technology and its potential role in a modern Web IT strategy.

    Wo wird CF eingesetzt? Eigentlich überall. Eine der grössten Community-Plattformen – myspace.com – wurde mit ColdFusion erstellt und funktioniert prächtig. Gemäss persoenlich.com steht myspace.com an erster Stelle, was das Anzeigengeschäft betrifft. In der Schweiz sicher ein bekanntes Beispiel ist MySwitzerland.com – die Schweizer Tourismus-Plattform.

Fazit

Langer Rede kurzer Sinn: ColdFusion ist Server und Sprache meiner Wahl, weil ich alles damit erstellen kann zu einem guten Preis für Kunden. Und das Arbeiten in dieser Umgebung macht einfach Spass. Am Schluss ist nicht die Zubereitungsart entscheidend sondern das Resultat. Oder fragt jemand im Restaurant, ob das Gericht auf einem Induktionsherd, Cerankochfeldern, auf Gas oder gar über dem offenen Feuer zubereitet wird? Schmecken muss es, und zügig auf den Tisch kommen sollte es, und dabei nicht überteuert sein.

Verwandte Blog-Einträge

Kommentare

Reinhard Jung's Gravatar
Wieder mal ein sehr schöner Artikel!
Ideal zum weiterleiten, um sich eben solche Diskussionen zu ersparen, wie von der Basler in Zürich beschrieben.
# Erfasst von Reinhard Jung | 28.08.09 23:37
Michael Peters's Gravatar
super-Artikel, werde ich von meiner Seite hinverlinken
# Erfasst von Michael Peters | 03.09.09 15:10
# Erfasst von CFNeutral | 03.09.09 18:24
Alirio Boquin's Gravatar
Nice ColdFusion Article!

I been working with since version 5, I started testing the CF 9 last year in adobe especial release program. I hope one day the world know better his amazing highlights.

Thanks
# Erfasst von Alirio Boquin | 03.09.09 20:00
Alexander Friess's Gravatar
Sehr guter Artikel und vor allem ein hervorragendes Fazit. Wo ColdFusion noch überall eingesetzt wird? Eine Zusammenfassung mit über 1.100 Einträgen findet sich unter http://www.coldfusionsites.com (eigene Einträge lassen sich einfach hinzufügen).
# Erfasst von Alexander Friess | 03.09.09 20:58
Mischa's Gravatar
@Alexander : Danke für die Blumen und den Hinweis auf die Seite. Die kannte ich noch gar nicht. ich habe den Hinweis gleich als Anlass dafür genutzt, ein Follow-Up zu verfassen, das ich eigentlich schon lange geplant habe. Vielleicht kannst Du mich ja von Eintragungen überzeugen :-) Den Beitrag dazu findet man unter http://www.samelis.ch/blog/mischa/index.cfm/2009/9/4/Who-is-using-ColdFusion-and-why-should-i-promote-it
# Erfasst von Mischa | 04.09.09 08:22
kdvinoht's Gravatar
http://www.sonnenbrillevongunstig.com
für durchschnittsnoten zu stopfen , oder goode nun auf lieblings professoren und ehemaligen roommates.until sagen . in diesem frühjahr lownsdale und andere mitglieder der klasse ' wird cincinnatior nach boston oder nach athen ohiofor der festlichen anfnge hatte sie nie zurückkehren . einige werden ihre eltern, die jetzt ltere menschen, kinder oder erwachsenen begleitet werden. vielleicht werden sie eine chance, etwas alt wounds.even heilen heute zu finden , erinnert es viele emotionen , sagt lownsdale . es war ein gefühl der verwundbarkeit ... all diese jahre spter , bin ich immer noch wütend darüber . niemand wei, wie viele der absolventen werden fü
http://www.sonnenbrillevongunstig.com
go bank, in lonsdale land co. auerdem , $, . secretary of housing and urban development jp ventures llc, in woodsong unterteilung phase , $ . pop ii llc, zur pop i. privaten investor xli llc, parkside drive, $, . peter koopman und beatriz koopman johannes schneider und barbara schneider, cm wooten amp p.h. mendel eigenschaft , $, . chesney hills partnerschaft kirkland construction co. llc, in chesney hills teilung , $, . chesney hills partnerschaft kirkland construction co. llc, in chesney hills teilung , $, . thomas smith und patricia smith zu phillip smith , in tom smith eigenschaft , $, . stephen costner und linda costner zu mdk enterprises llc , in john r
http://www.sonnenbrillevongunstig.com
zu erhhen abzulehnen. ryans plan würde auch die art, wie die regierung gibt sich lebensmittelmarken zu überholen. es würde die menge an geld, jeder staat erhalten knnen kappe und machen die beihilfen, die auf der arbeit oder ausbildung . feststellend, dass die diesjhrige nettobetriebseinkommenwird voraussichtlich die secondhighest in den letzten jahren, schlgt der plan auch die senkung der agrarprogrammemilliarden dollar über jahre schneiden ernteversicherung und bestimmte subventionen an die landwirte unabhngig von preis oder ernteertrag .bristoldemonte simpson war zu fühlen. er sprach mit ruhiger , leiser stimme. er bewegte sich in einer entspannt
http://www.sams-seo.co.uk/html-sitemap/#comment-37727
# Erfasst von kdvinoht | 09.07.14 13:02
Leave this field empty
Ihren Kommentar hinzufügen

Falls Sie abonnieren, werden alle neuen Kommentare zu diesem Thema an Ihre E-Mail-Adresse gesandt.

TweetBacks