Fragen
Falls Sie sich dazu entschließen sich an tapirdata zu wenden, würde es mich freuen ein Treffen zu arrangieren
(bei Ihnen, in meinem Büro oder in einem dieser netten Cafés in der Gegend).
Um einer passenden Lösung näher zu kommen, müssem wir einige grundsätzliche Punkte klären:
- Welche Ziele gilt es zu erreichen? Gibt es einen bestehenden Ablauf, der verbessert werden soll, oder muss ein solcher von Grund auf neu entworfen werden?
- Welche Komponenten bilden das bestehende System (falls eines vorhanden ist)? Was kann behalten werden? Wovon wird man sich trennen müssen?
- Welche Art von Zusammenwirken mit exisitierender Hard- und Software wird benötigt?
- Welche Gruppen von Personen werden mit der Software interagieren?
- Welchen Zeitplan erfordert Ihr Projekt? Könnte eine schrittweise Annäherung an die gewünschte Gesamtlösung praktikabel sein?
Lösungen
Sobald Ihre Anforderungen umrissen sind, kann ich Ihnen mein Verständnis der zu erledigenden Aufgaben darlegen.
Wenn wir uns auf einen erfolgversprechenden Lösungsansatz einigen können – und Ihnen meine Kostenabschätzung angemessen erscheint – ,
kann ich beginnen diesen Entwurf in technische Materie zu übersetzen – Von Gesamtarchitektur herunter zu den Implementationsdetails.
Da ich mich als Anhänger agiler Methoden ( →Manifest für Agile Softwareentwicklung) ansehe, wird sich dieser Entwicklungsprozess interaktiv darstellen: Indem ich Ihnen fortwährend meinen Fortschritt präsentiere,
können Sie mit Ihrem unerlässlichen Feedback die Richtung meiner Arbeit berichtigen.
Somit können Sie sich darauf verlassen, genau das Produkt zu erhalten, das Ihre besonderen Bedürfnisse erfüllt.
Ich versuche so weit wie möglich plattformneutrale Lösungen zu finden.
Um zukunftssichere Software zu erstellen bevorzuge ich die Verwendung von Open-Source-Werkzeugen und -Komponenten. Denn diese verschaffen uns viele Vorteile:
- Sie bewahren Sie weitgehend vor Sicherheitsmängeln. Das liegt an der umfassenden Beobachtung sowie am transparenten und zügigen Umgang mit Problemen.
- Sie können kaum irgendwelche versteckte, bösartige Mechanismen enthalten, die Ihre kostbaren Daten ausspionieren.
- Sie bieten ausgezeichnete Interoperabilität aufgrund eines hohen Maßes an Standarderfüllung.
- Sie können nicht durch den Willkürakt des Herstellers verschwinden.
Selbst im unwahrscheinlichen Fall einer herrenlos gewordenen Komponente können Sie immer jemanden beauftragen um Fehler zu beheben oder Verbesserungen vorzunehmen.
- Sie helfen Ihnen außerdem Lizenzkosten zu sparen.
Falls Sie an technischen Details interessiert sind, mögen Sie vielleicht einen Blick in meine – beständig wachsende – Werkzeugkiste werfen.
Hier ist eine Auswahl ihrer erprobten Bestückung, die meine Entwicklungsarbeit unterstützt:
- C, C++
für eingebettete Systeme und um zeitkritische Anforderungen zu erfüllen
- Python
mit verschiedenen Frameworks für flotte Desktop- und Webanwendungen
- ECMAScript
(Javascript) für leistungsfähige Webanwendungen und Mobile Apps
- PostgreSQL
als verlässliche relationale Datenbank
- MongoDB,
Redis
als flexible NoSQL Datenbanken