Archiv des Tags ‘programmierung’

Ontologien und Produktanfragen

Donnerstag, den 3. April 2008

Hallo Jungs und Mädels,

ich möchte hier mal ein wenig über meine Bachelorarbeit erzählen, die ich seit gut zwei Monaten schreibe und die einen direkten Bezug zu quube hat. Der Titel wird irgendwas in Richtung Integration von Ontologien in eine Plattform für Produktanfragen lauten. Ontologien sind grob gesagt explizite Beschreibungen von Konzepten und die Plattform für Produktanfragen ist quube :)

Diese ontologische Beschreibung von Konzepten hat in den letzten Jahren durch den Hype um das Semantic Web viel Aufmerksamkeit auf sich gezogen. Man kann also die Konzepte von Produkten, Produktanfragen, Produktklassen und Produkteigenschaften und ihre Beziehung zueinander definieren. So kann man beispielsweise sagen, dass sich eine Anfrage immer auf eine oder mehrere Produktklassen (z.B. “Mountain-Bike”) bezieht und Attribute haben kann, die den Produktwunsch näher spezifieren (z.B. “mindestens 7 Gänge”).

Die Vorteile, die man sich von der Verwendung von Ontologien erhoffen kann, sind:

  • Mehr Unterstützung für den Benutzer, da die Konzepte für den Computer eine gewisse Bedeutung haben. Er weiß beispielsweise, dass eine Anfrage nach einem “Mountain-Bike” auch eine Anfrage nach einem “Fahrrad” ist.
  • Eine größere Interoperabilität der Daten, d.h. der Austausch und die Integration von Daten fremder Seiten wird (hoffentlich) vereinfacht.

Ob und wie die Ergebnisse der Arbeit letztendlich in der Plattform verwirklicht werden, kann ich aber noch nicht absehen. Es ist auf jeden Fall ein spannendes Thema, von dem ich spätestens in einem Monat wieder berichten werde.

8404

Mittwoch, den 14. November 2007

Eine Zahl. Eine beachtliche Zahl. Gut, man muss sie relativ betrachten, versteht sich. Würde diese Zahl zum Beispiel die Staatsverschuldung repräsentieren, würde man sich in Berlin die Hände reiben. Würde diese Zahl jedoch das tägliche Einkommen vom Deutsche Bank Chef Ackermann darstellen, würde er sich die Augen reiben und fragen, wo die restlichen rund 22.600 Euro geblieben sind…

Aber um es aufzuklären: Diese Zahl, 8404, stellt die Anzahl der Zeilen dar, die wir bisher für quube programmiert haben. Nun haben wir im Schnitt in jeder dieser Code-Zeilen rund 30 Zeichen geschrieben, wobei wir nun bei einer neuen Zahl wären:

252.120

So viele Zeichen haben wir insgesamt schon „verbraucht“. Eine Viertelmillion. Das ist eine ganze Menge! So erklärt man sich also auch die abgenutzten Tasten.
Wenn man das nun weiter rechnet und pro Zeichen eine Höhe von 2mm nimmt, den normalen Zeilenabstand von 3mm noch dazuzählt, kommen wir auf rund 5mm Zeilenhöhe. Schreibt man mit dieser Grundlage nun alle Zeichen untereinander, so kommt man auf eine Gesamthöhe von

1.260.600

Millimetern! Umgerechnet in Meter, lägen wir nun bei 1260,6 Metern. Also rund 1,26 Kilometer hoch! Das musste ich mir selber erstmal klar machen und ziehe Vergleiche heran. Das ist…

* 8-mal so hoch wie der Kölner Dom.
* 4,2-mal höher als der Eiffelturm (Bei einer Höhe von 300,5 Metern, ohne Antenne).
* 3,3-mal die Höhe des Empire State Buildings (Bei einer Höhe von 381 Metern, ohne Antenne).
* 3,15 Runden im Stadion.
* 119 Meter höher, als der Brocken.

Man bestaune die Leistungsfähigkeit der menschlichen Finger, überlegt man sich doch dazu, dass das Programmieren bei Weitem nicht das einzige ist, was man am Tag so am Computer macht.

Wenn wir einmal um die Erde programmiert haben, werden wir das natürlich auch noch erwähnen. Aber jetzt erstmal ein entspannendes Fingerbad…

Ajax

Donnerstag, den 18. Oktober 2007

Heute machen wir einen kleinen Ausflug in die Technik, mit der wir quube entwickeln. Eine große Rolle dabei spielt Ajax. Ajax ist eine Abkürzung und steht für „Asynchronous JavaScript and XML“. Darauf werde ich nicht genauer eingehen. Informatikinteressierte wissen sicherlich bescheid, für alle anderen möchte ich es anschaulicher erklären.

Eine Webseite wird normalerweise, vereinfacht beschrieben, aufgebaut, in dem der Nutzer eine Anfrage an den Webserver schickt. Das kann zum Beispiel das Klicken eines Links sein. Der Webserver erhält die Anfrage, wertet diese aus und antwortet nun, indem er eine Antwort an den Client (hier: Rechner des Nutzers) zurück schickt. Im Falle des angeklickten Links wäre das die nun folgende Seite. Jede Webseite muss auf diese Weise neu angefragt, bzw. geladen werden.

Das dies recht statisch und zeitaufwändig ist, scheint logisch. Trotz Breitbandinternet braucht der Server noch immer eine gewisse Zeit zum reagieren.

Bei Ajax läuft das alles nun ein bisschen anders ab, wobei rein optisch nichts anders aussehen muss, als bei der altbekannten Internetseite. Hier schaltet sich im Webbrowser (z.B. Firefox oder Internet Explorer) sozusagen die „Ajax-Engine“ dazwischen. Diese verarbeitet nun die Anfragen (als Java-Script), ohne dass diese direkt an den Webserver geschickt werden, quasi im Hintergrund. Die Ajax-Engine kommuniziert mit dem Server und lädt relevante Teile der Webseite nach.

Da nun nicht bei jeder verändernden Aktion die gesamte Webseite neugeladen werden muss, kann der User weiter surfen und verändert den Inhalt dennoch dynamisch.

Heutzutage funktioniert ein Großteil der Web 2.0 Anwendungen auf diese Weise. Überall dort, wo Daten eingeben oder verarbeitet werden müssen kommt oft Ajax zum Einsatz. Zum Beispiel wären da Bilder, die sich beim anklicken über die Seite „legen“. Oder Bereiche einer Webseite, die per Klick verkleinert oder vergrößert werden. Aber auch Daten können „häppchenweise“ verändert werden.

Ich hoffe, dass ich einen kleinen Einblick geben konnte. Auch hoffe ich, dass es alles so korrekt erklärt wurde ;) Sollten sich Fehler eingeschlichen haben oder Unklarheiten bestehen, einfach melden.