<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>WeizenSpr.eu</title>
	<atom:link href="http://weizenspr.eu/feed/" rel="self" type="application/rss+xml" />
	<link>http://weizenspr.eu</link>
	<description>trennt Spreu vom Weizen</description>
	<lastBuildDate>Fri, 03 Sep 2010 09:20:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>[Update] Gedanken zum Licht&#8230;</title>
		<link>http://weizenspr.eu/2010/gedanken-zum-licht/</link>
		<comments>http://weizenspr.eu/2010/gedanken-zum-licht/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 19:53:39 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Weizen]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=6154</guid>
		<description><![CDATA[An sich mag ich es ja, dass ich jeden Tag mit dem Auto etwa eine dreiviertel Stunde bis zur Arbeit fahren muss. Denn obwohl ich Auto fahre, habe ich dabei genug Zeit, mal über Gott und die Welt nachzudenken.
Dieses Mal habe ich über das Licht, die Farben und Wärme nachgedacht. Eigentlich hatt die Themen ja [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p>An sich mag ich es ja, dass ich jeden Tag mit dem Auto etwa eine dreiviertel Stunde bis zur Arbeit fahren muss. Denn obwohl ich Auto fahre, habe ich dabei genug Zeit, mal über Gott und die Welt nachzudenken.</p>
<p>Dieses Mal habe ich über das Licht, die Farben und Wärme nachgedacht. Eigentlich hatt die Themen ja jeder in der Schule. Licht und Farben gibt es so gesehen garnicht &#8211; im Grunde handelt es sich dabei einfach nur um <a href="http://de.wikipedia.org/wiki/Photon" target="_blank" rel="nofollow" class="liwikipedia">Photonen</a>, also sowas wie <a href="http://de.wikipedia.org/wiki/Energie" target="_blank" rel="nofollow" class="liwikipedia">Energiekügelchen</a>. Wenn die nun in unserem Auge auf einen der Farbrezeptoren (die <a href="http://de.wikipedia.org/wiki/Zapfen_%28Auge%29" target="_blank" rel="nofollow" class="liwikipedia">Zapfen</a>) treffen, werden sie als eine bestimmte Farbe <a href="http://de.wikipedia.org/wiki/Farbwahrnehmung" target="_blank" rel="nofollow" class="liwikipedia">interpretiert</a>. Ob weiße Menschen nun weiß sind, hängt also im Grunde nur davon ab, wie unser Gehirn die Informationen der Rezeptoren auswertet und zusammenfügt.</p>
<p>Das ist relativ spannend, denn unser Körper besitzt neben den Farbrezeptoren des Auges noch ein weiteres Sinnesorgan, dass diese Photonen wahrnehmen kann: <a href="http://de.wikipedia.org/wiki/Haut" target="_blank" rel="nofollow" class="liwikipedia">die Haut</a>. Spannend ist das deshalb, weil die Haut zwar theoretisch die gleiche Aufgabe erledigt wie die Augen, das aber auf eine völlig andere Weise tut.<br />
Vielleicht sagt sich jetzt der ein oder andere <em>&#8220;Meine Haut kann doch kein Licht sehen!&#8221;</em> Das ist ja auch richtig&#8230; die Haut reagiert nicht auf das sichtbare Licht des <a href="http://de.wikipedia.org/wiki/Elektromagnetisches_Spektrum" target="_blank" rel="nofollow" class="liwikipedia">elektromagnetischen Spektrums</a>, aber sie reagiert auf die <a href="http://de.wikipedia.org/wiki/W%C3%A4rmestrahlung" target="_blank" rel="nofollow" class="liwikipedia">Wärmestrahlung</a>, die sich meist im <a href="http://de.wikipedia.org/wiki/Infrarotstrahlung" target="_blank" rel="nofollow" class="liwikipedia">infraroten Spektrum</a> befindet <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  ! Die Wärmestrahlung &#8211; oder speziell das Infrarotlicht &#8211; könnte theoretisch auch von unseren Augen wahrgenommen werden, wenn die dafür fein genug wären.<br />
Das würde uns in der Natur sogar einen Vorteil verschaffen, denn dann könnten wir Lebewesen auch bei völliger Dunkelheit erkennen &#8211; einfach nur anhand des (für den Menschen unsichtbaren) Lichtes, das sie abstrahlen.<br />
Oder auch andersrum gedacht: Stellt euch mal vor, man könnte eine künstliche Haut erschaffen, die nicht auf Wärmestrahlung reagiert, sondern auf die Strahlen des sichtbaren Lichtes. Dann könnte diese Haut eventuell <em>&#8220;fühlen&#8221;</em>, wenn sie sich einem Gegenstand nähert &#8211; irgendwie eine gruselige Vorstellung. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Auch lustig: Wenn man mal ans andere Ende des Lichtspektrums geht, gelangt man zur <a href="http://de.wikipedia.org/wiki/Ultraviolettstrahlung" target="_blank" rel="nofollow" class="liwikipedia">ultravioletten Strahlung</a> &#8211; das sind die Strahlen, die das Erbgut angreifen, Hautkrebs verursachen und wegen denen unsere Haut schützende Pigmente bildet.<br />
Eine Besonderheit dieser UV-Strahlen ist, dass das lichtdurchlässige Glas in der Regel <a href="http://de.wikipedia.org/wiki/Ultraviolettstrahlung#Physik" target="_blank" rel="nofollow" class="liwikipedia">undurchlässlig für UV-Strahlen</a> ist. Wenn wir uns jetzt vorstellen würden, dass wir ausschließlich ultraviolettes Licht sehen könnten, dann würde das bedeuten, dass Glas für uns garnicht durchsichtig wäre.<br />
Die Frage, die sich aus dieser Erkenntnis ergibt, wäre: Ist es möglich, dass es da draußen Lebewesen gibt, die durch Steinwände sehen können, so wie wir durch Glasscheiben sehen können? <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p><em>Was meint ihr? Ist dieses sichtbare und unsichtbare Licht nicht eine großartige Sache?</em> <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> <br/><br />
<strong id="update">Update:</strong><br />
Ich wurde gefragt, ob es denn theoretisch auch möglich wäre, die gefährliche radioaktive Strahlung zu sehen. Die Antwort darauf lautet: teils, teils. Die radioaktive Strahlung, die wir kennen, besteht grundlegend aus drei Strahlungsarten: der <a href="http://de.wikipedia.org/wiki/Alphateilchen#Biologische_Wirkung" target="_blank" rel="nofollow" class="liwikipedia">Alphastrahlung</a>, der <a href="http://de.wikipedia.org/wiki/Betastrahlung" target="_blank" rel="nofollow" class="liwikipedia">Betastrahlung</a> und der <a href="http://de.wikipedia.org/wiki/Gammastrahlung" target="_blank" rel="nofollow" class="liwikipedia">Gammastrahlung</a>. Während man die Gammastrahlung &#8211; als elektromagnetische Strahlung &#8211; potentiell &#8220;sehen&#8221; könnte, sieht es bei der Alpha- und Betastrahlung anders aus: dort werden nämlich keine Energiekügelchen verschossen, sondern <a href="http://de.wikipedia.org/wiki/Strahlung" target="_blank" rel="nofollow" class="liwikipedia">Teilchenstrahlung</a> emittiert. Oder anders ausgedrückt: Neben der Taschenlampe (Gammastrahlung) beinhaltet die radioaktive Strahlung auch Pflastersteine (Alpha- und Betastrahlung).<br />
Per Definition ist übrigens die Alphastrahlung (besteht aus Helium-Kernen) die gefährlichste: Wenn diese Teilchen z.B. auf das Erbgut innerhalb einer Zelle treffen, kann der DNA-Strang zerstört werden und bei der Zellteilung Mutationen (Krebs) auslösen. Trotzdem ist die Gammastrahlung gefürchteter: diese lässt sich nämlich nur schwer <a href="http://de.wikipedia.org/wiki/Gammastrahlen#Wechselwirkung_mit_Materie" target="_blank" rel="nofollow" class="liwikipedia">abschirmen</a>. Das bedeutet, dass man einen Gammastrahler mit viel Materie ummanteln muss, bis keine Strahlung mehr nach außen dringen kann.<br />
Es gibt allerdings eine Möglichkeit, diese herumschwirrenden Teilchen nachzuweisen: das so genannte <a href="http://de.wikipedia.org/wiki/Geigerz%C3%A4hler" target="_blank" rel="nofollow" class="liwikipedia">Geiger-Müller-Zählrohr</a> (besser bekannt als Geigerzähler). In diesem treffen die positiv geladenen Teilchen der Strahlung auf ein Gas, dessen Elektronen sie freisetzen. Diese Elektronen erzeugen dann einen elektrischen Strom, der das Auftreffen der Teilchen signalisiert.<br />
Ich hoffe, ich konnte die Frage halbwegs zufriedenstellend beantworten. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> <br/><br />
<strong>Erleuchtete Grüße, Kenny</strong></p>
<p>P.S.: Liebe Biologen, Chemiker und Physiker, bitte haut mich nicht für die pseudowissenschaftlichen Ausflüge, die ich in diesem Artikel unternommen habe. Wenn ihr Korrekturen habt, würde ich mich über Kommentare freuen. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/gedanken-zum-licht/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Was bedeutet die Netzneutralität?</title>
		<link>http://weizenspr.eu/2010/was-bedeutet-die-netzneutralitat/</link>
		<comments>http://weizenspr.eu/2010/was-bedeutet-die-netzneutralitat/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 11:11:35 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Spreu]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=6141</guid>
		<description><![CDATA[Derzeit wird an vielen Ecken darüber diskutiert, ob die sogenannte Netzneutralität gesetzlich festgeschrieben werden muss, oder ob man es sogar verkraften könnte, die Netzneutralität aufzuweichen.
Da jedoch der Großteil der Bevölkerung wahrscheinlich garnicht versteht, was es mit der Netzneutralität auf sich hat, dachte ich mir, dass ich mal versuchen, für das ganze eine halbwegs gute Erklärung [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p>Derzeit wird an vielen Ecken darüber diskutiert, ob die sogenannte <a href="http://de.wikipedia.org/wiki/Netzneutralit%C3%A4t" target="_blank" rel="nofollow" class="liwikipedia">Netzneutralität</a> gesetzlich festgeschrieben werden muss, oder ob man es sogar verkraften könnte, die Netzneutralität <a href="http://www.heise.de/newsticker/meldung/Deutsche-IT-Branche-ringt-um-Position-zur-Netzneutralitaet-1070132.html" target="_blank" class="liexternal">aufzuweichen</a>.<br />
Da jedoch der Großteil der Bevölkerung wahrscheinlich garnicht versteht, was es mit der Netzneutralität auf sich hat, dachte ich mir, dass ich mal versuchen, für das ganze eine halbwegs gute Erklärung zu liefern.</p>
<p>Stellen wir uns also mal vor, dass es weltweit nur 2 Webseiten gäbe (der Rest lässt sich analog herleiten). Diese drei Webseiten sind &#8220;Deutschland.de&#8221; und &#8220;Youtube.de&#8221;. Man selber ist nun Kunde bei deutschlandCOM und bestellt einen Internetzugang.</p>
<p>Bei einer zugesicherten Netzneutralität könnte man nun problemlos beide Webseiten besuchen. Beide Webseiten würden gleichschnell laden, egal, ob man Texte, Bilder oder Videos abruft. Da &#8220;Deutschland.de&#8221; nur langweilige Texte liefert, wird diese Seite kaum aufgerufen. Da man bei &#8220;Youtube.de&#8221; aber die coolsten und neusten Videos angucken kann, wird diese Seite oft aufgerufen und produziert viele Daten, die quer durch das Netz geschickt werden. Ist aber alles kein Problem, denn &#8220;Youtube.de&#8221; bezahlt dafür, dass es so viele Daten verbreiten darf. So ist es heutzutage.</p>
<p>Ohne Netzneutralität könnte es in Zukunft so aussehen: Bei der Bestellung der Internetverbindung hat man die Wahl zwischen 3 Paketen &#8211; &#8220;Internet Basic&#8221;, &#8220;Internet All&#8221; und &#8220;Internet All Premium&#8221;.</p>
<p>Bei &#8220;Internet Basic&#8221; erreicht man bei deutschlandCOM nur ausgewählte Webseiten. In unserem Beispiel wäre das nur &#8220;Deutschland.de&#8221; mit den langweiligen Regierungstexten. Um mehr zu bekommen, müsste man mehr zahlen &#8211; nämlich für das &#8220;Internet All&#8221;-Paket. Nun darf man endlich alle Seiten angucken&#8230; aber merkwürdig&#8230; &#8220;Youtube.de&#8221; lädt viel langsamer als &#8220;Deutschland.de&#8221;? Da &#8220;Youtube.de&#8221; mehr Daten produziert, wurde es heruntergeregt &#8211; zum &#8220;Wohle&#8221; aller. Denn wenn man &#8220;Youtube.de&#8221; in normaler Geschwindigkeit sehen will, kann man doch gefälligst das noch teurere &#8220;Internet All Premium&#8221; bestellen. Dass &#8220;Youtube.de&#8221; bereits die Mehrdaten bezahlt hat, ist dabei völlig egal.</p>
<p>So kommt es, dass Leute, die sich nur einen normalen Internetanschluss leisten können, nur bestimmte Inhalte im Web sehen können. Leute mit mehr Geld können das gesamte Internet betrachten &#8211; solange es solch ein Paket gibt. Denn wer sagt denn, dass nicht irgendwann die &#8220;Internet All&#8221;-Pakete abgeschafft werden? Wie solch eine Welt aussieht, kann man schon heute in Staaten wie China beobachten. Aber auch dort geschieht das Ganze natürlich nur zum &#8220;Wohle&#8221; aller&#8230;<br/><br />
<strong>Neutrale Grüße, Kenny</strong></p>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/was-bedeutet-die-netzneutralitat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Das WordPress Multisite-Feature ist kacke!</title>
		<link>http://weizenspr.eu/2010/das-wordpress-multisite-feature-ist-kacke/</link>
		<comments>http://weizenspr.eu/2010/das-wordpress-multisite-feature-ist-kacke/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 18:48:30 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Spreu]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=6114</guid>
		<description><![CDATA[Ich habe es wirklich versucht! Mehrfach sogar! Ich wollte mich wirklich mit dem Multisite-Feature von Wordpress anfreunden, das seit der Version 3.0 durch die Integration der Multiuser-Edition verfügbar ist. Aber es klappt einfach nicht!
Ich habe ehrlich gesagt keine Ahnung, welcher Frickler da am Werk war, um dieses &#8211; eigentlich recht praktische &#8211; Feature dermaßen zu [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p>Ich habe es wirklich versucht! Mehrfach sogar! Ich wollte mich wirklich mit dem <a href="http://codex.wordpress.org/Create_A_Network" target="_blank" class="liwp">Multisite-Feature von Wordpress</a> anfreunden, das seit der Version 3.0 durch die Integration der <a href="http://mu.wordpress.org/" target="_blank" class="liwp">Multiuser-Edition</a> verfügbar ist. Aber es klappt einfach nicht!</p>
<p>Ich habe ehrlich gesagt keine Ahnung, welcher Frickler da am Werk war, um dieses &#8211; eigentlich recht praktische &#8211; Feature dermaßen zu versauen! Dabei ist der Grundgedanke doch eigentlich recht praktisch: Mit einer WordPress-Installation will man mehrere Blogs &#8211; mit jeweils eigenem Inhalt &#8211; bereitstellen. Das ganze soll durch eine Userverwaltung untermauert werden, sodass jede User &#8211; potentiell &#8211; Zugriff auf mehrere Blogs der gleichen Installation hat.</p>
<div id="attachment_6120" class="wp-caption aligncenter" style="width: 310px"><a href="http://weizenspr.eu/uploads/wp3ms_superadmin.png" target="_blank" class="liimagelink"><img src="http://weizenspr.eu/uploads/wp3ms_superadmin-300x112.png" alt="" title="wp3ms_superadmin" width="300" height="112" class="size-medium wp-image-6120" /></a><p class="wp-caption-text">MultiSite Superadmin</p></div>
<p>Aber wie sieht das Ergebnis aus? Das Einrichten ist noch ziemlich einfach: Eine Konfiguration, um das &#8220;Netzwerk&#8221; erzeugen zu können. Dann alles nochmal umkonfigurieren, um das Netzwerk nutzbar zu machen. Dann kann man neue Unterseiten anlegen und User berechtigen, auf Blog A, B und C zuzugreifen.<br />
Doch zu welchem Preis? Das fängt schonmal damit an, dass man WordPress nicht mehr in einen Unterordner installieren darf &#8211; warum auch immer das nicht unterstützt wird. Dann verschwinden urplötzlich Einstellungsmöglichkeiten, die unter Garantie nichts, aber auch wirklich garnichts mit dem Multisite-Feature zu tun haben&#8230;</p>
<div id="attachment_6125" class="wp-caption aligncenter" style="width: 327px"><a href="http://weizenspr.eu/uploads/wp3ms_start-before.png" target="_blank" class="liimagelink"><img src="http://weizenspr.eu/uploads/wp3ms_start-before-150x150.png" alt="" title="wp3ms_start-before" width="150" height="150" class="size-thumbnail wp-image-6125" /></a> <a href="http://weizenspr.eu/uploads/wp3ms_start-after.png" target="_blank" class="liimagelink"><img src="http://weizenspr.eu/uploads/wp3ms_start-after-150x150.png" alt="" title="wp3ms_start-after" width="150" height="150" class="size-thumbnail wp-image-6122" /></a><p class="wp-caption-text">Leseeinstellungen vorher vs. nachher</p></div>
<p>&#8230;um die verschwundenen Einstellungen tätigen zu können, muss man die mehr als lächerliche Superadmin-Blog-Konfigurationsmöglichkeit benutzen, in der man die Werte händisch ändern darf&#8230;</p>
<div id="attachment_6128" class="wp-caption aligncenter" style="width: 404px"><a href="http://weizenspr.eu/uploads/wp3ms_blog-options.png" target="_blank" class="liimagelink"><img src="http://weizenspr.eu/uploads/wp3ms_blog-options.png" alt="" title="wp3ms_blog-options" width="394" height="208" class="size-full wp-image-6128" /></a><p class="wp-caption-text">Superadmin Blog-Optionen</p></div>
<p>&#8230;und zur Krönung des ganzen darf man dann auch noch <a href="http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/" target="_blank" class="liwp">irgendwelche Drittkomponenten</a> einsetzen, um den Blogs auch jeweils eigene Domains zuweisen zu können (wobei das Plugin bei mir einfach nur zu einer Endlosschleife führt und den Login kaputt macht).</p>
<p>Ich für meinen Teil werde dieses völlig verbastelte Feature jedenfalls nicht nutzen. Wenn man nicht gerade Blogs für irgendwelche Fremden Leute bereitstellen muss, gibt es sicherlich bessere Wege, um eine akzeptable Alternative zu erreichen. Zwei Beispiele für solche Alternativen möchte ich euch zeigen. Die sind zwar weniger bequem (was die geteilte User-Verwaltung angeht), aber sie ermöglichen genau das, was ein normaler Bloguser wahrscheinlich will:</p>
<ul>
<li>mehrere Blogs betreiben können</li>
<li>jedem Blog eine eigene Domain geben können</li>
<li>nur eine WordPress-Installation pflegen müssen</li>
</ul>
<p>Die Lösungen selbst ähneln denen, die WordPress.org <a href="http://codex.wordpress.org/Installing_Multiple_Blogs" target="_blank" class="liwp">selber vorschlägt</a>, nur, dass das ganze mit einer einzigen Codebasis funktioniert. Die erste Lösung ist für Leute geeignet, die nur eine Datenbank zur Verfügung haben, aber trotzdem mehrere WordPress-Blogs parallel nutzen wollen:<br />
In der Datei <strong>wp-config.php</strong> gibt es die Variable <strong>$table_prefix</strong>. Durch Ändern dieser Variable kann man zwischen verschiedenen WordPress-Instanzen hin- und herschalten. Wenn man nun also für verschiedene Domains verschiedene WordPress-Instanzen (aber mit der gleichen Codebase) haben will, muss man diesen Prefix einfach nur vom Host abhängig machen:</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000088;">$table_prefix</span> &nbsp;<span style="color: #339933;">=</span> <span style="color: #0000ff;">'wp_'</span> <span style="color: #339933;">+</span> <a href="http://www.php.net/strtolower"><span style="color: #990000;">strtolower</span></a><span style="color: #009900;">&#40;</span><a href="http://www.php.net/ereg_replace"><span style="color: #990000;">ereg_replace</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;[^A-Za-z]&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;&quot;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;HTTP_HOST&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot;_&quot;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>Hier gibt es jedoch einen Schönheitsfehler: Sollte jemand mit einer bisher unbekannten Domain die Blog-Installation aufrufen können, hat dieser die Möglichkeit, einen eigenen Blog zu installieren! Um das zu verhindern, sollte man entweder eine Abfrage einbauen, ob der Host zu einer Liste von Hosts gehört, zu denen der Blog bereits existiert, oder man macht die Datei <strong>wp-admin/install.php</strong> unzugänglich.</p>
<p>Leute, die beliebig viele Datenbanken anlegen können, können auch einen anderen Weg gehen &#8211; diesen werde ich persönlich wahrscheinlich nutzen. Was man einfach macht: Man verwendet einen Datenbank-Namen und (optional) einen Nutzernamen und ein Passwort, die sich vom Host ableiten lassen. Der Vorteil ist, dass das Installationsproblem bei inkorrekten Hosts wegfällt.</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000088;">$clearedHost</span> &nbsp;<span style="color: #339933;">=</span> <a href="http://www.php.net/strtolower"><span style="color: #990000;">strtolower</span></a><span style="color: #009900;">&#40;</span><a href="http://www.php.net/ereg_replace"><span style="color: #990000;">ereg_replace</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;[^A-Za-z]&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;&quot;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;HTTP_HOST&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #000088;">$generatedPwd</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/ereg_replace"><span style="color: #990000;">ereg_replace</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;[^A-Za-z0-9]&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;&quot;</span><span style="color: #339933;">,</span> <a href="http://www.php.net/base64_encode"><span style="color: #990000;">base64_encode</span></a><span style="color: #009900;">&#40;</span><a href="http://www.php.net/pack"><span style="color: #990000;">pack</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;H*&quot;</span> <span style="color: #339933;">,</span> <a href="http://www.php.net/sha1"><span style="color: #990000;">sha1</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;SALT&quot;</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$clearedHost</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp;<br />
<span style="color: #666666; font-style: italic;">// ** MySQL settings - You can get this info from your web host ** //</span><br />
<a href="http://www.php.net/define"><span style="color: #990000;">define</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DB_NAME'</span><span style="color: #339933;">,</span> &nbsp; &nbsp; <span style="color: #0000ff;">'DBNAME_'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$clearedHost</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.php.net/define"><span style="color: #990000;">define</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DB_USER'</span><span style="color: #339933;">,</span> &nbsp; &nbsp; <span style="color: #0000ff;">'USERNAME_'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$clearedHost</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.php.net/define"><span style="color: #990000;">define</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DB_PASSWORD'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$generatedPwd</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.php.net/define"><span style="color: #990000;">define</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DB_HOST'</span><span style="color: #339933;">,</span> &nbsp; &nbsp; <span style="color: #0000ff;">'DBSERVER'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.php.net/define"><span style="color: #990000;">define</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DB_CHARSET'</span><span style="color: #339933;">,</span> &nbsp;<span style="color: #0000ff;">'utf8'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.php.net/define"><span style="color: #990000;">define</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DB_COLLATE'</span><span style="color: #339933;">,</span> &nbsp;<span style="color: #0000ff;">''</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>In diesem Beispiel sollte man die Platzhalter &#8220;SALT&#8221;, &#8220;DBNAME&#8221;, &#8220;USERNAME&#8221; und &#8220;DBSERVER&#8221; durch seine eigenen Daten ersetzen. &#8220;SALT&#8221; dient übrigens dazu, damit außenstehende nicht anhand der Domain auf das Datenbank-Passwort schließen können. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Ich hoffe, ich konnte euch ein paar neue Einblicke verschaffen und wünsche euch viel Spaß mit eurer WordPress-Installation! <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Und nicht vergessen: <em>Ich hafte nicht für Schäden an Software, Hardware oder für Vermögensschäden, die durch Anwendung dieser Änderungen entstanden sind oder entstehen könnten.</em> <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> <br/><br />
<strong>Multiple Grüße, Kenny</strong></p>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/das-wordpress-multisite-feature-ist-kacke/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Und der Gewinner ist&#8230;</title>
		<link>http://weizenspr.eu/2010/und-der-gewinner-ist-2/</link>
		<comments>http://weizenspr.eu/2010/und-der-gewinner-ist-2/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 10:15:32 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=6089</guid>
		<description><![CDATA[Das Gewinnspiel ist vorbei und die Sieger stehen nun fest. Da es nur 12 Teilnehmer gab, erhält natürlich auch jeder der Teilnehmer einen der Sofort-Gewinne!  
Die glücklichen Gewinner sind&#8230;

Blog.Kschymyk.de
Blog.Preciosa304.de
Bloggewinn.de
Chaosweib.com
Cvbler.Wordpress.com
FGnet.de
Gewinnspiele.Maunzblog.de
Glitzerfrosch.de
Hannes-Schurig.de
Hosenwelt.com
Lasst-uns-testen-und-berichten.over-blog.de
XYonline.de

Wer bekommt die Gutscheine?
Das Random.org-Los hat entschieden und folgende Gewinner preisgegeben: Blog.Kschymyk.de und Hannes-Schurig.de erhalten zusätzlich jeweils einen 20€ Gutschein für Shirt-Selbst-Bedrucken.de. Herzlichen Glückwunsch!  
Was [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p><a href="http://weizenspr.eu/2010/gewinne-ein-t-shirt/" target="_blank" class="liinternal">Das Gewinnspiel</a> ist vorbei und die Sieger stehen nun fest. Da es nur 12 Teilnehmer gab, erhält natürlich auch jeder der Teilnehmer einen der Sofort-Gewinne! <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<h3>Die glücklichen Gewinner sind&#8230;</h3>
<ol>
<li><a href="http://blog.kschymyk.de/?p=228" target="_blank" class="liexternal">Blog.Kschymyk.de</a></li>
<li><a href="http://blog.preciosa304.de/2010/08/27/t-shirts-weizenspr-eu/" target="_blank" class="liexternal">Blog.Preciosa304.de</a></li>
<li><a href="http://bloggewinn.de/15-tshirts-fur-15-blogger-und-20e-gutschein/" target="_blank" class="liexternal">Bloggewinn.de</a></li>
<li><a href="http://www.chaosweib.com/2010/08/24/t-shirts-gratis-ich-bin-dabei/" target="_blank" class="liexternal">Chaosweib.com</a></li>
<li><a href="http://cvbler.wordpress.com/2010/08/25/gewinne-ein-t-shirt/" target="_blank" class="liexternal">Cvbler.Wordpress.com</a></li>
<li><a href="http://fgnet.de/2010/08/t-shirt-gesucht/" target="_blank" class="liexternal">FGnet.de</a></li>
<li><a href="http://gewinnspiele.maunzblog.de/?p=1789" target="_blank" class="liexternal">Gewinnspiele.Maunzblog.de</a></li>
<li><a href="http://www.glitzerfrosch.de/2010/08/15-t-shirts-und-2-gutscheine-zu-gewinnen/" target="_blank" class="liexternal">Glitzerfrosch.de</a></li>
<li><a href="http://hannes-schurig.de/23/08/2010/shit-i-need-a-shirt/" target="_blank" class="liexternal">Hannes-Schurig.de</a></li>
<li><a href="http://hosenwelt.com/2010/08/weizenspr-eu-verlost-t-shirts/" target="_blank" class="liexternal">Hosenwelt.com</a></li>
<li><a href="http://lasst-uns-testen-und-berichten.over-blog.de/article-shirt-und-gutschein-zu-gewinnen-55845519.html" target="_blank" class="liexternal">Lasst-uns-testen-und-berichten.over-blog.de</a></li>
<li><a href="http://xyonline.de/2010/08/gewinne-ein-t-shirt/" target="_blank" class="liexternal">XYonline.de</a></li>
</ol>
<h3>Wer bekommt die Gutscheine?</h3>
<p>Das <a href="http://www.random.org/lists/" target="_blank" class="liexternal">Random.org</a>-Los hat entschieden und folgende Gewinner preisgegeben: <a href="http://blog.kschymyk.de/" target="_blank" class="liexternal">Blog.Kschymyk.de</a> und <a href="http://hannes-schurig.de" target="_blank" class="liexternal">Hannes-Schurig.de</a> erhalten zusätzlich jeweils einen 20€ Gutschein für <a href="http://shirt-selbst-bedrucken.de" target="_blank" class="liexternal">Shirt-Selbst-Bedrucken.de</a>. Herzlichen Glückwunsch! <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<div id="attachment_6107" class="wp-caption aligncenter" style="width: 522px"><a href="http://weizenspr.eu/uploads/random_tshirt.png" target="_blank" class="liimagelink"><img src="http://weizenspr.eu/uploads/random_tshirt.png" alt="" title="random_tshirt" width="512" height="384" class="size-full wp-image-6107" /></a><p class="wp-caption-text">Random.org Ergebnisliste</p></div>
<h3>Was müsst ihr nun tun?</h3>
<ol>
<li>Geht auf <a href="http://weizenspreu.spreadshirt.de/" target="_blank" class="liexternal">diese Gewinnartikel-Seite</a> und sucht euch einen der Preise aus. (Bitte den Artikel <strong>nicht</strong> über den Shop bestellen! Nur den Artikel aussuchen und dann mit Schritt 2 weitermachen!)</li>
<li>Kopiert den Link zum ausgesuchten Gewinn (z.B. das <a href="http://weizenspreu.spreadshirt.de/maenner-t-shirt-klassisch-A13643457/customize/color/2" target="_blank" class="liexternal">Born to Grill Shirt</a>).</li>
<li>Schreibt eine E-Mail an <strong>gewinn [at] shirt-selbst-bedrucken [punkte] de</strong> und beachtet folgendes:
<ol>
<li>Nutzt die Mail-Adresse aus eurem Impressum, die Mail-Adresse aus eurem Teilnahme-Kommentar oder eine Adresse, die sich eindeutig eurer Domain zuordnen lässt (damit euch niemand den Gewinn wegnehmen kann).</li>
<li>Gebt den kopierten Link zum gewünschten Artikel in der E-Mail mit an!</li>
<li>Gebt die gewünschte Größe (falls zur Auswahl), die gewünschte Farbe (falls zur Auswahl) und eure Adresse mit an!</li>
</ol>
</li>
<li>Die beiden Gewinner der Gutscheine erhalten als Antwort auf Ihre E-Mail auch ihren persönlichen 20€ Gutschein für <a href="http://www.shirt-selbst-bedrucken.de/" target="_blank" class="liexternal">Shirt-Selbst-Bedrucken.de</a> mitgeteilt.</li>
</ol>
<h3>Vielen Dank für eure Teilnahme! <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </h3>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/und-der-gewinner-ist-2/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Dein Twitter &#8211; wie Du willst!</title>
		<link>http://weizenspr.eu/2010/dein-twitter-wie-du-willst/</link>
		<comments>http://weizenspr.eu/2010/dein-twitter-wie-du-willst/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 17:23:33 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Weizen]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=6073</guid>
		<description><![CDATA[@dqmhose hatte mich letztens gefragt, ob es mit Stylish möglich sei, bei Twitter Nachrichten von Leuten auszublenden, die man nicht kennt. Seine Begründung: Viele dieser Nachrichten sind eigentlich Spam und damit vernachlässigbar.
Da Twitter jedoch die Nachrichten von unbekannten Personen nicht zusätzlich per CSS markiert, war meine Antwort &#8220;Nein.&#8221; &#8211; allerdings versprach ich ihm, mir mal [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p><a href="http://twitter.com/dqmhose" target="_blank" class="liexternal">@dqmhose</a> hatte mich letztens gefragt, ob es mit <a href="https://addons.mozilla.org/de/firefox/addon/2108/" target="_blank" class="liexternal">Stylish</a> möglich sei, bei Twitter Nachrichten von Leuten auszublenden, die man nicht kennt. Seine Begründung: Viele dieser Nachrichten sind eigentlich Spam und damit vernachlässigbar.</p>
<p>Da Twitter jedoch die Nachrichten von unbekannten Personen nicht zusätzlich per CSS markiert, war meine Antwort <em>&#8220;Nein.&#8221;</em> &#8211; allerdings versprach ich ihm, mir mal anzugucken, ob das ganze mit <a href="https://addons.mozilla.org/firefox/addon/748" target="_blank" class="liexternal">Greasemonkey</a> möglich wäre. Im Gegensatz zu Stylish definiert man bei Greasemonkey nämlich nicht einfach nur ein bisschen CSS, sondern kann mit Hilfe von JavaScript größeren Einfluss auf die Webseite nehmen.</p>
<p>Einfach gestaltete sich die Arbeit allerdings nicht, da es garnicht so einfach ist, herauszufinden, welche Leute man denn überhaupt kennt. Auf die Verwendung der Twitter-API wollte ich jedoch auf jeden Fall verzichten &#8211; den Aufwand wäre es mir nicht Wert gewesen <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  !<br />
Aus diesem Grund ist meine Lösung eine ziemliche Knobelarbeit geworden &#8211; funktionieren tut sie trotzdem <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  . Wie genau, das will ich euch gleich verraten&#8230;</p>
<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br />110<br />111<br />112<br />113<br />114<br />115<br />116<br />117<br />118<br />119<br />120<br />121<br />122<br />123<br />124<br />125<br />126<br />127<br />128<br />129<br />130<br />131<br />132<br />133<br />134<br />135<br />136<br />137<br />138<br />139<br />140<br />141<br />142<br />143<br />144<br />145<br />146<br />147<br />148<br />149<br />150<br />151<br />152<br />153<br />154<br />155<br />156<br />157<br />158<br />159<br />160<br />161<br />162<br />163<br />164<br />165<br />166<br />167<br />168<br />169<br />170<br />171<br />172<br />173<br />174<br />175<br />176<br />177<br />178<br />179<br />180<br />181<br />182<br />183<br />184<br />185<br />186<br />187<br />188<br />189<br />190<br />191<br />192<br />193<br />194<br />195<br />196<br />197<br />198<br />199<br />200<br />201<br />202<br />203<br />204<br />205<br />206<br />207<br />208<br />209<br />210<br />211<br />212<br />213<br />214<br />215<br />216<br />217<br />218<br />219<br />220<br />221<br />222<br />223<br />224<br />225<br />226<br />227<br />228<br />229<br />230<br />231<br />232<br />233<br />234<br />235<br />236<br />237<br />238<br />239<br />240<br />241<br />242<br />243<br />244<br />245<br />246<br />247<br />248<br />249<br />250<br />251<br />252<br />253<br />254<br />255<br />256<br />257<br />258<br />259<br />260<br />261<br />262<br />263<br />264<br />265<br />266<br />267<br />268<br />269<br />270<br />271<br />272<br />273<br />274<br />275<br />276<br />277<br />278<br />279<br />280<br />281<br />282<br />283<br />284<br />285<br />286<br />287<br />288<br />289<br />290<br />291<br />292<br />293<br />294<br />295<br />296<br />297<br />298<br />299<br />300<br />301<br />302<br />303<br />304<br />305<br />306<br />307<br />308<br />309<br />310<br />311<br />312<br />313<br />314<br />315<br />316<br />317<br />318<br />319<br />320<br />321<br />322<br />323<br />324<br />325<br />326<br />327<br />328<br />329<br />330<br />331<br />332<br />333<br />334<br />335<br />336<br />337<br />338<br />339<br />340<br />341<br />342<br />343<br />344<br />345<br />346<br />347<br />348<br />349<br />350<br />351<br />352<br />353<br />354<br />355<br />356<br />357<br />358<br />359<br />360<br />361<br />362<br />363<br />364<br />365<br />366<br />367<br />368<br />369<br />370<br />371<br />372<br />373<br />374<br />375<br /></div></td><td><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #006600; font-style: italic;">// ==UserScript==</span><br />
<span style="color: #006600; font-style: italic;">// @name &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Block Messages from Non-Followings</span><br />
<span style="color: #006600; font-style: italic;">// @namespace &nbsp; &nbsp; &nbsp;http://weizenspr.eu</span><br />
<span style="color: #006600; font-style: italic;">// @include &nbsp; &nbsp; &nbsp; &nbsp;http://twitter.com/*</span><br />
<span style="color: #006600; font-style: italic;">// @include &nbsp; &nbsp; &nbsp; &nbsp;https://twitter.com/*</span><br />
<span style="color: #006600; font-style: italic;">// ==/UserScript==</span><br />
<br />
<span style="color: #003366; font-weight: bold;">var</span> checkHomeScreen <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> hideAgainTimer &nbsp;<span style="color: #339933;">=</span> <span style="color: #CC0000;">2000</span><span style="color: #339933;">;</span> <span style="color: #006600; font-style: italic;">// in milliseconds (values &lt;= 0 deactivate the timer)</span><br />
<span style="color: #003366; font-weight: bold;">var</span> showThesePeople <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #3366CC;">&quot;followers&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;followings&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #006600; font-style: italic;">// can either be &quot;followers&quot; and/or &quot;followings&quot;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> showDebugAlerts <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #006600; font-style: italic;">// DO NOT EDIT BELOW THIS LINE</span><br />
<br />
<span style="color: #006600; font-style: italic;">// options</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followersOption &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;followers&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followingsOption <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;followings&quot;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #006600; font-style: italic;">// twitter page titles</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followersTitle &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Twitter / People who follow &quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followingsTitle_Start <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Twitter / People &quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followingsTitle_Stop &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot; is following&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> homeTitle &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Twitter / Home&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> replyTitle &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Twitter / @&quot;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #006600; font-style: italic;">// twitter URLs</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followingsURL <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;http://twitter.com/following&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followersURL &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;http://twitter.com/followers&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> twitterHost &nbsp; <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;http://twitter.com&quot;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #006600; font-style: italic;">// twitter ids and classes</span><br />
<span style="color: #003366; font-weight: bold;">var</span> className_Start <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;hentry u-&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> className_Stop &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot; status&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> className2_Stop <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot; share status&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> nextLinkRel &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;me next&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> paginationId &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;pagination&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> timelineId &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;timeline&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> usernameMeta &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;session-user-screen_name&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> userSpanClass &nbsp; <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;label screenname&quot;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #006600; font-style: italic;">// html and css fragments</span><br />
<span style="color: #003366; font-weight: bold;">var</span> anchorTag &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;a&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> displayNone &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;none&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> divTag &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;div&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> itemTag &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;li&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> metaTag &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;meta&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> paragraphTag <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;p&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> spanTag &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;span&quot;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #006600; font-style: italic;">// greasemonkey option names</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followingOption &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;following_&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #003366; font-weight: bold;">var</span> followingCountOption <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;followingCount&quot;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">var</span> username <span style="color: #339933;">=</span> getUsernameFromMeta<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>username <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">title</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900;">&#40;</span>followingsTitle_Start <span style="color: #339933;">+</span> username <span style="color: #339933;">+</span> followingsTitle_Stop<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">title</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900;">&#40;</span>followersTitle <span style="color: #339933;">+</span> username<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> showFollowers &nbsp;<span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> showFollowings <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showThesePeople <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> showThesePeople.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showThesePeople<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> followersOption.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; showFollowers <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showThesePeople<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> followingsOption.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; showFollowings <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showFollowers <span style="color: #339933;">&amp;&amp;</span> showFollowings<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> proceed <span style="color: #339933;">=</span> <span style="color: #000066;">confirm</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Do you want to update your followings userlist?&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>proceed<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> allFollowers &nbsp;<span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> allFollowings <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showFollowers<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; allFollowers <span style="color: #339933;">=</span> retrieveFollowings<span style="color: #009900;">&#40;</span>followersURL<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showFollowings<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; allFollowings <span style="color: #339933;">=</span> retrieveFollowings<span style="color: #009900;">&#40;</span>followingsURL<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> totalList <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Array<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> count &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>allFollowers <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> indexA <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> indexA <span style="color: #339933;">&lt;</span> allFollowers.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> indexA<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; totalList<span style="color: #009900;">&#91;</span>count<span style="color: #339933;">++</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> allFollowers<span style="color: #009900;">&#91;</span>indexA<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>allFollowings <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> indexB <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> indexB <span style="color: #339933;">&lt;</span> allFollowings.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> indexB<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; totalList<span style="color: #009900;">&#91;</span>count<span style="color: #339933;">++</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> allFollowings<span style="color: #009900;">&#91;</span>indexB<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; saveFollowings<span style="color: #009900;">&#40;</span>totalList<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showDebugAlerts<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Finished update: &quot;</span> <span style="color: #339933;">+</span> totalList.<span style="color: #660066;">length</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot; entries added&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">title</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> homeTitle.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>checkHomeScreen<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; hideUnwantedReplies<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">title</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900;">&#40;</span>replyTitle <span style="color: #339933;">+</span> username<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; hideUnwantedReplies<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> getUsernameFromMeta<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> allMetas &nbsp; <span style="color: #339933;">=</span> document.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span>metaTag<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> singleMeta <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> allMetas.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; singleMeta <span style="color: #339933;">=</span> allMetas<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>singleMeta <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>singleMeta.<span style="color: #000066;">name</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> usernameMeta.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; result <span style="color: #339933;">=</span> singleMeta.<span style="color: #660066;">content</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">break</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> result<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<span style="color: #003366; font-weight: bold;">function</span> clearFollowings<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> followingCount <span style="color: #339933;">=</span> GM_getValue<span style="color: #009900;">&#40;</span>followingCountOption<span style="color: #339933;">,</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> followingCount<span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; GM_deleteValue<span style="color: #009900;">&#40;</span>followingOption <span style="color: #339933;">+</span> index<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; GM_deleteValue<span style="color: #009900;">&#40;</span>followingCountOption<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> loadFollowings<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> followingCount <span style="color: #339933;">=</span> GM_getValue<span style="color: #009900;">&#40;</span>followingCountOption<span style="color: #339933;">,</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>followingCount <span style="color: #339933;">&gt;</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Array<span style="color: #009900;">&#40;</span>followingCount<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> followingCount<span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; result<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> GM_getValue<span style="color: #009900;">&#40;</span>followingOption <span style="color: #339933;">+</span> index<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> result<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> saveFollowings<span style="color: #009900;">&#40;</span>followingsArray<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; clearFollowings<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>followingsArray <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; GM_setValue<span style="color: #009900;">&#40;</span>followingCountOption<span style="color: #339933;">,</span> followingsArray.<span style="color: #660066;">length</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> followingsArray.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; GM_setValue<span style="color: #009900;">&#40;</span>followingOption <span style="color: #339933;">+</span> index<span style="color: #339933;">,</span> followingsArray<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> checkReplyClass<span style="color: #009900;">&#40;</span>followingsArray<span style="color: #339933;">,</span> itemClassName<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>followingsArray <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> followingsArray.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>className_Start <span style="color: #339933;">+</span> followingsArray<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span> <span style="color: #339933;">+</span> className_Stop<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> itemClassName.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>className_Start <span style="color: #339933;">+</span> followingsArray<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span> <span style="color: #339933;">+</span> className2_Stop<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> itemClassName.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">break</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> result<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> hideUnwantedReplies<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> followings <span style="color: #339933;">=</span> loadFollowings<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> timeline &nbsp; <span style="color: #339933;">=</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span>timelineId<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> allItems &nbsp; <span style="color: #339933;">=</span> timeline.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span>itemTag<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> singleItem <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> allItems.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; singleItem <span style="color: #339933;">=</span> allItems<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>singleItem <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>checkReplyClass<span style="color: #009900;">&#40;</span>followings<span style="color: #339933;">,</span> singleItem.<span style="color: #660066;">className</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; singleItem.<span style="color: #660066;">style</span>.<span style="color: #660066;">display</span> <span style="color: #339933;">=</span> displayNone<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>hideAgainTimer <span style="color: #339933;">&gt;</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; setTimeout<span style="color: #009900;">&#40;</span>hideUnwantedReplies<span style="color: #339933;">,</span> hideAgainTimer<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #006600; font-style: italic;">// as taken from http://www.developers-guide.net/c/117-eine-einfuehrung-in-ajax-und-xmlhttprequest.html</span><br />
<span style="color: #003366; font-weight: bold;">function</span> createHttpRequest<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
&nbsp;<br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>window.<span style="color: #660066;">ActiveXObject</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #006600; font-style: italic;">// IE 6 and higher</span><br />
&nbsp; &nbsp; &nbsp; result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> ActiveXObject<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;MSXML2.XMLHTTP&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span>e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #006600; font-style: italic;">// IE 5</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> ActiveXObject<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Microsoft.XMLHTTP&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span>e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">else</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>window.<span style="color: #660066;">XMLHttpRequest</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #006600; font-style: italic;">// Mozilla, Opera, Safari ...</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> XMLHttpRequest<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span>e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> result<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> retrieveSource<span style="color: #009900;">&#40;</span>url<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> httpRequest <span style="color: #339933;">=</span> createHttpRequest<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>httpRequest <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; httpRequest.<span style="color: #000066;">open</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;GET&quot;</span><span style="color: #339933;">,</span> url<span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; httpRequest.<span style="color: #660066;">send</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>httpRequest.<span style="color: #660066;">readyState</span> <span style="color: #339933;">==</span> <span style="color: #CC0000;">4</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>httpRequest.<span style="color: #000066;">status</span> <span style="color: #339933;">==</span> <span style="color: #CC0000;">200</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; result <span style="color: #339933;">=</span> httpRequest.<span style="color: #660066;">responseText</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> result<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> retrieveEntries<span style="color: #009900;">&#40;</span>source<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Array<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> count &nbsp;<span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>source <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> element <span style="color: #339933;">=</span> document.<span style="color: #660066;">createElement</span><span style="color: #009900;">&#40;</span>paragraphTag<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp;<br />
&nbsp; &nbsp; element.<span style="color: #660066;">innerHTML</span> <span style="color: #339933;">=</span> source<span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> allAnchors &nbsp; <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> singleAnchor <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> allSpans &nbsp; &nbsp; <span style="color: #339933;">=</span> element.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span>spanTag<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> singleSpan &nbsp; <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>allSpans <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> allSpans.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; singleSpan <span style="color: #339933;">=</span> allSpans<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>singleSpan <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>singleSpan.<span style="color: #660066;">className</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> userSpanClass.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; allAnchors <span style="color: #339933;">=</span> singleSpan.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span>anchorTag<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>allAnchors <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>allAnchors.<span style="color: #660066;">length</span> <span style="color: #339933;">&gt;</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; singleAnchor <span style="color: #339933;">=</span> allAnchors<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>singleAnchor <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; result<span style="color: #009900;">&#91;</span>count<span style="color: #339933;">++</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> singleAnchor.<span style="color: #660066;">innerHTML</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; element.<span style="color: #660066;">innerHTML</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> result<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> retrieveNextPage<span style="color: #009900;">&#40;</span>source<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><br />
<br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>source <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> element <span style="color: #339933;">=</span> document.<span style="color: #660066;">createElement</span><span style="color: #009900;">&#40;</span>paragraphTag<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp;<br />
&nbsp; &nbsp; element.<span style="color: #660066;">innerHTML</span> <span style="color: #339933;">=</span> source<span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> allAnchors &nbsp; <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> singleAnchor <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> allDivs &nbsp; <span style="color: #339933;">=</span> element.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span>divTag<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> singleDiv <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>allDivs <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>allDivs.<span style="color: #660066;">length</span> <span style="color: #339933;">&gt;</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> indexA <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> indexA <span style="color: #339933;">&lt;</span> allDivs.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> indexA<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; singleDiv <span style="color: #339933;">=</span> allDivs<span style="color: #009900;">&#91;</span>indexA<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>singleDiv <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>singleDiv.<span style="color: #660066;">className</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> paginationId.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; allAnchors <span style="color: #339933;">=</span> singleDiv.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span>anchorTag<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>allAnchors <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>allAnchors.<span style="color: #660066;">length</span> <span style="color: #339933;">&gt;</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> indexB <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> indexB <span style="color: #339933;">&lt;</span> allAnchors.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> indexB<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; singleAnchor <span style="color: #339933;">=</span> allAnchors<span style="color: #009900;">&#91;</span>indexB<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>singleAnchor <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>singleAnchor.<span style="color: #660066;">rel</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> nextLinkRel.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; result <span style="color: #339933;">=</span> singleAnchor.<span style="color: #660066;">href</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">break</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; element.<span style="color: #660066;">innerHTML</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> result<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> retrieveFollowings<span style="color: #009900;">&#40;</span>url<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Array<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> count &nbsp;<span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> source &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> retrieveSource<span style="color: #009900;">&#40;</span>url<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> nextPage &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> outputArray <span style="color: #339933;">=</span> retrieveEntries<span style="color: #009900;">&#40;</span>source<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>outputArray <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>outputArray.<span style="color: #660066;">length</span> <span style="color: #339933;">&gt;</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> outputArray.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; result<span style="color: #009900;">&#91;</span>count<span style="color: #339933;">++</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> outputArray<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">do</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; nextPage <span style="color: #339933;">=</span> retrieveNextPage<span style="color: #009900;">&#40;</span>source<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>nextPage <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showDebugAlerts<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Proceeding with next page: &quot;</span> <span style="color: #339933;">+</span> nextPage<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; source &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> retrieveSource<span style="color: #009900;">&#40;</span>nextPage<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; outputArray <span style="color: #339933;">=</span> retrieveEntries<span style="color: #009900;">&#40;</span>source<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>outputArray <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span>outputArray.<span style="color: #660066;">length</span> <span style="color: #339933;">&gt;</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> index <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> index <span style="color: #339933;">&lt;</span> outputArray.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> index<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; result<span style="color: #009900;">&#91;</span>count<span style="color: #339933;">++</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> outputArray<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">while</span> <span style="color: #009900;">&#40;</span>nextPage <span style="color: #339933;">!=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>showDebugAlerts<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>result.<span style="color: #660066;">length</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot; entries found&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> result<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Im ersten Schritt muss man das Script konfigurieren. Es gibt ein paar Parameter die man setzen kann:</p>
<ul>
<li>Sollen nur die Replies gefiltert werden, oder auch der Home-Screen z.B. von API-Retweets bereinigt werden?</li>
<li>Alle wieviele Millisekunden soll die Ansicht erneut von Unrat befreit werden?</li>
<li>Wessen Tweets sollen noch angezeigt werden? Die von den Leuten, denen man selber folgt, von den Leuten, die einem folgen oder von beiden Gruppen?</li>
<li>Sollen Debug-Meldungen angezeigt werden?</li>
</ul>
<p>Als nächstes muss man das Script aktivieren und dann entweder die Seite mit der Liste <a href="http://twitter.com/followers" target="_blank" class="liexternal">seiner Follower</a> oder <a href="http://twitter.com/following" target="_blank" class="liexternal">seiner Followings</a> besuchen. Der Grund? Tjaaa&#8230; weil ich die API nicht benutzen wollte, habe ich einen Crawler geschrieben, der diese Seiten durchcrawled und dadurch die Leute findet, die zu den entsprechenden Gruppen gehören&#8230; und das Aufrufen einer der beiden Seiten ist das Startsignal des Crawlers. Das bedeutet allerdings auch, dass man eine der beiden Seite regelmäßig besuchen sollte. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> <br/><br />
<strong>Filternde Grüße, Kenny</strong></p>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/dein-twitter-wie-du-willst/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>[Update] Memory in 2*n Schritten lösen&#8230;</title>
		<link>http://weizenspr.eu/2010/memory-in-2n-schritten-losen/</link>
		<comments>http://weizenspr.eu/2010/memory-in-2n-schritten-losen/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 14:53:52 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Just Spottet]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Weizen]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=6064</guid>
		<description><![CDATA[Vorhin bin ich in den IT-Nachrichten über die internationale Informatik-Olympiade gestolpert &#8211; diese fand dieses Jahr zum 22sten Mal statt; dieses Mal in Ontario/Kanada. Eine Aufgabe hat mich besonders fasziniert: Wie löst man am besten eine Partie Memory?
In der Aufgabe war das Gerüst bereits vorgegeben &#8211; man musste nur noch die eigentliche Logik entwickeln. Dabei [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p>Vorhin bin ich in den IT-Nachrichten über die internationale Informatik-Olympiade gestolpert &#8211; diese fand dieses Jahr zum 22sten Mal statt; dieses Mal in Ontario/Kanada. <a href="http://plg1.cs.uwaterloo.ca/~gvcormac/day2task1/" target="_blank" class="liexternal">Eine Aufgabe</a> hat mich besonders fasziniert: Wie löst man am besten eine Partie Memory?</p>
<p>In der Aufgabe war das Gerüst bereits vorgegeben &#8211; man musste nur noch die eigentliche Logik entwickeln. Dabei gab es zwei Teilaufgaben&#8230; bei der ersten musste man lediglich so weit kommen, dass alle Karten mindestens einmal aufgedeckt wurden. Um das zu Zählen, wurde für jedes aufgedeckte Paar &#8211; auch, wenn es nicht gleichzeitig aufgedeckt wurde &#8211; ein Bonbon verteilt. In einer vorgegebenen Zeit musste das selbstgeschriebene Programm alle 25 möglichen Bonbons erhalten.<br />
Die nächste Schwierigkeitsstufe war dann, dass das gesamte Spiel in maximal 100 Kartenumdrehungen (bei 50 Karten im Spiel) gelöst werden musste. Natürlich ist die erste Aufgabe auch dann gelöst, wenn man auch direkt die zweite Aufgabe gelöst hat. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Als ich das laß, kam mir folgende einfache Idee: Wieso nicht erstmal alle Karten umdrehen, die Werte merken und dann einfach nur noch die Paare abgrasen? Dann würde man genau 50 Umdrehungen benötigen, um alle Karten zu kennen und weitere 50 Umdrehungen, um die Karten paarweise aufzudecken. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<div class="codecolorer-container pascal default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br /></div></td><td><div class="pascal codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">program</span> PasMemory;<br />
<br />
<span style="color: #000000; font-weight: bold;">uses</span><br />
&nbsp; CardGiver<span style="color: #339933;">,</span><br />
&nbsp; Memory;<br />
<br />
<span style="color: #000000; font-weight: bold;">var</span><br />
&nbsp; Line <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">String</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; PrepareCards;<br />
&nbsp; PlayGame;<br />
<br />
&nbsp; <span style="color: #000066;">WriteLn</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>;<br />
&nbsp; <span style="color: #000066;">WriteLn</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Moves: '</span><span style="color: #339933;">,</span> TurnCounter<span style="color: #009900;">&#41;</span>;<br />
&nbsp; <span style="color: #000066;">WriteLn</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Over : '</span><span style="color: #339933;">,</span> GameOver<span style="color: #009900;">&#41;</span>;<br />
&nbsp; <span style="color: #000066;">ReadLn</span><span style="color: #009900;">&#40;</span>Line<span style="color: #009900;">&#41;</span>;<br />
<span style="color: #000000; font-weight: bold;">end</span>.</div></td></tr></tbody></table></div>
<div class="codecolorer-container pascal default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br /></div></td><td><div class="pascal codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">unit</span> CardGiver;<br />
<br />
<span style="color: #000000; font-weight: bold;">interface</span><br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> GameOver <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
<span style="color: #000000; font-weight: bold;">function</span> PrepareCards <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
<span style="color: #000000; font-weight: bold;">function</span> TurnCard<span style="color: #009900;">&#40;</span>CardID <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Char</span>;<br />
<span style="color: #000000; font-weight: bold;">function</span> TurnCounter <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Integer</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">implementation</span><br />
<br />
<span style="color: #000000; font-weight: bold;">var</span><br />
&nbsp; CardStack <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">array</span> <span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span>..50<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">of</span> <span style="color: #000066; font-weight: bold;">Char</span>;<br />
&nbsp; FirstCard <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
&nbsp; TurnCount <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Integer</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> GameOver <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
<span style="color: #000000; font-weight: bold;">var</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
<span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; Result <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">true</span>;<br />
<br />
&nbsp; <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:=</span> Low<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">to</span> High<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">do</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#93;</span> &lt;&gt; #<span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; &nbsp; Result <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">false</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
<span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> PrepareCards <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
<span style="color: #000000; font-weight: bold;">const</span><br />
&nbsp; CardCount <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">25</span>;<br />
<span style="color: #000000; font-weight: bold;">var</span><br />
&nbsp; Cards <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">array</span> <span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span>..25<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">of</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
&nbsp; Done &nbsp;<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
&nbsp; Temp &nbsp;<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
<span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; FirstCard <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;<br />
&nbsp; TurnCount <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;<br />
<br />
&nbsp; <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:=</span> Low<span style="color: #009900;">&#40;</span>Cards<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">to</span> High<span style="color: #009900;">&#40;</span>Cards<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">do</span><br />
&nbsp; &nbsp; Cards<span style="color: #009900;">&#91;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">2</span>;<br />
<br />
&nbsp; <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:=</span> Low<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">to</span> High<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">do</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; Done <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">false</span>;<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">repeat</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;Temp <span style="color: #339933;">:=</span> <span style="color: #000066;">Succ</span><span style="color: #009900;">&#40;</span>Random<span style="color: #009900;">&#40;</span>CardCount<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>Cards<span style="color: #009900;">&#91;</span>Temp<span style="color: #009900;">&#93;</span> &gt; <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Cards<span style="color: #009900;">&#91;</span>Temp<span style="color: #009900;">&#93;</span> &nbsp; &nbsp; &nbsp;<span style="color: #339933;">:=</span> <span style="color: #000066;">Pred</span><span style="color: #009900;">&#40;</span>Cards<span style="color: #009900;">&#91;</span>Temp<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CardStack<span style="color: #009900;">&#91;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #000066; font-weight: bold;">Char</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">Pred</span><span style="color: #009900;">&#40;</span>Temp<span style="color: #339933;">+</span><span style="color: #cc66cc;">65</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Done <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">true</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">until</span> Done;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
&nbsp; Result <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">true</span>;<br />
<span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> TurnCard<span style="color: #009900;">&#40;</span>CardID <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Char</span>;<br />
<span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>CardID &gt;<span style="color: #339933;">=</span> Low<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000066;">and</span> <span style="color: #009900;">&#40;</span>CardID &lt;<span style="color: #339933;">=</span> High<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>FirstCard <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000066;">and</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardID<span style="color: #009900;">&#93;</span> &lt;&gt; #<span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; Result &nbsp; &nbsp;<span style="color: #339933;">:=</span> CardStack<span style="color: #009900;">&#91;</span>CardID<span style="color: #009900;">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp; TurnCount <span style="color: #339933;">:=</span> <span style="color: #000066;">Succ</span><span style="color: #009900;">&#40;</span>TurnCount<span style="color: #009900;">&#41;</span>;<br />
<br />
&nbsp; &nbsp; &nbsp; FirstCard <span style="color: #339933;">:=</span> CardID;<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>FirstCard &lt;&gt; <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000066;">and</span> <span style="color: #009900;">&#40;</span>FirstCard &lt;&gt; CardID<span style="color: #009900;">&#41;</span> <span style="color: #000066;">and</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardID<span style="color: #009900;">&#93;</span> &lt;&gt; #<span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Result &nbsp; &nbsp;<span style="color: #339933;">:=</span> CardStack<span style="color: #009900;">&#91;</span>CardID<span style="color: #009900;">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; TurnCount <span style="color: #339933;">:=</span> <span style="color: #000066;">Succ</span><span style="color: #009900;">&#40;</span>TurnCount<span style="color: #009900;">&#41;</span>;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardID<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> CardStack<span style="color: #009900;">&#91;</span>FirstCard<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066;">WriteLn</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Pair : '</span><span style="color: #339933;">,</span> CardStack<span style="color: #009900;">&#91;</span>CardID<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span>CardID<span style="color: #009900;">&#93;</span> &nbsp; &nbsp;<span style="color: #339933;">:=</span> #<span style="color: #cc66cc;">0</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span>FirstCard<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> #<span style="color: #cc66cc;">0</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; FirstCard <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;<br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Result <span style="color: #339933;">:=</span> #<span style="color: #cc66cc;">0</span>;<br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">end</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; Result <span style="color: #339933;">:=</span> #<span style="color: #cc66cc;">0</span>;<br />
<span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> TurnCounter <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Integer</span>;<br />
<span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; Result <span style="color: #339933;">:=</span> TurnCount;<br />
<span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">initialization</span><br />
&nbsp; Randomize;<br />
<br />
<span style="color: #000000; font-weight: bold;">end</span>.</div></td></tr></tbody></table></div>
<div class="codecolorer-container pascal default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br /></div></td><td><div class="pascal codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">unit</span> Memory;<br />
<br />
<span style="color: #000000; font-weight: bold;">interface</span><br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> PlayGame <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">implementation</span><br />
<br />
<span style="color: #000000; font-weight: bold;">uses</span><br />
&nbsp; CardGiver;<br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> PlayGame <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
<span style="color: #000000; font-weight: bold;">var</span><br />
&nbsp; CardStack <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">array</span> <span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span>..50<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">of</span> <span style="color: #000066; font-weight: bold;">Char</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">Index</span> &nbsp; &nbsp; <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
&nbsp; IndexB &nbsp; &nbsp;<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
<span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">to</span> <span style="color: #cc66cc;">25</span> <span style="color: #000000; font-weight: bold;">do</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span><span style="color: #000066;">Pred</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> TurnCard<span style="color: #009900;">&#40;</span><span style="color: #000066;">Pred</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span> &nbsp; &nbsp; <span style="color: #339933;">:=</span> TurnCard<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;<br />
<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span><span style="color: #000066;">Pred</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> CardStack<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span><span style="color: #000066;">Pred</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> #<span style="color: #cc66cc;">0</span>;<br />
&nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span> &nbsp; &nbsp; <span style="color: #339933;">:=</span> #<span style="color: #cc66cc;">0</span>;<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
&nbsp; <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">repeat</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#93;</span> &lt;&gt; #<span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">for</span> IndexB <span style="color: #339933;">:=</span> <span style="color: #000066;">Succ</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">to</span> High<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">do</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> CardStack<span style="color: #009900;">&#91;</span>IndexB<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TurnCard<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TurnCard<span style="color: #009900;">&#40;</span>IndexB<span style="color: #009900;">&#41;</span>;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#93;</span> &nbsp;<span style="color: #339933;">:=</span> #<span style="color: #cc66cc;">0</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span>IndexB<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> #<span style="color: #cc66cc;">0</span>;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">Break</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:=</span> <span style="color: #000066;">Succ</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#41;</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">until</span> <span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">Index</span> &gt; High<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;<br />
<br />
&nbsp; Result <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">true</span>;<br />
<span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">end</span>.</div></td></tr></tbody></table></div>
<p>Da ich den vorgegebenen Kartenumdreh-Mechanismus leider nicht zum Laufen gekriegt hatte, habe ich auch diesen einfach nochmal neu implementiert (inklusive automatischem Durchmischen der Karten und einer Überprüfung, ob das Spiel wirklich vorbei ist). Und was soll ich sagen? Meine Idee war genau die richtige &#8211; und dank einer kleinen Optimierung (falls ein gleiches Paar beim erstmaligen Aufdecken schon gefunden wird, muss es kein zweites Mal betrachtet werden) braucht man teilweise sogar weniger als 100 Kartenumdrehungen&#8230; <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> <br/><br />
<strong>Update:</strong><br />
<a href="http://weizenspr.eu/2010/memory-in-2n-schritten-losen/#comment-4038" target="_blank" class="liinternal">Jan Hendrik Burdinski</a> hatte die Idee geäußert, nicht einfach nur alle Karten einmal aufzudecken und dann abzuräumen, sondern schon beim Aufdecken vorher gefundene Partnerkarten mit zu berücksichtigen. Die Idee hat mir so gut gefallen, dass ich sie auch noch umsetzen wollte:</p>
<div class="codecolorer-container pascal default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br /></div></td><td><div class="pascal codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">unit</span> Memory;<br />
<br />
<span style="color: #000000; font-weight: bold;">interface</span><br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> PlayGame <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">implementation</span><br />
<br />
<span style="color: #000000; font-weight: bold;">uses</span><br />
&nbsp; CardGiver;<br />
<br />
<span style="color: #000000; font-weight: bold;">function</span> PlayGame <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span>;<br />
<span style="color: #000000; font-weight: bold;">var</span><br />
&nbsp; CardA &nbsp; &nbsp; <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Char</span>;<br />
&nbsp; CardB &nbsp; &nbsp; <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Char</span>;<br />
&nbsp; CardStack <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">array</span> <span style="color: #009900;">&#91;</span><span style="color: #ff0000;">'A'</span>..<span style="color: #ff0000;">'Z'</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">of</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">Index</span> &nbsp; &nbsp; <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Char</span>;<br />
&nbsp; IndexB &nbsp; &nbsp;<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">Byte</span>;<br />
<span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #000000; font-weight: bold;">Index</span> <span style="color: #339933;">:=</span> <span style="color: #ff0000;">'A'</span> <span style="color: #000000; font-weight: bold;">to</span> <span style="color: #ff0000;">'Z'</span> <span style="color: #000000; font-weight: bold;">do</span><br />
&nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span><span style="color: #000000; font-weight: bold;">Index</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;<br />
<br />
&nbsp; IndexB <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">while</span> <span style="color: #009900;">&#40;</span>IndexB &lt;<span style="color: #339933;">=</span> <span style="color: #cc66cc;">50</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">do</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; CardA <span style="color: #339933;">:=</span> TurnCard<span style="color: #009900;">&#40;</span>IndexB<span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>CardA &lt;&gt; #<span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span> <span style="color: #666666; font-style: italic;">// card is valid</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardA<span style="color: #009900;">&#93;</span> &gt;<span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000066;">and</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardA<span style="color: #009900;">&#93;</span> &lt;<span style="color: #339933;">=</span> <span style="color: #cc66cc;">50</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span> <span style="color: #666666; font-style: italic;">// card value has been seen before</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// flip matching card</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; TurnCard<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardA<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span>CardA<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">255</span>;<br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardA<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span> <span style="color: #666666; font-style: italic;">// card value has not been seen before</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// save card position</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span>CardA<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> IndexB;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// flip second card</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; IndexB <span style="color: #339933;">:=</span> <span style="color: #000066;">Succ</span><span style="color: #009900;">&#40;</span>IndexB<span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>IndexB &lt;<span style="color: #339933;">=</span> <span style="color: #cc66cc;">50</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardB <span style="color: #339933;">:=</span> TurnCard<span style="color: #009900;">&#40;</span>IndexB<span style="color: #009900;">&#41;</span>;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>CardA <span style="color: #339933;">=</span> CardB<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span> <span style="color: #666666; font-style: italic;">// 1st and 2nd card are a pair</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span>CardB<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">255</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardB<span style="color: #009900;">&#93;</span> &gt;<span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000066;">and</span> <span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardB<span style="color: #009900;">&#93;</span> &lt;<span style="color: #339933;">=</span> <span style="color: #cc66cc;">50</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">then</span> <span style="color: #666666; font-style: italic;">// card value has been seen before</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// flip matching cards</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TurnCard<span style="color: #009900;">&#40;</span>IndexB<span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TurnCard<span style="color: #009900;">&#40;</span>CardStack<span style="color: #009900;">&#91;</span>CardB<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span>CardB<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">255</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">begin</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// save card position</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CardStack<span style="color: #009900;">&#91;</span>CardB<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> IndexB;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// move to next card</span><br />
&nbsp; &nbsp; IndexB <span style="color: #339933;">:=</span> <span style="color: #000066;">Succ</span><span style="color: #009900;">&#40;</span>IndexB<span style="color: #009900;">&#41;</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
&nbsp; Result <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">true</span>;<br />
<span style="color: #000000; font-weight: bold;">end</span>;<br />
<br />
<span style="color: #000000; font-weight: bold;">end</span>.</div></td></tr></tbody></table></div>
<p>Wie man sieht, ist die Logik etwas umfangreicher, da nun mehrere Schritte gemacht werden müssen:</p>
<ul>
<li>Die erste Karte wird aufgedeckt.</li>
<li>Es wird überprüft, ob das Symbol der ersten Karte schonmal gefunden wurde.</li>
<li>Falls ja, wird die Partnerkarte aufgedeckt und von vorne begonnen (ein Pärchen wurd gefunden).</li>
<li>Falls nein, wird die Position des Symbols der ersten Karte gespeichert und die zweite Karte aufgedeckt.</li>
<li>Es wird überprüft, ob beide Karten identisch sind.</li>
<li>Falls ja, wird von vorne begonnen (ein Pärchen wurde gefunden).</li>
<li>Falls nein, wird geprüft, ob das Symbol der zweiten Karten schonmal gefunden wurde.</li>
<li>Falls ja, wird die zweite Karte (nochmal) und ihre Partnerkarten aufgedeckt und von vorne begonnen (ein Pärchen wurde gefunden).</li>
<li>Falls nein, wird die Position des Symbols der zweiten Karte gespeichert und von vorne begonnen.</li>
</ul>
<p>Der Algorithmus ist meiner Meinung ziemlich performant und benötigt im Schnitt ca. 80 Kartenumdrehungen. Des Best-Case ist, dass die Karten paarweise sortiert sind. Der Worst-Case liegt übrigens dann vor, wenn die Karten so angeordnet sind, dass die Paarfindung immer durch das Umdrehen der zweiten Karte der Runde ausgelöst wird. Also z.B. in diesem Fall: <em>&#8220;AYBACBDCEDFEGFHGIHJIKJLKMLNMONPOQPRQSRTSUTVUWVXWYX&#8221;</em><br/><br />
<strong>Spielerische Grüße, Kenny</strong></p>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/memory-in-2n-schritten-losen/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Gewinne ein T-Shirt!</title>
		<link>http://weizenspr.eu/2010/gewinne-ein-t-shirt/</link>
		<comments>http://weizenspr.eu/2010/gewinne-ein-t-shirt/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 10:00:37 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Weizen]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=5997</guid>
		<description><![CDATA[DAS GEWINNSPIEL WURDE BEREITS BEENDET!
Ich wurde von einem Shopbetreiber hier aus meiner Heimat Berlin angeschrieben und gefragt, ob ich nicht gerne ein paar T-Shirts unter die Leute bringen will. Da ich die Idee großartig fand, möchten Shirt-Selbst-Bedrucken.de und ich euch gerne zu einem Bloggergewinnspiel einladen!  
Zu gewinnen gibt es:


15x ein T-Shirt mit Aufdruck
2x einen [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p><strong>DAS GEWINNSPIEL WURDE BEREITS BEENDET!</strong></p>
<p>Ich wurde von einem Shopbetreiber hier aus meiner Heimat Berlin angeschrieben und gefragt, ob ich nicht gerne ein paar <strong>T-Shirts</strong> unter die Leute bringen will. Da ich die Idee großartig fand, möchten <a href="http://www.shirt-selbst-bedrucken.de/" target="_blank" class="liexternal">Shirt-Selbst-Bedrucken.de</a> und ich euch gerne zu einem <strong>Bloggergewinnspiel</strong> einladen! <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<h3>Zu gewinnen gibt es:</h3>
<p><strong>
<ul>
<li>15x <a href="http://weizenspreu.spreadshirt.de/" target="_blank" class="liexternal">ein T-Shirt mit Aufdruck</a></li>
<li>2x einen 20€ Shirt-Selbst-Bedrucken.de-Einkaufsgutschein</li>
</ul>
<p></strong></p>
<h3>Die Teilnahme ist ziemlich einfach:</h3>
<p><strong>
<ul>
<li>Schreibt einen Artikel über das Gewinnspiel</li>
<li>Verlinkt die Seite <a href="http://www.shirt-selbst-bedrucken.de/" target="_blank" class="liexternal">Shirt-Selbst-Bedrucken.de</a> (Linktext egal, nofollow erlaubt)</li>
<li>Schickt einen Trackback an diesen Gewinnspiel-Beitrag</li>
<li>Die ersten 15 Personen, die teilgenommen haben, bekommen ein T-Shirt! <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </li>
</ul>
<p></strong></p>
<p>Solltet ihr keinen Trackback schicken können, könnt ihr auch einen Link zu eurem Artikel unten in den Kommentaren hinterlassen. Für die Gewinnerermittlung gilt der Zeitstempel des Trackbacks/des Kommentars hier im Blog. Der Rechtsweg ist ausgeschlossen. Das Gewinnspiel endet am Sonntag, dem 29.08.2010, um Punkt 12:00 Mittags.</p>
<p><strong>Unter allen, die bis zum Gewinnspielende teilgenommen haben, werden zusätzlich die beiden Gutscheine à 20€ verlost. Die Gewinnerziehung erfolgt per <a href="http://www.random.org/lists/" target="_blank" class="liexternal">Random.org</a>.</strong></p>
<h3>Was ihr von der Teilnahme habt?</h3>
<p><strong>
<ul>
<li>Die ersten 15 Teilnehmer bekommen ein Gratis-T-Shirt <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  !</li>
<li>Alle Teilnehmer erhalten einen dofollow-Backlink!</li>
<li>Alle Teilnehmer haben die Chance auf einen von zwei verlosten 20€ Shirt-Selbst-Bedrucken.de-Einkaufsgutschein!</li>
</ul>
<p></strong></p>
<p>Was die Gewinner tun müssen, um ihren Gewinn zu erhalten, erkläre ich euch am nächsten Sonntag in einem separaten Artikel. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<h3>Viel Spaß beim Gewinnspiel! <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </h3>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/gewinne-ein-t-shirt/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>sp!!k II: Die Funktionsweise</title>
		<link>http://weizenspr.eu/2010/spk-ii-die-funktionsweise/</link>
		<comments>http://weizenspr.eu/2010/spk-ii-die-funktionsweise/#comments</comments>
		<pubDate>Sun, 22 Aug 2010 22:00:12 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Weizen]]></category>
		<category><![CDATA[sp!!k]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=6023</guid>
		<description><![CDATA[Nachdem ich euch das letzte Mal die Idee von sp!!k vorgestellt habe, wollte ich euch diese Woche erklären, was ich mir überlegt hatte, um die Theorie praktisch umzusetzen. Dabei sollte man wissen, dass mit der Umsetzung mehrere Fliegen mit einer Klappe geschlagen werden sollten:

Es sollte möglich sein, dass man seinen eigenen sp!!k-Server betreibt, aber trotzdem [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p>Nachdem ich euch <a href="http://weizenspr.eu/2010/spk-i-die-idee/" target="_blank" class="liinternal">das letzte Mal</a> die Idee von <strong>sp!!k</strong> vorgestellt habe, wollte ich euch diese Woche erklären, was ich mir überlegt hatte, um die Theorie praktisch umzusetzen. Dabei sollte man wissen, dass mit der Umsetzung mehrere Fliegen mit einer Klappe geschlagen werden sollten:</p>
<ul>
<li>Es sollte möglich sein, dass man seinen eigenen sp!!k-Server betreibt, aber trotzdem andere Nutzer auf diesem Server arbeiten können.</li>
<li>Es sollte möglich sein, alle wichtigen, schriftlichen Kommunikationsformen mit sp!!k abzudecken.</li>
<li>Der Erzeuger eines Inhaltes sollte stets die Kontrolle über seine eigenen Inhalte haben.</li>
<li>Spam sollte, soweit möglich, verhindert werden.</li>
</ul>
<p>Fangen wir mit der Beschreibung der Lösung an der Wurzel an &#8211; den <em>Conversations</em> (engl. für &#8220;Gespräche&#8221;). Alle Gespräche laufen in sogenannten Konversationssträngen ab &#8211; diese bestehen aus einem Ausgangspunkt und beliebig vielen Anhängen (sogenannte <em>Chapter</em> [engl. für "Kapitel"]). Die Anhänge sind dabei selbst auch wieder Konversationsstränge, die Anhänge beinhalten können.</p>
<p>Nehmen wir als Beispiel ein Forum: In so einem Forum können Mitglieder &#8220;Threads&#8221; anlegen &#8211; das sind Themen, die besprochen werden sollen. Ein Thread besteht immer mindestens aus dem Ausgangspost und den Antworten der Threadteilnehmer. Je nach Forensoftware kann entweder nur auf den Ausgangspost geantwortet werden (wodurch alle Antworten automatisch zeitlich geordnet sind), oder aber man kann auf die Antwort eines anderen Threadteilnehmers antworten. Genau dies ist in sp!!k durch die Conversations und die Chapter möglich.<br />
Aber nicht nur dort sind sie möglich. Ein gutes Beispiel sind E-Mail-Konversationen: Dort gibt es die verschiedensten Versuche, Konversationsstränge abzubilden &#8211; anhand der Betreffzeile, anhand der Empfängeradressen, anhand von zusätzlichen Header-Informationen&#8230; bei sp!!k handelt es sich beim &#8220;E-Mailing&#8221; einfach um eine Conversation (&#8220;Initial-E-Mail&#8221;) und beliebig vielen Chapters (&#8220;Antworten&#8221;).<br />
Bei Chaträumen ist es wieder da gleiche: Irgendjemand eröffnet durch die erste Nachricht den Raum (die Conversation) und alle anderen können Antworten in diesen Raum posten.<br />
Wer jetzt mitgedacht hat, weiß, dass es bei Webseiten natürlich der gleiche Vorgang ist: ein Inhalt (z.B. ein &#8220;Blogeintrag&#8221;) plus beliebig viele Kommentare&#8230; es ist immer das gleiche Bild. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>So eine Conversation (und damit auch die Chapter) zeichnen sich durch ein paar Besonderheiten aus. Zum einen gibt es für jede Conversation eine Art <a href="http://de.wikipedia.org/wiki/Access_Control_List" target="_blank" rel="nofollow" class="liwikipedia">Access Control List</a>, mit der der Initiator bestimmen kann, wer die Konversation lesen darf und wer der Konversation weitere Kapitel hinzufügen darf. Über diesen Mechanismus wird der Unterschied zwischen öffentlichen Inhalten und privaten Inhalten erreicht: Eine &#8220;E-Mail&#8221; hat also eine sehr strenge ACL, während eine öffentliche &#8220;Webseite&#8221; eine weitreichende ACL hat. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Zudem besitzt so eine Konversation eine Art Haltbarkeitsdatum &#8211; je nach Aufgabe (E-Mail, Webseite oder Chat) muss so ein Inhalt nämlich unterschiedlich lang gültig sein. Die Haltbarkeitsspanne fängt an bei <em>&#8220;für immer&#8221;</em> und endet bei <em>&#8220;bis die Nachricht abgerufen wurde&#8221;</em>.</p>
<p>Der nächste Punkt dürfte ein wenig überraschend sein: <strong>ALLE</strong> Inhalte, die jemand produziert, verbleiben in dem Speicherbereich dieser Person. Dabei ist es egal, ob es sich um eine Webseite, einen Forenbeitrag, eine Chatnachricht oder um eine E-Mail handelt. Es gibt <strong>keine</strong> Inhalte, die irgendwo anders hin dupliziert werden oder ähnliches.<br />
Dadurch wird gewährleistet, dass jeder sp!!k-Nutzer zu jederzeit bestimmen kann, welche seiner Inhalte abrufbar sind und von wem diese abrufbar sind. Ein netter Nebeneffekt ist, dass Spam-Nachrichten damit (hoffentlich) effektiv unterbunden werden. Der Grund ist, dass ein Spamer jede Spam-Nachricht in seinem eigenen Bereich aufbewahren muss. Sollte sich eine Nachricht also als Spam herausstellen, könnte man soetwas wie eine Blacklist verweden, um andere Empfänger vor dieser Nachricht zu warnen.</p>
<p>Jetzt stellt sich der ein oder andere sicherlich die Frage: <em>&#8220;Wenn die Nachrichten beim Absender bleiben, wie weiß der Empfänger dann, dass er sie lesen soll?&#8221;</em></p>
<p>Genau dafür gibt es sogenannte <em>Calls</em> (engl. für &#8220;Anrufe&#8221;). Sollte ein neues Dokument veröffentlicht werden, das an eine (oder mehrere Personen) addressiert ist, wird den Empfängern ein Call zugesendet, der ihnen mitteilt <em>&#8220;hier gibt es eine neue Nachricht, auf die ihr Zugriff habt&#8221;</em>. Neben diesen Calls für private Inhalte kann man zudem die Calls öffentlicher Inhalte abonnieren &#8211; damit man z.B. über neue Blogbeiträge informiert wird.</p>
<p>Da öffentliche Inhalte normalerweise nicht per Call verteilt werden, gibt es für sie zwei Catalogs (engl. für &#8220;Kataloge&#8221;), in denen alle öffentlichen Inhalte indiziert werden. Dabei ist der eine Katalog für lokale Conversations gedacht (Konversationen, die nur Mitglieder des eigenen Servers lesen dürfen) und ein Katalog für globale Konversationen (also Conversations, die auch von Mitgliedern anderer Server gelesen werden dürfen).</p>
<p>Und da wären wir auch schon beim letzten Thema für heute: andere Server. Ich habe mir sp!!k als Mischung zwischen einem zentralen und einem dezentralen Netzwerk vorgestellt. Dafür gibt es einige Gründe: So wird es wahrscheinlich Nutzer geben, die lieber ihren eigenen Server betreiben wollen, um ihre Daten keinem Provider anvertrauen zu müssen. Andere wiederum haben wahrscheinlich garnicht die Technik und das Wissen, um einen Server zu betreiben &#8211; die werden dann auf freie oder bezahlte Angebote zurückgreifen. Natürlich sollen trotzdem alle die Möglichkeit haben, miteinander zu kommunizieren, wenn sie das wollen.</p>
<p>Um nun den Zugriff auf die Inhalte eines anderen Servers zu erleichtern, habe ich mir überlegt, dass es das einfachste wäre, jeder Conversation einen eindeutigen Namen zuordnen zu lassen. Die URL-Struktur habe ich mir so vorgestellt:</p>
<p><center><strong>spiik://Username@Host:Port/Conversation</strong></center></p>
<p>Wenn solch eine URL nun auf einen fremden Host zeigt, soll sich der eigene Server zu dem fremden Server verbinden, die Identität sicherstellen und anschließend den Inhalt abrufen und an den User weiterleiten. Wie das ganze sicherheitstechnisch ablaufen soll, erkläre ich euch beim nächsten Mal&#8230; <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> <br/><br />
<strong>Konversationsgrüße, Kenny</strong></p>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/spk-ii-die-funktionsweise/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>[Update] Eigene Tweets auf Twitter.com verstecken&#8230;</title>
		<link>http://weizenspr.eu/2010/eigene-tweets-auf-twitter-com-verstecken/</link>
		<comments>http://weizenspr.eu/2010/eigene-tweets-auf-twitter-com-verstecken/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 14:58:46 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Weizen]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=5992</guid>
		<description><![CDATA[Auf Twitter habe ich vorhin spaßeshalber verkündet, dass ich mich selber entfolgen würde, wenn ich es könnte   . Um nicht darauf warten zu müssen, bis Twitter dieser Bitte nachkommt, habe ich mich selbst kurz dran gesetzt und einen Stil für das Firefox-Addon Stylish erstellt:
1234567@namespace url(http://www.w3.org/1999/xhtml);

@-moz-document domain(&#34;twitter.com&#34;) {
&#160; .mine {
&#160; &#160; display: none !important;
&#160; [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p>Auf Twitter habe ich vorhin spaßeshalber <a href="http://twitter.com/weizenspreu/status/21669027855" target="_blank" class="liexternal">verkündet</a>, dass ich mich selber entfolgen würde, wenn ich es könnte <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  . Um nicht darauf warten zu müssen, bis Twitter dieser Bitte nachkommt, habe ich mich selbst kurz dran gesetzt und einen Stil für das Firefox-Addon <a href="https://addons.mozilla.org/de/firefox/addon/2108/" target="_blank" class="liexternal">Stylish</a> erstellt:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">@namespace url(http://www.w3.org/1999/xhtml);<br />
<br />
@-moz-document domain(&quot;twitter.com&quot;) {<br />
&nbsp; .mine {<br />
&nbsp; &nbsp; display: none !important;<br />
&nbsp; }<br />
}</div></td></tr></tbody></table></div>
<p>Wie ihr Stylish benutzt, könnt ihr unter anderem <a href="http://weizenspr.eu/2010/tschuss-google-nervleiste/" target="_blank" class="liinternal">in diesem Artikel</a> erfahren. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> <br/><br />
<strong id="update">Update:</strong><br />
Die Idee dazu <a href="http://twitter.com/dqmhose/status/21669179776" target="_blank" class="liexternal">lieferte</a> übrigens <a href="http://twitter.com/dqmhose" target="_blank" class="liexternal">@dqmhose</a>, von dem man seit Kurzem auch seinen <a href="http://hosenwelt.com/" target="_blank" class="liexternal">neuen Blog</a> bewundern darf. <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> <br/><br />
<strong>Versteckte Grüße, Kenny</strong></p>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/eigene-tweets-auf-twitter-com-verstecken/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[Update] Die Fußgänger-Ampel&#8230;</title>
		<link>http://weizenspr.eu/2010/die-fusganger-ampel/</link>
		<comments>http://weizenspr.eu/2010/die-fusganger-ampel/#comments</comments>
		<pubDate>Thu, 19 Aug 2010 21:44:37 +0000</pubDate>
		<dc:creator>Mea Culpa</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Weizen]]></category>

		<guid isPermaLink="false">http://weizenspr.eu/?p=5971</guid>
		<description><![CDATA[Heute während der Autofahrt zur Arbeit musste ich unweigerlich an die Fußgängerampel denken. Und da ich die dabei herausgefundene Erkenntnis so großartig fand, wollte ich ihr gern einen eigenen Artikel widmen&#8230;  
Es hat mich immer schon geärgert, dass bei getrennten Fahrspuren (z.B. durch eine Verkehrsinsel) eine Straßenseite immer eher grün bekommt als die andere. [...]]]></description>
			<content:encoded><![CDATA[<!-- RSPEAK_START --><p>Heute während der Autofahrt zur Arbeit musste ich unweigerlich an die Fußgängerampel denken. Und da ich die dabei herausgefundene Erkenntnis so großartig fand, wollte ich ihr gern einen eigenen Artikel widmen&#8230; <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Es hat mich immer schon geärgert, dass bei getrennten Fahrspuren (z.B. durch eine Verkehrsinsel) eine Straßenseite immer eher grün bekommt als die andere. Und man selber steht natürlich <strong>immer</strong> auf der falschen Seite und muss den anderen Fußgängern dabei zugucken, wie sie einem entgegen laufen, während man selber noch auf sein Grün wartet. Aber warum ist das so? Warum werden bei einer breiten Straße nicht beide Laufrichtungen gleichzeitig auf grün geschaltet? <strong>Die Antwort darauf ist verblüffend!</strong> <img src='http://weizenspr.eu/weizenspreu_wordpress29_live/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Um die Situation &#8211; die damit vermieden wird &#8211; mal darzustellen, habe ich eine typische Kreuzung aufgemalt. Die Autos, die von links nach rechts fahren haben gerade rot bekommen und die, die von oben nach unten fahren, kriegen gleich grün. Die Fußgänger dürfen natürlich zuerst loslaufen.<br />
In unserem fiktiven Beispiel dürfen alle Fußgänger gleichzeitig loslaufen. Und da passiert das Unglück! Ein von rechts kommender Autofahrer war bei Gelb noch schnell über die Ampel gefahren und rast nun direkt auf die Fußgänger zu, die bereits auf die Straße gelaufen sind&#8230; eine gefährliche Situation!</p>
<div id="attachment_5981" class="wp-caption aligncenter" style="width: 310px"><a href="http://weizenspr.eu/uploads/fussgaenger_ampel_neu.png" target="_blank" class="liimagelink"><img src="http://weizenspr.eu/uploads/fussgaenger_ampel_neu-300x300.png" alt="" title="fussgaenger_ampel_neu" width="300" height="300" class="size-medium wp-image-5981" /></a><p class="wp-caption-text">Die Fußgängerampel</p></div>
<p>Um <strong>genau diese</strong> gefährliche Situation zu vermeiden, dürfen die Fußgänger, die aus der Sicht der Autofahrer <em>&#8220;hinter der Kreuzung&#8221;</em> über Straße laufen, erst später losgehen als die Fußgänger, die <em>&#8220;vor der Kreuzung&#8221;</em> die Straße überqueren. Dadurch haben alle Autos die Kreuzung bereits verlassen, bevor die gefährdeten Fußgänger die Straße betreten dürfen.</p>
<p>So gesehen also super einfach und super intelligent &#8211; aber welcher normale Fußgänger wird schon solchen Gedankengängen folgen, während er sich ärgert, dass er mal wieder länger warten muss, als alle anderen&#8230;<br/><br />
<strong>Update:</strong><br />
Ich habe die Illustration nochmal neu gemacht: Hoffentlich wird das Problem jetzt deutlicher. Die alte Abbildung sah so aus:<br />
<div id="attachment_5974" class="wp-caption aligncenter" style="width: 310px"><a href="http://weizenspr.eu/uploads/fussgaenger_ampel.png" target="_blank" class="liimagelink"><img src="http://weizenspr.eu/uploads/fussgaenger_ampel-300x300.png" alt="" title="fussgaenger_ampel" width="300" height="300" class="size-medium wp-image-5974" /></a><p class="wp-caption-text">Fußgängerampeln</p></div><br/><br />
<strong>Verkehrte Grüße, Kenny</strong></p>
<!-- RSPEAK_STOP -->]]></content:encoded>
			<wfw:commentRss>http://weizenspr.eu/2010/die-fusganger-ampel/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>
