WikiWikiW eb - uni-kl.de
Transcript of WikiWikiW eb - uni-kl.de
WikiWikiWebProseminar Website-Management-Systeme
Markus Müller
1
Inhalt - Teil 1
1. Einige Begriffsklärungen
2. Das Konzept des WikiWikiWeb
3. Die innere Struktur des WikiWikiWeb
4. (Fehlende) Features
5. “Killer-Features”
2
6. Kann ein solches Konzept funktionieren?
7. Implementierungen
8. Abschließende Bewertung
9. Literaturhinweise
Inhalt - Teil 1
3
Inhalt - Teil 2
Praktische Demonstration
4
1. Begriffsklärung
5
1. Begriffsklärung
• Bricht in fremde Computersysteme ein mit dem Vorsatz andere zu schädigen.
Cracker:
6
1. Begriffsklärung
• Bricht in fremde Computersysteme ein
• Keine eigene geistige Leistung sondern Einsatz von Programmen (Skripten) anderer.
Script-Kiddie:
7
1. Begriffsklärung
• Content (bei WikiWikiWeb):
• Text
• Dateien (z.B. Bilder, Audio,...)
8
2. Konzept des Wiki
9
2. Konzept des Wiki
What's A Wiki?
A wiki is a collaboration tool - a web site where the pages
can be changed and INSTANTLY published using only a
web browser (no programming required). Pages are
automatically created and linked to each other.
• Collaborate using modifiable web pages
• Automatic web page linking and creation
• Changes are INSTANTLY published
Quelle: http://www.wikiweb.com/intro1.shtml
10
2. Konzept des Wiki
• Ward Cunningham hatte erstmals in den späten 80er Jahren die Idee
• 1995 erste Website nach dem Wiki-Prinzip “Portland Pattern Repository”
11
12
2. Konzept des Wiki
• Ein Autor bzw. ein Team von Autoren
• Ein Leser bzw. eine Leserschaft
• Leser rein passiv
Autor
Leser Leser. . .
Gängige CM-Systeme:
13
2. Konzept des Wiki
• Kein Unterschied zwischen Autor und Leser
• Leser kann die Information aktiv verändern
Besucher
WikiWikiWeb:Besucher
Besucher
14
3. Struktur des Wiki
15
3. Struktur des Wiki
• Baumartig
• Hierarchische Gliederung
Level 2
Gängige CM-Systeme:Level 1
Level 2
Level 3 Level 3
. . .
16
3. Struktur des Wiki
• Web
• jede Seite kann Einstiegspunkt sein
Seite B
WikiWikiWeb: Seite A Seite C
Seite D Seite E
17
4. (Fehlende) Features
18
4. (Fehlende) Features
• Stark verkürzter Content-Life-Cycle
• kein Kontrolleur
• keine explizite Archivierung
19
4. (Fehlende) Features
• Realisierung nur dynamisch wirklich sinnvoll
• Änderungen sollen sofort sichtbar sein
• Eine Änderung kann u. U. viele Seiten betreffen
20
5. “Killer-Features”
21
5. “Killer-Features”
• Versions-Management
• Geringe Kosten für Pflege und Wartung
• Benutzer pflegen Wiki selbst
• Kontent wird auch von Benutzern selbst geliefert
22
5. “Killer-Features”
• Instant Publishing
• Linkkonsistenz
• Verknüpfung der Seiten untereinander
• Dead-Links
23
24
25
6. Funktioniert das Konzept?
26
6. Funktioniert das Konzept?
J a !
27
6. Funktioniert das Konzept?
Einige Beispiele
28
29
30
31
6. Funktioniert das Konzept?
• Wiki für Cracker / Script-Kiddies uninteressant
• Jeder kann Seiten ändern
• Änderungen können leicht rückgängig gemacht werden
32
6. Funktioniert das Konzept?
• Wiki lebt wegen der Community
• Durch offenen Ansatz starkes Gefühl für Community
• Viele “good guys”, wenige “bad guys”
33
7. Implementierungen
34
7. Implementierungen
• “Original-Wiki” von W. Cunningham heute kaum noch im Einsatz
• Anzahl der vorhandenen Wiki-Clones unüberschaubar
• Wiki-Clones mehr (weniger?) Funktionalität
35
7. Implementierungen
16,3%
7,2%
1,8%1,6%
4,5%
68,7%
MediaWikiTWikiPhpWikiMoinMoinWikiUseModWiki
Quelle: c’t 25/2003
Verbreitung der unterschiedlichen Wikis:
36
7. Implementierungen
Quelle: c’t 25/2003
0 11,3 22,5 33,8 45,0
Wikipedia
MoinMoin
PhpWiki
UseModWiki
Volltextsuche auf ca. 10 000 Seiten (80 MByte)ohne Datenbank-Backend:
37
7. Implementierungen
• Für (fast) alle Programmiersprachen und Plattformen verfügbar
• Awk, Bash, CommonLISP, Perl, Ruby, Python, C, C++, Java,...
• NetBSD, OpenBSD, Mac OS X, Linux, Windows,...
• Wikis bringen z.T. eigenen Webserver mit
38
7. Implementierungen
• Datenspeicherung
• Datenbanken ( z.B. MySQL)
• Textdateien
39
7. Implementierungen
• Ein Wort zu den Links
• “Ur”-Wiki Links über CamelCase
• kein einheitlicher Standard bei Wiki-Clones
40
7A. HeyHeyWickie
41
7A. HeyHeyWickie
• 3919 Bytes
• Gute Programmierschnittstelle für eigene Erweiterungen
42
7A. HeyHeyWickie
• ist in Python geschrieben
• über CGI erfolgt die Einbindung in httpd
• benutzt EmPy Template Prozessor
• Docutils für HTML-Generierung
43
7A. HeyHeyWickie
Browserhttpd
Anfrage
wickie4K.py
CGI
Anforderung
File.txt
44
7A. HeyHeyWickieFile.txt
Schritt1: Verarbeitung mit EmPy
• Ausführen von Code
• Konvertierung nach ReStructuredText
Schritt 2: Konvertierung nach HTML mittels Docutils
HTMLBrowserSenden
45
8. Bewertung
46
8. Bewertung
Workflow 6
• Praktisch nicht vorhanden
• Kein Kontrolleur
• Instant Publishing
47
8. Bewertung
Freigabeverfahren 3
• Sehr einfach
• Freigabe erfolgt sofort
48
8. Bewertung
Versionskontrolle 1
• Detaillierte Übersicht der letzten Änderungen
• CVS-ähnlich
• Bei manchen Wikis Kontrolle direkt über CVS
49
8. Bewertung
Unterstützte Datenbanken 1
• Für (fast) jede DB gibt es ein passendes Wiki
• DB nicht zwingend erforderlich
50
8. Bewertung
Betriebssystem 1
• NetBSD, OpenBSD, FreeBSD
• Max OS X
• Linux
• Windows
• ...
51
8. Bewertung
Suchmaschine 3
• Kein automatisches Eintragen
• Suchmaschinen finden sich z.T. in Wikis zurecht
• Meist recht gute wiki-eigene Suchfunktion
52
8. Bewertung
+ Einfaches Veröffentlichen von Inhalten
+ Gute Versionskontrolle
+ Geringer Administrativer Aufwand
+ Komplett offener Ansatz
53
8. Bewertung
- Offener Ansatz nicht für alle Bereiche geeignet
- Keine Verbindlichkeit der bereitgestellten Informationen
54
9. Weiterführende Literatur
Übersicht über die unterschiedlichen Wikis:http://c2.com/cgi/wiki?WikiEngines
Wikipedia:http://www.wikipedia.org
HeyHeyWiki:http://python.net/~gherman/HeyHeyWickie.htmlhttp://www.linux-magazine.com/issue/35/EmPy_Wiki.pdf
EmPy:http://www.alcyone.com/pyos/empy
ReST Spezifikation:http://docutils.sf.net/spec/rst/reStructuredText.html
55
10. Nachtrag
• Woher kommt der Name “WikiWikiWeb”?
• “wiki” hawaiisch, Bedeutung “schnell”
56