Topfoto, mit Symfony
Ein Bild sagt bekanntlich mehr als tausend Worte. Im Web sind Bilder das Salz in der Suppe. Was wäre Facebook ohne Bilder bzw. das Teilen und Liken derselben? Oder wer würde ein Smartphone ohne Kamera kaufen?
User laden Fotos hoch und voten für Fotos anderer User: Genau dafür gibt´s auf NEWS.AT schon seit vielen Jahren eine Applikation namens „Topfoto“. Doch diese stammte aus einer früheren Zeit, aus der Zeit, als Monitore mehr tief als breit waren und es aus Internet-Leitungen nur tröpfelte. Heute überschlagen sich die Megapixel. Also: Eine neue Topfoto-Applikation musste her, am Besten gleich mit einigen zusätzlichen Features.
Symfony
Gesagt, getan. Es wurde eines meiner ersten Projekte bei der Networld. Und da man zu diesem Zeitpunkt in Erwägung zog, zukünftig auf das PHP-Framework Symfony umzusteigen, war ich der Auserwählte, der es anhand von Topfoto gleich mal ausprobieren sollte.

Symfony ermöglicht es, ja zwingt den Programmierer dazu, nach dem MVC-Prinzip (Model-View-Controller) zu programmieren: Der Zugriff auf die Datenbank, die Ausgabe sowie die Programmlogik sind nicht ineinander verstrickt. Das macht die Software besser wart- und erweiterbar.
Allerdings ist es dann aus mit flott geschriebenen Programmen. Und die Lernkurve bei Symfony ist sehr steil. Symfony ist reichlich dokumentiert, aber manchmal lückenhaft. Foren, Weblogs, etc. gibt es leider sehr wenige, denn die Nutzer-Gemeinde ist doch relativ klein. Zu beachten ist – vor allem für ein Portal mit vielen Zugriffen: Die Last für den Webserver ist enorm. Ein Sprüchlein für den, der es mit Symfony probiert: „Die Ehe ist der Versuch, die Probleme zu zweit zu lösen, die man alleine nicht hat.“ ;-)
Mit dem neuen Topfoto ist eine universale Applikation entstanden, die alle paar Monate auf´s Neue Verwendung findet und für jeden Anwendungsfall in Kürze eingerichtet ist – inkl. Backend zwecks Freischaltung der Fotos und dergleichen.
Seminar mit Timo Haberkern
Nach der Fertigstellung gab´s noch – exklusiv für meine Kollegen und mich – ein Symfony-Seminar mit Symfony-Guru Timo Haberkern, dem Autor des ersten und bisher einzigen deutschsprachigen Symfony-Buches Das Symfony Framework: Enterprise Anwendungen mit PHP.
In den intensiven Tagen des Seminars konnte ich dort, wo die Autodidaktik versagt hatte, noch so manches dazulernen. Auch, dass selbst ein begeisterter Symfony-Fan wie Timo Haberkern nicht alles gemäß dem Lehrbuch mit Symfony löst, sondern zu purem PHP greift, weil Symfony-Versprechungen und Praxis doch manchmal zwei Welten sind. Es ist halt nicht alles Gold, was glänzt.
Symfony-Alternativen
Symfony ist nicht das einzige PHP-Framework mit MVC-Prinzip. Bei ausreichend Zeit und Gelegenheit, werden vielleicht CakePHP oder CodeIgniter ausprobiert …