Blog

Lückenlose Rechnungsnummern

Immer wieder wird an uns die Anforderung gestellt, unbedingt lückenlose Rechnungsnummern erzeugen zu müssen, wenn der Webshop automatisch PDF-Rechnungen erzeugt und die Rechnungen direkt an den Käufer versendet. Nicht selten führen Lücken bei den Rechnungsnummern auch zu Diskussionen im Projekt. Es stellt sich die Frage, ob es sich dabei um einen Bug oder um einen kostenpflichtigen Feature Request handelt.

Tags:

... den ganzen Beitrag lesen


Zwischen Proberaum und Bühne II

Der erste Beitrag zum Thema „configuration management“ hat sich mit der Dynamisierung der Konfiguration einer SilverStripe Installation beschäftigt. Als ich mich jetzt selbst noch näher mit dem Thema befasst habe, ist mir klar geworden, dass auch der Datenbankname dynamisiert werden muss. In der Datei conf/ConfigureFromEnv.php bin ich auf die Möglichkeit gestoßen, dem Datenbanknamen Präfixe oder Suffixe zu geben. Der Name lässt sich mit Bordmitteln nicht vollständig dynamisieren, das ist aber bei unserer Namenskonvention für Datenbanken auch nicht notwendig.
Für einen Präfix oder Suffix, der an den Datenbanknamen angefügt wird, muss man einfach nur folgende Konstanten in der _ss_environment.php definieren:

Tags:

... den ganzen Beitrag lesen


Zwischen Proberaum und Bühne

Veränderungen an einer bestehenden SilverStripe Applikation sollten immer erst getestet werden, bevor man sie auf den Server überträgt. Nichts kostet mehr Kundenvertrauen, als eine Webseite die plötzlich nicht mehr sauber funktioniert. Der Kunde oder Benutzer hat natürlich keine Einblicke hinter die Fassade einer Webseite. Deshalb können kleine Risse in der Fassade das Vertrauen in das ganze Haus erschüttern.
Getestet wird auf einem Staging-Server oder auf dem Localhost des Entwicklerrechners. Das Entwicklungssystem hat aus Gründen der Vorsicht eine eigene Datenbank.

Tags:

... den ganzen Beitrag lesen


SilverStripe updaten

Die SilverStripe Crew hat in den letzten 6 Monaten einen wahren Updatemarathon hingelegt. Neben den vielen Security Releases von Version 2.3.2 auf 2.3.7 gibt es jetzt seit kurzem die Version 2.4rc1. Diese bringt so viele Veränderungen/Verbesserungen, dass man sie genau so gut hätte 3.0 taufen können. SilverStripe übt sich hier in Bescheidenheit ;)

Tags:

... den ganzen Beitrag lesen


Debugging in SilverStripe

Die Suche nach den Fehlern in meinen Programmierergebnissen ist ein wesentlicher Teil meiner Entwicklungsarbeit. Was steht jetzt eigentlich in dieser Variablen? Kommt das Script überhaupt an eine bestimmte Stelle im Code? Die hauseigenen Mittel von PHP, wie etwa var_dump(), helfen in manchen Situationen nur nicht weiter. Bei der Arbeit am JavaScript-lastigen Backend von SilverStripe führt var_dump() unter Umständen dazu, dass überhaupt nichts mehr ausgegeben wird.

Tags:

... den ganzen Beitrag lesen


Was unterscheidet den IE vom Krümelmonster?

Ach ja, die Sesamstraße, das waren noch Zeiten, in denen das Kinderfernsehn durchgehend Klasse hatte. Naja, es gab auch in unserer Kindheit miese Sendungen, ich lasse mir die Verkärung meiner Vergangenheit nur ungern nehmen.
In gewisser Weise ist ein anständiger Browser ein Krümelmonster, denn er nimmt im Normalfall alle „Cookies“ gerne an. Natürlich kann man mit den entsprechenden Tools das Speichern von Cookies verhindern. Jemand der Cookies abschaltet, weis aber in der Regel, was er tut und wird sich wohl nicht wundern, wenn daraufhin die ein oder andere Internetapplikation nicht mehr richtig funktioniert.

Tags:

... den ganzen Beitrag lesen


Dependency Injection

In der Java-Welt schon lange bekannt, halten Entwurfsmuster immer mehr Einzug in die PHP-Welt. Und das ist auch gut so. CMS-Systeme, Webshops und auch die in den letzten Jahren neu hinzugekommenen PHP-Frameworks werden immer komplexer, die damit entwickelten Applikationen immer umfangreicher. Umso wichtiger ist es, dass man Entwurfsmuster (Design Patterns) gezielt einsetzt um die Applikation sinnvoll zu strukturieren.

Tags:

... den ganzen Beitrag lesen


Wieso benutzen wir Macs?

Am Anfang

Bis zum Jahr 2005 war ich selbst ein Windows-Nutzer und ich erinnere mich nur ungern an diese Zeit. Angetrieben duch einen Dozenten an meiner Uni, der seit langer Zeit ein eingefleischter Macuser war, habe ich dann aber zwei Jahre nach verlassen der Uni den Schritt zum Mac gewagt, der mich zu einem glücklicheren Menschen gemacht hat.
Mit dem PC habe ich viele Tage meines Lebens damit verloren, Viren los zu werden, Trjaner zu entfernen, Hardwareprobleme zu lösen, Software wieder und wieder zu installieren, den Rechner zu booten, darauf zu warten, dass er wieder hochfährt, mir überlegt, wie ich den Lüfterlärm bekämpfe, über Datenverluste hinwegkomme, Systemabstürze in wichtigen Momenten verkrafte, den Bluescreen angestarrt habe.... Ich will die Liste nicht fortführen, da ich Gefahr laufe, schlechte Laune zu bekomme. Dazu gibt es keinen Grund, denn ich sitze vor einem Mac :)

Tags:

... den ganzen Beitrag lesen