Geschichte der Informatik – Personen, Meilensteine Ludger Humbert Vorlesung 4 asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Geschichte der Informatik – Personen, Meilensteine Informatik im Laufe der Zeit a3b4efe 2015-10-28 18:36 humbert http://creativecommons.org/licenses/by-nc- sa/4.0/ – Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Suchen Peripherie Planung Maus Zahlen C Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Robotik DatenbankSysteme Zeichenketten Datenstrukturen imperativ Sortieren RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Technische Informatik ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Vorlesung Informatik im Alltag vom 29. Oktober 2015 Version: Stand: Bearbeitet von: Lizenz : Theoretische Informatik Automatentheorie Kabel Bäume reguläre Ausdrücke DSL Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen cbea Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Ludger Humbert Fachgebiet Didaktik der Informatik Bergische Universität Wuppertal cbe a • @ a3b4efe • 2015-10-28 18:36 Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Kompetenzen – Vorlesung 4 Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen Meilensteine der Ideengeschichte der Informatik kennen. 3 »Wir sind Informatik« – bedeutsame Informatikerinnen und Informatiker und ihre Beiträge zur Informatik benennen. Tastatur HTML Angewandte Informatik Strukturierung Style Sheets Anwendung Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Unix 2 Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Shells Entwicklungen der Menschheitsgeschichte, die zur Informatik beitragen, erkennen und einordnen. Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie 1 Zeichenketten Datenstrukturen imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Gliederung – Vorlesung 4 1 Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin 2 Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer 3 Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Künstliche Intelligenz Programmiersprachen und ihre theoretische Fundierung The Art of Computer Programming und TEX Programmiersprachen und Informatiksysteme Die Maus Objektorientierung, GUI Kryptographie/Kryptologie cbe a • @ a3b4efe • 2015-10-28 18:36 Geschichte der Informatik – Personen, Meilensteine Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Charles Babbage *1791 – †1871 Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise • Mathematiker, Philosoph, Erfinder DatenbankSprachen Tabellierung von Logarithmen und trigonometrischen Funktionen mittels Polynomen (1822) • Beschrieb die Analytical Engine, einen mechanischen mit Lochkarten programmierbaren Rechner (1837) • Analytical Engine sollte Speicher besitzen und wäre Turing-vollständig gewesen Zahlen C Programmiersprachen HTML Angewandte Informatik Strukturierung Style Sheets Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Modellierung Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Pascal objektorientiert Modularisierung Tastatur Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Shells • Entwickelte Difference Engine zur Planung Maus Bildschirm Netzwerkkarte Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik SQL und Ingenieur Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Ada Lovelace *1815 – †1852 Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Countess of Lovelace • Mathematikerin Planung Maus Zahlen C Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • Eigentlich: Augusta Ada King, Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals • Beschrieb Babbages Analytical Konstruktionsideen – Informatiksystem Programmiererin Engine Effizienz – Grenzen • Entwarf Programme für die Analytical Engine → erste Programmiererin • Beschrieb erstmals Verwendung eines Computers über numerische Berechnung hinaus Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Herman Hollerith *1860 – †1929 Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Tabuliermaschine Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Shells • Entwickelte mechanische Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • Statistiker Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals • Erstmalige Verwendung von Lochkarten für Daten, nicht Anweisungen (wie beim Jacquard-Webstuhl) • Anwendung von Hollerithmaschinen bei der US-amerikanischen Volkszählung 1890 • Gründete Tabulating Machine Company, ging letztendlich in IBM auf. Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Kurt Gödel *1906 in Brno, CZ, †1978 in Princeton, NJ, USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen • Bewies Unvollständigkeitssätze (1931) Tastatur HTML Angewandte Informatik Strukturierung Style Sheets Anwendung Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Unix Hilbertprogramms (1920) Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Shells • Beschäftigte sich mit Fragen des Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie • Mathematiker Zeichenketten Datenstrukturen imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen • Nutzte dazu Gödelisierung und Diagonalisierung • Fundamentale Grundlagen für Berechenbarkeit Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Erster Unvollständigkeitssatz Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Planung Maus Zahlen C Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Jedes hinreichend mächtige formale System ist entweder widersprüchlich oder unvollständig. Zeichenketten Datenstrukturen imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Alan Mathison Turing *1912 in London, GB, †1954 in Wilmslow, Cheshire, GB Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice • Logiker, Mathematiker und Informatik – Fundamentals Kryptoanalytiker • Entwickelte das Modell der Konstruktionsideen – Informatiksystem Programmiererin Turing-Maschine Effizienz – Grenzen • Neuformulierung von Gödels Resultat → Halteproblem Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung • Vater des Turing Tests zur Entscheidung, ob KI »intelligent« Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Enigma Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Bletchley Park Government Code and Cypher School Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Shells Enigma Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie • Dechiffrierung der deutschen Zeichenketten Datenstrukturen imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals • Nutzung der Bombe, eines elektromechanischen Rechners • Nutzung der Colossus, des ersten elektronischen Rechners Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Bombe Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Colossus Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Kondard Zuse 1910 bis 1995 Ludger Humbert asymmetrisch symmetrisch Bluetooth • Bauingenieur digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen 1910 | 1995 HTML Angewandte Informatik Strukturierung Style Sheets Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Anwendung Pascal objektorientiert Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Unix © Deutsches Museum Tastatur Windows Shells Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen © Deutsches Museum Nach dem Abitur in Hoyerswerda studierte Konrad Zuse in Berlin zuerst Maschinenbau, dann Architektur und schließlich Bauingenieurwesen. Nebenbei malte er, entwarf Plakate und zeichnete Karikaturen wie „Lehrer vor schlafender Schulklasse“. Mehrere seiner künstlerischen Werke wurden 2012 auf der documenta in Kassel ausgestellt. Seine erste Stelle bei den Henschel-Flugzeugwerken in Berlin gab er bald auf, um sich dem Entwurf und dem Bau automatischer Rechner zu widmen. Erfinder des Computers In der elterlichen Wohnung richtete er sich eine Werkstatt ein und baute dort bis 1938 die Z1, die erste binär arbeitende, programmierbare mechanische Rechenmaschine. Mit der Z3 folgte 1941 der erste vollautomatische, frei programmierbare Rechner in Relaistechnik. Sein Patentantrag dazu wurde 1967 „mangels Erfindungshöhe“ abgelehnt. Im 2. Weltkrieg arbeitete er auch an militärischen Projekten: Bei der Optimierung von Flugzeugflügeln führte er u.a. eine Prozesssteuerung ein. Mit dem „Plankalkül“ konzipierte Konrad Zuse 1945 die erste höhere Programmiersprache. Konstruktionen Hardware und Software Aufbau und Funktionsweise © Bundesministerium der Finanzen (BMF) © Staatliche Graphische Sammlung München Konrad Zuse • umstritten/nicht geklärt: Rolle und Verhältnis zur nationalisozialistischen Herrschaftsideologie (indirekte Unterstützung?) Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Theorie DatenbankSysteme Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie RelationenAlgebren Zeichenketten Datenstrukturen imperativ Suchen Robotik ERDiagramme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Technische Informatik Wir sind Informatik www.gi.de HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Sortieren • Generalist, Visionär • funktionsfähiger Computer (Wohnzimmer der Eltern) • erste höhere Programmiersprache: Plankalkül • Schachprogramme • Selbstorganisationsprinzip Bäume reguläre Ausdrücke DSL Programmierung Sprachtheorie 1949 gründete er die Zuse KG in Neunkirchen/ Hünfeld. Dort setzte er die Z4 wieder in Betrieb und vermietete sie als den ersten kommerziell gehandelten Computer der Welt an die ETH Zürich. Insgesamt lieferte die Firma bis 1969 rund 250 Rechner aus. Konrad Zuse erhielt für sein bahnbrechendes Lebenswerk zahlreiche Ehrungen. Unter anderem widmete ihm das Bundesfinanzministerium anlässlich seines 100.sten Geburtstags eine Gedenkmünze. Die Gesellschaft für Informatik vergibt als höchste Auszeichnung der Informatik die Konrad-Zuse-Medaille. Gesellschaft für Informatik www.gi.de/fileadmin/redaktion/Download/Zuse.pdf Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen • kein Kaufmann Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Grace Murray Hopper *1906 in New York City, NY, USA, †1992 in Arlington, VA, USA Ludger Humbert asymmetrisch symmetrisch • Mathematikerin Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Unix Angewandte Informatik Recht Mail C++ Smalltalk Python ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Anwendung Java Scheme Prolog Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Modellierung LATEX Datenbanken Windows Shells Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Theorie DatenbankSysteme Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie RelationenAlgebren Zeichenketten Datenstrukturen imperativ Suchen Robotik ERDiagramme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren Mark I, II und III HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • Arbeitete mit Aiken am Harvard Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice • Entdeckte den ersten Computer-»Bug« • Schrieb den ersten Compiler der Welt (für die Sprache A-0 für die UNIVAC I) • Arbeitete an COBOL mit • Beschäftigte sich intensiv mit Standards und Testverfahren • Arbeitete für die Eckert-Mauchly Computer Corporation, für DEC und die US Marine, zuletzt im Rang eines Konteradmirals Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Der erste(?) »Bug« Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Howard Hathaway Aiken *1900 in Hoboken, NJ, USA, †1957, St. Louis, MO, USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice • Mathematiker • Entwickelte mit Grace Hopper den Harvard Mark I, den zweiten elektromechanischen universellen Rechner (1944) • Entwickelte anschliessend weitere Computer Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine John von Neumann *1903 in Budapest, HU, †1957, Washington D.C. USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke • Ursprünglich: János von Neumann zu Maschinenmodelle Schaltkreise DatenbankSprachen Quantenmechanik, der Spieltheorie, der partiellen Differentialgleichungen, der Monte-Carlo-Verfahren und der Informatik • Berater im Manhatten-Projekt HTML Angewandte Informatik Strukturierung Style Sheets Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Anwendung Pascal objektorientiert Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Assembler wissensbasiert Softwaretechnik Modularisierung Tastatur Windows Unix • Arbeitete auf den Gebieten der Zahlen C Programmiersprachen LATEX Datenbanken Theorie Shells • Mathematiker Planung Maus Bildschirm Netzwerkkarte Praktische Informatik funktional Informatik im Alltag SQL DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik Peripherie Margitta Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie • Prägte alle modernen Rechner durch die von-Neumann-Architektur • Entwickelte unter anderem den Mergesort-Algorithmus Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Von-Neumann-Architektur Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine John Warner Backus *1924 in Philadelphia, PA, USA, †1992 in Ashland, OR, USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen erste Hochsprache (1957) • Entwarf Urform der Backus-Naur-Form zur Beschreibung kontextfreier Grammatiken (1959) • Turing-Award für seine Beiträge zum Entwurf von Hochsprachen (1977) Tastatur HTML Angewandte Informatik Strukturierung Style Sheets Anwendung Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Unix • Entwickelte dort FORTRAN, die Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Shells • Arbeitete bei IBM Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • Mathematiker Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Avram Noam Chomsky *1924 in Philadelphia, PA, USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen • Chomsky-Hierarchie • Grundlage der Computerlinguistik • Maschinelle Übersetzung • Seit Mitte der 1960er Jahre prominentes Mitglied der politischen Linken der USA Tastatur HTML Angewandte Informatik Strukturierung Style Sheets Anwendung Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Unix Sprache mathematisch Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Shells • Formalisierte natürliche Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • Linguist Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Edsger Wybe Dijkstra *1930 in Rotterdam, NL, †2002 in Nuenen, NL Ludger Humbert • Promotion in Informatik nach asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Studium der Mathematik und Physik Theoretische Informatik Automatentheorie Kabel Maschinenmodelle • Entwarf u.a. Dijkstras Algorithmus und Semaphoren • Forderte, dass sich die Informatik auf ihren Kern beschränkt (Brandmauer um die Kerninformatik) • Turing-Award für seine Beiträge zur Entwicklung von Programmiersprachen (1972) Folklore: Computer Science is no more about computers than astronomy is about telescopes. cbe a • @ a3b4efe • 2015-10-28 18:36 Planung Maus Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Praktische Informatik funktional Informatik im Alltag SQL DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Peripherie RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme Programmierung (1972) HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik Robotik • Wegbereiter der strukturierten Komplexitätstheorie Netzwerke Schaltkreise Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Charles Antony Richard Hoare *1934 in Colombo, LK Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke • Informatiker Maschinenmodelle Schaltkreise Moskauer Staatsuniversität • Entwickelte den Planung Maus Zahlen C Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • Studium in Oxford und an der Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals QuickSort-Algorithmus • Entwickelte das Hoare-Kalkül Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen • Arbeitete an Algol Konstruktionen Hardware und Software • Turing-Award für seine Beiträge zur Definition Entwicklung von Programmiersprachen (1980) • Heute emeritierter Professor der Universität Oxford und leitender Forscher bei Microsoft Research Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Friedrich Ludwig Bauer *1924 in Regensburg, D, †2015 in München, D Ludger Humbert asymmetrisch symmetrisch Bluetooth • Mathematiker und Physiker digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise • Mitarbeit an Algol 58 und Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Unix Angewandte Informatik Recht Mail C++ Smalltalk Python ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Anwendung Java Scheme Prolog Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Modellierung LATEX Datenbanken Windows Shells Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Theorie DatenbankSysteme Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie RelationenAlgebren Zeichenketten Datenstrukturen imperativ Suchen Robotik ERDiagramme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren (Kellerspeicher) zur Auswertung von Ausdrücken HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • Nutzte »Stacks« Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Algol 60 • Prägte den Begriff »Software Engineering« Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software • Forcierte Einführung des Faches »Informatik« an bundesdeutschen Hochschulen • Veröffentlicht 1972 das Informatikschulbuch »Andrej und das Untier« Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine ALGOL Ludger Humbert • Abkürzung für »Algorithmic Language« asymmetrisch symmetrisch Bluetooth • Algol 58/60 wurden im wesentlichen ohne kommerzielles Interesse entwickelt und fand sehr weite Verbreitung im akademischen Umfeld – wurde an fast allen Universitäten für die einführenden Veranstaltungen genutzt • Algol 58 wurde von den Streitkräften der USA genutzt (z. B. für Software für Cruise Missiles) digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN • bezeichnet eine Familie von Programmiersprachen • Algol 58/60: prozedural, imperativ, strukturiert, führte Blöcke ein • Algol 68: nebenläufig, imperativ Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie • Algol 68 enthält viele wegweisende Konzepte • Algol beeinflusste die Entwicklung der folgenden Programmiersprachen maßgeblich – als Ergebnis der »Überfrachtung« von Algol 68 wurden (von Niklaus Wirth) Algol W und Pascal entwickelt Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine ALGOL in der Praxis Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Joseph Weizenbaum *1923 in Berlin, D, †2008 in Gröben, D Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen Entwicklung des ARPANET mit • Mahnte zum kritischen Umgang mit dem Computer Tastatur HTML Angewandte Informatik Strukturierung Style Sheets Anwendung Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Unix • Arbeitete an der Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Shells • entwickelte ELIZA (1966) Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie • Mathematiker Zeichenketten Datenstrukturen imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Edgar Frank Codd *1923 in Isle of Portland, GB, †2003 in Williams Island, FL, USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals • Mathematiker Konstruktionsideen – Informatiksystem • Arbeitete am Relationenmodell für Programmiererin Effizienz – Grenzen Datenbanken Konstruktionen • Turing-Award für diese Arbeiten (1981) Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine John McCarthy *1927 in Boston, MA, USA Ludger Humbert asymmetrisch • Mathematiker symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise • Prägte den Begriff • Entwarf die Planung Maus Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Praktische Informatik funktional Informatik im Alltag SQL DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik Peripherie »Artificial Intelligence« (1955) Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Programmiersprache LISP (1958), die erste Implementierung des Logikkalküls auf dem Computer • Entwarf wichtige Algorithmen, u. a. den Garbage Collector • Turing-Award für seine Arbeiten auf dem Gebiet der KI (1971) cbe a • @ a3b4efe • 2015-10-28 18:36 Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Bob W Floyd 1936, New York †2001, California, USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise • »Shortest-path algorithm« (Ermittlung des kürzesten Weges in einem Netzwerk) Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Shells Verifikation von Programmen/Programmiersprachen Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie • Semantik, Analyse und Zeichenketten Datenstrukturen imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise • Turing-Award für seine Arbeiten (1978) Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Donald Ervin Knuth *1938 in Milwaukee, WI, USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Unix Angewandte Informatik Recht Mail C++ Smalltalk Python ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Anwendung Java Scheme Prolog Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Modellierung LATEX Datenbanken Windows Shells Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Theorie DatenbankSysteme Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie RelationenAlgebren Zeichenketten Datenstrukturen imperativ Suchen Robotik ERDiagramme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren Informatik HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • Beiträge zur theoretischen Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice • Autor von »The art of computer programming« • Entwickelte TEX • »Literate programming« • Turing-Award für Beiträge zur Analyse von Algorithmen und zum Design von Programmiersprachen, aber auch für seine Buchreihe (1974) Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Niklaus Wirth *1938 in Winterthur, CH Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen • Entwickelte Lilith (1980) und Ceres (1986) zwei Workstations • Turing-Award für die Entwicklung seiner Programmiersprachen (1984) Tastatur HTML Angewandte Informatik Strukturierung Style Sheets Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Anwendung Pascal objektorientiert Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Windows Shells Unix Modula (1973–1976), Modula-2 (1977–1980) und Oberon (1986–1990) Pascal und Modula-2 wurden wesentliche Elemente des Informatikunterrichts in Deutschland Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Theorie DatenbankSysteme Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie RelationenAlgebren Zeichenketten Datenstrukturen imperativ Suchen Robotik ERDiagramme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren • Entwarf Pascal (1968–1972), HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik Informatik Bäume reguläre Ausdrücke DSL • Elektroingenieur, Promotion in Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Douglas Engelbart *1925 in Portland, Oregon †2013 in Atherton, California Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Unix Angewandte Informatik Recht Mail C++ Smalltalk Python ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Anwendung Java Scheme Prolog Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Modellierung LATEX Datenbanken Windows Shells Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Theorie DatenbankSysteme Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie RelationenAlgebren Zeichenketten Datenstrukturen imperativ Suchen Robotik ERDiagramme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren • Visionierte und entwickelte die erste HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik • (Elektro-)Ingenieur Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Computermaus • Konzepte zur sogenannten »Direkten Interaktion« mit Elementen (Fenster, Texte, Grafiken, . . . ) auf dem Bildschirm • Arbeit an grafischen Benutzungsoberflächen Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung • Turing-Award für Vision der interaktiven Nutzung von Informatiksystemen und Erfindungen, um diese Vision umzusetzen (1997) Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Alan Curtis Kay *1938 in Springfield, MA Ludger Humbert • Mathematiker asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke • Entwickelte das Konzept der Objektorientierung für grafische Benutzung am Xerox PARC • Gemeinsam mit Adele Goldberg: Entwicklung der Programmiersprache Smalltalk • Arbeit an grafischen Benutzungsoberflächen (GUI) • Konzepte für portable Informatiksysteme (für Schülerinnen und Schüler) • Programmierumgebung »Scratch« für Schülerinnen und Schüler Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist • Turing-Award für die Arbeiten zur Objektorientierten Programmierung (2003) cbe a • @ a3b4efe • 2015-10-28 18:36 Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Xerox PARC Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice • »Think Tank« • Prototypen für GUI-Systeme • Betriebssystem(e) und Programmiersprachen • »Some Computer Science Issues in Ubiquitous Computing« – (Weiser 1993) Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Ronald (Ron) Linn Rivest *1947, Schenectady, New York, USA Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise • Mathematiker und Informatiker DatenbankSprachen Zahlen C Programmiersprachen HTML Angewandte Informatik Strukturierung Style Sheets Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Modellierung Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Pascal objektorientiert Modularisierung Tastatur Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Shells Adi Shamir Entwickung des kryptographischen Verfahrens, das mit öffentlichen Schlüsseln arbeitet und praktikabel ist (z. B. um E-Mails zu verschlüsseln) Planung Maus Bildschirm Netzwerkkarte Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik SQL • Gemeinsam mit Leonard M. Adleman und Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen • RSA RC2 – eine Weiterentwicklung – wurde von der National Security Agency (NSA) für den Export verboten, da »zu sicher« • Turing-Award (mit Adleman und Shamir) für Arbeiten zur Kryptographie (2002) Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Zusammenfassung Ludger Humbert asymmetrisch symmetrisch Bluetooth Informatik – Konzepte digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Planung Maus Zahlen C Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail C++ Smalltalk Python ML Empfehlungen Bildungsstandards SPSS Betriebssysteme Java Scheme Prolog Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Pascal objektorientiert Modellierung LATEX Datenbanken Theorie Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik Zur Strukturierung gibt es ein wissenschaftliches Analyseinstrument mit dem Verfahren der Fundamentalen Ideen (Schwill) und die Kollektion der großartigen Prinzipien Great Principles (Denning). Dieser Punkt kann an dieser Stelle der Vorlesung nicht thematisiert werden, da Fachmethoden und -inhalte bekannt sein müsssen, um diese Ansätze zu verstehen. Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Informatik – Information als Schlüssel? Von der Informationstheorie (Shannon), über Abgrenzungsversuche – Brandmauer (Dijkstra) und Ausweitungsdiskussionen (Nygaard) bis hin zu dem inflationären Gebrauch des Begriffs Information im Alltag (z. B. Deutsche Bahn: statt Auskunft wird Information verwendet) Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Zusammenfassung Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen • Der Sprachforscher Chomsky kategorisiert Sprachen und legt so auch die Grundlage für künstliche Sprachen (→ Programmiersprachen) Tastatur HTML Angewandte Informatik Strukturierung Style Sheets Anwendung Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Unix beweisen – dass es in jeder wohldefinierten Landkarte der Mathematik »weiße Flecken« gibt, über die nichts ausgesagt werden kann Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Shells • Die Mathematiker Gödel und Turing stellen fest – ja, sie Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik Informatik – Theoretische Fundierung Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Zusammenfassung Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise • Datenstrukturen werden als abstrakte Entitäten problemangemessen aufgerichtet, damit • die auf den Datenstrukturen definierten Prozesse in möglichst einfacher Form mit Algorithmen beschrieben werden können. Zahlen C DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Unix Angewandte Informatik Recht Mail C++ Smalltalk Python ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Anwendung Java Scheme Prolog Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Modellierung LATEX Datenbanken Windows Shells Assembler wissensbasiert Softwaretechnik Modularisierung Bildschirm Netzwerkkarte Theorie DatenbankSysteme Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie RelationenAlgebren Zeichenketten Datenstrukturen imperativ Suchen Robotik ERDiagramme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren Das Ying-Yang der Informatik . . . HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik Algorithmen und Datenstrukturen Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen • Bereits Lovelace machte sich Gedanken über die Mächtigkeit/Macht des Programmierens und der künstlichen Intelligenz – die informatische Modellierung kennt kaum Grenzen . . . Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Geschichte der Informatik – Personen, Meilensteine Zusammenfassung Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise DatenbankSprachen • Anforderungen moderner vernetzter Systeme gerecht werdend, müssen kryptographische Verfahren entwickelt werden, die »Sicherheit« in Form von Algorithmen (Programmen) ermöglichen Rivest Tastatur HTML Angewandte Informatik Strukturierung Style Sheets Anwendung Recht Mail Java C++ Smalltalk Python ML Scheme Prolog Modellierung Schulinformatik Empfehlungen Bildungsstandards SPSS Betriebssysteme Pascal objektorientiert Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Assembler wissensbasiert Softwaretechnik LATEX Datenbanken Theorie Unix Engelbart – Maus, Kay, Grafische Benutzungsoberflächen und ihre Programmierung zu verdanken Zahlen C Programmiersprachen Modularisierung Bildschirm Netzwerkkarte Shells • Nutzungsbezogene Informatikbeiträge sind Visionären wie Planung Maus SQL Praktische Informatik funktional Informatik im Alltag Peripherie DatenbankSysteme Zeichenketten Datenstrukturen imperativ Suchen Robotik RelationenAlgebren Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren ERDiagramme HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik Bereichsausweitungen Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer Hellige, Hans Dieter, Hrsg. (2004). Geschichten der Informatik. Visionen, Paradigmen und Leitmotive. Berlin: Springer. isbn: 3540002170. Weiser, Mark (1993). »Some Computer Science Issues in Ubiquitous Computing«. In: Comm. ACM 36.7. reprinted in Mobile Computing and Communications Review, Vol. 3, No. 3, Pages 12–21; http://www.ubiq.com/hypertext/weiser/UbiCACM.html, S. 75–84. url: http://www.cs.cmu.edu/~jasonh/courses/ubicompsp2007/papers/03-some-compsci-issues-ubicomp.pdf (besucht am 02. 02. 2012). Geschichte der Informatik – Personen, Meilensteine Ludger Humbert asymmetrisch symmetrisch Bluetooth digitale Wasserzeichen Verschlüsselung Wireless LAN Sprachen Theorie formaler Sprachen Kryptologie Grammatiken Kryptoanalyse ISDN Internet Funk Theoretische Informatik Automatentheorie Kabel Komplexitätstheorie Netzwerke Maschinenmodelle Schaltkreise Zeichenketten Zahlen C Datenstrukturen Planung Maus Netzwerkkarte DatenbankSprachen Programmiersprachen Tastatur HTML Strukturierung Style Sheets Angewandte Informatik Unix Recht Schulinformatik Anwendung Mail Smalltalk Python Empfehlungen Bildungsstandards SPSS Betriebssysteme C++ ML Institutionalisierung Didaktik – Informatik und Gesellschaft Dokumentbeschreibung Windows Shells Java Scheme Prolog Modellierung LATEX Datenbanken Theorie Pascal objektorientiert wissensbasiert Softwaretechnik Modularisierung Bildschirm SQL Praktische Informatik funktional Informatik im Alltag Peripherie Assembler imperativ Suchen Robotik DatenbankSysteme Listen zusammengesetzte einfache Graphalgorithmen Prozessoren Sortieren RelationenAlgebren HashTabellen Graphen algorithmische OptiMethomierung den Algorithmen Kodierungstheorie Technische Informatik ERDiagramme Bäume reguläre Ausdrücke DSL Informatikunterricht Geschichte Libreoffice Informatik – Fundamentals Konstruktionsideen – Informatiksystem Programmiererin Effizienz – Grenzen Konstruktionen Hardware und Software Aufbau und Funktionsweise Programmierung ............................................................... Dieses Dokument wird unter der folgenden Creative-Commons-Lizenz veröffentlicht: c b e a http://creativecommons.org/licenses/by-nc-sa/4.0/ Sprachtheorie Die Brandmauer Datenstrukturen, Algorithmen, Programmiersprachen Der Humanist Datenbanken Mathematische Grundlagen für die Relationen Künstliche Intelligenz cbe a • @ a3b4efe • 2015-10-28 18:36 Programmiersprachen und ihre theoretische Fundierung The Art of Computer