
Programmierung ist eine sehr faszinierende Tätigkeit. Es ist Kreativität. Der unvorstellbarste Moment ist der Moment des Übergangs einer Idee, eines Bildes, das in deinem Kopf brodelt, in etwas Greifbares, in etwas Materielles. Das du berühren, fühlen, "stochern" kannst.
Nicht weniger faszinierend ist es zu beobachten, wie dein Werk (oder nicht ;)) das tut, was du beabsichtigt hast. Die bloße Tatsache, dass der menschliche Verstand in der Lage ist, etwas zu schaffen, das eigenständig funktioniert, ist ein ausreichend anregender und motivierender Moment.
Wer hätte gedacht, dass vor 20-30 Jahren Programme uns Empfehlungen geben, einige Dinge bewerten und sogar Dinge in Ordnung bringen würden, die wir manchmal selbst nicht in Ordnung bringen können.
Moderne Systeme sind so global (in den Daten, mit denen sie arbeiten), so tief (in der Qualität der Analyse), dass, wenn man all dies "aus der Vogelperspektive" betrachtet — einem die Sprache wegbleibt.. Kann all dies wirklich von einem Menschen geschaffen worden sein?! Und doch wurde es geschaffen. Und zwar genau von einem Menschen.
Die Algorithmen selbst verdienen nicht weniger Aufmerksamkeit. Programmierung sind Algorithmen. "AlgoriFms", wie einer der ersten Kybernetiker der UdSSR, Valentin Fyodorovich Turchin, schrieb. Er erfand übrigens auch eine der ersten funktionalen Programmiersprachen, REFAL. Schon 1966! Leider wenig entwickelt..
Und wenn man darüber nachdenkt, welche Algorithmen und wie viele davon in großen Systemen verwendet werden — das raubt einem den Atem!
Und dennoch wurde all dies von einem Menschen geschaffen. Von "Menschen" :)
Im Gegensatz zu einigen Tätigkeitsbereichen arbeitet die Programmierung mit ziemlich klaren Kategorien. Eine Person muss in der Lage sein, Ursache-Wirkungs-Beziehungen vorzustellen. Dies ist besonders in großen Systemen auffällig. Wenn es sehr viele Teile des Systems gibt, die oft aktiv interagieren. Und wenn man "die Arbeitskultur" (mein Lieblingssatz ;)) vernachlässigt — kann man sich selbst viele Probleme bereiten.
Was uns zu einem weiteren wichtigen Merkmal der Programmierung und der Programmierer bringt — zur Disziplin des Denkens. Ein Programmierer muss eine ausreichend disziplinierte Person sein, um so komplexe Dinge wie Programme zu erstellen.
Moderne Software-Hardware-Komplexe bedienen viele lebenswichtige Prozesse und Mechanismen. Und nicht nur das — ganze Unternehmen! Manchmal gehören diese Unternehmen und Prozesse zur Kategorie Echtzeit. Wo der kleinste Fehler, die kleinste Verzögerung in etwas — in einer Katastrophe enden kann. Und zwar nicht im übertragenen Sinne, sondern im direktesten. Harte Echtzeit-Betriebssysteme (RTOS) steuern die kritischsten Systeme im menschlichen Leben: Kernkraftwerke, medizinische Geräte, Raumfahrtsatelliten, Luftverkehrskontrollzentren. Ganz zu schweigen von Gas-, Öl-, Chemie-, Metall- und anderen *technischen Prozessen.
(Zum Beispiel: In der Stadt Ottawa-Carleton (Kanada) wurde ein Verkehrskontrollsystem für die Stadtgemeinde auf Basis von QNX entwickelt. Es vereint etwa 700 Ampeln und 3000 Straßenrand-Sensoren entlang von 1100 Kilometern Autobahn. Die Durchsatzkapazität dieser Autobahnen beträgt 5,4 Milliarden Autos pro Jahr. Neben der Zeit und Dauer der Umschaltung der Ampelsignale an jeder Kreuzung der Stadt muss das Kontrollsystem die stattfindenden Ereignisse aufzeichnen und die Leistung der Geräte über die Straßenrand-Sensoren analysieren. Und die kleinste Verzögerung in einem so großen System — kann zu Unfällen führen. Und zu Todesfällen.)
Eine gewisse Verantwortung ist erforderlich. Um sagen zu können: "hier, ich/wir haben ein Programm geschrieben. Und es wird zuverlässig funktionieren". Und das bedeutet, Programmierung lehrt Verantwortung.
Egal wie interessant die Programme sein mögen, egal wie intelligent die Expertensysteme sein mögen, hinter all dem steht — der MENSCH. Eine verantwortungsbewusste Person, eine disziplinierte Person, die über die Konsequenzen nachdenkt.
...Idealerweise ;))
In der Realität..
In der Realität macht diese Realität ihre eigenen Anpassungen. Wir leben alle in der realen Welt. Wo alle Teilnehmer dieser realen Welt ihre eigenen Regeln diktieren. Die Wirtschaft diktiert die Regeln des finanziellen und zeitlichen Budgets; das tägliche Leben und die Gesellschaft diktieren ihre Regeln; das moralische und ethische Niveau der Person selbst diktiert seine eigenen Regeln..
Und all dies hat seine Auswirkungen. Ganz oft — nicht zum Besseren.
Und sobald du allein mit dir selbst bist, wenn deine Finger gewohnheitsmäßig über die Tasten gleiten — bist du wieder ein Schöpfer) du erschaffst wieder. Du beginnst, interessante Dinge zu schaffen, die andere später nutzen werden, du beginnst zu optimieren, du beginnst, solche mathematischen Tricks zu verwenden, die wahrscheinlich nur Mathematiker verstehen werden)
Und genau in diesem Moment verstehst du — du kannst keine schlampige Arbeit abliefern, du kannst nicht nachlässig arbeiten, du kannst nicht versäumen, nicht vereinfachen, nicht aufschieben.
Du gehst für eine Rauchpause hinaus, und draußen am Fenster..
Hallo, Morgen!)



Kommentare 0
Noch keine Kommentare — sei der Erste.