Mitarbeiterprofil Frohwalt Egerer

Stand 1. Dez 2006

Übersicht

Name: Frohwalt Egerer
Jahrgang: 1969
EDV Erfahrung seit: 1979
Nationalität: deutsch
Verfügbar: Januar 2007
Wohnort: 80xxx München
Bevorzugter Einsatzort: D8 München bevorzugt
Ausbildung: Studium der Informatik an der Friedrich-Alexander-Universität Erlangen - Nürnberg
Fachlicher Schwerpunkt: Softwareentwicklung C#/.NET, C++, Java, Netzprotokolle, Systemnahe Programmierung, Performanceoptimierung, Unix, Win32
Position:
  • Software-Entwicklung / Programmierung
  • Administration / Support
  • Qualitätssicherung / Test

Knowhow

Fremdsprachen

  • Englisch: Flüssig in Wort und Schrift

Hardware

  • HP
  • PC
  • Proprietäre HW
  • SUN
  • Meldetechnik (Brand/Einbruch/Zutrittskontrolle)

Betriebssysteme

  • Apollo Domain OS
  • HPUX
  • IRIX
  • MS-DOS
  • SUN OS, Solaris
  • Unix
  • Windows
  • Linux

Computersprachen

  • ASN.1
  • C
  • C++
  • Emacs
  • Forth
  • Imake, GNU-Make, Make-Maker etc...
  • Java, JavaScript: (Java)
  • Lisp
  • Makrosprachen
  • Pascal
  • Python
  • Rexx
  • Scriptsprachen
  • Shell
  • Tcl/Tk
  • yacc/lex
  • XSLT

Datenbanken

  • DB2
  • JDBC
  • MS SQL Server
  • ODBC
  • Postgres
  • Proprietäre DB
  • SQL
  • xBase
  • Berkely DB
  • Unix gdbm

Datenkommunikation

  • CORBA
  • Ethernet
  • Internet, Intranet (+Internetprotokolle ftp,http,news,smtp,pop,snmp,identd,...)
  • ISDN
  • LAN, LAN Manager
  • Proprietäre Protokolle
  • Router
  • RS232
  • SMTP
  • SNMP
  • TCP/IP
  • UUCP
  • Windows Netzwerk
  • Java RMI
  • .NET Remoting
  • Windows COM/DCOM
  • Eigenentwicklung von Netzprotokollen

Erfahrungen in den Bereichen

  • Analyse, Design, Spezifikation
  • Fehlertolerante, verteilte Systeme
  • Client- / Serverprogrammierung
  • Anwendungsentwicklung
  • Performance- u. Speicheroptimierung
  • Unit-, System- und Integrationstests

Methoden

  • Objektorientierte Analyse und Design, UML
  • Multithreading und Interprozesskommunikation

Versionsverwaltungsysteme

  • Subversion
  • MS Source Safe
  • Perforce
  • PVCS
  • CVS
  • CMVC
  • SCCS

Branchen

  • Sicherheitstechnik (Einbruch/Brand/Video/Zutrittskontrolle)
  • Telekommunikation
  • Anlagenbau
  • allg. EDV

Projekte

Projekte 2000 - 2006

Basisplattform Sicherheitstechnik.

2000 - 2006

Für einen großen Anbieter im Bereich Sicherheitstechnik war ich maßgeblich an der Entwicklung eines Alarmmanagementsystems beteiligt. Meine Tätigkeiten im Einzelnen führe ich nach einer groben übersicht über das Gesamtsystem auf.

Das rechnerbasierte System verarbeitet Ereignismeldungen der angeschalteten Hardware, wie z.B. Brand- oder Einbruchmeldeanlage, Zutrittskontrolle oder Videosysteme. Für solche Ereignisse kann der Kunde Regeln konfigurieren, so kann beispielsweise eine Feuermeldung zu einem Bedienplatz gegeben werden oder automatisch ein Notruf abgesetzt werden - abhängig davon, ob der Bedienplatz momentan besetzt ist. Derlei Regeln sind durch die Kunden frei konfigurierbar und können komplexe Randbedingungen mit berücksichtigen.

In solchen Regeln lassen sich Verknüpfungen zwischen den angeschlossenen Geräten realisieren. Das System kann Zeitprogramme starten oder ein Ereignis an einen Bediener melden und dann die zeitnahe Berabeitung des Ereignisses durch den Bediener überwachen.

Die Bedienplätze lassen sich flexibel einrichten, man kann viele Abstufungen der Ansicht und der Aktionsmöglichkeiten konfigurieren. Einem berechtigtem Bediener werden diverse Ansichten des Systems geboten: Beispielsweise eine übersicht über die Anzahl verschiedener Ereignisse, eine gerätenahe Detailansicht der angeschalteten Meldesysteme oder eine ortsabhängige Ansicht. Es lassen sich Lagepläne abrufen in denen detailliert die aktuelle Meldesituation ersichtlich ist. Dem Bediener stehen diverse Werkzeuge zur Bearbeitung von Alarmen zur Verfügung, wie Einsicht in wichtige Dokumente, nachvollziehbar durchzuführende Ablaufpläne oder das Weiterleiten an höher berechtigte Bedienplätze (z.B. Leitstellen).

Dem Anbieter dient die Software dazu zusammen mit der zahlreich angebotenen Hardware im Bereich Sicherheitstechnik den Endkunden eine Gesamtlösung auch für große Anlagen anbieten zu können. Eingesetzt wird sie z.B. von Einkaufszentren Kraftwerken, JVAs, der Industrie oder von Flughäfen.

Realisierung von kundenspezifischen Sonderlösungen

Mitte 2006 - jetzt

Seit Mitte 2006 entwickle ich für Kunden spezifische Sonderlösungen. Dies reicht vom Analysieren der Requirements über das Design und die Implementation bis zum Test und zur Auslieferung dieser Spezialversionen der Software.

Arbeiten

  • Versionsverwaltung, Branchingkonzept und Erstellung von Releases auf Basis der Version 2 der Software für die Applikationsgruppe
  • Erweiterung des Managementsystems für Zutrittskontrollrechte um Regionsberechtigungen für Administratoren
  • Sonderversion der Software mit reduziertem Leistungsumfang für das Bundling mit einer spezifschen Hardware
  • Kundenspezifische Anpassungen an der Clientoberfläche
  • Design und Implementation eines ausfallsicheren License-Servers im Netz für Systeme an denen kein Dongle angeschlossen werden darf
  • Erweiterung der Authentifizierungskomponente in der Kommunikationsbibliothek um sicheres Single-Sign-On auf Basis der Windows-Authentication und Active Directory

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C#
  • C++

Datenkommunikation

  • eigene Kommunikationsbibliothek über TCP/IP
  • Active Directory, LDAP, Kerberos
  • TCP/IP

Datenzugriffsschicht

2005 - Mitte 2006

Für die neu entwickelte 2. Generation des Konfigurationsprogramms für Kunden wurde eine abstrakte Datenzugriffsschicht entwickelt.

Die neue Schicht stellt die Daten rein "aus Sicht der Anwendung" dar und kapselt die Art der Datenhaltung (XML DOM). Komplexe Zusammenhänge in der Konfigurationsdatei werden vereinfacht nach oben dargestellt. (z.B. wenn die Anwendung einen neuen Computer in den Verbund aufnimmt muß sie in der Konfiguration die "Buchführungsoperationen" nun nicht mehr selbst durchführen)

Diese Schicht wurde weitgehend auf Performance optimiert um auch mit großen Datenmengen gut zurecht zukommen. In diesem Zusammenhang wurde auch darunterliegender C++ Legacy-Code optimiert.

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C#
  • XML/XSL
  • C++

Tools: Backup, Password Changer, Database Install

2005
Erstellung diverser kleiner Tools im Umfeld der Software:
  • Aus Teil "Backup" der Managementsoftware (MFC-GUI) wurde ein eigenständiges Kommandozeilenbasiertes Backup-Tool entwickelt. Hier lag der Schwerpunkt beim Refactoring (Nachträgliche Trennung von Benutzeroberfläche und Logik). Soweit möglich verwenden Managementsoftware und Kommandozeilentool jetzt eine gemeinsame Bibliothek. (C++)
  • Damit Endkunden viel manuellen Aufwand bei Paßwortänderungen des installiernen "Service" Benutzers sparen, wurde ein Tool zum ändern der gespeicherten Passworte für COM-Server und Win32-Services entwickelt. (C#, P/Invoke)
  • Das Installationstool für Datenbanken wurde so erweitert, daß es mehrere Datenbanken unterstützt und der SQL-Anteil für Datenbankentwickler sehr leicht wartbar ist. (C#)

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C#
  • C++

Erweiterter Konfigurationsupgrade

2005

Entwicklung einer erweiterten Komponente zur Aktualisierung von Konfigurationsdaten

Beim Upgrade der Konfiguration sollten Daten aus XML-fernen Quellen (im konkreten Falle AutoCAD-Pläne) eingebunden werden können. Hierzu wurden die beiden alten Implementierungen zum reinen XSL-Upgrade der Konfiguration durch eine neue Upgradekomponente ersetzt. Einfache Upgrades werden weiterhin in XSL formuliert. Upgrades die in XSL schwierig oder nicht zu realisieren sind als C# Klasse. Das neue Upgradesystem besitzt darüber hinaus einen Verifikator, der Konfigurationen auf Fehler untersucht, die durch manuelle Manipulation der Konfigurationsdatei oder durch Bugs in Vorgängerversionen der Software entstanden.

Diese Managed-Komponente wird in alten unmanaged (native) Code per COM eingebunden.

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C#
  • XML/XSL

Analysearbeit LDAP + Single Sign On

2005

Erstellung eines Papiers zur Analyse einer Produktübergreifenden Single-Sign-On Lösung (mit Verwaltung von Bedienerdaten über LDAP)

Auf den Wunsch in der Software ein einfaches Single-Sign-On mit LDAP zu realisieren zeigt dieses Papier die Schwächen einer naiven Lösung auf (Erläuterung der Angriffsmöglichkeiten auf Netzwerkebene) und schlägt diverse sichere Lösungen mit verschiedenen Vor- und Nachteilen vor.

Knowhow

LDAP

  • rfc2251
  • rfc2829
  • OpenLDAP
  • ADAM
  • Sun LDAP Server (Sun Java Directory Server)
  • andere

Datenkommunikation

  • TCP/IP (Paketanalyse)

Analysearbeit Configuration Management

2004
Erstellung eines Papiers zur Evaluierung von diversen Versionskontrollsystemen (das alte wurde abgelöst). Dieses Papier vergleicht diverse in Frage kommende Systeme zur Sourcecodeverwaltung.

Knowhow

Source Control

  • Perforce
  • PVCS
  • SourceSafe
  • Vault
  • ClearCase
  • CVS
  • RCS
  • Subversion (SVN)
  • viele andere

Konfigurationsdatenmanager

2004

Um neue Features in den Leistungsumfag der Software aufnehmen zu können wurde die Komponente zur Verwaltung von Konfigurationsdaten zur Laufzeit erweitert und optimiert.

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C++

Plege und Erweiterung der TCP/IP-Kommunikationsbibliothek

2003-2006

Die projekteigene Kommunikationsbibliothek ermöglicht das Message-Passing zwischen unseren Server- und Clientkomponenten. Je nach Bedarf können die Messages über ungesicherte oder verschlüsselte Verbindungen ausgetauscht werden. Weiterhin realisert diese Bibliothek Queues mit festlegbaren Größen für die Messageverarbeitung und das Marshaling/Unmarshaling für die Messages (C++-Klassen) selbst.

Arbeiten

  • Übernahme der existierenden Bibliothek in 2003
  • Bei Bedarf Cleanups, Optimierungen und Bugfixes neben meinen anderen Projekten
  • Dokumentation der verwendeten Netzverbindungen und Pakettypen für Firewallkonfiguration bei Kunden

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C++

Datenkommunikation

  • eigene Kommunikationsbibliothek über TCP/IP
  • TCP/IP

Managementsoftware für Zutrittskontrollsysteme

2003

Planung und Enwicklung der Serverseite eines Managementsystems für Zutrittskontrollsysteme. Mit diesem System werden Chipkarten- bzw PIN-Inhaber verwaltet und diesen der Durchtritt durch diverse Türen mit Lesegeräten oder Zahlenschlössern gestattet oder verboten.

Das System vefügt über Schnittstellen zu einer Zugriffsschicht für die Hardware (nativ, C++) und zu einer ASP.NET Oberfläche (Remoting). In der Serverkomponente selbst erfolgt die Verwaltung von Chipkarteninhabern, von Berechtigungsstufen und Zeitplänen sowie der kompletten Businesslogik. Die Daten werden in einer SQL-Datenbank gespeichert. Deren Struktur wurde nach Fertigstellung für die Endkunden dokumentiert, damit diese eigene Reports enwickeln können.

Je nach Projektphase war ich teilweise zusätzlich noch für die Erweiterung und Pflege des ASP.NET Clients zuständig. Auch die Definition der Schnittstellen nach oben und unten war Teil meiner Aufgaben.

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C#
  • XML/XSL
  • C++

Datenbanken

  • MS-SQL Server

Datenkommunikation

  • eigene Kommunikationsbibliothek über TCP/IP
  • TCP/IP
  • .NET Remoting
  • ASP.NET

Upgrade der XML-basierten Kundenkonfigurationen

2002 - 2006

Konzept + Implementation eines Subsystems zum Versionsupgrade von Kundenkonfigurationen. Einweisung anderer Mitarbeiter in XSL damit sie selbständig Konverter für Konfigurationen erstellen können. (Kundenkonfigurationen enthalten z.B. Steuerkommandos für Hardwarekomponenten, die mit den Upgrades der Basissoftware auch automatisch aktualisiert wurden.)

Dieses Paket wurde zeitgleich zu meinen anderen Tätigkeiten von 2000-2006 jeweils bei Bedarf erledigt.

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • XML/XSL
  • XSL

Subsystem zur schnellen Verarbeitung von Events

2000 - 2002
Selbständige Planung und Entwicklung einer Serverkomponente zur schnellen Verarbeitung von Events. Die Komponente enthält diverse Teile:
  • einen Patternmatcher für Ereignisse und angebundenen Interpreter für benutzerdefinierte Regeln
  • die Verwaltung von Gerätelisten und der ortsgebundenen Hierarchie
  • einen Pool mit den für jedes Gerät zuletzt aufgetretenen Ereignissen
  • einen Benachrichtigungsmechanismus für änderungen im Poolinhalt
  • Schnittstellen zur Hardwareverwaltungsschicht, Richtung Clients und zu Diagnosetools
Die Datenhaltung erfolgt in speziell für die Problemstellung optimierten Datenstrukturen, die in diesem Falle Zeit- und Speicherplatzsparender arbeiten als generische Implementierungen. Ein besonderes Highlight ist hier die Prozessorzeit sparende Implementation des Subsystems.

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C++
  • XML/XSL
  • XSL

Firewall

2000

Entwicklung eines IP-Paketfilters für Windows 2000 (Workstation) bestehend aus einem Kerneltreiber, Windows Service und Installationstool.

Der Paketfilter erlaubt nur die für den Betrieb des Alarmmanagementsystems unabdingbaren Verbindungen und realisiert eine strikte "by default forbidden" Strategie. Im Gegensatz zu allen anderen damals verfügbaren Lösungen werden Netzverbindungen während des Systemstart und -shutdown unterbunden, nicht erlaubt.

Der Paketfiter besteht aus einem Kerneltreiber (Paketfilter), einem Userspace-Anteil (Windows-Service) zur Festlegung der Filterregeln und einem Installations- und Deinstallationstool. Der Kernelfilter wird beim Systemstart geladen und unterbindet jegliche TCP/IP-Kommunikation bis der Userspace-Anteil eine Liste der erlaubten Pakettypen erstellt und per ioctl an den Kerneltreiber überträgt.

Arbeiten

  • Design und Implementation aller drei Komponenten: Kerneltreiber, Service und Installer
  • Analyse der verwendeten Netzprotokolle und Definition der Filterlisten

Knowhow

Betriebssysteme

  • Windows 2000
  • Windows XP

Computersprachen

  • C
  • C++

Datenkommunikation

  • eigene Kommunikationsbibliothek über TCP/IP
  • TCP/IP (Paketanalyse)

Projekte 1995 - 2000

Verwaltungssystem für Telefonbucheinträge

1998-1999

Bei dem Kunden wurde ein seit vielen Jahren auf IBM Großrechner laufendes Altsystem abgelöst, da es den aktuellen Anforderungen des liberalisierten Telefonmarkts nicht mehr gewachsen ist. Das neue System dient der Annahme, automatischen Prüfung und Buchung von Telefonbuchdaten privater Telefongesellschaften. Es besteht aus:

  • Serverkomponenten, Import/Export von Datenlieferungen, Automatische Fehlerprüfung und korrektur einfacher Fehler, Verwaltung von maximaler Bearbeitungsdauer sowie Einbuchung der Daten in einen zentralen Bestand

  • Graphische Benutzeroberfläche zur Nachbearbeitung fehlerhafter Datensätze durch das Personal des Kunden

  • Administrationsoberfläche zur Verwaltung der vorher genannten Komponenten

Arbeiten

  • Prototyp des GUI-Clients

  • Zentrale Bibliotheken zur Datenhaltung, object/relational Mapping

  • Einführung von sauberen Konzepten in ad-hoc APIs

  • Allgemeine Schicht zur Datenhaltung & Kommunikation mit Middleware

  • XML-konfigurierbare GUIs

  • XML-konfigurierbare Feldprüfungen

  • nebenbei Pflege der Unix-Entwicklermaschinen

  • Administrator der Versionsverwaltungssystems CVS

Knowhow

Betriebssysteme

  • Windows NT
  • Linux

Computersprachen

  • Java
  • C
  • C++
  • XML/XSL

Datenbanken

  • IBM DB2

Datenkommunikation

  • Kundenspezifisches Buchungsprotokoll über Socket
  • TCP/IP

WWW-Shopping Cart System und Application Server

1997-1999

Für eine Partnerfirma haben wir ein Shopping-Cart-System konzipiert und entwickelt. Das System erlaubt die Realisation von Servern mit vielen Kleinstshops bis hin zu einzelnen Webportalen. Besonderheiten waren damals schon komplette Unabhängigkeit vom verwendeten Webbrowser und das allgemeine Interface zur Anbindung von externen Datenquellen. Eine weitere Besonderheit war die hohe Performance des Systems durch automatisches Auslagern allen statischen Content in den "vor" dem System laufenden http-Server apache bei voller Unterstützung des Session-Management auch ohne Cookies.

Von 1997-1998 habe ich das als Projektleiter das System konzipiert,die Architektur entworfen, sowie selbst den Prototypen implementiert. Bis 1998 war ich als Leiter tätig, danach habe ich Kursvorgaben für das Shopping-Cart-Projekt gegeben, und diente den Team als technischer Berater.

Knowhow

Betriebssysteme

  • Linux
  • Solaris
  • Windows NT

Computersprachen

  • Java
  • C

Datenbanken

  • Postgres
  • andere SQL Datenbanken

Datenkommunikation

  • http
  • apache
  • Web-Browser (und ihre jeweiligen Eigenheiten in 1997-1999)
  • TCP/IP

Verwaltungssystem für WWW-Server

1997
In Zusammenarbeit mit meinem Kompangnon Hakan Tandogan und weiteren Entwicklern wurde für die Abteilung Anlagentechnik eines Großkonzerns eine Verwaltungssoftware für den Intranet-Server erstellt. Diese Software diente dazu, Teile der Intranetseite durch verschiedene Unterabteilungen der Anlagentechnik warten zu lassen. Die Benutzerschnittstelle wurde durch ein Servlet realisiert, über das sich Administrator- und Anwenderfunktionen abrufen ließen. Ein weiterer Kernbestandteil der Software war die Realisation eines Integrationsserver und eines Wirkbetriebsservers. Die Unterabteilungen konnten WWW-Seiten auf dem Integrationsserver pflegen und dann manuell oder zeitgesteuert ausgelöst auf den Wirkbetriebsserver replizieren lassen. Für Administratoren gab es noch weitere Funktionen, wie die Vergabe von Zugriffsrechten (und die dahinterliegende Verwaltung von NT-Zugriffsrechten), das Scheduling der zeitgesteuerten Replikation oder die Auswertung der Logfiles.

Knowhow

Betriebssysteme

  • Solaris
  • Windows NT

Computersprachen

  • Java
  • C

Datenbanken

  • Oracle

Entwicklung eines SNMP-Managementsystems für ISDN-Terminal Adapter

1996-1997
Entwicklung einer SNMP-Basierten Fernwartungssoftware für ISDN-Terminaladapter. Diese bestand aus 3 Schichten:
  • Ein Backend (SNMP-Agent), das die Konfiguration und Zustandskontrolle der jeweils an diesem Rechner angeschlossenen Terminaladapter über das Netzwerk erlaubte. Die Terminaladapter selbst waren über RS-232 an die Rechner angeschlossen und boten eine Mischung aus AT-Befehlssatz und interaktivem Menu.
  • Eine Middleware, welche über SNMP die Konfiguration und Zustände mehrerer Backends (mit jeweils noch mehr Terminaladaptern) sammelte und persistent verwaltete. Die gesammelten Daten wurden dann geloggt und der Benutzeroberfläche übergeben.
  • Benutzeroberfläche in Java+AWT. Diese griff über eine TCP/IP-Verbindung auf die Konfigurationsdaten in der Middleware zu und stellte sie dem Anwender in der Konfigurationsoberfläche dar. Konfigurationsänderungen wurden durch die Middleware und das Backends zurück in die Terminaladapter geschrieben. Die TCP-IP-Verbindung verwendete ein eigen entwickeltes Klartextprotokoll.

Arbeiten

  • Ermitteln der Requirements und Festlegen der Softwarearchitektur
  • Feindesign
  • Komplette Leitung dieses 2-Mann Projektes
  • Enwicklung einer eigenen MIB für die Terminaladapter
  • Implementation des SNMP-Agent in C, tcl, scotty und expect
  • Performance-Optimierung der snmp-library scotty für unseren Anwendungsfall
  • Implementation des SNMP-Anteils der Middleware
  • Design des Netzprotokolls zwischen Middleware und Frontend

Knowhow

Betriebssysteme

  • Linux
  • Solaris

Computersprachen

  • Java (für UI)
  • C++ (Middleware)
  • C (Backend)
  • tcl (Backend)
  • expect (Backend)

Datenkommunikation

  • SNMP
  • selbstenwickelte Protokolle
  • Sockets
  • TCP/IP

Plugin: Graphische Oberfläche für Steckkarte in SNMP-Fähigem HUB

1996
Erstellung eines Plugin zur graphischen Darstellung einer spezifischen Netzwerkkarte. Dieses Plugin lief innerhalb einer proprietären Managementsoftware für SNMP-Fähige Netzwerk-Hubs eines Herstellers. Die graphische Darstellung dieser Managementsoftware zeige eine Nachbildung der Frontblende der jeweils verwendeten Netzwerkkarten mit allen Kontrollleuchten. Die Life-Daten für die Darstellung wurden durch die Managementsoftware per SNMP vom Hub abgefragt.

Knowhow

Betriebssysteme

  • Solaris

Computersprachen

  • C

Datenkommunikation

  • SNMP
  • TCP/IP

Administration Intranet-WWW-Server

1996
Verwaltung der Solaris-Server des Intranets der Abteilung Anlagentechnik eines Großkonzerns.

Arbeiten

  • Scripting und Automatisierung von alltäglichen Vorgängen
  • Backup-Konzept

Knowhow

Betriebssysteme

  • Solaris 2.6

Computersprachen

  • Perl

Drucksubsystem für Prozeßsteuerungssoftware

1995-1996
Konzeption & Implementation eines Druckertreibers zur Ausgabe von Screenshots der in der Software angezeigten Betriebszustände

Knowhow

Betriebssysteme

  • Soft Realtime Unix

Computersprachen

  • C

Schüler- und Studentenjobs

Postscript-Backend für allgemeine CGM-Library

1995
Konzeption und Implementation eines Backends zur Ausgabe von Postscript-Dateien. Dieses diente für einen Grafikkonverter in portablem C (Unix, Windows, DOS), welcher Grafiken in das und aus dem CGM-Format wandelt.

Arbeiten

  • Implementation einer Bibliothek von CGM-artigen Graphikprimitiven in Postscript selbst
  • Postscript-Writer Backend (aufgerufen durch Callbacks)

Knowhow

Betriebssysteme

  • Unix (auf Apollo Domain OS)
  • Linux
  • Windows

Computersprachen

  • C
  • Postscript

Verwaltung des ftp-Server der Universität Erlangen/Nürnberg

1995
Administration des öffentliche Softwarearchivs der Universität Erlangen/Nürnberg (ftp://ftp.uni-erlangen.de)

Arbeiten

  • Konzeption und Kategorisierung der Datein im ftp-Server
  • Portierung eines sicheren FTP-Servers auf Epix
  • Scripting zur Pflege von Dateiübersichten, Auswertung, etc.

Knowhow

Betriebssysteme

  • EP/IX

Computersprachen

  • C

Datenkommunikation

  • ftp-Protokoll
  • TCP/IP

Verwaltung des NNTP-Servers und Migration von Epix auf HP/UX

1994-1995
Administrator der NNTP-Servers (NetNews) der Universität Erlangen/Nürnberg.

Arbeiten

  • Administration der NNTP-Server
  • Portierung von INN auf HP/UX
  • Umzug des Wirkbetriebsservers auf HP/UX
  • Einbau einer Nutzerauthentifizierung auf Basis von identd in INN
  • Simples Content-Filtering im Datenstrom

Knowhow

Betriebssysteme

  • EP/IX
  • HP/UX

Computersprachen

  • C

Datenkommunikation

  • news-Protokoll
  • identd-Protokoll
  • TCP/IP

Weiterentwicklung und Pflege einer Basisbibliothek

1991-1993
Für diverse Programme im Themenkreis Anlangentechnik habe ich eine Basisbibliothek in Clipper weiterentwickelt und gepflegt. Die Bibliothek stellte z.B. Funktionen für einheitliche Bildschirmdarstellung, Maussteuerung, Eingabefelder, Validierung von Eingabefeldern etc. zur Verfügung.

Arbeiten

  • Pflege der Library (Bugfixes)
  • Erstellen neuer APIs
  • Refactoring alter, auf nur ein Programm zugeschnittenen Funktionen
  • Einführung der Versionsverwaltung (RCS) und Durchsetzung eines Release-Konzeptes

Knowhow

Betriebssysteme

  • MS-DOS

Computersprachen

  • Clipper

Diverse Projekte für Regensburger Systemhaus

1987-1988
  • Zusatztools für Ventura Publisher
  • Automatische Lichtsteuerung für ein Squashzentrum. Über ein Novellnetz wurden Buchungen für die Squashcourts entgegengenommen und dann in den gebuchten Courts über I/O Hardware (Relaisboard) jeweils zur richtigen Uhrzeit die Beleuchtung ein- und ausgeschaltet. Auch eine Oberfläche für die Anzeige und manuelle Steuerung war vorhanden.

Knowhow

Betriebssysteme

  • MS-DOS

Computersprachen

  • C

Private Computing

Unix-PC, Workstation, PC

seit 1994

1994 Umstieg auf Unix + Linux für Mail, News und Internetzugang. als Hauptbetriebsystem. Mail + News anfangs über UUCP, später über TCP/IP. Diverse private Tools unter Linux i.d.R. mit Skriptsprachen perl + python, wie Timesheetverwaltung, Konfiguration meines privaten Routers (Linux: openwrt) mit netfilter und openvpn, automatisches Backup, Verwaltung Musikarchiv + Digital VCR etc.

Seit Windows 2000 Windows auch als "Arbeitssystem".

Knowhow

Betriebssysteme

  • Linux
  • Windows 2000

Computersprachen

  • C
  • C++
  • Perl
  • Python

Internet-Provider für Privatpersonen

1994

Anfang 1994 gründen 18 Personen das Kommunikationsnetz Franken e.V., einen Internetprovider für Privatpersonen. Bis 1999 wuchs dieser Verein dann auf bis zu 850 Mitglieder. Für diesen Verein habe ich einige technische Tätigkeiten geleistet, wie z.B. der Pflege des Mailservers (sun3) oder Webmaster.

Knowhow

Betriebssysteme

  • Linux
  • SunOs 1.x (BSD)

Computersprachen

  • C
  • Perl

32-Bit Heimcomputer

1987-1995
Heimcomputer mit 32 Bit präemptivem Multitasking und grafischer Oberfläche. Diverse eigene Programme: Texteditor, div. Interpreter für eigene "Mini-Sprachen", kleine Spiele- bzw. Grafikengines, ab 1989 erste Fingerübungen in C++ (Lattice C++, CFront-based)

Knowhow

Recher

  • Amiga

Computersprachen

  • C
  • C++
  • Rexx
  • Motorola 680x0 Assembler

8-Bit Heimcomputer

1979-1987

Mit einem ZX81, meinem Geschenk zum 10. Geburtstag begann sofort der Einstieg in die Basic-Programmierung - Es entstanden Programme wie "Uhr" oder "Autorennen".

Mit dem "großen" C64, den ich ab 1983 besaß und später dem C128 erlernte ich neben 6502 Assembler aus purer Neugier auch andere Sprachen wie Logo, Forth oder COMAL. Es entstanden eigene Projekte wie ein Breakout-Clone, 3D-Liniengrafik (inspiriert von "Elite"), einem Adventure und einem Latein-Vokabeltrainer.

Knowhow

Computersprachen

  • Basic
  • 6502/6510 Assembler
  • Logo
  • Forth
  • Small C

Rechner

  • ZX81
  • C64
  • C128
  • MSX