Programmieren

Wie bereits angekündigt war es in der letzten Woche still um den Blog. Das liegt daran, dass ich letzte Woche (und auch noch zu Beginn der nächsten Woche) extern arbeite. Als Student habe ich ein System für eine ART programmierbare A/D D/A Box von Jäger erstellt, mit dem man in dem Bereich Customer Support bei Pilz die eigenen Steuerungen testet,

Das fing ich in den Semesterferien einmal an und habe dann bis zum 7.ten Semester in den Ferien einen dauerhaften Job gehabt. Nun kam der Wunsch auf ich möge das Packet doch auf Windows XP und Vista anpassen und einige Erweiterungen vornehmen. Bis zu 2 Wochen dürfte ich dafür brauchen. Das wird nicht der Fall sein. Wahrscheinlich bin ich spätestens bis Dienstag fertig, wenn keine neuen Wünsche mehr auftreten. Das ich dabei etwas dazu verdiene ist ein Aspekt der Sache, aber ein anderer ist, dass man eine echte Erfolgsrückkopplung hat. Ich programmiere etwas, mit weitgehenden Freiheiten, oftmals vorausschauend die Wünsche der Anwender ahnen (oder besser gesagt, was ich gerne in dem Packet hätte, wenn ich Anwender wäre) und Leute arbeiten gerne damit, sagen dass es schon „nahezu perfekt ist“. Es ist schon ein erhebendes Gefühl, wenn 3,4 Leute mit unterschiedlichen Aufgabenstellungen und unterschiedlichen Wünschen mit einem Programm von dir arbeiten und sie sind zufrieden.

Aber das ist sicher nicht der Grund warum ich programmiere und dies nach wie vor gerne tue, sei es um mir dir Arbeit zu erleichtern oder privat an meinen eigenen Programmen weiter arbeite. Es ist noch immer die Faszination die Programmieren an sich hat und die auch andere verspüren, wie ich bei dem Lesen von Steven Wozniak Biographie iWoz feststellen konnte. Der Computer ist die einzige Maschine die der Mensch gebaut hat, die nicht einen bestimmten Zweck hat sondern universell ist. Durch Programmieren kann man den Computer dazu bringen das zu tun was man will. (Zumindest wenn man keine Fehler dabei macht). Man muss sich in den Formalismus einer Programmiersprache begeben, doch wenn man die mal begriffen hat, dann fällt es mit jedem Programnm einfacher.

Ich möchte heute mal eine Lanze dafür brechen, dass Sie sich mit dem Programmieren beschäftigen. Zum einen weil es Spaß macht, es aufregend ist und wenn man drin ist fast süchtig machen kann. Zum anderen weil eine sehr tiefe Befriedigung einsetzt wenn man etwas wirklich gutes gemacht hat.

Es gibt eine Menge Wegen Programmieren zu lernen und auch verschiedene Gebiete wo man dies tun kann und es nützlich ist. Jedes Betriebssystem hat heute eine Skriptsprache mit der man vieles automatisieren kann oder aus Tools viel mehr herausholen kann. Damit stellen sich schnell Erfolgserlebnisse ein. Diese Skriptsprachen sind nicht universell und manchmal auch nicht sehr systematisch oder sie arbeiten mit vielen Sonderzeichen, aber es ist ein guter Einstieg. Unter Windows mit dem Windows Scripting System ist es sogar recht komfortabel.

Das nächste ist der Bereich Web. In HTML Seiten kann man JavaScript einbinden oder man kann HTML und PÜHP vermischen und damit sehr viel machen (ganze Context Managementsystem, Webblogs etc. sind so entstanden). Oder man bettet Java – eigentlich eine große Programmiersprache als Applet ein. Auch da hat man gleich den Nutzen in der eigenen Homepage. Ein Problem für JavaScript ist vielleicht, das es nicht so was wie eine kostenlose Entwicklungsumgebung ist und der Browser ist da nicht so hilfreich.

Es gäbe dann noch einige andere Schriftsprachen zu erwähnen wie Python, Ruby oder Pearl. sie unterscheiden sich in Syntax und Schwächen und Stärken. Der Nachteil dieser Sprachen kann auch ein Vorteil sein. In der regel erzeugen die Compiler keine ausführbare Datei, also in Windows eine .exe auf die man klicken kann und die man jemanden geben kann, damit er das Programm hat. Stattdessen interpretiert ein Programm den Code wenn man es startet. Das bedeutet einige Freiheiten in der Programmierung, aber auch dass man immer den Interpreter installieren muss. Bei einigen populären Programmiersprachen gibt es allerdings Module für Webserver so für Python und Pearl. Dann kann man diese von einem Browser aus aufrufen. Ist dann aber auch auf den Browser als Medium beschränkt.

Daher bin ich noch immer der .EXE Fetischist. Ich benutze vorwiegend Programmiersprachen die eine ausführbare Datei erzeugen. Die kann ich dann zum Download anbieten oder jemanden zuschicken. Er kopiert das ganze in ein Verzeichnis und fertig ist es. Es gibt eine Reihe von Programmiersprachen die man so nutzen kann. Ich bin Delphi Fan und inzwischen wird auch eine Version davon verschenkt. Meine Begeisterung hält sich aber in Grenzen, da einer der großen Vorteil von Delphi ist, dass man damit sehr einfach neue visuelle Steuerelemente entwickeln kann und es gibt Unmengen davon im Netz viele nutze ich regelmäßig wie ein Steuerelement das einen Syntax Highlight Editor implementiert (in meinem Smarteditor), man kann ihn leicht um weitere Programmiersprachen erweitern. Das Erweitern ist bei der kostenlosen Version leider nicht möglich. Trotzdem findet man dort erheblich mehr schon existieren Elemente als im Visual Studio von Microsoft.

Microsoft verschenkt dieses auch – nur eben nicht in der Version für alle 3 Programmiersprachen (C#, C++ und Visual Basic), sondern für eine. Man muss sich also entscheiden, was aber nicht tragisch ist, da man meistens sowieso bei einer bleibt. Visual Basic kommt von der Syntax her den Anfängern noch am meisten entgegen, es ist verständlicher. Wer einmal beruflich es nutzen möchte sollte mit C# anfangen, das ist auch die Programmiersprache die am meisten kann. (In der Berufswelt gelten leider bestimmte Sprachen als supertoll, weil weit verbreitet und andere als nicht so seriös. Das hat oft mit der Geschichte zu tun: Delphi und Visual Basic haben beide ihre Wurzeln in Paketen für Hobby Programmierer. C und C++ in Programmiersprachen die zuerst auf größeren Systemen zuhause waren und an die kamen nur ausgebildete Programmierer ran. Obwohl man heute fast alles was man in C machen kann auch in Delphi oder VB machen kann hält sich dieses Vorurteil über Jahrzehnte).

Einige nützliche Links

Codegear Download Page. Dort können sie die kostenlose Delphi Personal Version herunterladen. Die kostenlose Version ist „Turbo Delphi Explorer“, wahlweise erhältlich als .NET Version oder zum Erzeugen von „normalen“ Windows Programmen.

visual Studio Express Download Page – Das entsprechende Pendant bei Microsoft.

Eclipse Download Page – Das ganze für Java bzw. mit Plugins auch für andere sprachen nutzbar.