Die oben gestellte Frage kann auch ausgeweitet werden. Warum läuft das Webcharting von Tradesignal Online nicht auf Mac, Linux Computern, Android, Blackberry oder iPhone/iPad? Die Antwort ist relativ kurz. Das Charting wurde aus mehreren Gründen in der Programmiersprache C++ geschrieben, die auch auf Windows-Ressourcen zurückgreift. Somit ist das Charting auf Windows-Betriebssystemen begrenzt.

Warum diese Limitierung?

Das Webcharting ist ein Spin-off von Tradesignal Online Terminal, beziehungsweise unserem institutionellen Produkt Tradesignal. Jegliche Veränderung/Bugfix/Feature in Tradesignal Online Terminal, ist auch sofort im Webcharting verfügbar. Tradesignal Online Terminal ist ein reines Windows-Programm, optimiert auf Geschwindigkeit. Beim Webcharting sieht es nicht anderes aus. Wer diesen Funktionsumfang beim Charting im Web nutzen möchte, benötigt eine schnelle Programmiersprache.

Die Begrenzung auf Windows fällt uns nicht schwer. Der Marktanteil von Windows ist in Banken und Energiekonzernen, also unserem Hauptgeschäftsbereich, 100%. Im privaten Bereich sieht es andere aus. Hier liegt Windows bei ~92% in Deutschland und ~80% weltweit (je nach Statistik die man sich gerade anschaut), der Rest verteilt sich auf Mac, Linux, Android und iOS.

Warum nicht in einer anderen Programmiersprache?

Betrachten wir uns einmal die heutigen in Frage kommenden Programmiersprachen:

  • Flash: Wäre das Charting in Flash, wäre es Webfähig und das sogar auf anderen Geräten. Flash zählt unserer Meinung nach aber zu den sterbenden Programmiersprachen. Adobe hat die Unterstützung für mobile Geräte gestoppt. Apple unterstützt kein Flash auf seinen mobilen Geräten und Google distanziert sich auch immer weiter davon (siehe Youtube). Ein weiterer Nachteil ist, das Flash nicht sonderlich schnell ist, so das nicht alle Funktionen von unserem Webcharting umgesetzt werden könnten.
  • Java: Java zählt auch zu den Programmiersprachen, die immer weniger Unterstützung finden. Vor einigen Jahren starteten wir mit einer externen Java-Entwicklungsfirma ein Projekt, um unser Charting in den Grundfunktionen in Java umzusetzen. Dazu wurden die Kernfunktionen neu geschrieben, um sie so schnell wie möglich für Java zu optimieren. Dieses Projekt mussten wir stoppen, weil wir erkannt haben, dass Java zu langsam ist, um grafische Aktionen in unserem Webcharting durchzuführen. Generell ist Java keine gute Technologie für Clients die im Browser laufen.
  • Pure C#: Dies stellt die derzeit beste Alternative dar, doch ist es leider auch auf Windows beschränkt und wird in der Ausführungsgeschwindigkeit nicht so schnell sein, wie unser jetziges C++ Charting. Mac geht auch, nur nicht nativ. Alle anderen Geräte werden nicht unterstützt.
  • Silverlight: Silverlight ist von Microsoft als Programmiersprache für reine mobile Windows-Endgeräte degradiert worden. Wenn man das Charting in purem C# umsetzen würde, wäre eine Konvertierung nach Silverlight sehr leicht. Nachteil ist jedoch wieder, dass es keine Unterstützung für Mac, Linux, iPhone oder Android gibt.
  • HTML5: Als die Alternative für Flash und Java bejubelt, läuft auf allen Endgeräten und ist somit wirklich Plattformunabhängig (sofern es in der Entwicklung auch noch für alle Endgeräte optimiert wird). HTML5 besitzt aber auch Nachteile. Umso größer das Webprojekt ist, umso mehr muss der Client auch in den Speicher laden und Geschwindigkeit ist ein großes Problem. Unser Webcharting ist ein Schwergewicht was Codezeilen angeht. Da es heute in C++ geschrieben ist, also auch kompiliert und schnell und „klein“ ist, nimmt es auch nicht so viele Ressourcen vom Computer. Eine Entwicklung in HTML5 in gleichem Funktionsumfang würde zu massive Speicherprobleme und Geschwindigkeitsprobleme auf dem Clientcomputer mit sich bringen.

Bei einer Neuentwicklung in einer anderen Programmiersprache wird früher oder später die Frage des Funktionsumfangs gestellt werden. Auch wenn das nicht jeder sofort sieht, unser Webcharting ist in seiner Funktionalität sehr umfangreich. Sollte man also Funktionen bei einer Neuentwicklung nicht mit einplanen um das Charting „schneller“ und „kleiner“ zu gestalten? Eine Kompatibilität wäre zu allen gespeicherten Charts somit nicht mehr gegeben und Funktionen würden auch fehlen. Damit wären bestimmt einige User nicht einverstanden.

Ein weiteres Problem ist die Entwicklungszeit. Den heutigen Funktionsumfang in einer anderen, egal welchen Programmiersprache, umzusetzen würde Jahre dauern.

Die Weiterentwicklung und auch die Umsetzung in einer anderen Programmiersprache, um andere Plattformen zu erreichen, ist trotzdem bei uns im Hause ein Thema und wird weiter diskutiert. Wir halten euch auf dem laufenden.

Sorry für die schlechten Nachrichten für alle Mac, Linux etc. User. Wir wünschten es wäre einfacher, ein attraktives Charting für alle Betriebssysteme zu entwickeln.