In PHP bin ich schon sehr lange unterwegs, habe Webanwendungen entwickelt, mich mit System Befehlen und deren Verarbeitung auseinander gesetzt und war eigentlich mit PHP zufrieden.
Man darf sich bei PHP natürlich nicht an einigen Kleinigkeiten stören, wie z.B. die unregelmäßige Parametervergabe von div. Funktionen (gerade bei Suchfunktionen wechselt gerne mal die Needle und der Haystack) oder unbedingt auf die Objektorientierung setzen.
Dennoch kann man mit PHP viel erreichen. Doch eines Tages kommt der Moment in dem man sich überlegt: Geht das nicht auch alles einfacher? Gibt es nicht eine universelle Entwicklungssprache mit der ich den Fokus nicht mehr auf geschweifte Klammern setzen muss, sondern mir primär Gedanken mache wie ich ein Problem mit einer Software lösen kann?
Doch die gibt es. Und in Python habe ich sie gefunden. Zugegeben ich war schon länger auf der Suche nach einer weiteren Entwicklungssprache die neben PHP ihr Dasein hat. Früher habe ich mit Java gearbeitet, teilweise auch mit C/C++. Beide Sprachen sind nicht das was ich gesucht habe, da passt Python besser.
Sehr gefallen hat mir von Anfang an, das “pythonic thinking”, das sich nicht im Gegensatz zu PHP mit aufgeblasenen Applikations beschäftigt, sondern alles leicht und smooth umzusetzen versucht.
Wer einmal die Vorzüge einer Entwicklungssprache schätzen gelernt hat, in der es nicht darum geht den 100. “Syntax Error” Fehler im Code zu suchen, der wir mit Python einen guten Fang machen.
Ich befinde mich relativ am Anfang mit Python, erste Scripte mit MySQL Anbindung über SQLAlchemy laufen bereits, Templatesystem mittels Jinja funktioniert ebenfalls und REST bediene ich mit requests. Da allerdings die deutschen HowTos von Python dünn besiedelt sind, habe ich mir vorgenommen hier auf dem Blog einiges darüber zu schreiben, um Neueinsteigern den Einstieg zu erleichtern.
Was ich euch allerdings nicht abnehmen kann, ist das Ablegen der alten Denkweise unter PHP hin zum “pythonic thinking”; das kommt mit der Zeit ganz von selbst und man fragt sich: “Warum habe ich das nicht immer so gemacht?”
Ein Beispiel:
Warum braucht man in PHP die Funktion “isset()”? Wenn man sich sicher ist, dass man die Funktion braucht, sollte man noch einmal darüber nachdenken was eine solche Funktion für den Quelltext bedeutet. Kann man diese Frage beantworten, dann ist es der erste Schritt weg von PHP
PS:
Bevor nun die Hater aufziehen, ich entwickle auch weiterhin gerne in PHP, allein um schon die Sprache nicht zu verlernen. Deswegen darf man aber dennoch die Qualitätsunterschiede klar aufzeigen, oder nicht?