Keine Panik, ist nur Technik (eBook)
192 Seiten
Gräfe und Unzer Autorenverlag, ein Imprint von GRÄFE UND UNZER Verlag GmbH
978-3-8338-7634-9 (ISBN)
Kenza Ait Si Abbou ist in Marokko geboren und löste schon als kleines Mädchen Rechenaufgaben schneller, als ihre Mutter neue stellen konnte. Heute ist sie leitende Managerin für Robotik und künstliche Intelligenz bei der Telekom. Sie ist weltweit gefragt als Rednerin und Moderatorin. Sie spricht sieben Sprachen fließend und wurde unter anderem mit dem Digital Female Leader Award. Sie lebt mit ihrer Familie in Berlin.
Kenza Ait Si Abbou ist in Marokko geboren und löste schon als kleines Mädchen Rechenaufgaben schneller, als ihre Mutter neue stellen konnte. Heute ist sie leitende Managerin für Robotik und künstliche Intelligenz bei der Telekom. Sie ist weltweit gefragt als Rednerin und Moderatorin. Sie spricht sieben Sprachen fließend und wurde unter anderem mit dem Digital Female Leader Award. Sie lebt mit ihrer Familie in Berlin.
Hinweis zur Optimierung
Impressum
Vorwort
Die kunterbunte Welt der Technik
Denk doch mal nach, Maschine!
Wie künstliche Intelligenz das Tanzen lernt
»Leider entsprechen Sie nicht unseren Anforderungen«
Auch Maschinen wollen nur das eine
Die Kunst, Angst in Zahlen auszudrücken
»Sie kenne ich doch. Sind Sie nicht gestern bei Rot über die Ampel?«
»Baby, you can drive my car«
Man erntet, was man codet
Mit KI gegen Stürme, Eis und Hitzewellen
Chefvisite beim RoboDoc
Computer wie wir
Ich hack mir die Welt, wie sie mir gefällt!
Nachwort
Danksagung
Endnoten
Die Autorin
Coden lernen ist wie eine neue Sprache lernen
Mit Coden beziehungsweise Programmieren kam ich zum ersten Mal an der Uni in Berührung. An meiner Schule war das nie ein Thema gewesen, weshalb ich zu Beginn einen Riesennachteil im Vergleich zu einigen meiner Kommilitonen hatte. Denn ein Ingenieursstudium ohne Programmieren ist gar nicht mehr vorstellbar. Schon im ersten Semester stand bei mir die Programmiersprache C auf dem Lehrplan. Am Anfang klang für mich alles wie Chinesisch, aber bald hatte ich die Logik dahinter durchblickt, und dann ging vieles leichter.
Für mich war es der entscheidende Moment, als ich endlich verstand, dass es sich dabei um eine Aneinanderreihung von Befehlen handelt, die die Maschine nach und nach abarbeitet. Je nach Programmiersprache ist der Satzbau ein anderer, aber die Logik bleibt: Befehl und Ausführung. Unter dem Satzbau, also der Syntax einer Programmiersprache, versteht man ein System von Textelementen, mit denen wohlgeformte Programmtexte aus einem grundlegenden Zeichenvorrat gebildet werden müssen. Man muss sich das vorstellen wie eine Fremdsprache, die viele mehr oder weniger feste Redewendungen beinhaltet. Programmiersprache hat immer auch ein System von Regeln, also eine Grammatik, an die sie sich halten muss, während der Zeichenvorrat das Vokabular darstellt. Daraus werden Programmtexte gebildet, um bestimmte Sachverhalte möglichst kurz und knapp zu beschreiben.
Wenn ich in der Sprache C zum Beispiel »int a = 2« schreibe, sage ich der Maschine: »Setze Variable a auf den Wert 2.« In der Regel tue ich das, weil ich später mit der Variable a weiterarbeiten möchte, vielleicht mit einer anderen Variablen addieren möchte, zum Beispiel weil ich die Zutaten aus einem Rezept für zwei Personen nun für fünf Personen berechnen lassen möchte oder Ähnliches. Der Befehl »int a = 2« scheint zwar kurz zu sein, aber dahinter verbirgt sich einiges an Informationen für die Maschine,. Sollte diese Syntax für euch komisch aussehen, keine Sorge – jetzt könnt ihr euch zumindest schon einmal vorstellen, wie ich mich zu Beginn gefühlt habe.
Beim Coden geht es also darum, eine neue Sprache zu lernen, die nicht nur wir Menschen verstehen, sondern auch die Maschinen. Als Programmiererin wird man zu einer Art Übersetzerin. Übersetzen war etwas, das ich gemacht habe, um neben dem Studium etwas Geld zu verdienen. Darin war ich geübt, aber natürlich nur mit menschlichen Sprachen. Jetzt lag die Herausforderung darin, Maschinensprachen zu lernen. Davon gibt es viele, aber sie lassen sich in zwei Kategorien unterteilen: einfache und hohe Programmiersprachen. Die einfachen Sprachen sind in einer Syntax geschrieben, die die Maschinen schnell verstehen können. Dafür sind sie für die Menschen eher schwierig. Die hohen Sprachen sind genau umgekehrt: Sie sind in einer Syntax geschrieben, die für uns einfacher zu verstehen ist, aber für Maschinen so nicht umsetzbar sind. Für die Übersetzung sorgen sogenannte Compiler. Wir werden gleich sehen, was das alles bedeutet. Aber bevor wir über die Unterschiede sprechen, schauen wir uns die Gemeinsamkeiten an.
Abbildung 3: Vom Code zur Ausgabe
Beide Spracharten verbindet dieselbe Logik des Programmierens. In beiden Fällen schreibe ich ein Programm, das am jeweiligen Betriebssystem ausgerichtet ist. Das Betriebssystem bildet die Schnittstelle zwischen mir beziehungsweise meinem Anwendungsprogramm und den Hardware-Ressourcen meines Computers, also zum Beispiel meinem Monitor, meinem Drucker, meiner Kamera oder sonstigen Geräten. Es prüft, ob mein Code/Programm und die darin enthaltenen Befehle richtig geschrieben sind, und wenn ja, dann führt es das Programm durch. Dieses Ausführen bedeutet, dass mein Betriebssystem auf die Hardware zugreift und das tut (anzeigt, druckt, aufnimmt etc.), was ich im Programm befohlen habe.
Jeder von uns wendet solche Befehle zum Beispiel an, wenn er ein Dokument in Word erstellt und ausdrucken lässt. Das Anwendungsprogramm wäre in diesem Fall also Word, das Betriebssystem Windows bei Microsoft-Geräten oder iOS bei Apple-Geräten und die Hardware-Ressource der Drucker.
Der Unterschied zwischen einfachen und hohen Sprachen liegt nicht in der Logik des Programmierens oder dem Ausführen der Befehle, sondern daran, wie ich das Programm schreibe. Die Syntax und die Detailtiefe meiner Befehle an die Maschine spielen hier eine große Rolle. Ähnlich wie ich Fachbegriffe mit meinen Arbeitskollegen nutze, um technische Fragen zu klären, oder wie ich dagegen eine einfache Sprache wähle, wenn ich mich mit meinem fünfjährigen Sohn unterhalte.
Die einfachen Sprachen sind für die Maschinen einfach zu verstehen. Die Syntax ist für uns Menschen etwas ungewöhnlich, aber für die Maschine sind es klare Befehle, mehrheitlich Arithmetik und Speicherzugriffe. Mit Arithmetik meine ich hier die vier Grundrechenarten, also Addieren, Subtrahieren, Multiplizieren und Dividieren. Alle anderen Funktionen, zum Beispiel eine Potenz, bei der man »x hoch y« rechnet, lassen sich als Kombinationen dieser Grundoperation genannten Grundrechenarten beschreiben. Diese Funktionen werden in Bibliotheken gespeichert, die man dann abrufen kann und sich so den Aufwand spart, jedes Mal die ganze Funktion neu beschreiben zu müssen. Man muss sich das so vorstellen, als hätte die Maschine mehrere Schränke mit vielen Schubladen drin, einen Hauptschrank für die Grundoperationen und einen für die Bibliothek voller Funktionen, in jeder Schublade eine. Mit meinen Befehlen sage ich: »Öffne mal die oberste Schublade von links, lies den Inhalt heraus, dann öffne die dritte Schublade von unten, summiere die Inhalte von beiden Schubladen, und stecke das Ergebnis in die vierte Schublade oben rechts.«
Die einfachen Sprachen nennt man auch »Assemblersprachen«. Damit die Maschine genau das erledigt, was im Code steht, muss man die Anweisungen sehr präzise beschreiben, es müssen also alle Schritte genau aufgelistet werden, und zwar in der richtigen Reihenfolge, ähnlich wie bei einem Kochrezept für jemanden, der nie kocht. Dafür muss ich die Architektur meines Systems kennen und die Funktion, die jedes Element erfüllen soll, verstanden haben – nicht unbedingt bis ins kleinste Detail, aber es ist auf jeden Fall hilfreich, die grobe Architektur eines Computers zu kennen, so wie man einigermaßen Bescheid wissen sollte, in welchen Küchenutensilien man welche Zutaten mischen, garen oder braten kann. Die Architektur eines Computers besteht hauptsächlich aus folgenden Elementen:
-
Der Prozessor bildet die zentrale Verarbeitungseinheit eines Computers, daher die englische Abkürzung CPU für Central Processing Unit. Er ist für die zentrale Steuerung zuständig (also etwa der Küchenchef). Er bekommt die Befehle (Bestellungen) und lässt diese durch die angeschlossenen Maschinen durchführen. Der Prozessor verfügt über:
-
ein Rechenwerk, das Rechenoperationen und logische Verknüpfungen durchführt. Das Rechenwerk wird im Englischen ALU genannt, für Arithmetic Logic Unit (so etwas wie alle Küchengeräte zusammen);
-
und ein Steuerwerk, das die Anweisungen eines Programms, also die Befehle, interpretiert und die notwendigen Verschaltungen für Datenquelle (Ursprung der Daten), Datensenke (Empfänger oder Bestimmungsort der Daten) und ALU-Komponenten durchführt. Es regelt auch die Befehlsabfolge, nach dem Motto »Ordnung muss sein!« (so etwas wie der Chef vom Dienst).
-
-
Das Bus-System stellt eine Kommunikationsautobahn dar und dient zur Kommunikation zwischen allen Komponenten (wie das Bestellsystem im Restaurant beziehungsweise Kinderzimmer).
-
Das Speicherwerk dient der Speicherung aller Programme und Daten, auch Arbeitsspeicher genannt (sämtliche Rezeptbücher und Tupperdosen für Mehl, Zucker etc.).
-
Das Ein- und Ausgabewerk steuert, wie der Name schon sagt, die Ein- und Ausgabe von Daten an den Anwender über Tastatur und Bildschirm, und zu anderen Systemen über Schnittstellen (ungefähr so wie die Teller, auf denen das leckere Essen serviert wird).1
Die einfache Darstellung in Abbildung 4 zeigt die Hauptkomponenten eines Rechners. Natürlich kann ein Computer mehrere Prozessoren und mehrere Speicher haben, aber mir geht es hier um das grobe Bild und Verständnis der Funktionen, die jede Komponente erfüllen muss.
Das Coden lässt sich auch mit einem Umzug, den man in Auftrag gibt, vergleichen. Stellt euch vor, ich möchte in eine neue Wohnung umziehen, packe alles in Kisten, beschrifte sie und beauftrage eine Umzugsfirma. Ich möchte nicht nur, dass sie mir die Kisten in die jeweiligen Räume verteilt werden und die Möbel wieder aufgebaut werden.
Dafür muss ich wissen, welche Räume die neue Wohnung hat, ich muss die Funktion jedes Raums kennen und muss planen, welche Räume zuerst eingerichtet werden sollen, damit der Einzug reibungslos ablaufen kann.
Abbildung 4: Hauptkomponenten eines Rechners
Wenn ich diesen Plan habe, also die Architektur der Wohnung und die Funktion der Räume kenne, kann ich der Umzugsfirma genau sagen, welche Kiste wohin soll (also die Speicherzugriffe festlegen). Außerdem kann ich sagen: »Im Schlafzimmer bitte das Bett und den Schrank direkt aufbauen (also Rechenaufgaben durchführen lassen), in der Küche bitte den Küchentisch und die Stühle sowie im Arbeitszimmer alle restlichen Kisten erst einmal stapeln (also Zwischenspeicher verwenden), da ich sie erst nach und nach ausräumen möchte.« Ich kann auch sagen: »Im Wohnzimmer darf nichts...
Erscheint lt. Verlag | 5.8.2020 |
---|---|
Reihe/Serie | Edition Wissenschaft |
Edition Wissenschaft | |
Gräfe und Unzer | Lebenshilfe |
Verlagsort | München |
Sprache | deutsch |
Themenwelt | Sachbuch/Ratgeber ► Geschichte / Politik ► Politik / Gesellschaft |
Sachbuch/Ratgeber ► Gesundheit / Leben / Psychologie ► Lebenshilfe / Lebensführung | |
Sachbuch/Ratgeber ► Natur / Technik ► Technik | |
Sozialwissenschaften ► Politik / Verwaltung | |
Technik | |
Wirtschaft | |
Schlagworte | Abgelehnt • AI • Algorithmen • Algorithmus • C++ • Computer • Daten • Datenbank • Datenschutz • Datensicherheit • digital • einfach • Erklären • Gesichtserkennung • Hacker • Information • Informationstechnik • Instagram • Internet • IT • Java • Jeden Tag • KI • Kommunikation • Kredit • Künstliche Intelligenz • learning • Logartihmus • Management • Personenbezogene Daten • Programmieren • Programmiersprache • Programmierung • Ratgeber • Robotics • Scoring • Social Scoring • Software • Sprachassistent • Technik • Verstehen • Workshop |
ISBN-10 | 3-8338-7634-4 / 3833876344 |
ISBN-13 | 978-3-8338-7634-9 / 9783833876349 |
Haben Sie eine Frage zum Produkt? |
Größe: 9,4 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belletristik und Sachbüchern. Der Fließtext wird dynamisch an die Display- und Schriftgröße angepasst. Auch für mobile Lesegeräte ist EPUB daher gut geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich