<?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>fritblog &#187; Programmierung</title>
	<atom:link href="http://bithac.de/category/programmierung/feed/" rel="self" type="application/rss+xml" />
	<link>http://bithac.de</link>
	<description>Das Leben, das Universum und der ganze Rest</description>
	<lastBuildDate>Sat, 07 Aug 2010 14:54:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<item>
		<title>Links für Anfänger und Fortgeschrittene</title>
		<link>http://bithac.de/2010/04/29/links-fur-anfanger-und-fortgeschrittene/</link>
		<comments>http://bithac.de/2010/04/29/links-fur-anfanger-und-fortgeschrittene/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 20:20:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Fundstücke]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[von allgemeinem Interesse]]></category>

		<guid isPermaLink="false">http://bithac.de/?p=708</guid>
		<description><![CDATA[Progressive Rock Die Musikrichtung meiner Wahl ist leider ziemlich schwer zu definieren, und ich möchte der großen Menge der schlechten, einseitigen oder falschen Definitionen vorerst keine weitere hinzufügen. Wer sich dennoch in das Thema einlesen möchte, findet hier ein paar Informationen: In diesem Wikipedia-Artikel ist umschweifend erklärt, welche Elemente *häufig* zum Prog gehören Auf den [...]]]></description>
			<content:encoded><![CDATA[<p>Progressive Rock</p>
<p>Die Musikrichtung meiner Wahl ist leider ziemlich schwer zu definieren, und ich möchte der großen Menge der schlechten, einseitigen oder falschen Definitionen vorerst keine weitere hinzufügen. Wer sich dennoch in das Thema einlesen möchte, findet hier ein paar Informationen:</p>
<ul>
<li>In <a href="http://en.wikipedia.org/wiki/Progressive_rock" target="_blank" rel="nofollow" class="liwikipedia">diesem Wikipedia-Artikel</a> ist umschweifend erklärt, welche Elemente *häufig* zum Prog gehören</li>
<li>Auf den <a href="http://www.babyblaue-seiten.de/" target="_blank" class="liexternal">Babyblauen Seiten</a> gibt es viele, viele Reviews von alten und aktuellen Prog-Alben. Auch zu empfehlen: Die <a href="http://www.babyblaue-seiten.de/index.php?content=leitintro&amp;top=leitfaden" target="_blank" class="liexternal">Leitfäden</a>, die einzelne Prog-Unterkategorien vorstellen und passende Alben empfehlen.</li>
<li>Die <a href="http://www.gepr.net/geprfram.htm" target="_blank" class="liexternal">Gibraltar Encyclopedia of Progressive Rock</a> ist dann was für Fortgeschrittene. Eine riesige Datenbank mit bekannten und obskuren Bands und einigen Einträgen zu Alben.</li>
<li>Und noch ein bisschen komplexer und beschränkt auf die Canterbury Scene (Prog-Variante mit starkem Jazz-Einfluss): Der <a href="http://www.macgraphic.co.jp/ich/" target="_blank" class="liexternal">Canterbury Music Family Tree</a>. Da ist haarfein aufgedröselt, welcher Künstler wann in welcher Band gespielt hat. Und das in wunderbarstem ASCII-Stil.</li>
</ul>
<p>Alte HIFI-Geräte</p>
<p>Verstärker, Receiver, Plattenspieler usw. aus den 70ern haben (unter anderem) den Vorteil, dass sie sich im Gegensatz zum aktuellen digitalen Firlefanz fast immer reparieren lassen. Hier ein paar Hilfestellungen:</p>
<ul>
<li>Die Serviceunterlagen und Schaltpläne von alten Gerätschaften sind häufig sehr schwer zu besorgen, besonders wenn sich der Hersteller schon in Luft aufgelöst hat. <a href="http://wegavision.pytalhost.com/" target="_blank" class="liexternal">Wegavision</a> ist für mich immer die erste Anlaufstelle, wenn ich auf der Suche bin.</li>
<li>Im <a href="http://www.hifi-forum.de/" target="_blank" class="liexternal">Hifi-Forum</a> gibt es Hilfe nicht nur zu alten Geräten, sondern zu eigentlich allem, was Musik wiedergibt.</li>
<li>Und bei <a href="http://www.audiokarma.org/" target="_blank" class="liexternal">Audiokarma</a> trifft sich die ganze Welt. Das Forum ist zwar grausig unübersichtlich, enthält aber Reparaturanleitungen, Bauteil-Kreuzreferenzen und noch viele andere Hinweise zu fast jedem erdenklichen Hifi-Gerät.</li>
</ul>
<p>Und sonst noch</p>
<ul>
<li>Wieder mal freundliche eine Linklove-Aktion von <a href="http://www.3dsupply.de/" target="_blank" class="liexternal">3d-supply</a>: Ein T-Shirt verlinken, und wenn alles glatt läuft bekommt man es geschenkt. Ich habe mir <a href="http://www.3dsupply.de/products/763-dead-rabbit/23-bc-exact-190-rot/" target="_blank" class="liexternal">das hier</a> ausgesucht. Gute Idee, weiter so.</li>
<li>Hätte vielleicht auch zur ersten Kategorie gehört: <a href="http://www.rpwl.net/" target="_blank" class="liexternal">RPWL</a> ist eine deutsche Neo-Prog-Band. Auch live wirklich gut. Sehr zu empfehlen: Der Song <a href="http://www.youtube.com/watch?v=0q1aahtwpPA" target="_blank" class="liexternal">Gentle Art of Swimming</a> {Mitschnitt vom Konzert im Logo in Hamburg}.  Nebenbei: Neo-Prog ist nicht zu verwechseln mit New-Prog!</li>
<li>Für alle modernen Browser: <a href="http://raphaeljs.com/" target="_blank" class="liexternal">Raphaël</a> und <a href="http://processingjs.org/" target="_blank" class="liexternal">Processing JS</a> &#8211; beeindruckend, was man mit diesen JavaScript-Bibliotheken zustande bringen kann.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2010/04/29/links-fur-anfanger-und-fortgeschrittene/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Druid</title>
		<link>http://bithac.de/2009/07/15/druid/</link>
		<comments>http://bithac.de/2009/07/15/druid/#comments</comments>
		<pubDate>Wed, 15 Jul 2009 22:45:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Referenzen]]></category>
		<category><![CDATA[Studium]]></category>

		<guid isPermaLink="false">http://bithac.de/?p=544</guid>
		<description><![CDATA[Druid heißt das Programm, das Marc, Niels und ich in diesem Semester als Projektarbeit erstellt haben. Das Programm stellt eine Schnittstelle zwischen dem Redaktionssystem Drupal und dem Layoutprogramm InDesign her, indem es Inhalte aus der Drupal-Datenbank in eine InDesign-Datei schreiben kann. Für alle, die es bisher noch nicht erkannt haben: Daher kommt auch der Name. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://bithac.de/wp-content/uploads/2009/07/logo.png" class="liimagelink" rel="lightbox[544]"><img class="alignright size-full wp-image-545" title="logo" src="http://bithac.de/wp-content/uploads/2009/07/logo.png" alt="logo" width="324" height="110" /></a>Druid heißt das Programm, das Marc, Niels und ich in diesem Semester als Projektarbeit erstellt haben.</p>
<p>Das Programm stellt eine Schnittstelle zwischen dem Redaktionssystem Drupal und dem Layoutprogramm InDesign her, indem es Inhalte aus der Drupal-Datenbank in eine InDesign-Datei schreiben kann. Für alle, die es bisher noch nicht erkannt haben: Daher kommt auch der Name.</p>
<p>Mit Druid kann der Benutzer Textfelder auf den Seiten einer hochgeladenen Vorlagendatei mit Quelldaten verknüpfen. Der Benutzer gibt noch die Reihenfolge der Quelldaten vor, und den Rest erledigt Druid:Es baut aus der Vorlage ein neues Dokument, indem es automatisch die richtigen Vorlagenseiten wählt, mit Inhalten füllt und in das Dokument an der richtigen Stelle einfügt.</p>
<p>Druid ist ein Modul für Drupal, und wurde in PHP und JavaScript geschrieben. Die Vorlagendateien müssen im IDML-Format sein, das XML-basiert ist und sich so halbwegs einfach bearbeiten lässt.</p>
<p>Die Projektarbeit hat in den letzten Wochen unglaublich viel Zeit beansprucht. Das Geschirr in der Küche ist ein stilles Denkmal, das ich beizeiten mal beseitigen muss. Kommt Zeit, kommt Rat&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2009/07/15/druid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>R42</title>
		<link>http://bithac.de/2009/07/06/r42/</link>
		<comments>http://bithac.de/2009/07/06/r42/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 13:01:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Musik]]></category>
		<category><![CDATA[Nonsense]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Referenzen]]></category>
		<category><![CDATA[Studium]]></category>

		<guid isPermaLink="false">http://bithac.de/?p=532</guid>
		<description><![CDATA[R42 ist der Name des Programms, das Marc, Niels und ich im Zuge des Wahlpflichtfachs &#8220;Interface- und Interaktionsdesign&#8221; erstellt haben. Es ist eine sogenannte Multitouch-Anwendung, das bedeutet, das R42 primär nicht mit einer Maus, sondern mit Fingergesten bedient wird, und außerdem können mehrere Personen gleichzeitig R42 benutzen. Die erforderliche Einrichtung dazu, einen sogenannten Multitouch-Tisch, gibt [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://bithac.de/wp-content/uploads/2009/07/r42-logo.jpg" class="liimagelink" rel="lightbox[532]"><img class="alignright size-full wp-image-533" title="r42-logo" src="http://bithac.de/wp-content/uploads/2009/07/r42-logo.jpg" alt="r42-logo" width="322" height="204" /></a>R42 ist der Name des Programms, das Marc, Niels und ich im Zuge des Wahlpflichtfachs &#8220;Interface- und Interaktionsdesign&#8221; erstellt haben. Es ist eine sogenannte Multitouch-Anwendung, das bedeutet, das R42 primär nicht mit einer Maus, sondern mit Fingergesten bedient wird, und außerdem können mehrere Personen gleichzeitig R42 benutzen. Die erforderliche Einrichtung dazu, einen sogenannten Multitouch-Tisch, gibt es seit kurzem in der Fachhochschule.</p>
<p>R42 ist ein Programm zum Musikmachen. Töne werden als verschiebbare Kreise dargestellt. Tippt man einen solchen Kreis an, wird der Ton abgespielt. In der Mitte des Tisches gibt es eine Kreisfläche, auf dem sich eine &#8220;Radarlinie&#8221; bewegt. Töne innerhalb dieses Kreises werden abgespielt, wenn die Radarlinie sie berührt. Hintereinander liegende Töne werden hintereinander abgespielt &#8211; auf diese Weise lassen sich leicht &#8220;Melodien&#8221; erstellen.</p>
<div id="attachment_535" class="wp-caption alignright" style="width: 310px"><a href="http://bithac.de/wp-content/uploads/2009/07/3.jpg-new.jpg" class="liimagelink" rel="lightbox[532]"><img class="size-medium wp-image-535" title="3.jpg-new" src="http://bithac.de/wp-content/uploads/2009/07/3.jpg-new-300x225.jpg" alt="3.jpg-new" width="300" height="225" /></a><p class="wp-caption-text">Alle meine Entchen</p></div>
<p>Um den Zentralkreis gibt es vier Zonen. Verschiebt man einen Ton aus einer dieser Außenzonen in den Kreis, wird der Ton geklont. Die Außenzonen erfüllen aber auch noch andere Aufgaben.</p>
<ul>
<li>Links oben ist die &#8220;Aufnahmezone&#8221;: Mit dieser Zone können komplexere Töne aufgenommen werden, um sie später abspielen oder im Radarkreis platzieren zu können. Wird der Aufnahmeknopf gedrückt, werden alle Töne, die in dieser Zone abgespielt werden, aufgenommen. Wenn die Aufnahme beendet wird, entsteht ein neuer Ton-Kreis, der wie die anderen Töne verschoben, abgespielt und kopiert werden kann.</li>
<li>Rechts oben ist eine Zone, die die Höhe von Tönen ändern kann. Dazu gibt es vier Buttons, die jeweils auf die Töne im Bereich rechts oben wirken: Halbton erhöhen und verringern, und Oktave erhöhen und erniedrigen.<br />
Was für eine Höhe ein Ton besitzt, lässt sich durch seine Farbe ablesen: Die innere Farbe zeigt den Grundton, der Farbring die Oktave.</li>
<li>Links unten kann das Instrument gewechselt werden. Die beiden Buttons &#8220;blättern&#8221; dazu die Instrumente der Töne in der Zone vor oder zurück. Welcher Ton welches Instrument spielt, ist über das Symbol ersichtlich.</li>
<li>Und rechts unten gibt es noch die &#8220;Systembuttons&#8221;: Laden und Speichern von je zwei Aufstellungen, sowie ein Button, der die Symbole der Buttons ausblendet. (Es hat sich nämlich gezeigt, dass durch die vielen Symbole auch schnelle Rechner schnell in die Knie gezwungen werden können)</li>
</ul>
<p>Hörbeispiel gefällig? <a href="http://bithac.de/wp-content/uploads/2009/07/ente.mp3" class="liinternal">Hier</a> gibt es den Start-Sound (die drei Kreise im Logo sind auch R42-Töne, die beim Programmstart abgespielt werden) mit unserer freien Interpretation von &#8220;Alle meine Entchen&#8221;. Bitte nicht über das Telefonklingeln wundern; das hat ein Scherzkeks in die Melodie gezogen.</p>
<p>R42 basiert auf <a href="http://www.processing.org" target="_blank" class="liexternal">Processing</a>, einer Java-Bibliothek, die besonders für künstlerische Zwecke gedacht ist. Um die Multitouch-Auswertung kümmert sich TuioZones, und für die Soundgeschichten ist ProMidi zuständig. Was den Namen betrifft: Wir haben das Programm einfach so &#8220;R42&#8243; genannt, bewusst ohne Hintergedanken. Viel mehr als eine Spielerei ist R42 ohnehin nicht.</p>
<p>Während der Projektpräsentation wurde auch gefilmt &#8211; mit etwas Glück und etwas mehr Zeit kann ich bald R42 in Aktion zeigen.</p>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2009/07/06/r42/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
<enclosure url="http://bithac.de/wp-content/uploads/2009/07/ente.mp3" length="375785" type="audio/mpeg" />
		</item>
		<item>
		<title>Eine lange Zeit</title>
		<link>http://bithac.de/2009/05/08/eine-lange-zeit/</link>
		<comments>http://bithac.de/2009/05/08/eine-lange-zeit/#comments</comments>
		<pubDate>Fri, 08 May 2009 06:44:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flohmarkt]]></category>
		<category><![CDATA[Fundstücke]]></category>
		<category><![CDATA[gesehen]]></category>
		<category><![CDATA[HiFi]]></category>
		<category><![CDATA[Musik]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Studium]]></category>

		<guid isPermaLink="false">http://bithac.de/?p=495</guid>
		<description><![CDATA[&#8230;seit dem letzten Post. Deswegen sind die Themen auch ziemlich bunt gemischt. Vor einer Woche: Flohmarkt im Citti-Park: Barclay James Harvest &#8211; Time Honoured Ghosts (damit erhöht sich meine BJH-Plattenzahl auf 12 &#8211; damit Spitzenreiter) David Bowie &#8211; &#8220;Heroes&#8221; Ein Paar Canton-Lautsprecher vom Typ HB 60: Sehen meinen Canton LE 400 sehr, sehr ähnlich, sind [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230;seit dem letzten Post. Deswegen sind die Themen auch ziemlich bunt gemischt.</p>
<ul>
<li>Vor einer Woche: Flohmarkt im Citti-Park:
<ul>
<li><a href="http://bithac.de/wp-content/uploads/2009/05/platten-1-5-9-new.jpg" class="liimagelink" rel="lightbox[495]"><img class="alignright size-medium wp-image-496" title="platten-1-5-9-new" src="http://bithac.de/wp-content/uploads/2009/05/platten-1-5-9-new-300x150.jpg" alt="platten-1-5-9-new" width="300" height="150" /></a>Barclay James Harvest &#8211; Time Honoured Ghosts (damit erhöht sich meine BJH-Plattenzahl auf 12 &#8211; damit Spitzenreiter)</li>
<li>David Bowie &#8211; &#8220;Heroes&#8221;</li>
<li>Ein Paar Canton-Lautsprecher vom Typ HB 60: Sehen meinen Canton LE 400 sehr, sehr ähnlich, sind nur ein bisschen größer. Über den Klang muss ich noch ein genaueres Urteil fällen. Erstaunlich finde ich, dass es über Boxen dieses Typs so gut wie keine Informationen mehr gibt.</li>
</ul>
</li>
<li>Mittlerweile bei mir angekommen:
<ul>
<li>Ein recht neuer lauter Platzfresser für die Küche</li>
<li>und ein recht alter lauter Platzfresser für das Wohnzimmer, unter dem bereits mein Esstisch etwas zu leiden hatte (dazu in einem späteren Post mehr)</li>
</ul>
</li>
<li>Während der &#8220;Kräuter&#8221;-Aktionswoche in der Mensa habe ich feststellen müssen, dass ich meinem <a href="http://bithac.de/mensa2feed/" class="liinternal">mensa2feed</a>-<a href="http://bithac.de/2009/01/23/mensa2feed/" class="liinternal">RSS-<span style="text-decoration: line-through;">Proxy</span>-Gateway</a> mehr Toleranz gegenüber auf ungewöhnliche Weise geänderten Speiseplänen beibringen muss. Setze ich auf meine ToDo-Liste, denn vorher muss ich einen</li>
<li>Serielle Maus -&gt; TUIO-Umsetzer fertigstellen. Dieses Programm soll die Signale einer guten alten seriellen (RS232-)Maus dekodieren und in das TUIO-Protokoll (für Multitouch-Tische) umsetzen. Während ich auf den DSL-Anschluss-Heini warte, habe ich vielleicht genug Zeit, das Protokoll zu implementieren.</li>
<li>Gestern waren Maik und ich im neuen <strong>Star Trek</strong>-Film. Wir wurden nicht enttäuscht. Ein guter Film, und ganz bestimmt nicht nur für Trekkies. Vielleicht gucke ich mir den noch auf Englisch an. Was mir aber immer noch ein Rätsel ist: Warum steht im Raumschiff des Bösewichts stellenweise knöcheltiefes Wasser?</li>
</ul>
<p>Also genug zu tun&#8230; während ich jetzt warte, versuche ich mal gleichzeitig Musik zu hören, laute Platzfresser auszuprobieren und zu programmieren. Ich bin gespannt, was dabei herauskommt.</p>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2009/05/08/eine-lange-zeit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mensa2feed</title>
		<link>http://bithac.de/2009/01/23/mensa2feed/</link>
		<comments>http://bithac.de/2009/01/23/mensa2feed/#comments</comments>
		<pubDate>Fri, 23 Jan 2009 19:38:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[mensa2feed]]></category>

		<guid isPermaLink="false">http://bithac.de/?p=414</guid>
		<description><![CDATA[Ich würde kirre werden, wenn ich jetzt in der Klausurzeit nur lernen würde. Ein Bisschen Abwechslung muss da schon sein. Es hat mich schon sehr häufig genervt, dass es den Mensaplan nicht als RSS-Feed gibt, mal abgesehen vom grundscheußlichen Design der Studentenwerksseite. Meine Lösung und meine Beschäftigung während einer meiner Nicht-Lern-Abwechslungspausen: Ein RSS-&#8221;Proxy&#8221;, der die [...]]]></description>
			<content:encoded><![CDATA[<p>Ich würde kirre werden, wenn ich jetzt in der Klausurzeit <em>nur</em> lernen würde. Ein Bisschen Abwechslung muss da schon sein.</p>
<p>Es hat mich schon sehr häufig genervt, dass es den <a href="http://www.uni-kiel.de/stwsh/seiten_essen/plan_mensa_flensburg.html" target="_blank" class="liexternal">Mensaplan</a> nicht als RSS-Feed gibt, mal abgesehen vom grundscheußlichen Design der Studentenwerksseite. Meine Lösung und meine Beschäftigung während einer meiner Nicht-Lern-Abwechslungspausen: Ein RSS-&#8221;Proxy&#8221;, der die Studentenwerksseite in leichtverdauliche Feednachrichten zerlegt.</p>
<p><a href="http://bithac.de/mensa2feed/" target="_blank" class="liinternal">Hier kannst du den Mensa-Feed abonnieren.</a></p>
<p>Einige Anmerkungen: mensa2feed ist ziemlich dämlich. Das Skript gibt so ziemlich alles genau so wieder, wie es auf der Mensaplan-Seite steht &#8211; also verbessert sich natürlich nicht das Layout. (Und leider auch nicht das Essensangebot.) Wenn es doch noch einmal dazu kommen sollte, dass die HTML-Struktur des Mensaplans überarbeitet wird, ist es unwahrscheinlich, dass mensa2feed weiterhin funktioniert. Wie die Struktur bei Mensa-Aktionen (Oster-/ Weihnachts-Essen,&#8230;) aussieht, weiß ich nicht, also wird das bei mensa2feed bisher auch nicht berücksichtigt.</p>
<p>Zum Technischen:</p>
<p>Der Feed-Proxy basiert auf einem recht einfachen PHP-Skript, das sich die Mensaplan-Seite herunterlädt, die entsprechende HTML-Tabelle heraussucht und die Tabellenzeilen für jeden Tag als Feedeintrag ausgibt.</p>
<p>Zum Runterladen der Originalseite &#8220;borgt&#8221; sich das Skript zwei PHP-Klassen aus WordPress. Dieser Umweg war nötig, weil direkter HTTP-(Datei-)Zugriff auf meinem Server deaktiviert ist. Bei WordPress wird der HTTP-Zugriff über curl erledigt, und die WordPress-Klasse ist sogar recht komfortabel.</p>
<p>Damit mensa2feed nicht bei jeder RSS-Abfrage eines Clients auf die Mensaplan-Seite zugreifen muss, gibt es einen Zwischenspeicher. Genau an der Stelle muss ich aber noch mit der Ölkanne ran, um das laute Quietschen zu beseitigen. Denn bisher funktioniert es noch nicht so gut, dass mensa2feed Aktualisierungen auf der Mensaseite zuverlässig erkennt. Bisher war es so, dass alle zwei Tage oder sonntags auf die Mensaseite zugegriffen wurde und neue Feedeinträge erzeugt wurden, egal, ob der Mensaplan neu war oder nicht. Ich habe jetzt eine Abfrage eingebaut; Ob diese aber tatsächlich so funktioniert wie sie soll, wird sich noch zeigen. Der Test unter Realbedingungen ist ziemlich langwierig, weil der Plan nur einmal in der Woche aktualisiert wird.</p>
<p>Jetzt ruft mich meine 3 m²-Mensa. Was es da gibt, kann ich aber selbst bestimmen.</p>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2009/01/23/mensa2feed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gelungener Relaunch?</title>
		<link>http://bithac.de/2008/11/15/gelungener-relaunch/</link>
		<comments>http://bithac.de/2008/11/15/gelungener-relaunch/#comments</comments>
		<pubDate>Sat, 15 Nov 2008 22:00:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Fundstücke]]></category>
		<category><![CDATA[Programmierung]]></category>

		<guid isPermaLink="false">http://bithac.de/?p=326</guid>
		<description><![CDATA[Nicht von bithac.de, sondern von der Internetseite meiner alten Schule, www.cajabu.de. Das wurde auch mal wirklich Zeit, da die alte Seite seit Mitte 2002 ihren Dienst verrichtete, Bearbeitungen mit Frontpage Express erdulden musste und mittlerweile zweifelsfrei ein Verbrechen war. Kein wirkliches Ruhmesblatt, aber das Layout und die Grundstruktur stammten von mir, wenn auch irgendwann mein [...]]]></description>
			<content:encoded><![CDATA[<p>Nicht von bithac.de, sondern von der Internetseite meiner alten Schule, <a href="http://cajabu.de/index.php?target=home" target="_blank" class="liexternal">www.cajabu.de</a>. Das wurde auch mal wirklich Zeit, da die alte Seite seit Mitte 2002 ihren Dienst verrichtete, Bearbeitungen mit Frontpage Express erdulden musste und mittlerweile zweifelsfrei ein Verbrechen war. Kein wirkliches Ruhmesblatt, aber das Layout und die Grundstruktur stammten von mir, wenn auch irgendwann mein Name vom Impressum getilgt wurde. Im Web Archive sind allerdings noch <a href="http://web.archive.org/web/20020728172905/www.tzl.de/hlcjb/" target="_blank" class="liexternal">Spuren</a> (ganz unten) zu finden. Zu meiner Verteidigung kann ich sagen, dass ich damals um die fünfzehn war, total auf Dreamweaver 3 stand und es keine brauchbaren Alternativen zu Tabellenlayouts gab. Und der Code war sauber, benutzte schon etwas CSS und die Seite lief im Internet Explorer 4 genau so gut wie in Netscape 4.7. Nachdem ich die allererste Version der Seite abgeliefert hatte, war damit meine Verantwortlichkeit zuende.  <span id="more-326"></span></p>
<p>Über die Jahre wurde die Seite an allen Stellen erweitert und erhebliche Flickschusterei betrieben. Die Navigation wurde unstrukturiert &#8211; überall war irgendwas zu finden, aber selten das, was man suchte. Der Code wurde durch die verschiedensten Editoren bearbeitet (zum Beispiel Netscape Composer!), und war dadurch mit allerhand Überflüssigem überladen. Und die Zeiten von fettgedruckter Verdana sind seit spätestens 2003 vorbei.</p>
<p>Die neue Seite (allerdings schon fast ein halbes Jahr von mir unbemerkt online) soll es besser machen. Das Problem: Sie tut es nicht.</p>
<ul>
<li>Aussehen: Gut, über das, was man im Netz schön findet, lässt sich streiten. Die neue Seite sieht ganz klar frischer aus, aber nicht unbedingt modern. Auch wurde zuviel eingebaut: Mindestens drei verschiedene Schriftarten, marquee-Newsticker (böse, böse!), zusammenhangsloses Favicon, ein sinnfreier Hovereffekt im Header,&#8230;</li>
<li>Code: Seltsam. Das ist ja immer noch mit Layout-Tabellen. Wenigstens konnte ich im Schnelldurchlauf keine &lt;font&gt;-Tags oder ähnliche Relikte erkennen. Der Code ist kilometerweit von W3C-Validität entfernt.</li>
<li>Scripting: Die Seite ist ohne Javascript tatsächlich noch benutzbar, man muss dann aber auf die schönen MouseOver-Effekte verzichten. Schade, das geht doch auch problemlos mit CSS.<br />
Ohne JS wird allerdings eine vollkommen sinnlose Fehlermeldung angezeigt. Auch muss man auf die Bild-Vergrößern-Popups verzichten, die bei mir aber auch sonst nicht funktionieren.</li>
<li>Navigationsstruktur: Kaum eine Verbesserung.</li>
<li>Inhalt: Weitgehend wörtlich übernommen. Inklusive Rechtschreibfehlern.</li>
<li>Hinter dem Code: Da werkelt ein PHP-Skript, anscheinend selbstgeschrieben. Ich sehe aber keine Anzeichen eines noch so einfachen Redaktionssystems &#8211; und dann verstehe ich den Sinn vom Skript nicht. Schade, ein echtes Redaktionssystem hätte der Seite gut getan.</li>
</ul>
<p>Was soll ein Relaunch, wenn er kaum etwas besser macht?</p>
<p>Noch ein kleines Rätsel am Ende: Wer erkennt auf <a href="http://cajabu.de/pics/schule02.jpg" target="_blank" class="liexternal" rel="lightbox[326]">diesem Bild</a> (externer Link; die Rechte am Bild liegen nicht bei mir) die Manipulation?</p>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2008/11/15/gelungener-relaunch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VinylLibrary</title>
		<link>http://bithac.de/2008/10/11/vinyllibrary/</link>
		<comments>http://bithac.de/2008/10/11/vinyllibrary/#comments</comments>
		<pubDate>Sat, 11 Oct 2008 20:55:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Referenzen]]></category>

		<guid isPermaLink="false">http://bithac.de/?p=279</guid>
		<description><![CDATA[Ran an den Speck: Hier ist die angekündigte, erste Pre-Alpha-Vorabversion meines frischgetippten Programms zur Schallplatten-/CD-/Musik-Verwaltung, das ich treffenderweise (aber recht unkreativ) &#8220;VinylLibrary&#8221; getauft habe. vinyllibrary.zip (~0,5 mb) Zip-Datei entpacken, VinylLibrary.exe starten. Benötigt wird mindestens das .net Framework 3.5. Für den ersten Start und zum Hinzufügen von Musik ist eine Internetverbindung notwendig. Der erste Start dauert [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://bithac.de/wp-content/uploads/2008/10/round2.jpg" class="liimagelink" rel="lightbox[279]"><img class="size-medium wp-image-281 alignright" title="round2" src="http://bithac.de/wp-content/uploads/2008/10/round2-300x251.jpg" alt="" width="300" height="251" /></a>Ran an den Speck: Hier ist die angekündigte, erste Pre-Alpha-Vorabversion meines frischgetippten Programms zur Schallplatten-/CD-/Musik-Verwaltung, das ich treffenderweise (aber recht unkreativ) &#8220;VinylLibrary&#8221; getauft habe.</p>
<blockquote><p><a href="http://bithac.de/wp-content/uploads/2008/10/vinyllibrary.zip" class="lizip">vinyllibrary.zip</a> (~0,5 mb)</p></blockquote>
<p>Zip-Datei entpacken, VinylLibrary.exe starten. Benötigt wird mindestens das .net Framework 3.5. Für den ersten Start und zum Hinzufügen von Musik ist eine Internetverbindung notwendig. Der erste Start dauert etwas länger als sonst, weil die Coverbilder der Beispielbibliothek heruntergeladen werden.</p>
<p>Da das Programm noch so frisch ist, und es bisher noch von keinem anderen außer mir benutzt wurde, gebe ich &#8211; grob geschätzt &#8211; eine mindestens 55-prozentige Absturzchance. (Auch nicht wundern, wenn du auf den Crash-Button clickst!) Natürlich übernehme ich <em>keinerlei Verantwortung</em> für jedweden Schaden, den VinylLibrary wodurch auch immer anrichten sollte. Ich wüsste allerdings auch nicht, wie das Programm Schaden anrichten könnte.</p>
<p><em>Hinweise zur Benutzung:</em></p>
<p>In der Datensatz- und Coverbildauswahl muss jeweils ein Datensatz und ein Coverbild ausgewählt sein, bevor man auf &#8220;Add&#8221; oder &#8220;Add and Close&#8221; drückt. Sonst: Crash.</p>
<p>Mal F12 drücken. Lohnt sich. Und eventuell unter &#8220;Options&#8221; mit den Reglern spielen.</p>
<p>Speichern nicht vergessen. Das macht das Programm nicht automatisch.</p>
<p>Wenn du eine komplett eigene Bibliothek anlegen willst, lösche <strong>vinyl.xml</strong> im Unterverzeichnis \Library\. Danach im Programm die Bibliothek anlegen und speichern.</p>
<p><em>Ansonsten:</em></p>
<p>Have fun. Gib mir Rückmeldung.</p>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2008/10/11/vinyllibrary/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Abwechslung</title>
		<link>http://bithac.de/2008/10/07/abwechslung/</link>
		<comments>http://bithac.de/2008/10/07/abwechslung/#comments</comments>
		<pubDate>Tue, 07 Oct 2008 22:02:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Referenzen]]></category>

		<guid isPermaLink="false">http://bithac.de/?p=268</guid>
		<description><![CDATA[Hinweis für alle Nicht-Programmierer: Im folgenden Text steht viel technisches Gewäsch. Ich bitte um Entschuldigung. Damit nicht der falsche Eindruck entsteht, dass ich mich nur mit Flohmärkten, Schallplatten und Hackpfannen beschäftige, jetzt mal etwas anderes: Damit ich etwas Übung darin bekomme, bastele ich mir gerade ein Schallplatten-/CD-/Musikverwaltungsprogramm in  .Net 3/WPF. Viele der geplanten Sachen sind [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://bithac.de/wp-content/uploads/2008/10/vinyllib-screenshot.jpg" class="liimagelink" rel="lightbox[268]"><img class="size-medium wp-image-269 alignright" title="vinyllib-screenshot" src="http://bithac.de/wp-content/uploads/2008/10/vinyllib-screenshot-300x141.jpg" alt="" width="300" height="141" /></a></p>
<p>Hinweis für alle Nicht-Programmierer: Im folgenden Text steht viel technisches Gewäsch. Ich bitte um Entschuldigung.</p>
<p>Damit nicht der falsche Eindruck entsteht, dass ich mich nur mit Flohmärkten, Schallplatten und Hackpfannen beschäftige, jetzt mal etwas anderes: Damit ich etwas Übung darin bekomme, bastele ich mir gerade ein Schallplatten-/CD-/Musikverwaltungsprogramm in  .Net 3/WPF. Viele der geplanten Sachen sind noch nicht drin; gerade eben habe ich die Datei laden/speichern-Funktionen eingebaut. Die Oberfläche muss ich auch noch kräftig bearbeiten. (Das alles natürlich nicht mehr heute.)</p>
<p>Da die CoverFlow-Darstellung von iTunes gerade so angesagt ist, verwende ich das ElementFlow-Control aus der <a href="http://www.codeplex.com/fluidkit" target="_blank" class="liexternal">FluidKit</a>-Bibliothek. Leider ist das noch ziemlich buggy, und so musste ich eine Reihe böser Workarounds schreiben.</p>
<p>Das Programm verwendet als Datenquelle für die Album-Informationen <a href="http://musicbrainz.org/" target="_blank" class="liexternal">MusicBrainz</a>, für die Coverbilder <a href="http://amazon.com" target="_blank" class="liexternal">Amazon</a>. Der Benutzer gibt im Grunde nur Interpret und Albumnamen ein, und wählt einen Treffer für die Daten und ein dazu passendes Bild. Leider sind auf dem Screenshot nicht die tollen Animationen zu erkennen, die ich dafür ins Programm eingebaut habe. Irgendwie habe ich es mir auch angewöhnt (warum eigentlich?), in Englisch zu entwickeln&#8230; vielleicht sollte ich meine BrainWare mal neu starten.</p>
<p>Irgendwann in absehbarer Zukunft werde ich wohl eine downloadbare Version mit Quelltext bereitstellen &#8211; aber ohne Garantie. Ich muss ja schließlich vor lauter Flohmarkt, Schallplatten und Hackpfannen auch Zeit zur Softwareentwicklung finden.</p>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2008/10/07/abwechslung/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exoten</title>
		<link>http://bithac.de/2008/01/23/exoten/</link>
		<comments>http://bithac.de/2008/01/23/exoten/#comments</comments>
		<pubDate>Wed, 23 Jan 2008 11:38:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nonsense]]></category>
		<category><![CDATA[Programmierung]]></category>

		<guid isPermaLink="false">http://bithac.de/2008/01/23/exoten/</guid>
		<description><![CDATA[Es geht das Gerücht rum, dass es Informatiker geben soll, die tatsächlich Zeit hätten, ihren Hobbys nachzugehen. Und dann soll es auch noch Informatiker geben, die diese Zeit am Computer verbringen. Was aus solchen Freizeit-Computertätigkeiten heraus kommen kann, ist manchmal aber auch schon beinahe Kunst: Shakespeare ist eine Programmiersprache, die sich so liest wie altenglische [...]]]></description>
			<content:encoded><![CDATA[<p>Es geht das Gerücht rum, dass es Informatiker geben soll, die tatsächlich Zeit hätten, ihren Hobbys nachzugehen. Und dann soll es auch noch Informatiker geben, die diese Zeit am Computer verbringen. Was aus solchen Freizeit-Computertätigkeiten heraus kommen kann, ist manchmal aber auch schon beinahe Kunst:</p>
<p><a href="http://shakespearelang.sourceforge.net/ " target="_blank" class="liexternal">Shakespeare</a> ist eine Programmiersprache, die sich so liest wie altenglische Dichtkunst. Bestimmt nicht praktikabel, aber auf jeden Fall lustig.<span id="more-20"></span></p>
<p>Beispiel?</p>
<blockquote><p>The Infamous Hello World Program.</p>
<p>Romeo, a young man with a remarkable patience.<br />
Juliet, a likewise young woman of remarkable grace.<br />
Ophelia, a remarkable woman much in dispute with Hamlet.<br />
Hamlet, the flatterer of Andersen Insulting A/S.</p>
<p>Act I: Hamlet&#8217;s insults and flattery.</p>
<p>Scene I: The insulting of Romeo.</p>
<p>[Enter Hamlet and Romeo]</p>
<p>Hamlet:<br />
You lying stupid fatherless big smelly half-witted coward!<br />
You are as stupid as the difference between a handsome rich brave hero and thyself! Speak your mind!<br />
You are as brave as the sum of your fat little stuffed misused dusty old rotten codpiece and a beautiful fair warm peaceful sunny summer&#8217;s day. You are as healthy as the difference between the sum of the sweetest reddest rose and my father and yourself! Speak your mind!<br />
You are as cowardly as the sum of yourself and the difference between a big mighty proud kingdom and a horse. Speak your mind. Speak your mind!</p>
<p>[Exit Romeo]</p>
<p>Scene II: The praising of Juliet.</p>
<p>[Enter Juliet]</p>
<p>Hamlet:<br />
Thou art as sweet as the sum of the sum of Romeo and his horse and his black cat! Speak thy mind!</p>
<p>[Exit Juliet]</p>
<p>Scene III: The praising of Ophelia.</p>
<p>[Enter Ophelia]</p>
<p>Hamlet:<br />
Thou art as lovely as the product of a large rural town and my amazing bottomless embroidered purse. Speak thy mind!<br />
Thou art as loving as the product of the bluest clearest sweetest sky and the sum of a squirrel and a white horse. Thou art as beautiful as the difference between Juliet and thyself. Speak thy mind!</p>
<p>[Exeunt Ophelia and Hamlet]</p>
<p>Act II: Behind Hamlet&#8217;s back.</p>
<p>Scene I: Romeo and Juliet&#8217;s conversation.</p>
<p>[Enter Romeo and Juliet]</p>
<p>Romeo:<br />
Speak your mind. You are as worried as the sum of yourself and the difference between my small smooth hamster and my nose. Speak your mind!</p>
<p>Juliet:<br />
Speak YOUR mind! You are as bad as Hamlet! You are as small as the difference between the square of the difference between my little pony and your big hairy hound and the cube of your sorry little codpiece. Speak your mind!</p>
<p>[Exit Romeo]</p>
<p>Scene II: Juliet and Ophelia&#8217;s conversation.</p>
<p>[Enter Ophelia]</p>
<p>Juliet:<br />
Thou art as good as the quotient between Romeo and the sum of a small furry animal and a leech. Speak your mind!</p>
<p>Ophelia:<br />
Thou art as disgusting as the quotient between Romeo and twice the difference between a mistletoe and an oozing infected blister! Speak your mind!</p>
<p>[Exeunt]</p></blockquote>
<p>Sieht man doch auf den ersten Blick, dass dieses kurze Programm die Worte &#8220;Hallo Welt&#8221; auf den Bildschirm bringt. Und außerdem lässt sich die ungeheure Effizienz von Shakespeare erkennen &#8211; ungemein wenig Code und ungeheuer viel Nutzen.</p>
<p>Andere Programmiersprachen dieser Kategorie sind z.B. <a href="http://de.wikipedia.org/wiki/Brainfuck" target="_blank" rel="nofollow" class="liwikipedia">Brainfuck</a>,  <a href="http://de.wikipedia.org/wiki/Beatnik_(Programmiersprache)" target="_blank" rel="nofollow" class="liwikipedia">Beatnik</a> oder <a href="http://de.wikipedia.org/wiki/Whitespace_(Programmiersprache)" target="_blank" rel="nofollow" class="liwikipedia">Whitespace</a>. Ganz bestimmt einfach zu erlernen!</p>
]]></content:encoded>
			<wfw:commentRss>http://bithac.de/2008/01/23/exoten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

