Archive for the ‘Computer’ Category
Gestern habe ich eine Präsentation und das zugehörige Abstrakt vorbereitet. Der Vortrag wird nächste Woche stattfinden, danach werde ich berichten, ob es gut gelaufen ist.
Beim Erarbeiten habe ich allerdings feststellen können, dass ich noch nicht ganz vertrottelt bin.
Ein bisschen was geht noch 🙂
Heute habe ich bei mir ziemlich merkwürdige Ausfälle, die zuerst einmal so aussehen, als ob meine Internet-Verbindung ganz langsam ist.
Nach und nach mehren sich aber die Indizien, dass andere Leute die gleichen Probleme haben. Bei twoday geht es jetzt wieder, Facebook war ziemlich matt am Abend. Und da kann ich feststellen, dass es an Facebook gelegen sein musste, weil ja auch die Mails, die direkt vom Server auf das Handy geschickt werden, nicht mehr rechtzeitig kamen.
Gut, dass das nicht gestern der Fall war. Denn da habe ich nur so die Megabyte downgeloaded. Und da ging es vergleichsweise wirklich schnell mit 4Mbit/sec.
–
Weiß wer Näheres?
Heute nach dem ersten Tag bin ich rechtschaffen müde. Die Teilnehmer starten nicht bei Null, zumindest 6 von den 8 tun das nicht. Inzwischen hat sich der Zeitplan auf den Jänner ausgeweitet und ich habe noch zwei Dienstreisen gewonnen.
Je eine Woche Sofia im November und im Dezember. Eine Woche Belgrad war eh eingeplant.
Und eben habe ich erfahren, dass ich möglicherweise ein Testseminar an einer Uni in Belgrad abhalten soll. (ein bezahltes)
–
Man könnte sagen: momentan läuft es gut. Tut es ja eigentlich eh fast immer. Aber heute bekam ich quasi die Bestätigung, dass die Arbeit der vergangenen Monate wirklich für sehr gut befunden wurde. Da kann man noch so eingebildet sein: wenn das Lob von außen kommt, zählt es doch mehr 😉
Ich bin zu alt
Ist mir alles zu kompliziert. Nicht wirklich. Aber irgendwie schon.
Es gibt ja einige Menschen, die behaupten, dass sie sich mit dem Computer nicht auskennen. Nun, eigentlich kann ich das nicht sagen. Aber manchmal hilft auch das ganze Auskennen nichts. Ich stelle fest, dass ich wüsste, was schuld ist, wenn etwas nicht geht, aber ich kann es nicht an Ort und Stelle beheben, weil …
Und für die, die es interessiert:
Ich arbeite an einem Projekt. Die Kunden sind ein Bilder gewöhnt, die von einem Programm kommen, das ich nicht habe. Das Programm kann man auch als Open Source für den privaten Gebrauch herunter laden.
Die Installation davon dauert auch auf einem schnellen Rechner einige Minuten. Das Programm verwendet eine Datenbank.
Beim Starten des Programmes X stellt sich heraus, dass die Datenbank nicht installiert wurde.
D.h. das Datenbankprogramm wurde schon installiert, aber es wurde nicht „die Datenbank“ für das bewusste Programm installiert.
Einige Zeit suche ich. Die Datenbank läuft auf meiner Version des Betriebssystem – angeblich. Allerdings kann es sein, dass das Installationsprogramm, das von der Firma, die das X zusammen mit der Datenbank installiert, nicht auf meinem Rechner ordentlich läuft. Vermutlich läuft es mit XP oder Windows 7.
Jetzt bin ich ja ein sogenannter „Power User“. So einer lässt sich davon nicht abschrecken. Ich habe ja Windows 7 auf einer virtuellen Maschine, die auf meiner Windows 8 Plattform läuft. Also wird die virtuelle Maschine angeworfen.
Ich bekomme aber die Installationsdateien nicht auf die virtuelle Maschine. Copy und Paste scheint hier eine Größenbeschränkung zu kennen, die es sonst nicht hat.
Ich versuche noch die Laufwerke zu „sharen“, aber es ist 4 Uhr früh. Ich gehe schlafen. Am nächsten Morgen rufe ich meinen Kollegen an, um ihn über die Größenbeschränkung von copy&paste zu befragen. Die ist ihm nicht bekannt, aber er empfielt mir den Umweg über eine USB-Stick.
Ich sitze inzwischen beim Kunden. Die Lösung mit dem USB-Stick funktioniert. Die Installation auch. Plötzlich gibt es die richtige Datenbank, die vom Programm X adressiert werden kann.
Jetzt gibt es ein anderes Problem. Das Programm und/oder die virtuelle Maschine versucht, an die Laufwerke meines Laptops heranzukommen und schlägt mir einen Benutzer vor, den es auf der Maschine nicht gibt.
Interessanterweise funktioniert Programm X und ich bin fast zufrieden, bis ich feststelle, dass mein virtuelles Windows 7 noch eine Aktivierung braucht. Die virtuelle Maschine habe ich nämlich von meinem alten Rechner übertragen und daher gilt die ursprüngliche Aktivierung nicht mehr. Aktivierung über Internet ist im Prinzip keine Angelegenheit. Ich muss nur meinen Proxy aufmachen und die virtuelle Maschine auch über den Host (das ist mein Laptop) an die Außenwelt (das ist das Internet) verbinden. Die Aktivierung funktioniert nicht.
Naja, ist klar. Ich habe ja noch das Proxy-programm dazwischen und dann gibt es noch den Proxy des Kunden, über dessen Local Area Network ich angebunden bin.
Ein Kollege klärt mich auf, dass die Aktivierung sowieso nicht über einen Proxy geht sondern direkt über Ansprache der Netzwerkkarte, also im Prinzip 2 Stufen tiefer im TCI/IP-Stack. Und da hat der Proxy des Kunden etwas dagegen.
Zuhause habe ich die Aktivierung noch einmal probiert. Alles lief wie am Schnürchen. Soweit bin ich glücklich.
Aber ehrlich: – und ich bin da nicht fishing for compliments – ist das nicht alles ein bisschen kompliziert.
Da muss man der NSA ja doch ein großes Lob aussprechen. Solche Hindernisse sind für die nur peanuts.
Und dann denke ich mir, dass es schon ein Wahnsinn ist, was da alles funktioniert. Und irgendwie bleibt der Wunsch, so lange wie möglich noch alles verstehen zu können, was da mit den Computern so abläuft.
Künstliche Intelligenz Teil 2
Sehr häufig wird von einer »menschlichen« Intelligenz gesprochen, wenn vom Thema »künstlicher Intelligenz« die Rede ist. Im folgenden werden vier Personen erwähnt, die in der Entwicklungsgeschichte der KI eine große Rolle gespielt haben. Drei waren Amerikaner. Einer lebt noch und mit ihm fange ich an: Er heißt Dietrich Dörner, ist deutscher Psychologe und emeritierter Hochschullehrer an der Otto-Friedrich-Universität in Bamberg.
Vor langer Zeit kam mir sein Buch in die Hände: »Tanaland und Lohhausen«. Da ging es nicht um KI, sondern um zwei Modellversuche. Eines spielte in einem fiktiven Land in Afrika (Tanaland) und eines in einer deutschen Kleinstadt. Die Versuchsanordnung schilderte den Ausgangszustand der beiden Orte und dann mussten die Teilnehmer »regieren«. Es gab Regierungssitzungen und dann wurde eine Simulation gefahren, was im Verlauf des nächsten Monats zu erwarten war. Soweit ich mich erinnere, war im Buch auch ein Bericht über ein tatsächliches Land enthalten, der ziemlich genau das Niederwirtschaften wiederspiegelte. Es gab 4 Regierungstruppen, nur eine, welche in der deutschen Kleinstadt fuhrwerkte, konnte zumindest den Status quo erhalten. Die drei anderen sandelten ab. Was kann man daraus für KI ableiten. Nun, es geht eher darum, dass menschliches Verhalten durch den Computer simulierbar ist. Und der Computer war in der damaligen Zeit sehr beschränkt. Die Ausgaben erfolgten rein textuell. Später gab es einmal das Spiel Sim-City und ähnliche. Die konnten wesentlich mehr Parameter erfassen und machten echt Lust, sich daran zu versuchen.
Dietrich Dörner hat später mehr mit dem Computer gemacht und hat versucht, Objekte mit Emotionen auszustatten. Das hat meinen Lebensweg auf kuriose Weise beeinflusst. Ich wollte selbst ähnliche Programme schreiben und besorgte mir um teures Geld eine bestimmte Software (Smalltalk), mit der ich die Simulationen programmieren wollte. Ich kam allerdings nicht dazu. Denn ich wurde »Smalltalk-Spezialist« und in das größte objektorientiere Programm Europas in den 90erjahren integriert. Letztlich hat das mein Leben bis zu meiner kürzlichen Pensionierung beeinflusst. Aber das gehört jetzt nicht hierher 🙂
Es reicht, hier fest zu stellen, dass für mich die Möglichkeit dieser Simulationen eine Parallelität von menschlicher Aktivität un berechneter Simulation bzw. Modellierung möglich ist, die mit den heutigen Computerleistungen in unterschiedlichsten Spielen unter Beweis gestellt wird.
Nun komme ich zu Marvin Minsky und Joseph Weizenbaum. Sie wurden einmal sowohl als Antipoden als auch als die Spitzen der KI-Forschung angesehen. Ihr Zugang an das Thema war sehr unterschiedlich. Minsky gilt als der Erfinder der »Frames«. Frames (engl. für: Rahmen) sind Konstrukte zur Wissensrepräsentation, die komplementär zur Repräsentation von Wissen mittels Logik (zum Beispiel Prädikatenlogik) sind. Als Erfinder der Frames gilt Marvin Minsky. (Man kann sie sich im Wesentlichen als Objekte ohne Methoden vorstellen, d. h. Frames sind in einer natürlichen und hierarchischen Vererbungsstruktur eingebettet und besitzen Attribute, sogenannte Slots (etwa: Schubfächer). Übergeordnete Frames können dabei ihre aktuellen Slotwerte, die sogenannten Filler, an untergeordnete Frames vererben. Eng verwandt mit den nicht-Logik-basierten Frames sind die semantischen Netze.Als kognitives Äquivalent zu Frames können beim Menschen Stereotype und Prototypen/Archetypen betrachtet werden. [Wikipedia])
Die Vorstellung von Frames hat mir ursprünglich überhaupt nicht gefallen. Ich sah sie als Einengung des »denkbaren« Bereichs. Inzwischen sehe ich das anderes. Wenn man die oben stehende Verwandtschaft mit Stereotypen, wie sie der Mensch sieht, betrachtet, kann man feststellen, dass Programme, die darauf beruhen, ja fast menschliche Verhaltensweisen zeigen. Eigentlich denken Beamte so und einfache Leute.
Joseph Weizenbaum hingegen kennt man als den »Erfinder« des Programmes Eliza. Dieses Programm simulierte einen Psychoanalytiker. Es konnte sich mit Personen unterhalten, die nicht wussten, dass sie sich mit einer Maschine unterhielten. Weizenbaum selbst war erstaunt, dass er mit einem relativ einfachen Programm die Leute so beeindrucken konnte. Sie waren fest überzeugt, dass ihre Gespräche mit einem Menschen geführt wurden. (Der natürlich hinter einem Vorhang versteckt war)
Joseph Weizenbaum hat sich in späten Jahren sehr skeptisch gegenüber KI gezeigt. Das was die Leute bewunderten oder bewundern, hat nichts mit Intelligenz zu tun. Diese Aussage wird diejenigen Leserinnen erfreuen, die sowieso meinen, dass der Computer nicht »denken« kann.
Phil Agre ist nun ein Wissenschaftler, der sich lange am MIT aufgehalten hat und dort mit KI-Forschung beschäftigt hat. Ich kann mich noch erinnern, dass er einmal ein »paper« geschrieben hat, mit dem er sich vom MIT verabschiedet hat. Er meinte, dass die Forschung in der KI ziemlich kindisch sei, wenn der Computer nur Fragen beantworten sollte, die darin gipfelten, ob ein Koffer vor dem Regenschirm oder dahinter stehen würde. Damals war das aber noch gar nicht ein Koffer oder ein Regenschirm. Es war ein Quader und ein Zylinder. Es ging um die räumliche Erfassung eines geometrischen Sachverhalts und um die Interpretation dessen, was gesehen werden kann. Der Mensch macht diese Auswertung quasi sofort zwischen Netzhaut und Gehirn in Blitzeseile, ohne dass er sich dessen bewusst ist. »Warum fragen wir den Computer nicht, ob es einen Gott gibt?« zitiere ich sinngemäß aus seinem damaligen Schreiben.
Vielleicht hatte er Recht mit dieser Fragestellung. Allerdings war man damals noch lange noch nicht so weit, abstrakte Inhalte zu verarbeiten. Man forschte daran, wie die Sensorik einer KI beschaffen sein müsste. Was muss der Computer von seiner Umwelt wissen und wie kommt er an dieses Wissen?
Heute könnte man bereits solche Fragen stellen. Man wird mit der Existenzfrage Gottes keine befriedigende Antwort bekommen, aber auf viele andere Fragen können heute bereits mobile Telefone eine gültige und hilfreiche Antwort geben.
Skeptiker behaupten in der Regel, dass der Computer nur das machen kann, was ihm der Mensch anschafft. Manche Menschen sind eigentlich genauso, oder? Aber auf alle Fälle ist es notwendig, dass der Computer in der Lage ist, zu erkennen, wie seine Umgebung beschaffen ist und was man daraus lernen kann. In einem beschränkten Rahmen können das heute System, die in Autos eingebaut sind und der Fahrsicherheit dienen sollen.
Soll ich diese Ausführungen fortsetzen?
Ich bin ziemlich loyal, manchmal mehr als mir gut tut. Den Internet-Explorer verwende ich nur dann, wenn ich meine Reise-Abrechnungen mache. Unsere Steuerberatungskanzlei verwendet ein Produkt, dass nur über den Internet-Explorer ansteuerbar ist.
Sonst verwende ich Firefox.
Habe ich verwendet. Irgendwie hat mich die heutige Zeitungsmeldung von raschen Releases 4,5,6,7 aufgeschreckt. Ich gehöre ja zu den Leuten, die brav alle 4er-Betas in Verwendung genommen haben.
Heute habe ich mir die neueste Version von Chrome heruntergeladen.
Sie überzeugt mich auf Anhieb. Schnell, intuitiv und aufgeräumt.
diesen Beitrag schreibe ich schon mit Chrome.
Chrome ist jetzt mein Default-Browser.
Auch meine Loyalität hat Grenzen. Ich mag nichts, was schlechter funktioniert, als es die Notwendigkeit ist. (Frei nach: „Die Welt ist alles, was der Fall ist.“)
In den vergangenen zwei Tagen habe ich auf zwei verschiedenen Laptops gearbeitet und in den verschiedenen Wartezeiten auf dem Handy und dem iPad Dokumente angesehen.
Das Handy ist kein Problem, das hat einen so anderen Formfaktor, dass ich weiß, dass es anders zu bedienen ist. Doch jetzt im Zug, nachdem derjenige Verspätung hatte und ich am iPad arbeitete, habe ich beim Starten des Laptops lange gebraucht, bis ich überrissen habe, dass es nichts hilft, wenn ich am Bildschirm herum tappe.
Das wäre ja auch kein Problem. An die zunehmende Verkalkung werde ich mich gewöhnen müssen. Doch es überrascht mich, wie sehr ich mich an das Titschi-Tatschi innerhalb weniger Minuten gewöhnen kann.
P.S. Dabei tippe ich sowieso viel lieber. Denn damit bin ich weit schneller.
P.P.S Der Wagon der tschechischen ersten Klasse zeigt auch die Zuggeschwindigkeit an. Die 161 km/h sind durchaus beeindruckend auf der Strecke und wirbeln mich auch ganz schön herum:)
http://www.heise.de/newsticker/meldung/10-Jahre-Agiles-Manifest-zur-Geburt-agiler-Softwareentwicklung-1188299.html
10-Jahre bestehen jetzt die Aussagen zu agiler Programmierung. Mittlerweile gibt es ja agiles Programmmanagement, agiles Testen, agiles Masturbieren und agiles Stehenbleiben.
Scherz beiseite. Die Agilität hat schon etwas früher begonnen. Vermutlich mit XP (Extreme Programming) von Kent Beck. Das wurde ziemlich belächelt. Der enge Zusammenschluss von Kunden und Entwicklern erschien damals noch als Utopie.
Darüber wird heute nicht mehr gewitzelt.
Mit Kent Beck habe ich Nächte in Las Vegas verbracht und über sein Testverständnis diskutiert. Er stellte es so dar, dass mit Unit-Tests alles abgedeckt wäre. Die spielen sich noch auf Entwicklerebene ab und sind zweifellos ein „extrem“ guter Beginn., aber nicht die ganze Strecke.
Als das Manifest veröffentlicht wurde, gab es schon 17 verschiedene agile Methoden. Ich selber war ein Verfechter von „Crystal Clear“ und baute einiges davon in den Softwareentwicklungsprozess, für den ich nach der Jahrtausendwende verantwortlich war. Vielleicht rührt auch meine Begeisterung für American Football von einer agilen Methode namens „SCRUM“ (von Ken Schwaber) her. Scrum ist nach einem Spielzug bei Rugby benannt, von dem sich wiederum das American Football ableitet.
Dirk Gentry’s Holistic Agency: everything is interconnected.
Heute ist das alles alter Hut. Und trotzdem erlebe ich es in den Firmen, wie sie vergeblich versuchen, ihre eigenen Programmentwicklungsprozesse zu strukturieren, umzustellen und zu verbessern. Und manchmal bin ich entsetzt, wie wenig eigentlich die Programmierer von den Entwicklungen wissen, die sich in ihrem Umfeld abspielen.
[About an article in LinkedIn by Shelly Palmer: „I consider this to be a superb article.“] My answer:
That puts me in one of the two classes of human beings. The members of this class will agree to the statements of Shelly Palmer (aspects of Artificial Intelligence).
The members of the other class will disagree. It is just as simple as that. Two classes. In the last 50 years I have had discussions with people about artificial intelligence and I am surprised that the argumentation of the members of the second class has never changed. Now I am deliberately offending this people: they behave like criminals during an interrogation. Don’t admit to something that has not been proven yet!
Yes, it is true. Definitely a program can not excel in some disciplines that have not been tried yet. I have an ongoing discussion with a quite intelligent guy who claims that a computer could not have a feeling for art. Personally, I am still working on that argument although I don’t consider it a „killing threat“.
A hundred years ago, a very famous Austrian writer and journalist wrote about the general attitude of the people that could not accept the steam engine and its consequence, the train. If the train is going faster than 30 km/h the devil will come and fetch you. This is just one example of many, where people could not cope with the imagination of other foreseeing humans. I admit that I also have my limits of imagining certain contents of science fiction. Actually, there are just two of them; a) time travel backwards in time and b) beaming (if you know Startrek). Both hesitations of mine are based on the problem of very, very big numbers. Even if we have Terabyte hard disks nowadays, the actual storage must be much bigger for this disks in order to take care of statistical errors. But with beaming every single particle even on a subatomic stage would have to be reproduced without any error.
I had my own resentments in the past: why would be need color monitors? I could not see any advantage it it. I was wrong – just like Ken Olson from Digital Equipment Corp. when whe underestimated the importance of the personal computer.
I thought Go would be still a winner for the next ten years. I was wrong. However, I was right in one specific assumption. You have to work with several strategies and have them operate in conjunction. I have claimed this in a different context of quality control. It is not possible to test software by just using one strategy. (e.g. test automation) I could prove this by a geometry example. My assumption still holds true. It is one of the main features that AlphaGo combines two Neural Networks and Monte Carlo methods apart from the nitty-gritty part of handling the game.
If people argue about what the computer will never be able to achieve they will be surprised about some details which are not so favourable for the human comfort in the future.
Kennen Sie den Witz, in dem gefragt wird, woran man den Psychiater im Striptease-Lokal erkennt?
Er ist der einzige, der nicht auf die Bühne sondern ins Publikum schaut.
So ähnlich fühle ich mich auch. In installiere gerade Visual Studio 2010 Professional von Microsoft auf einer 64bit-Maschine. Ich tue das nicht, weil ich jetzt ein ganz tolles Programm für Windows programmieren will. Wenn ich programmiere, dann eher in Python unter einer eclipse-Umgebung.
(Doch eclipse helios (profan version 3.6) habe ich heute auch schon installiert und meine Anwendung auf einem neuen Rechner sehr schnell zum Laufen gebracht. Schneller und leichter als ich es erwartet hätte.)
Ich sehe es einfach als Verpflichtung an, mich auf neuestem Stand zu halten. Ich muss wissen, womit Programmierer heute arbeiten, mit welcher Unterstützung durch die Werkzeuge sie rechnen können.
–
Da fällt mir etwas ganz „Lustiges“ auf. In einer Installationssequenz von mehr als einem Gigabyte ist das erste installierte System das „Microsoft Application Error Reporting“-System.
Das ist logisch, denn alles danach könnte praktisch bereits damit abgehandelt werden. (Das stimmt so nicht ganz, den in Wirklichkeit werden auftretende Fehler während der Installation von einem bereits auf der Maschine existierendem Error Reporting System abgehandelt.)
Als Mensch, der beruflich vorrangig mit Fehlern in der IT zu tun hat, finde ich das amüsant. Ich finde darin aber auch einen erheblichen – und wir mir scheint positiven – Paradigmenwechsel.
Man ist sich bewusst, dass Fehler auf eine bestimmte Weise behandelt gehören. Je besser das geschieht, desto weniger Kosten entstehen bei ihrer Beseitigung.
–
Und offen gestanden, diese Riesenprogrammpakete sind zwar nicht fehlerfrei aber schon verdammt gut, wenn man ihren Umfang betrachtet. Man kann auch über Microsoft schimpfen, wenn man will. Die Entwicklungswerkzeuge sind sehr gut. Wie es allerdings auch das open source tool eclipse ist.
–
Und so erzähle ich den Studenten dann, wie es sich in der open source Welt anfühlt, wie in der DOT-NET-Welt, wie in der SAP-Welt, wie in der JBOSS oder TOMCAT-Welt – und wenn ich einen lieben Freund etwas näher im Zugriff hätte, könnte ich ihnen auch etwas über Programmentwicklung in ORACLE erzählen.
–
Programmieren ist heute genauso schwer wie vor 40 Jahren, obwohl man damals vielleicht nur auf 1000 Worte Code achten musste. Heute sind es hunderte von Megabyte oder zumindest mehr als 1 Megabyte.
Die Werkzeuge laufen der steigenden Komplexität nach.
–
Müssen die Programme aber unbedingt noch komplexer werden?
