Weiter zum Inhalt

Portfolio

Nun, nachdem ich schon einiges über mich erzählt habe, hier mal die geballte Ladung an Buzz-Words.

Eigentlich begann bei mir alles, als ich von meinen Eltern einen C64 bekommen habe. Da war ich gerade mal in der 4. Klasse und habe mir schon die Nächte mit dem Basic V2 um die Ohren geschlagen.

Ein paar Jahre später, genauer gesagt in der 9. Klasse, durfte ich endlich Informatik als Schulfach wählen. Hier lernte ich Turbo Pascal kennen und schrieb verschiedene, teilweise auch grafische Anwendungen.

Genug mit der Historie. Kommen wir zu den aktuelleren Dingen…

2002 begann ich die Ausbildung zum Fachinformatiker Fachrichtung Anwendungsentwicklung und lernte hier Visual C++, Visual Basic samt COM im ersten Lehrjahr kennen. Danach folgten dann PHP, JavaScript und SQL, wo neben MySQL auch Oracle und MS SQL Server kurz ausprobiert wurden. Mit diesem Wissen gewappnet habe ich einige kleine Privatprojekte realisiert. Im letzten Lehrjahr kam dann die Sprache Java hinzu. Mit dieser Sprache habe ich dann auch bei Siemens COM, während meiner Praxiseinsätze, gearbeitet und danach konnte ich die Java-Kenntnisse als Consultant für Siemens in einem Projekt für T-Mobile festigen.

Nach diesen Java-Erfahrungen habe ich begonnen intensiv mit PHP zu arbeiten. Genau wie bei Java, fühlte und fühle ich mich im Bereich der Middle-Ware und Backend-/Schnittstellen-Entwicklung am wohlsten. Ich habe mich dabei immer mit dem Thema Sicherheit und Standards auseinander gesetzt. Gerade zu heutiger Zeit, meiner Meinung nach, die wichstigsten Grundlagen für erfolgreiche und zukunftsorientierte Webauftritte. Aber auch das bewußte und gezielte Einsetzen der objektorientierten Programmierung, die seit PHP 5 möglich ist, bringt Flexibilität und wartbaren Code.
Im PHP Umfeld habe ich bereits mit folgenden Produkten gearbeitet: Zend Studio, Zend Platform, Zend Framework, CakePHP, Smarty, OXID eShop, PHPUnit, Contenido, Joomla, Drupal, WordPress, phpDocumentor.

Was meinte ich nun aber mit Standards? Nun, ohne XML und SOAP wäre das Web von heute wohl kaum mehr vorstellbar. Aber auch valides XHTML und CSS sind Garanten für plattform- und browserübergreifende Webauftritte.

Zusätzlich zu diesen Techniken und Programmiersprachen habe ich auch schon Kontakt mit den Sprachen Perl, Python und der Shellprogrammierung (Bash und Korn) gehabt.

Apropos Shellprogrammierung. Damit komme ich direkt zu einem weiteren meiner Steckenpferde – Linux. Seit einigen Jahren arbeite ich mit Linux nicht nur auf Servern sondern auch als Desktop-Betriebssystem. Dabei habe ich bis jetzt schon Berührung mit den Distributionen SUSE, Red Hat / Fedora, CentOS, Gentoo, Debian und Ubuntu gehabt. Momentan stellt Debian für mich die beste Distribution für Server und Ubuntu die produktivste Umgebung für Desktops dar. Aber damit möchte ich keinerlei Glaubenskriege enfachen…

Mit Linux-Servern kommen dann auch schon Dienste daher, die ich schon in den Fingern hatte. Dazu gehören der Apache Webserver, der OpenSSH Server, das MySQL RDBMS, der OpenLDAP Verzeichnisserver. Aber auch die Mailserver-Komponenten Cyrus, Courier und Postfix habe ich schon in den Fingern gehabt. Und natürlich kam ich auch nicht am DNS vorbei – ich überlasse es zwar privat gern anderen Dienstleistern, aber BIND wurde von mir auch geknechtet. Natürlich soll hier auch die Code-Versionierung Subversion nicht unerwähnt bleiben. Dieses Tool setze ich meist in der Form auf, dass ich das entsprechende Apache Modul nutze, um möglichst einfach den Zugriff via HTTP/HTTPS zu ermöglichen.

Auch wenn ich als Programmierer am Liebsten alles selbst implementieren möchte, ist das Nutzen von Programmen und Skripts unerlässlich. Was wäre ein Programmierer ohne Hilfsmittel. Und hier ist eine Liste von Programmen, Skripten und Tools, die mir das Leben erleichtern oder schon mal erleichtert haben:

  • Eclipse
    Mittlerweile wohl Die Plattform für die Entwicklung
  • Netbeans
    Ursprünglich, wie Eclipse, als Java IDE von Sun entwickelt, hat sich Netbeans mit Version 6.5 als interessante Alternative zu Eclipse positioniert. Gerade die Erweiterungen für die PHP Entwicklung und die verschiedenen Java-Frameworks, die direkt integriert sind, machen die IDE interessant. Wo sonst kann man auf Basis der Webframeworks Woodstock und JSF per Drag’n’Drop Webseiten, auf Wunsch mit AJAX Funktionalitäten, erstellen und gleich im mitgelieferten und vorkonfigurierten Application Server GlassFish testen und debuggen – natürlich ohne die IDE zu verlassen und out-of-the-box ?!
  • Jira Bug und Issue Tracker
    Das schweizer Taschenmesser unter den Bugtracking, Issue Tracking und Projektmanagement Systemen. Ich darf bei der Betreuung der Infrastruktur für Contenido damit arbeiten. Das System baut auf Java und Tomcat auf.
  • Eventum
    Für kleinere Aufgaben im Bereich Bugtracking habe ich auch schon mit PHP-basierten Eventum von MySQL gearbeitet
  • Mantis
    Alternativ zu Eventum gibt es auch das Bugtracking System Mantis. Ebenfalls PHP basiert war es der alte Bugtracker für Contenido und ich habe es bei chop solutions für interne Zwecke installiert und gewartet.
  • Flyspray
    Und da bekanntlich alle guten Dinge 3 sind, hier noch ein dritter Kandidat. Auch in PHP geschrieben, ist Flyspray eine sich langsam entwickelnde Lösung für kleinere bis mittlere Projekte. Für die aktuelle 0.9.9.x Versionen von Flyspray habe ich eine kleine Erweiterung entwickelt, die eine Authentifikation via LDAP ermöglicht.
  • OpenVPN
    Was bei Webseiten und Mailprotokollen schon lange Zeit für Sicherheit sorgt scheint ausgereift. Was liegt also näher, alS diese Technik auch für die sichere Vernetzung von räumlich entfernten Systemen zu nutzen? OpenVPN tut genau das – SSL basierte VPN Tunnel.
  • Apache Directory Studio
    Wer schon einmal mit LDAP gearbeitet hat weiß, das es schönere Dinge im Leben eines Administrators gibt, als Änderungen im LDAP Verzeichnis direkt als LDIF einzuspielen. Wer eine sehr nette GUI dafür haben will, die auch noch plattform-unabhängig ist, sollte sich mal das Directory Studio der Apache Foundation anschauen.
  • Roundcube Webmail
    Das PHP basierte Webfrontend für Mails ist zwar noch recht jung, aber sticht vor allem durch einfache Benutzbarkeit und eine recht flüssige, anpassbare Oberfläche hervor.
  • Horde Groupware
    Das Schwergewicht unter den PHP-basierten Webmailern. Das System ist in das RE:plex System integriert. Und genau dadurch habe ich es kennengelernt.
  • OpenOffice.org
    Das freie Office System, was auf Basis von StarOffice entwickelt wird, bietet so ziemlich alles, was das private oder auch geschäftliche Anwenderherz begehrt.
  • MediaWiki
    Das wohl bekannteste Wiki – wohl nicht zuletzt, weil es die Basis für Wikipedia bildet. Das System setze ich gern im privaten und geschäftlichen Projekten ein. Es eignet sich hervoragend für das Aufbauen von Know How Datenbanken und Dokumentationen
  • TikiWiki
    Wer ein wenig mehr braucht – wie zum Beispiel LDAP-basierte Authentifikation und geschütze Seiten – sollte einmal einen Blick auf TikiWiki werfen. Das System habe ich ebenfalls bei der Neukoordinierung der Contenido Infrastruktur kennengelernt und aufgesetzt.
  • MySQL Workbench
    Urpsrünglich als DB Designer bekannt geworden, wird das Datenbank Design-Tool nun in Suns Obhut weiterentwickelt. Dadurch, das ich viel mit MySQL arbeite, setze ich das Tool recht gern ein. Besonders, wenn es um größere Datenmodelle geht.
  • gnuPG
    PGP hat eine lange, bewegte Geschichte hinter sich. Aber trotz der Unebenheiten auf dem Erfolgsweg, hat sich das Prinzip durchgesetzt und auch eine gnu Implementierung. Und obwohl ich nichts zu verbergen habe, mag ich es schon, wenn meine Mails auch wirklich von mir kommen und nicht der gesamten Welt zum Lesen zur Verfügung stehen. Aber auch Dateien mit Prototypen für Projekte – sei es privat oder beruflich – müssen nicht zwingend für alle lesbar sein. Und dank gnuPG und Mail-Client Erweiterungen wie Enigmail ist das mittlerweile sogar recht DAU-sicher realisierbar, ohne tief in die Tasche zu greifen.
  • Virtualbox
    Heutige Computer-Systeme brechen beinahe im Wochen-Takt neue Leistungsrekorde. Normale Desktop-Systeme, selbst aus dem Discounter, bieten genug Power, die während der normalen Arbeit einfach brach liegen. Was liegt hier nicht näher als Systeme, die man nur sehr selten benötigt, einfach in einer virtuellen Umgebung laufen zu lassen? Das spart Platz und Systemneustarts. Sowohl als Open Source Version als auch, kostenfrei für den privaten Gebrauch, in der „Binary Version“ mit verbesserter USB Funktionalität, bietet Virtualbox – mittlerweile auch bei Sun beheimatet – eine gute Plattform für Systeme, die man für private Programmierprojekte oder als Testumgebung für Downloads nutzen kann.

Zu diesen Massen an Tools und Sprachen behersche ich außerdem UML, ER Modelle und kenne & nutze die Vorteile der OOP und OOA.

So, das ist der Großteil der Dinge und Tools, die ich kenne und größtenteils auch regelmäßig bis häufig einsetze. Natürlich werde ich, ganz im Sinne der Selbstdarstellung, regelmäßig die neuen und alten Dinge ergänzen, die mir im Laufe des zukünftigen Arbeits- und Privatleben über den Weg laufen. Aber dann gibt es bestimmt auch Artikel zum Thema, hier auf holger-steinhauer.de.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close