<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<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/"
	>

<channel>
	<title>programmiersprache &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/programmiersprache/</link>
	<description>Feed of posts on WordPress.com tagged "programmiersprache"</description>
	<pubDate>Tue, 01 Dec 2009 13:27:24 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Wir googeln das Alphabet]]></title>
<link>http://majaktuell.wordpress.com/2009/11/11/wir-googeln-das-alphabet/</link>
<pubDate>Wed, 11 Nov 2009 20:42:06 +0000</pubDate>
<dc:creator>martin297</dc:creator>
<guid>http://majaktuell.wordpress.com/2009/11/11/wir-googeln-das-alphabet/</guid>
<description><![CDATA[Dass des Schülers bester Freund, Google auch mal sehr seltsame Ergebnisse ausspucken kann, wissen wi]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Dass des Schülers bester Freund, Google auch mal sehr <a href="http://majaktuell.wordpress.com/2009/05/06/google-suggestion-fail/">seltsame Ergebnisse</a> ausspucken kann, wissen wir ja bereits alle. Aus einem Grund, den ich nicht weiter erläutern will, suchte ich nach A, dem ersten Buchstaben des lateinischen Alphabets, hierbei stieß ich auf höchst seltsame Seiten. Der Interesse halber, liste ich euch mal die skurrilsten Internetseiten auf auf, welche auf den ersten Seiten der Suchergebnisse zu jedem Buchstaben herausgespuckt werden:</p>
<p><!--more--><strong>A<br />
<span style="font-weight:normal;"><a href="http://stuff.twoday.net/">1000 Arten, ein Bier zu öffnen</a>. Unter anderem mit Brot, Fahrradschläuchen, Erdbohrern und einem <a href="http://stuff.twoday.net/stories/674775/">Stowasser</a>.</span></strong></p>
<p><strong><span style="font-weight:normal;"><br />
</span></strong></p>
<p><strong>B</strong></p>
<p><a href="http://ww.4chan.org/">4chan</a>, die größte Picdump-Seite, die es wohl im ganzen Internet zu geben scheint (sage und schreibe 13 Gigabyte voller <em>motivational posters</em> und GIFs).</p>
<p style="text-align:left;">
<p><strong>C</strong></p>
<p>… leider nur lauter (bl)öde Artikel über die Programmiersprache <em>C</em>.</p>
<p><strong>D</strong></p>
<p>Was zur Hölle? Die Webseite von <a href="http://www.deesworld.de/">Detlef D! Soost</a>, wohl die schlechteste Webseite nach <em>ingenfeld.de</em> und <em>Karl Fritsch</em>.</p>
<p><strong>E</strong></p>
<p><a href="http://www.e-latein.de/">e-Latein</a>, ein Online-Portal, nicht nur für Latein-Hausaufgaben und Übersetzungen. Könnte sich doch ml als nützlich erweisen.</p>
<p><strong>F</strong></p>
<p><a href="http://fqueer.blogsport.de/">f*cking queers</a>, der Blog für sexuelle Disintegration … WTF?! Ob dieser Blog jetzt nun sexuelle Irritationen toleriert oder nicht, sei mal dahingestellt (ich konnte es jedenfalls nicht herausfinden), jedenfalls eine äußerst amüsante Seite.</p>
<p><strong>G</strong></p>
<p>Nein, nicht der als auch <a href="http://de.wikipedia.org/wiki/Gräfenberg-Zone">Gräfenberg-Zone</a> bekannte G-Punkt kommt als erster, sondern die Gravitationskonstante: <em>gravitational constant = 6.67300 × 10</em><sup><em>-11</em></sup><em> m</em><sup><em>3</em></sup><em> kg</em><sup><em>-1</em></sup><em> s</em><sup><em>-2</em></sup></p>
<p><sup><em><br />
</em></sup></p>
<p><strong>H</strong></p>
<p><a href="http://www.h-da.de/">h_da</a>, die Hochschule Darmstadt (rectal town?^^).</p>
<p><strong>I</strong></p>
<p>Genial, <a href="http://www.ilovegraffiti.de/de/">I Love Graffiti</a>, eine Graffiti-Fanpage, mit teilweise echt gelungenen Zeichnungen.</p>
<p>&#160;</p>
<div class="wp-caption aligncenter" style="width: 699px"><a href="http://www.ekosystem.org/0_Images/Streets/spain/sabotajealamontaje_skull.jpg"><img class="  " title="Sabotaje al Montaje" src="http://www.ekosystem.org/0_Images/Streets/spain/sabotajealamontaje_skull.jpg" alt="Sabotaje al Montaje" width="689" height="158" /></a><p class="wp-caption-text">Sabotaje al Montaje</p></div>
<p style="text-align:left;">
<p style="text-align:left;"><strong>J</strong></p>
<p style="text-align:left;"><a href="http://www.j-comm.de/">J-Comm &#8211; Jewish Community</a>, eine jüdische Seite, die es weiß Weblog und Community elegant miteinander verschmelzen zu lassen.</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>K</strong></p>
<p style="text-align:left;"><a href="http://www.k-online.de/cipp/md_k/custom/pub/content,lang,1/oid,2212/ticket,g_u_e_s_t">K Messe</a>, die internationale Fachmesse für Kunststoff und Kautschuk – aahja, interessant was es heutzutage alles auf dem Messemarkt so gibt.</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>L</strong></p>
<p style="text-align:left;"><a href="http://www.vatican.va/news_services/or/home_deu.html">L&#8217;Osservatore Romano</a>, Online-Ausgabe einer Zeitung des heiligen Stuhls, leider nur die Titelseite – ich hätte zu gerne darüber hergezogen.</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>M</strong></p>
<p style="text-align:left;">MaJa-Aktuell natürlich, was denkt ihr euch eigentlich? <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  (Nein, eigentlich die Webseite von <a href="http://www.michael-schumacher.de/">Michael Schumacher</a>.)</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>N</strong></p>
<p style="text-align:left;"><a href="http://www.addictinggames.com/ngame.html">N</a>, ein verdammt geiles Arcade-Game auf Addictinggames.</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>O</strong></p>
<p style="text-align:left;"><a href="http://www.th-o.de/smile.htm">TH-O Smiley</a>s, eine Webseite mit scheinbar unendlich vielen ASCII-Smileys.</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>P</strong></p>
<p style="text-align:left;"><a href="http://nikp-musik.de/">Nik P.</a>, Mark Medlock, nur schlechter?</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>Q</strong></p>
<p style="text-align:left;">Der CPU-Emulator <a href="http://www.kju-app.org/">Q &#8211; [kju:]</a> für Mac OS X. Aha, muss ich gleich mal &#8216;runterladen.</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>R</strong></p>
<p style="text-align:left;">Schonwieder eine Programmiersprache, <a href="http://de.wikibooks.org/wiki/GNU_R">R</a>.</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>S</strong></p>
<p style="text-align:left;">O.K., es wir wieder Interessant: <a href="http://nudistparadies.com/">Chris&#8217; FKK-Homepage</a> (Ich musste wirklich <em>äußerst</em> genau überlegen, ob ich es verlinke. Ich kam zu dem Schluss, dass es euer Bier ist, ob ihr es anklickt bleibt ja euch selber überlassen. Macht es trotzdem lieber nicht!).</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>T</strong></p>
<p style="text-align:left;"><a href="http://www.t-online-business.de/">Ratgeber für Existenzgründer</a>, wtf?</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>U</strong></p>
<p>1 Rack unit = 4.44500 centimeters… was auch immer es sein soll, es ist 4,445 cm lang.</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>V</strong></p>
<p style="text-align:left;"><a href="http://www.vmagazine.com/">V Magazin</a>e, ein &#8216;Lifestyle&#8217;-Magazin. Selbstbeschreibung: <em>V</em> is a magazine about fashion with a capital <span style="text-decoration:underline;">F</span> and all the things that go with it: art, music, film, architecture&#8230;you name it.  -&#62; <span style="text-decoration:underline;">FAIL!?</span></p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>W</strong></p>
<p style="text-align:left;"><a href="http://www.wacken.com/">W:O:A</a> &#8211; das Wacken Open-Air-Metalfestival. So muss das sein, braver Google-Indizes-Bot!</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>X</strong></p>
<p style="text-align:left;"><a href="http://www.x-socks.com/">X-Socks</a>, die wohl coolste Sockenfirma der Welt! Wie kann man so einen scheiß nur so genial umwerben? (Ich… brauche… neue… X-Socken… muss kaufen… arrgh!)</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>Y</strong></p>
<p style="text-align:left;"><a href="http://www.y-berholspur.de/">Y-berholspu</a>r, das Beratungszentrum für Bundeswehr-Wirtschaft. Gelungener Wortwitz!</p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>Z</strong></p>
<p style="text-align:left;"><a href="http://www.atomwaffena-z.info/">Atomwaffen A-Z</a>, endlich mal eine Seite, die wirklich essentielle Dinge des täglichen Gebrauchs behandelt! Nur zu empfehlen…</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Kurze Einführung in die die Programmiersprache Processing]]></title>
<link>http://netzwelten.wordpress.com/2009/10/30/kurze-einfuhrung-in-die-die-programmiersprache-processing/</link>
<pubDate>Fri, 30 Oct 2009 19:41:03 +0000</pubDate>
<dc:creator>netzwelten</dc:creator>
<guid>http://netzwelten.wordpress.com/2009/10/30/kurze-einfuhrung-in-die-die-programmiersprache-processing/</guid>
<description><![CDATA[Processing is an open source programming language and environment for people who want to program ima]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><cite>Processing is an open source programming language and environment for people who want to program images, animation, and interactions. It is used by students, artists, designers, researchers, and hobbyists for learning, prototyping, and production. It is created to teach fundamentals of computer programming within a visual context and to serve as a software sketchbook and professional production tool.</cite> (Quelle: <a href="http://www.processing.org">processing.org</a>) <a href="http://netzwelten.wordpress.com/files/2009/10/processing-icon.png"><img class="alignright size-full wp-image-342" title="processing-icon" src="http://netzwelten.wordpress.com/files/2009/10/processing-icon.png" alt="processing-icon" width="129" height="122" /></a></p>
<p>Mehr will ich dazu vorerst gar nicht sagen. Processing macht jedenfalls Spaß &#8211; eine Menge Spaß. Processing ist auch die &#8211; der Syntax nach C ähnliche &#8211; Programmiersprache der <a href="http://netzwelten.wordpress.com/2009/03/21/experimentierboard-arduino-duemilanove/">Arduino-Umgebung</a>. Es ist eine recht einfach zu erlernende Sprache für Leute, die ihre Entwürfe (<cite>Sketches</cite>) schnell ausprobieren und sich so z.B. durch Bilder, Animationen oder kurzen Programmen ausdrücken und verwirklichen wollen.</p>
<p>Die hier vorgestellte Einführung richtet sich an Menschen mit wenig (aber vorhandener) Programmiererfahrung. Begriffe wie Variablen oder Schleifen sollten bekannt sein.</p>
<p><strong>1. Download, Installation und Entwicklungsumgebung</strong></p>
<p>Processing kann auf der <a href="http://www.processing.org/download/">Processing Homepage</a> runtergeladen werden. Verfügbar ist es im Moment in der Version 1.0.9 für Windows, Linux und Mac OSX.</p>
<p>Zur Installation muss nicht viel gesagt werden. ZIP-Datei laden und entpacken, eine Installation an sich ist nicht notwendig. Einfach die Anwedungsdatei <tt>processing.exe</tt> starten. Es erscheint die IDE (Integrated Development Environment &#8211; Entwicklungsumgebung):</p>
<p><a href="http://netzwelten.wordpress.com/files/2009/10/processing-ide.png"><img class="aligncenter size-medium wp-image-343" title="processing-IDE" src="http://netzwelten.wordpress.com/files/2009/10/processing-ide.png?w=249" alt="processing-IDE" width="249" height="300" /></a></p>
<p>Die Symbole sind auch selbsterklärend. Den (halb-)fertigen Sketch startet man mit dem &#8220;Play&#8221;-Button, das Quadrat symbolisiert &#8220;Stop&#8221;, dann gibt es noch &#8220;New&#8221;, &#8220;Open&#8221;, &#8220;Save&#8221; und &#8220;Export&#8221;. Zu der Export-Funktion gibt es noch einen Satz zu sagen: Klickt man auf den Button wird eine HTML-Seite mit eingebettetem Java-Applet generiert, das den Sketch enthält.</p>
<p><strong>2. Hallo Welt</strong></p>
<pre class="brush: cpp;">

line(10,20,30,40);  // Eine Linie
</pre>
<p>Das obligatorische &#8220;Hallo Welt&#8221;-Programm erstellen wir in Processing mit dem line() Befehl, der eine Linie zeichnet. Diese verläuft von den Koordination (10,20) nach (30,40). Die Koordinate (0,0) ist übrigens links oben.</p>
<p><a href="http://netzwelten.wordpress.com/files/2009/10/processing-hallo-welt.png"><img class="aligncenter size-medium wp-image-346" title="processing-hallo-welt" src="http://netzwelten.wordpress.com/files/2009/10/processing-hallo-welt.png?w=300" alt="processing-hallo-welt" width="300" height="272" /></a></p>
<p>Auf &#8220;Run&#8221; klicken und wenige Millisekunden später erscheint das Programm, dass eine simple Linie zeichnet, auf dem Desktop <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><tt>//</tt> leitet übrigens, wie in vielen anderen Programmiersprachen, einen Kommentar ein. Alles was danach kommt, wird von Processing ignoriert. Multi-Line-Comments werden mit /* eingeleitet und mit */ abgeschlossen.</p>
<p><strong>3. Programmstruktur</strong></p>
<p><a href="http://netzwelten.wordpress.com/files/2009/10/processing-lines-background.png"><img class="alignright size-medium wp-image-347" title="processing-lines-background" src="http://netzwelten.wordpress.com/files/2009/10/processing-lines-background.png?w=276" alt="processing-lines-background" width="166" height="180" /></a></p>
<p>In Processing gibt es zwei Hauptfunktionen: setup() und draw(). Der Code in der setup()-Funktion wird beim Starten des Programms ausgeführt (z.B. um Variablen zu initialisieren), der Code in draw() läuft kontinuierlich.</p>
<p>Beispiel:</p>
<pre class="brush: cpp;">

void setup() {
  size(300,300);
}

void draw() {
  background(105);
  float x = mouseX;
  float y = mouseY;
  line(x,y,x+40,y-80);
}
</pre>
<p>Kommentare habe ich mal weggelassen, hier die Erklärung:</p>
<p>In setup() wird mit size() die Bildgröße von 300 mal 300 Pixeln festgesetzt.</p>
<p>Der draw()-Teil läuft kontinuierlich. Hier werden die float-Variablen x und y mit der aktuellen Mauscursorposition geladen. Dann wird die Linie gezeichnet. Bewegt man die Maus, verschiebt sich die Linie. Der Grund, wieso die background()-Farbe immer wieder neugesetzt wird, leuchtet ein, wenn man den Befehl in die setup()-Funktion läd und sich obigen Screenshot vor Augen führt.</p>
<p><strong>4. Die Variablen</strong></p>
<p>In Processing gibt es verschiedene Datentypen, wie: int (Integer), float (Fließkommazahl) oder boolean (true/false).</p>
<p>int[] feld = new int[20] deklariert und kreiert ein Feld (Array) von [0..19].</p>
<p><strong>5. Die Konsole, oder: &#8220;Hallo Welt 2&#8243;</strong></p>
<p>Im unteren Bereich der Processing-IDE sieht man die Konsole. Hier schreibt man mittels print() oder println() Werte rein, um z.B. nichtgrafische Rückmeldungen vom Programm auszugeben:</p>
<p><a href="http://netzwelten.wordpress.com/files/2009/10/processing-hallo-welt2.png"><img class="aligncenter size-medium wp-image-350" title="processing-hallo-welt2" src="http://netzwelten.wordpress.com/files/2009/10/processing-hallo-welt2.png?w=294" alt="processing-hallo-welt2" width="294" height="300" /></a></p>
<p><strong>6. Weitere Grafikbefehle zum Ausprobieren</strong></p>
<ul>
<li>point(x, y)</li>
<li>triangle(x1, y1, x2, y2, x3, y3)</li>
<li>quad(x1, y1, x2, y2, x3, y3, x4, y4)</li>
<li>rect(x, y, width, height)</li>
<li>ellipse(x, y, width, height)</li>
<li>bezier(x1, y1, cx1, cy1, cx2, cy2, x2, y2)</li>
</ul>
<p><strong>7. Formen Eigenschaften geben</strong></p>
<p>fill() setzt die Füllfarbe für Formen, stroke() die Außenlinienfarbe. Ein zweiter Parameter gibt die Transparenz an. smooth() aktiviert Antialiasing, noSmooth deaktiviert es wieder.</p>
<p><strong>8. Rechnen mit Processing</strong></p>
<p>Wie auch in anderen Programmiersprachen gibt es verschiedene Wege Werte zu verändern. +, -, *, /, % (modulo). ++ erhöht die Variable um 1, &#8212; verkleinert sie um 1. += addiert einen Wert zu einer Variablen hinzu und weist der Variable dann den neuen Wert zu. Äquivalent dazu -=, *=, /=.</p>
<p><strong>9. Entscheidungen</strong></p>
<p>Will man den Kontrollfluss überprüfen, gibt es folgendes Konstrukt:</p>
<pre class="brush: cpp;">

if (test) {
code;
}
</pre>
<p>Beispiel:</p>
<pre class="brush: cpp;">

int y = 3;
int x = 5;
if (x &#38;gt; y) {
  wird erfüllt;
} else {
  sonst-Bedingung. Wird hier nicht erfüllt
}
</pre>
<p>Um Werte zu Vergleichen gibt es Operatoren wie , =, AND, OR, NOT, !.</p>
<p><strong>10. Schleifen</strong></p>
<p>Hier ähnelt Processing C ebenso. Beispiel:</p>
<pre class="brush: cpp;">

for (int i = 10; i &#38;lt; 100; i += 2) {
  tue etwas;
}
</pre>
<p><strong>11. Hüpfe, Ball!</strong></p>
<p>Mit dem vorhandenen Wissen wollen wir nun etwas experimentieren:</p>
<pre class="brush: cpp;">

int window_size_x = 1024;
int window_size_y = 768;

boolean circle_direction = false; // 0 = left, 1 = right
float circle_point_x = 140;
float circle_point_y = 140;
int circle_d = 50;
float speed_x = 10.0;
float speed_y = 10.0;
float direction_x = 1;
float direction_y = -1;

void setup() {
  randomSeed(millis());
  size(window_size_x,window_size_y);
}

void draw() {

  frameRate(50);
  background(204);

  ellipse(circle_point_x,circle_point_y,circle_d,circle_d); // Kreis zeichnen

  circle_point_x += speed_x * direction_x;
  circle_point_y += speed_y * direction_y;

  if (direction_x &#62; 0) {
    circle_point_x--;
  }
  else {
    circle_point_x++;
  }

  // Kollisionen

  if ((circle_point_x &#62;= window_size_x - circle_d/2) &#124;&#124; (circle_point_x &#60;= circle_d/2)) {
    direction_x = -direction_x;
  }

  if ((circle_point_y &#62;= window_size_y - circle_d/2)  &#124;&#124; (circle_point_y &#60;= circle_d/2)) {
    direction_y = -direction_y;
  }
}
</pre>
<p>Und hier das Ergebnis:</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/uiV3di81rjQ&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/uiV3di81rjQ&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p><strong>12. Schlusswort</strong></p>
<p><a href="http://netzwelten.wordpress.com/files/2009/10/processing-buch.png"><img class="alignright size-medium wp-image-352" title="processing-buch" src="http://netzwelten.wordpress.com/files/2009/10/processing-buch.png?w=234" alt="processing-buch" width="234" height="300" /></a></p>
<p>Das ist natürlich längst nicht alles, was Processing bietet. Ich wollte hiermit auch nur kurz eine Einführung und einen kleinen Überblick über einige Möglichkeiten geben. Wer tiefer in die Materia einsteigen will (lohnt allein schon wegen <a href="http://netzwelten.wordpress.com/tag/arduino/">Arduino</a>), dem empfehle ich die Processing Website sowie dieses Buch:</p>
<p><strong>Processing: A Programming Handbook for Visual Designers and Artists</strong><br />
von Casey Reas und Ben Fry</p>
<p>Gebundene Ausgabe: 736 Seiten, gebunden<br />
Verlag: The Mit Press<br />
Sprache: Englisch<br />
ISBN-10: 0262182629</p>
<p>Preis: Ca. 45 Euro</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[2-tägiger Workshop Ruby from Scratch am 24.9.-25.9.2009]]></title>
<link>http://rubyberlin.wordpress.com/2009/09/02/2-tagiger-workshop-ruby-from-scratch-am-24-9-25-9-2009/</link>
<pubDate>Wed, 02 Sep 2009 18:22:58 +0000</pubDate>
<dc:creator>rubyberlin</dc:creator>
<guid>http://rubyberlin.wordpress.com/2009/09/02/2-tagiger-workshop-ruby-from-scratch-am-24-9-25-9-2009/</guid>
<description><![CDATA[Wir halten schon wieder einen Ruby-Kurs ab &#8211; am 24. und 25.9.2009 in Berlin-Mitte bei Newthink]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Wir halten schon wieder einen Ruby-Kurs ab &#8211; am 24. und 25.9.2009 in Berlin-Mitte bei Newthinking-Store.</p>
<p>Inhalt:</p>
<p>Ruby Grundkurs</p>
<p>In diesem Workshop wird die Sprache Ruby praxisnah und interaktiv präsentiert.<br />
Er wendet sich an Ruby-Einsteiger, die schon andere Programmiersprachen kennen.</p>
<p>Ruby ist durch seine Flexibilität sehr geeignet für agile Software-Entwicklung.<br />
Daher wird in diesem Kurs die Methode &#8220;test-driven&#8221;/&#8221;behaviour-driven&#8221; development<br />
(TDD/BDD)<br />
einen zentralen Platz einnehmen.</p>
<p>Am ersten Tag werden die grundlegenden Sprachmerkmale von Ruby erarbeitet<br />
und das Test-Framework RSpec eingeführt.</p>
<ul>
<li> Ruby-Syntax und Konventionen</li>
<li> Iteratoren, Blöcke, Closures</li>
<li> RSpec-Grundlagen</li>
<li> Konsequenzen der dynamischen Typisierung</li>
<li> Das Ruby-Objektmodell</li>
<li> mehr RSpec: Mocks und Stubs</li>
</ul>
<p>Am zweiten Tag werden fortgeschrittene Sprach-Features von Ruby vorgestellt,<br />
sowie typische Ruby-Anwendungsfälle besprochen.</p>
<ul>
<li> Ruby-Metaprogrammierung</li>
<li> Web-Frameworks RubyOnRails und Merb mit ActiveRecord und Datamapper</li>
<li> Ruby für Desktop-Anwendungen</li>
<li> Ruby für System-Scripts</li>
<li> IDEs, Debugging</li>
<li> Dokumentations-Generator</li>
<li> Ruby auf Java-Basis: JRuby</li>
<li> Unterschiede zwischen Ruby 1.8 und 1.9</li>
</ul>
<p>Wer sich dafür anmelden will und sich für ein Thema besonders interessiert, das wir hier nicht aufgeführt haben, dann bitte einen Kommentar oder eMail schreiben! Soweit es paßt, werden wir dein Thema dann auch noch behandeln.</p>
<p>-Thomas</p>
<p>Anmeldung und Preise unter <a href="http://www.newthinking-store.de/workshop/ruby/20090924" target="_blank">http://www.newthinking-store.de/workshop/ruby/20090924</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Zweitageskurs Ruby (Nachtrag)]]></title>
<link>http://rubyberlin.wordpress.com/2009/07/05/zweitageskurs-ruby-nachtrag/</link>
<pubDate>Sun, 05 Jul 2009 10:37:55 +0000</pubDate>
<dc:creator>rubyberlin</dc:creator>
<guid>http://rubyberlin.wordpress.com/2009/07/05/zweitageskurs-ruby-nachtrag/</guid>
<description><![CDATA[Insgesamt gesehen war unser erster größerer Workshop ein guter Erfolg. Bisher hatten wir ja nur klei]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Insgesamt gesehen war unser erster größerer Workshop ein guter Erfolg.</p>
<p>Bisher hatten wir ja nur kleinere &#8220;Schnupperkurse&#8221; zu Ruby und Ruby on Rails gehalten, die nur jeweils an einem Abend stattfanden.</p>
<p>Nur mußten wir leider feststellen, daß die Zeit schon ziemlich knapp war für das was wir eigentlich alles erzählen wollten. Mit den Themen, die wir uns vorgenommen bzw. vorbereitet haben, hätten wir wahrscheinlich gut und gerne noch zwei weitere Tage bestreiten können. Für uns heißt das, daß wir für die nächsten Workshops dieser Art die Themen etwas straffen müssen. Eine weitere Möglichkeit wäre natürlich, mehr als zwei Tage anzubieten. Wir müssen darüber intern noch diskutieren. Vorschläge als Kommentar sind natürlich auch  willkommen.</p>
<p>-Thomas</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Einfache Programmiersprachen]]></title>
<link>http://notizzettel.wordpress.com/2009/03/18/einfache-programmiersprachen/</link>
<pubDate>Wed, 18 Mar 2009 20:23:13 +0000</pubDate>
<dc:creator>Sonja</dc:creator>
<guid>http://notizzettel.wordpress.com/2009/03/18/einfache-programmiersprachen/</guid>
<description><![CDATA[Jahrelang habe ich nach &#8220;der&#8221; einfachen Programmiersprache gesucht, mit der es mir mögli]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Jahrelang habe ich nach &#8220;der&#8221; einfachen Programmiersprache gesucht, mit der es mir möglich wäre, eine Softwareidee in die Tat umzusetzen.</p>
<p>Jahrelang war ich dabei der Überzeugung, dass ich einfach nur <b>die</b> richtige Programmiersprache finden müsste und mein Problem wäre gelöst. Mittlerweile bin ich zu der Erkenntnis gelangt, dass die Programmiersprache nicht das wirkliche Problem ist. Dafür hat es aber etliche Versuche und Einstiege in Programmier- und Skriptsprachen benötigt. Neben PHP habe ich mich mit C, Java, C++, Python, Ruby und Tcl auseinandergesetzt. Aber das eigentliche Problem war fast nie die Sprache selber &#8211; bei den meisten habe ich es geschafft, zumindest einfache Datenbankanbindungen und Abfragen zu generieren und den Output der Daten in einer lesbaren Form hinzukriegen. Aber was war dann das Problem?</p>
<p>In erster Linie, dass ich von strukturierter Programmierung keine Ahnung habe. Grundsätzlich habe ich immer aus dem Bauch heraus angefangen und musste häufig feststellen, dass ich irgendwas nicht zu Ende gedacht hatte und dann schlussendlich mit den Grenzen meiner nicht-vorhandenen Planung umgehen lernen musste. Das alleine wäre aber nicht schlimm gewesen, wenn ich nicht den Anspruch gehabt hätte, ein wirklich gutes und brauchbares Produkt herzustellen. Vorgehen und Anspruch standen also in keinem Verhältnis. Hinzu kam, dass das Umsetzen eines Programmes noch lange nicht heißt, dass man damit auch eine ordentliche Bedienoberfläche hat. Bei den meisten Programmiersprachen benötigt man ein zusätzliches Paket, um grafische Oberflächen zu programmieren (z.B. Tk oder Qt; Java kommt mit Swing, ich weiß).</p>
<p>Auch ein gewisses analytisches Wissen hat mir gefehlt, um den Umfang von vornherein richtig einschätzen zu können. Oft habe ich einfach mal drauf losgelegt nur um dann nach 5 Tagen festzustellen, dass ich ein Fass ohne Boden kreiert habe. </p>
<p>Ich denke schon, dass Softwareengineering nicht umsonst ein eigenständiges Fach im Informatikstudium ist. Zumindest sollte man sich  bei komplexen Programmierideen nicht vom Irrglauben leiten lassen, es müsse nur die richtige Programmiersprache her.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Yet another Brainfuck Intepreter (Python)]]></title>
<link>http://netzwelten.wordpress.com/2009/02/15/yet-another-brainfuck-intepreter-python/</link>
<pubDate>Sun, 15 Feb 2009 15:22:41 +0000</pubDate>
<dc:creator>netzwelten</dc:creator>
<guid>http://netzwelten.wordpress.com/2009/02/15/yet-another-brainfuck-intepreter-python/</guid>
<description><![CDATA[Brainfuck ist eine recht esoterische Programmiersprache, die einen Befehlssatz von acht Zeichen besi]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Brainfuck ist eine recht esoterische Programmiersprache, die einen Befehlssatz von acht Zeichen besitzt. Dabei ist Brainfuck <a href="http://de.wikipedia.org/wiki/Turing-Vollst%C3%A4ndigkeit">Turing-vollständig</a>. Brainfuck arbeitet mit einem virtuellen Band, auf dem ein Zeiger hin und her bewegt werden kann. Der Wert der aktuellen Stelle auf dem Band, kann jweils um eins erhöht oder gesenkt werden. Es gibt dazu noch die Schleifenbefehle sowie Befehle zum Einlesen sowie zur Ausgabe eines Zeichens.</p>
<p>Der Befehlssatz:</p>
<ul>
<li><strong>&#62;</strong> Verschiebt den Lesekopf auf dem Band nach rechts</li>
<li><strong>&#60;</strong> Verschiebt den Lesekopf auf dem Band nach links</li>
<li><strong>+</strong> Erhöht die aktuelle Speicherzelle um eins</li>
<li><strong>-</strong> Senkt die aktuelle Speicherzelle um eins</li>
<li><strong>.</strong> Gibt den Wert der Speicherstelle auf dem Band auf dem Zeiger steht als ASCII Zeichen aus</li>
<li><strong>,</strong> Liest ein Zeichen von der Konsole ein und speichert den ASCII Wert dieses Zeichens in der aktuellen Speicherzelle</li>
<li><strong>[</strong> Der Zeiger springt, wenn die aktuelle Speicherzelle gleich null ist hinter den nächsten "]&#8220;-Befehl</li>
<li><strong>]</strong> Der Zeiger springt hinter den dazugehörigen &#8220;["-Befehl, sollte der aktuelle Speicherzellenwert ungleich null sein</li>
</ul>
<p>Ein einfaches Programm mit Schleife sähe daher so aus:</p>
<p><strong><code>&#62;++[&#60;+++++&#62;-]</code></strong></p>
<p>In Pseudocode:</p>
<p>1. Schiebe den Lesekopf auf die erste Speicherzelle</p>
<p>2. Erhöhe den Wert der ersten Speicherzelle um 2</p>
<p>3. Starte Schleife. Da die erste Speicherzelle 2 ist, wird die Schleife ausgeführt</p>
<p>4. Schiebe den Lesekopf auf Speicherzelle 0 und erhöhe dessen Wert auf 5.</p>
<p>5. Gehe wieder auf die erste Speicherzelle und senke den Wert um 1, der Wert wird jetzt zu 1.</p>
<p>6. Springe zurück zum Anfang der Schleife. Der Wert der ersten Speicherzelle ist jetzt 1, d.h. die Schleife wird ein weiteres mal ausgeführt.</p>
<p>7. Schiebe den Lesekopf wieder weiter und erhöhe wieder um 5. Der Wert ist jetzt 10.</p>
<p>8. Gehe wieder auf die erste Speicherzelle und senke den Wert um 1, der Wert wird jetzt zu 0.</p>
<p>9. Der Wert der ersten Speicherzelle ist jetzt 0, die Schleife ist beendet.</p>
<p>Einen Interpreter für Brainfuck zu schreiben ist nicht sonderlich komplex und es gibt hierfür verschiedene Ansätze, beispielsweise mit oder ohne Rekursion.</p>
<p>Hier mein Ansatz in <a href="http://www.python.org">Python</a>:</p>
<pre class="brush: python;">
#!/usr/bin/python

# usage: ~$python brainfuck.py 

import sys

memory = []
brackets = []
brackets_counter = 0
i = 0
pointer = 0

# init memory
for j in range(0,10000):
    memory.append(0)

filename = sys.argv[1]
input_file = open(filename, 'r')
source = &quot;&quot;.join(input_file.readlines())

while i &lt;= len(source) -1:
    if source[i] == &quot;&gt;&quot;:
        pointer += 1
    elif source[i] == &quot;&lt;&quot;:
        pointer -= 1
    elif source[i] == &quot;+&quot;:
        memory[pointer] += 1
    elif source[i] == &quot;-&quot;:
        memory[pointer] -= 1
    elif source[i] == &quot;.&quot;:
        print &quot;Output: &quot;+ chr(memory[pointer])
    elif source[i] == &quot;,&quot;:
        memory[pointer] = ord(sys.stdin.read(1))
    elif source[i] == &quot;[&quot;:
        brackets.append(i)
        brackets_counter += 1
    elif source[i] == &quot;]&quot;:
        if memory[pointer]:
            if brackets_counter &gt; 0:
                 if brackets[brackets_counter-1]:
                    i = brackets[brackets_counter-1]
            else:
                brackets_counter -= 1
                brackets.pop()
    i += 1
</pre>
<p>Weiterführende Brainfuck-Links:</p>
<ul>
<li><a href="http://esoteric.sange.fi/brainfuck/">The Brainfuck Archive</a> - Hier finden sich Interpreter, Compiler und eine Menge Quellcode für Brainfuck</li>
<li><a href="http://99-bottles-of-beer.net/language-brainfuck-101.html">99 Bottles of Beer</a> in Brainfuck</li>
</ul>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Ad "Hello world!": 2. Teil / A-dro dhe "Hello world!": nessa rann]]></title>
<link>http://juliuspokorny.wordpress.com/2009/01/09/ad-hello-world-2-teil-a-dro-dhe-hello-world-nessa-rann/</link>
<pubDate>Fri, 09 Jan 2009 08:10:34 +0000</pubDate>
<dc:creator>juliuspokorny</dc:creator>
<guid>http://juliuspokorny.wordpress.com/2009/01/09/ad-hello-world-2-teil-a-dro-dhe-hello-world-nessa-rann/</guid>
<description><![CDATA[Um meine gestrige Einfallslosigkeit wieder wettzumachen, die sich nicht zuletzt darin geäußert hat, ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:justify;">Um meine gestrige Einfallslosigkeit wieder wettzumachen, die sich nicht zuletzt darin geäußert hat, ein Hello-world-Programm in einem langweiligen interpretierten Basic-Dialekt der 1970er anzuführen (neuere Varianten wie z.B. das von mir verwendete <a href="http://www.blitzbasic.com/">Blitz</a> sind a) compiliert und b) objektorientiert), werde ich solche Programme in ein paar sogenannten esoterischen Programmiersprachen anführen. </p>
<p style="text-align:justify;">Ich beginne heute mit meinem persönlicher Liebling, Shakespeare. Das Wundervolle an dieser Sprache ist, dass die eigentliche Absicht (nämlich schlicht &#8220;Hello world!&#8221; zu schreiben) völlig im Code untergeht. Die Wikipedia gibt folgendes Hello-world-Programm an, das sich die p.t. Leserschaft einmal auf der Zunge zergehen lassen sollte. Ja, es eignet sich zum Vorlesen:</p>
<p style="text-align:justify;"> <br />
<em>Romeo, a young man with a remarkable patience.<br />
Juliet, likewise young woman of remarkable grace.<br />
Ophelia, a remarkable woman much in dispute with Hamlet.<br />
Ophelia, the flatterer of Andersen Insulting A/S.</em></p>
<p style="text-align:justify;"><em>Act I: Hamlet&#8217;s insults and flattery.<br />
Scene I: The insulting of Romeo.<br />
[Enter Hamlet and Romeo]<br />
Hamlet:<br />
You lying stupid fatherless big smelly half-witted coward! You are as<br />
stupid as the difference between a handsome rich brave hero and thyself!<br />
Speak your mind!<br />
You are as brave as the sum of your fat little stuffed misused dusty<br />
old rotten codpiece and a beautiful fair warm peaceful sunny summer&#8217;s<br />
day. You are as healthy as the difference between the sum of the<br />
sweetest reddest rose and my father and yourself! Speak your mind!<br />
You are as cowardly as the sum of yourself and the difference<br />
between a big mighty proud kingdom and a horse. Speak your mind.<br />
Speak your mind!<br />
[Exit Romeo]<br />
Scene II: The praising of Juliet.<br />
[Enter Juliet]<br />
Hamlet:<br />
Thou art as sweet as the sum of the sum of Romeo and his horse and his<br />
black cat! Speak thy mind!<br />
[Exit Juliet]<br />
Scene III: The praising of Ophelia.<br />
[Enter Ophelia]<br />
Hamlet:<br />
Thou art as lovely as the product of a large rural town and my amazing<br />
bottomless embroidered purse. Speak thy mind!<br />
Thou art as loving as the product of the bluest clearest sweetest sky<br />
and the sum of a squirrel and a white horse. Thou art as beautiful as<br />
the difference between Juliet and thyself. Speak thy mind!<br />
[Exeunt Ophelia and Hamlet]</p>
<p></em></p>
<p style="text-align:justify;"><em> Act II: Behind Hamlet&#8217;s back.<br />
Scene I: Romeo and Juliet&#8217;s conversation.<br />
[Enter Romeo and Juliet]<br />
Romeo:<br />
Speak your mind. You are as worried as the sum of yourself and the<br />
difference between my small smooth hamster and my nose. Speak your<br />
mind!<br />
Juliet:<br />
Speak YOUR mind! You are as bad as Hamlet! You are as small as the<br />
difference between the square of the difference between my little pony<br />
and your big hairy hound and the cube of your sorry little<br />
codpiece. Speak your mind!<br />
[Exit Romeo]<br />
Scene II: Juliet and Ophelia&#8217;s conversation.<br />
[Enter Ophelia]<br />
Juliet:<br />
Thou art as good as the quotient between Romeo and the sum of a small<br />
furry animal and a leech. Speak your mind!<br />
Ophelia:<br />
Thou art as disgusting as the quotient between Romeo and twice the<br />
difference between a mistletoe and an oozing infected blister! Speak<br />
your mind!<br />
[Exeunt]</em></p>
<p style="text-align:justify;">Das Wundervolle daran ist neben der Produktion randomisierter Literaturparodie die unglaubliche Umständlichkeit: im Prinzip funktioniert Shakespeare wie ein Assembler, bietet also ein Minimum an Komfort &#8211; das dafür mit einem Maximum an Komplikation verbunden ist. So mag ich das.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Die Teufelskreis...]]></title>
<link>http://24lightyears.wordpress.com/2008/11/19/die-teufelskreis/</link>
<pubDate>Wed, 19 Nov 2008 21:33:04 +0000</pubDate>
<dc:creator>Cauti</dc:creator>
<guid>http://24lightyears.wordpress.com/2008/11/19/die-teufelskreis/</guid>
<description><![CDATA[&#8230;-Schleife ist eine while-Schleife die niemals abbricht. So zusagen eine repeat-Schleife ins U]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>&#8230;-Schleife ist eine while-Schleife die niemals abbricht. So zusagen eine repeat-Schleife ins Unendliche. Oder doch eher eine If-Anweisung?</p>
<p>Na wie auch immer. Auf jeden Fall ist die Teufelskreis-Schleife ein Konzept, welches es schon längst verdient hat Einzug in moderne Programmiersprachen zu nehmen. Die Gründe liegen klar auf der Hand, immerhin ist der Teufelskreis ein natürlicher Prozess. Dessen muss sich der Mensch bewusst werden. Erst heute wurde mir dies wieder deutlich demonstriert. Nachdem mir Lord Lumpi bereits gestern einen Besuch abstattete, schwor ich mir, meinen Computer bei seinem nächsten Besuch mal unter dem Bett zu verstecken. Denn kommt der Lumpi erst einmal in Fahrt wendet er seine extrem tödliche und obendrein durchaus effektive &#8216;Kennst-Du-Schon-Methode&#8217; an. Hierbei handelt es sich um ein didaktisches Prinzip welches Ende der 30er verboten wurde, da es die Schüler in den Wahnsinn trieb (aber das hatte ich ja schon seit &#8216;33 gesagt&#8230;)</p>
<p>Ein kleines Rollenspiel verdeutlicht die Effektivität und Vorgehensweise der Lump`schen KDS-Methode:<br />
Lumpi: &#8216;J.Süüüüüüüüüü&#8217;<br />
Cauti: &#8216;Looooooooooooord&#8217;<br />
L: &#8216;Apropos Lord, kennst du schon <a href="http://www.youtube.com/watch?v=cgwxXKsZhAo">Animation vs. Animator</a>?&#8217;<br />
C: &#8216;Nein, wow, super(); aber kennst du schon <a href="http://www.youtube.com/watch?v=Y2rtfifNuWU">MS Astoria</a>?&#8217;<br />
L: &#8216;Faszinierend. Aber sag bloß du kennst noch nicht&#8230;&#8217;</p>
<p>Hier stecken wir bereits mitten in der nimmer endenden Teufelskreis-Schleife.<br />
Anders als in einem möglichen Computrerkonzept der TKS können sich Teufelskreise im wahren Leben allerdings verengen, indem sie letztendlich in einer sogenannten Teufelsspirale enden. Dies musste mir der Tag zudem demonstrieren, als nicht nur Lumpi wie aus der Blogosphäre herabgestürzt plötzlich vor meiner Haustür stand, nein, auch der perfekt-<a href="http://www.youtube.com/watch?v=tbrQrfGowFw">Stefan-Raab</a>-imitierende Matze saß wie aus dem Nichts erschienen vor meinem Rechner und summte einmal mehr die Mondscheinsonate.</p>
<p>Die Erfahrung zeigte, dass zwei mögliche Teufelskreisursachen in einem Raum sich mit Überlichtgeschwindigkeit schnell zu einer Teufelsspirale vereinigen können. &#8216;Sag bloß du kennst noch nicht&#8230;&#8217;, &#8216;Das musst du aber kennen&#8230;&#8217;, &#8216;Und hier schau dir das mal an&#8230;&#8217;</p>
<p>Ein mir bisher unbekannter Effekt lässt die Matze-Lumpi-Teufelsspirale jedoch nach einer gewissen Entwicklungszeit kolabieren. Notiz an mich: weitere Versuchsergebnisse durchführen. Aber nicht mehr dieses Semester&#8230;. das hält doch keiner aus.<br />
Der Versuchsausgang dieser Beobachtung zeigte, den unerklärbaren Effekt, dass sich die &#8216;KDS-Methode&#8217; irgendwann in einen &#8216;Kennst du schon die neue Jiu-Jitsu/Aikido-Technik?&#8217; umwandelte. Ist dieser Punkt erreicht sollte man sehr behutsam mit seiner Wortwahl umgehen. Jeder kleinste rethorische Fehler könnte lebensbedrohliche Auswirkungen nach sich ziehen. Es zeigte sich, dass bereits bevor der ausschlaggebende Punkt dür diesen thematischen Umschwung eingeleitet war, Worte eine betrachtliche Auswirkung auf die sehr instabile zu sein scheinende Teufelsspirale haben können. So startete ich unter Anderem den Versuch die an sich belanglos klingende Wörterkette &#8216;Schuh, ihhh, schwitz du!&#8217; in den Raum zu werfen. Matze wurde hellhörig: &#8216;Sagte jemand Jui-Jitsu?&#8217;</p>
<p>Das sehr instabile Ende der Teufelsspirale zeichnete sich durch wechselseitiges Erklären von Kampfsport-Moves aus, während ich weiterhin die Beobachterrolle beibehielt. Von der Sushi-Technik, über die Konnichiwa- und Kuso-Schläge bishin zum brühmt-berüchtigten Shokuji-Tritt war natürliches alles vertreten, und zum ersten mal seit ich an den Endstadion einer solchen Konversation &#8216;teilnahm&#8217; wurde ich nicht als Vorführobjekt missbraucht. Anscheinend schien der Tag doch noch gut zu enden.</p>
<p>So viel aber zur Theorie des natürlichen Teufelskreises- bzw. der Teufelsspirale.<br />
In Java könnte die Syntax dann wie folgt aufgebaut werden:</p>
<p>if (Bedingung) do teufelskreis {Anweisung}</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Die Programmiersprache: Selektive Mehrdeutigkeits-Dynamik]]></title>
<link>http://neuroexperimente.wordpress.com/2008/09/03/die-programmiersprache-selektive-mehrdeutigkeits-dynamik/</link>
<pubDate>Wed, 03 Sep 2008 07:39:03 +0000</pubDate>
<dc:creator>neuroexperimente</dc:creator>
<guid>http://neuroexperimente.wordpress.com/2008/09/03/die-programmiersprache-selektive-mehrdeutigkeits-dynamik/</guid>
<description><![CDATA[Die limbischen Motivsystem, so die Forscher, entscheiden auch über die selektive Wahrnehmung. Hunger]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Die limbischen Motivsystem, so die Forscher,<br />
entscheiden auch über die selektive Wahrnehmung.<br />
Hunger, Wut<em> (-DominanzAktivierung)</em>, Angst <em>(-BalanceAktivierung)</em><br />
wirken wie ein Brille für Limbische Motivebefriedigung.<br />
Im NeuroMarketing wird dieses Gesetz schon berücksichtigt.</p>
<p>Infozeniker überlegen sich Scripte auf diesen selektivierenden Gesetzen,<br />
um den Medien entgegenzuwirken.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Webkauderwelsch 2.0]]></title>
<link>http://blogtourismus.wordpress.com/2008/07/29/webkauderwelsch-20/</link>
<pubDate>Tue, 29 Jul 2008 17:21:55 +0000</pubDate>
<dc:creator>artwork</dc:creator>
<guid>http://blogtourismus.wordpress.com/2008/07/29/webkauderwelsch-20/</guid>
<description><![CDATA[Bitte ich meinen Vater, mir eine Sendung im Fernsehen auf Video aufzunehmen, schaue ich in zwei frag]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Bitte ich meinen Vater, mir eine Sendung im Fernsehen auf Video aufzunehmen, schaue ich in zwei fragende Augen und den Wunsch, ich möge mir doch die DVD kaufen oder besser noch, am Abend zum Schauen daheim sein. War es Ende der 60er Jahre die freie Liebe, die die Generationen entzweite, ist es heute die Technik oder konkreter der Unterschied zwischen Hard- und Software und dem, was man damit machen kann. Als täglicher Office Anwender mit der Akzeptanz moderner Medien fühlt man sich nur solange mit im Boot bis man auf Heise Weblogs stößt oder dem binär verschlüsselten Gespräch zweier Vertreter der Generation 2.0 zuhört.</p>
<p><em>Ein sehr großer Kritikpunkt, den man immer wieder von Nicht-Lispern über Lisp hört, ist der Mangel an einer Infix-Notation. Infix-Notationen und sonstiger Syntaktischer Zucker machen einen Parser zwar komplizierter, aber können scheinbar den Code lesbarer machen.</em>Alles klar?</p>
<p>So müssen sich die prähistorischen Echsen beim Einschlag des Meteoriten vor 65 Mio Jahren gefühlt haben, als die Säugetiere deren Lebensraum eroberten. Das Internet schlug innerhalb von 10 Jahren fast ebenso heftig ein und trennte, was einst großer und kleiner Bruder waren, heute Angestellter mit Zeitvertrag oder Webmillionär und Googlegründer. Ob unser heutiger Blogreisetagebuchaspirant Google Konkurrenz macht oder nur schönen Bildern Leben einhaucht und damit Spielekonsolen tauglich macht, bleibt der Zukunft vorbehalten. Eine Voraussetzung allerdings erfüllt er schon heute. Beim Lesen mancher seiner Einträge schaue ich aus zwei fragenden Augen und wünschte mir, er würde sich die DVD kaufen oder besser noch, die Spielekonsole nutzen statt sie zu programmieren.</p>
<p><a title="CC Blog" href="http://uxul.wordpress.com/">Computer Chaos Blog</a></p>
<p>artwork</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Python]]></title>
<link>http://drazraeltod.wordpress.com/2008/07/24/python/</link>
<pubDate>Thu, 24 Jul 2008 07:33:27 +0000</pubDate>
<dc:creator>Dr. Azrael Tod</dc:creator>
<guid>http://drazraeltod.wordpress.com/2008/07/24/python/</guid>
<description><![CDATA[Eine Sprache die in letzter Zeit immer mehr ins Zentrum meiner Aufmerksamkeit gerückt ist, ist ganz ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://de.wikipedia.org/wiki/Python_(Programmiersprache)" target="_blank">Eine Sprache</a> die in letzter Zeit immer mehr ins Zentrum meiner Aufmerksamkeit gerückt ist, ist ganz eindeutig Python. Nicht nur dass immer mehr Software die ich verwende in dieser Sprache geschrieben ist (von Dingen die permanent laufen wie <a href="http://www.gajim.org" target="_blank">Gajim</a> bis hin zu so abstrusen Frickelsachen wie <a href="http://www.playonlinux.com/en/" target="_blank">PlayOnLinux</a>) auch scheinen alle in meiner Umgebung auf diese Sprache umzusteigen bzw. Projekte in ihr zu beginnen. (z.B. <a href="http://www.wangoo.de/2008/07/python-utf8-und-bom-byte-order-mark/" target="_blank">Wangoo</a>, <a href="http://crackpod.bplaced.net/?p=12" target="_blank">Crackpod</a> oder <a href="http://seufz.wordpress.com/2008/07/09/ich-lerne-python/" target="_blank">Seufz</a>)</p>
<p>In der Tat gibt es auch genug Möglichkeiten Python einzusetzen es ist leicht zu lernen, eignet sich sowohl für Desktopanwendungen als auch für Homepages, ist platformunabhängig und scheint subjektiv ziemlich schnell zu sein.<br />
Da Googles <a href="http://code.google.com/p/googleappengine/" target="_blank">Appengine</a> nach einigen <a href="http://code.google.com/p/googleappengine/issues/detail?id=119" target="_blank"> Anfangsschwierigkeiten</a> jetzt auch endlich sinnvoll Nutzbar ist, wird es auch möglich sehr gut eine Web-Anwendung zu entwickeln und aufzusetzen, inkl. Datenbank und allem was sonst noch so dazu gehört, aber ohne grundsätzlich Geld für das Hosting bezahlen zu müssen (Negativseite: der Guhgl-Datenkrake wird die DB gleich 1:1 in den Rachen geworfen). Einen sehr schönen Beitrag zum Thema findet ihr auch bei <a href="http://www.terminally-incoherent.com/blog/2008/06/26/google-app-engine/" target="_blank">Terminally-Incoherent</a><br />
Wem die mitgelieferten Fähigkeiten (die übrigens auch prima <a href="http://code.google.com/appengine/docs/" target="_blank">dokumentiert</a> sind, ich empfehle Einsteigern unbedingt das Lesen der <a href="http://code.google.com/appengine/docs/gettingstarted/" target="_blank">Einführung</a>) nicht ausreichen, kann das ganze sogar noch mit beliebigen anderen Frameworks oder Bibliotheken in Python kombinieren (z.B. das<a href="http://www.djangoproject.com/" target="_blank">Django-Webframework</a>)</p>
<p>Auf der Seite der Desktopanwendungen scheinen sich im allgemeinen auch sehr schnell Erfolge und Aha-Effekte einzustellen.. so gesehen z.B. bei:</p>
<ul>
<li><a href="http://www.wangoo.de/2008/07/pythonwin-trayicon/" target="_blank">Wangoo (über das erstellen eines Systray-Icons unter Windows)</a></li>
<li><a href="http://crackpod.bplaced.net/?p=11" target="_blank">Crackpod (über das Herunterladen von Dateien)</a></li>
<li><a href="http://seufz.wordpress.com/2008/07/09/ich-lerne-python/" target="_blank">Seufz (über die allgemeine Verwendung von Python oder auch am </a><a href="http://seufz.wordpress.com/2008/07/16/python-backup-skript/" target="_blank">Beispiel eines Backup-Scriptes</a>)</li>
</ul>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Theaterrezension "Spieltrieb" Schwankhalle]]></title>
<link>http://jonas234.wordpress.com/2008/02/13/theaterrezension-spieltrieb-schwankhalle/</link>
<pubDate>Wed, 13 Feb 2008 16:00:27 +0000</pubDate>
<dc:creator>jonas234</dc:creator>
<guid>http://jonas234.wordpress.com/2008/02/13/theaterrezension-spieltrieb-schwankhalle/</guid>
<description><![CDATA[Im November und im Dezember wird das Stück &#8220;Spieltrieb&#8221; von Juli Zeh in der Schwarnkhall]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Im November und im Dezember wird das Stück &#8220;Spieltrieb&#8221; von Juli Zeh in der Schwarnkhalle in Bremen aufgeführt. Dieses wurde inszeniert von Bernhard Studler und die Regier lag bei Carsten Werner. Schon vor dem Theaterstück war die Eingangshalle mehr als überfüllt.</p>
<p>Die Grundidee des Stückes war, dass probiert wurde jede einzelne Szene des Romans darzustellen. Die logische Konsequenz daraus war, dass die wichtigen Szenen zu kurz und die unwichtigen zu ausführlich dargstellt wurden. Besonders deuztlich wurde dieses am Beispiel der Spieltheorie, welche ein Hauptthema im Buch ist. Allerdings ist diese Theorie im Buch schon schwer verständlich da sie unglaublich Komplex ist, vor allem das Gefangenendilemma musste man zweimal nachlesen bevor man es verstanden hat. Im Theater jedoch,  war dieses Thema in der Form, wie sie im Theater gezeigt wurde nicht zu verstehen, denn es wurde genauso kurz erwähnt wie im Buch. Somit fehlt einem der entscheidende Aspekt des Buches.</p>
<p>Ein interessanter Aspekt der Aufführung war, dass alle Darsteller auf der Bühne blieben und diese nur in einen vorher definierten Lichtkreis getreten sind. Somit konnten sogar zwei Handlungen an zwei Orten gleichzeitig verfolgen, was auch genutzt wurde. Jedoch entstand damit auch ein Problem für die Zuschauer, denn diese mussten plötzlich zwei Handlungen gleichzeitig verfolgen, was jedoch notfalls ging, da die eine Handlung meistens nur kurz und nebensächlich war. Der Ort des Schauspieles war einer der wenigen positiven Elemente des Abends, denn er spielte, wie auch der wichtigste Teil des Romans, in der Schule, genauer gesagt in  einer Sporthalle. Jedoch traten damit auch Probleme auf, denn da kein Umbau erfolgen konnte, waren Szenen wie zum Beispiel der Spruing vom Dach des Höfi oder das Eisbad der Frau Smutek nicht oder nur sehr schwer verständlich, wenn man das Buch nicht gelesen hatte. Eine weitere Folge dessen war , dass die Szene im Gericht nicht wirkte, denn ein Gericht in dessen hintergrund Sportgeräte hängen, ist nur schwer vorszustellen. Jedoch wurden sogar die Sitzgelegenheiten an Schule angepasst, so dass teiweise sogar auf Sportgeräten gesessen werden musste, was alles andere als bequem war. Eine weitere Schwäche des Stückes war, dass die gewalt als letzte Konsequenz schlecht rüber kam, denn das die Gewalt, und somit der Gang zu den Richter eine Steigerung des Spieles war, kam nicht gut genug rüber. Auch die Person Ada war zu emotional gespielt, im roman war Ada eine Person ohne Gefühle, deswegen auch der Name nach einer Programmiersprache, kalt und besonders zuverlässig.</p>
<p>Die schauspielerische Leistung reihte sich direkt in das Stück ein, denn die Schauspieler sahen komplett  anders aus als im Buch und schienen sich nicht in ihre Rolle einzufügren. Jedoch war das Auftreten Alevs als lässige Person gelungen. Am meisten stieß jedoch Wolfram Grünzer hervor, der Höfi spielte, und eine überragende schauspielerische Leistung ablieferte, so dass man ihm jedes Wort abnham. Was auch zum Nachdenken aufgab, ist, dass die Schauspieler, zumindest die drei jugendlichen, alle die selbe Kleidung trugen, ob das nun am geringen Budget lag oder so geplant war um den Zusammenhalt der Generation dazustellen bleibt fraglich. Was auch zu denken aufgibt, ist dass einer der Bandmitglieder Olavs als Pappfigur dargestellt wurde.</p>
<p>Die Musik, die eingespielt wurde, hat zum Buch gepasst, jedoch war der Bass zu stark, außerdem war das  Lied das Ada während des laufens sang nicht gut gewählt, denn sie wirkte dadruch leicht verrückt, da sie immer nur drei gleiche Zeilen hervorstieß.</p>
<p>Alles in allem, war sowohl die Inszenierung als auch die schauspielerische Leistung, bis auf wenige Ausnahmen schlecht und nicht empfehlenswert. Der Trieb zum Schauspiel der Darsteller schien jedoch so groß zu sein, dass diese das Stück noch häufig aufführen.</p>
</div>]]></content:encoded>
</item>

</channel>
</rss>
