Tolle Box: Das Schöne ist, dass wir uns den Inhalt unserer Werkzeugkiste selber aussuchen dürfen.

intercorp. Toolbox - unsere "Werkzeugkiste" für eine professionelle Webentwicklung in Oberfranken. Symfony, Bootstrap, JQuery, Angular, Nagios, Git und Co.

Als Internet-Agentur stehen wir stets vor der gleichen Herausforderung: Unsere Lösungen sollten modern, schön, schnell und flexibel sein – und das für möglichst wenig Geld. Das klassische Projektmanagement-Dreieck „in time, in quality, in budget“ gilt auch für uns.

Wir streben nach der besten Balance zwischen Qualität, Kosten und Zeit – und dabei hilft uns, dass wir nicht bei jedem Projekt das Rad neu erfinden müssen. Für die Entwicklung von Webanwendungen setzen wir in verschiedenen Bereichen auf wiederverwendbare Komponenten, die sich im Laufe der Zeit in vielen Projekten bewährt haben. 


z. B. Frameworks wie: Symfony

Umfangreiches PHP-Framework, das in sehr vielen Projekten eine wichtige Kernkomponente darstellt. Viele weit verbreitete OpenSource-Anwendungen nutzen Symfony in unterschiedlichen Ausprägungen, z.B. Typo3, Drupal, Contao, PIMCore, phpBB, Matomo (ehemals Piwik) und OroCRM. Google, Facebook, Yahoo und andere IT-Riesen machen auch Gebrauch von Symfony-Komponenten.

Für Web-Projekte hat Symfony den wesentlichen Vorteil (das gilt natürlich auch für einige andere PHP-Frameworks), dass viele häufig genutzt Funktionen nicht von Grund auf neu entwickelt werden müssen, sondern nur als vorgefertigte Komponenten in ein System zu integrieren sind.

Klassische Beispiele sind:

  • Sicherheits- und Account/User-System
  • URL-Handling/Routing für schöne, sprechende URLs
  • Formular-Funktionen inklusive Validierung von Daten
  • Übersetzungsfunktionen für multilinguale Web-Applikationen
  • Schnelle Integration von Layouts/Templates
  • Werkzeuge für die Verwaltung von Daten auf Dateisystem-Ebene
  • u.a.

z. B. Framwork und CSS mit: Bootstrap

Mit diesem Framework wird das Konzeptionieren und Entwickeln von Layouts für Webanwendungen erleichtert – insbesondere hinsichtlich der Nutzbarkeit der Anwendung auf Geräten mit unterschiedlichen Bildschirmgrößen. Bootstrap offeriert ein produktionstaugliches Konzept für Responsive Design. Es beinhaltet ein praktisches Spalten-System, vorgefertigte Content Elemente (Textboxen, Buttons, Tabellen, usw.) und andere Nützlichkeiten, die praktisch auf jeder modernen Website zu finden sind.

z. B. JavaScript wie: JQuery

Bei diesem Produkt handelt es sich um eine Bibliothek mit Funktionen für typische Anwendungsfälle im Bereich von JavaScript – gerne abgekürzt mit JS. Mit JavaScript lassen sich allerlei nützliche und spaßige Features realisieren, zum Beispiel Animationen, Validierung von Formularen oder Reaktionen auf User-Eingaben. JQuery vereinfacht die Nutzung von JavaScript-Funktionen und kann Zeit sparen.

z. B. JavaScript wie: Angular

Ursprünglich im Jahr 2012 von Google erstmals veröffentlicht, hat sich Angular zu einem sehr populären Web-Application-Framework entwickelt. Für Nutzer von Webapplikationen ergibt sich ein wesentlicher Vorteil:

Klassische Website-Entwicklungen sind stark von der Interaktion mit dem Webserver abhängig. Wenn man zum Beispiel auf einer Webseite in einem Formular Eingaben tätigt, muss das Formular abgeschickt und vom Server verarbeitet werden. Um Ergebnisse anzeigen zu können, muss die Webseite neu geladen werden – das erzeugt eine oft nervige und nicht intuitive Verzögerung.

Das Angular Framework bietet Möglichkeiten, Interaktionen mit webbasierten Anwendungen zu größeren Teilen clientbasiert auszuführen – also ohne sichtbares Nachladen der Seite.

Es gibt auch viele andere Frameworks, die ähnliche Vorteile und Funktionen bieten. intercorp. hat sich Angular primär aufgrund der Funktionsvielfalt, der Ausgereiftheit und breiten Geräteunterstützung ausgesucht.

z. B. Monitoring & Testing mit: Nagios

Mit dieser Software überwachen wir wesentliche Teile unserer Infrastruktur und teilweise auch die unserer Kunden. Nagios ermöglicht eine sehr genaue Konfiguration von Verfügbarkeits- und Funktionschecks von IT-Komponenten, wie z.B. Mail- oder Webserver und der darauf laufenden Hard- und Software. Daher sind wir in der Lage, sehr schnell und vor allem zielgerichtet zu reagieren, wenn kritische Teile, insbesondere von umsatzkritischen Systemen Probleme verursachen.

  • Wenn Mails nicht verschickt werden können, kriegen wir das mit.
  • Wenn Festplatten kaputt gehen, kriegen wir das auch mit.
  • Wenn bei einer Komponente kein Internetzugriff mehr existiert, kriegen wir das auch mit.

z. B. Monitoring & Testing via: Phantom JS & Selenium

Während Nagios zur Überwachung von Infrastruktur und Anwendungen dient, gibt es weitere, spezialisierte Werkzeuge, die der Überwachung von Prozessen dient – beispielsweise der Warenkorb-Strecke in einem Online-Shop.

Denn: Auch wenn der Server eines Online-Shops erreichbar, die Website einwandfrei zu navigieren und der Warenkorb befüllbar ist, heißt das noch nicht, dass ein Kauf der Produkte möglich ist. Wenn zum Beispiel die Anbindung an einen Bezahldienstleister nicht funktioniert, kann kein Abschluss zustande kommen.

Damit solche Probleme möglichst schnell erkannt werden, lässt sich mittels Phantom JS oder Selenium ein „Roboter“ konfigurieren, der automatisiert alle umsatzkritischen Szenarien durchspielt – zum Beispiel der Kauf von Produkten simuliert. Scheitert der Roboter, kann er genau mitteilen, an welcher Stelle und damit meistens auch, aus welchem Grund. Eine automatische Benachrichtigung sorgt dann dafür, dass wir vom Problem in Kenntnis gesetzt werden und es kann schnellstmöglich behoben werden.

z. B. Entwicklungs­umgebung wie: PHPStorm / WebStorm

PHPStorm ist eine Entwicklungsumgebung (IDE), die durch zahlreiche unterstützende Features dafür sorgt, dass wir schneller programmieren, weniger Fehler machen, produktionsreifen Code leichter veröffentlichen und in großen Projekten leichter den Überblick behalten können. PHPStorm gehört zur Grundausstattung jedes Entwicklers in unserem Hause und hat sich über die Jahre als für unsere Zwecke beste IDE herauskristallisiert.

z. B. Versionskontrolle und Deployment mittels: Git

Weniger IT-affine Kunden schauen uns gelegentlich irritiert an, wenn wir erzählen, dass wir mit „Git” arbeiten. Im Englischen bedeutet „git“ nämlich so viel wie „Depp“.

Git ist eine Versionsverwaltung, die dabei hilft, Änderungen in Programmcode zu dokumentieren. Wenn ein Entwickler von uns eine Anwendung um eine neue Funktion erweitert, bedeutet das, dass Code hinzukommt und/oder alter Code modifiziert wird. Manchmal werden ungewollt Fehler eingebaut, die man dank Versionsverwaltung rückgängig machen kann. Außerdem ist Git hilfreich, wenn es darum geht, die Qualität von Programmcode zu prüfen. Denn Git verwaltet alle Programmierergebnisse zentral und übersichtlich. Nicht zuletzt erkennt Git, wenn zwei Entwickler die gleiche Stelle im Programmcode bearbeiten und sorgt dafür, dass beide Arbeiten berücksichtigt werden können oder es eine Vergleichsmöglichkeit gibt, um die bessere Lösung zu wählen.

Ist auch intercorp. Grund­ausstattung:

Weitere Komponenten der intercorp. Toolbox

Weitere Frameworks und Technologien wie PHP, SQL, Composer, Laravel, u.a.

Umfassende Dokumentation von Code und Funktionen z.B. via PHPDoc

Agile Development mit stabilem Versionierungssystem

Test Driven Development

Peer-Reviews

Datenbanken basierend auf MySQL/MariaDB

All-Inclusive-Lösungen wie PimCore (PIM, DAM, CRM, CMS in einem Paket)

Betriebssysteme und Server-Software für Web- und Mailhosting auf Linux-Basis, z.B. Ubuntu, Debian, Apache, Postfix, Dovecot, ...

Virtualisierung/Cloud Computing via XEN

Alles in allem. Alles für Sie.

Warum wir das alles so fein säuberlich auf- und ausführen? Weil wir hoffen, dass dieser Text nicht nur von IT-Verantwortlichen, sondern auch von potentiellen Bewerbern gelesen wird. Und man so sofort Bescheid weiß, woran man bei intercorp. ist. Überzeugt? Interessiert?

Thomas Keller