Aktuelle technische Projekte

Nachdem mein Blog auch von meinen Kunden häufiger frequentiert wird, stelle ich auf dieser Seite ein paar Informationen über aktuelle technische Projekte und Aufgaben zusammen, die Linux- oder PHP/Ajax-lastig sind. Auf Projekte, die dem IT-Consulting für IT-Prozess- und Projektmanagement, dem IT-Qualitätsmanagement/ITSM/ISM sowie dem Thema Angebots-Erstellung/-Reviews für öffentliche Auftraggeber zuzurechnen sind, gehe ich in diesem Blog dagegen nicht ein.

Also, womit befasse ich mich technisch z.Z. gerade?

2017: Umstellung von eigenen und Kunden-Servern bei Strato auf Debian 8

Wir betreuen ein paar vServer, die wir z.T. für eigene Zwecke, z.T. im Auftrag von Kunden, bei Strato hosten lassen. Die zugrunde liegenden HW-Plattformen sind in die Jahre gekommen - und ein systematischer Verlust an Performance lässt sich seit Januar feststellen. Zu den Ursachen kann man nur spekulieren; möglicherweise spielt hier der Beginn einer Konsolidierung mit der neuen Muttergesellschaft 1&1 eine Rolle. Egal - wir haben damit begonnen, die laufenden Verträge zu kündigen und auf neue Plattformen umzusteigen.

Aus verschiedenen Gründen ist für uns dabei ein gleichzeitiger Wechsel von Opensuse auf Debian 8 von Interesse. Im Zuge der Umstellung werden wir sicher einige spannende Erkenntnisse sammeln; nicht zuletzt weil mit Debian 8 auch systemd Einzug in die Debian-Welt hielt. Eine Frage, die wie uns u.a. stellen, ist die, ob die Container-Virtualisierung unter OPenVZ/Virtuozzo bei Strato im Vergleich zu einer KVM-Virtualisierung von Debian 8-Servern, wie wir sie im eigenen Netz betreiben, Auswirkungen hat.

Eine ersten Vorgeschmack liefert etwa der folgende Artikel:
ufw auf Strato-vServern mit Debian 8 – fehlende iptables Log-Meldungen im systemd-Journal – rsyslogd


2017: Umstellung eigenes CMS und Website auf Responsiveness

Ist man mit Kunden beschäftigt, fallen notwendige Änderungen an eigenen Systemen immer hinten runter. Im Moment habe ich aber etwas Zeit. Deshalb kümmere ich mich ein wenig um mein eigenes PHP-basiertes CMS. Ein Ziel ist eine Integration der Smarty-Engine. Ein noch wichtigeres Ziel ist aber die Verbesserung der Seiten-Generatoren, so dass responsive Webseiten erzeugt werden können. Im Gegensatz zu direkt und ausschließlich über CSS formatierten Web-Sites liegt die Herausforderung in unserem Fall darin, dass das CMS eine freie Auswahl unter definierten Basistemplates mit vorgegebenen geometrischen Grund-Strukturen der Websites zulässt. Dabei gibt es eine z.T. weitgehende Beliebigkeit in der Größe, Struktur und Position bestimmter Seitenelemente. Ein Ändern der Viewport-Width verändert aber den Textverlauf und direkt wie indirekt die Seitenpositionierung von Elementen. Sowohl die Basistemplates müssen gegenseitige Verschiebungen von Seiten-Elementen korrekt abfangen. Dies erfordert eine Einführung von geometrischen Ankerpunkten in den Seiten, die ihre Position fluid mit dem Seitenlayout verändern, aber eine kontrollierte Positionierung von abhängigen Objekten gegeneinander ermöglichen. Möglichst ohne den Einsatz von Javascript!


2017: Umstellung diverser PHP-Systeme von der ITX- auf die "Smarty 3"-Template-Engine

Da Umstellungen von einigen unserer PHP-Systeme auf PHP 7.X notwendig sind, haben wir im Vorfeld überlegt, auch die bisher genutzte ITX-Template-Engine gegen Smarty 3 oder Twig auszutauschen. Wir haben uns nach einigen Tests für Smarty 3 entschieden - u.a. wegen der deutlich besseren Performance gegenüber Twig und der Möglichkeit, das Caching zu steuern. Hinsichtlich der Template-Vererbung und anderer Elemente sehen wir keine so fundamentalen Unterschiede, als dass man unbedingt Twig einsetzen müsste.

Im Rahmen der Umstellungsarbeiten werden sich aber sicher weitere Erkenntnisse ergeben, die sich auch in diesem Blog niederschlagen werden.


2017: Umstellung der Versionsverwaltung unter Eclipse von SVN auf Git

Wir nutzen für PHP/Javascript-Entwicklungsarbeiten Eclipse. Seit Jahren ärgere ich mich dabei über ein paar Unzulänglichkeiten von SVN, über die ich bei Wechseln zwischen mehreren Standorten immer wieder stolpere. Ich möchte gerne eine lokale Versionsverwaltung, die ich jederzeit und überall auf meinem Laptop verwenden kann. Gleichzeitig besteht der Bedarf nach einem zentralen Repository auf einem Server im Hausnetz. Und für Backup-Zwecke wollen wir ein paar wichtige Entwicklungsbranches in jedem Falle auch auf einem im Internet erreichbaren Server zur Verfügung haben.

Dieser Mix aus lokalen und zentralen Repositories spricht für den Einsatz von Git. Ich war bislang nur zu träge, um den Wechsel vorzunehmen. Das ändert sich im Moment; ein paar nützliche Tipps für Ersteinsteiger und Umsteiger werden dabei ihren Weg sicher auch in diesen Blog finden.


2017: Umstieg von Eclipse Mars auf Eclipse Neon? Das Problem mit JSDT 2.0.

Wegen der Unterstützung von PHP 7.x einerseits unter PDT und Ecmascript 6 bzw. Ecmascript 2015 unter JSDT würden wir gerne nur noch Eclipse Neon 3 einsetzen. Leider hält uns der unzureichende Zustand des in Neuentwicklung befindlichen JSDT für Javascript- und im Besonderen Ajax/Ajaj-Arbeiten davon ab.

Wir verfolgen die Lage für Javascript-Entwicklung unter Elipse Neon aufmerksam und haben auch schon einen Blick auf Ersatz für JSDT geworfen. leider haben wir noch nichts Überzeugendes gefunden. Wir bleiben aber am Ball ...

Für einen Blick auf JSjet siehe:

Webclipse JSjet, Eclipse Neon 2 and the Outline View – what I like and what not – part I
Webclipse JSjet, Eclipse Neon 2 and the Outline View – what I like and what not – part II
Webclipse JSjet, Eclipse Neon 2 and the Outline View – what I like and what not – part III


Informationen zu anderen früheren Projekten findet ihr hier:
Technische Projekte 2015/2016