<?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>blogaholic &#187; Ruby</title>
	<atom:link href="http://www.blogaholic.de/blog/tag/ruby/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.blogaholic.de/blog</link>
	<description>Fundstücke und Gedanken</description>
	<lastBuildDate>Fri, 23 Apr 2010 19:16:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Rubys require ist unter Linux case-sensitiv</title>
		<link>http://www.blogaholic.de/blog/2009/01/22/rubys-require-ist-unter-linux-case-sensitiv/</link>
		<comments>http://www.blogaholic.de/blog/2009/01/22/rubys-require-ist-unter-linux-case-sensitiv/#comments</comments>
		<pubDate>Thu, 22 Jan 2009 07:38:55 +0000</pubDate>
		<dc:creator>Dominik</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[merken]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.blogaholic.de/blog/2009/01/22/rubys-require-ist-unter-linux-case-sensitiv/</guid>
		<description><![CDATA[Als ich gestern Abend eine Rails-Anwendung, die ich in den letzten Tagen auf dem Mac entwickelt hatte, auf einen Linux-Server depoyen wollte, trat ein seltsames Phänomen auf.
Nach dem Anlegen der Production-Datenbank wollte ich mittels &#8220;RAILS_ENV=production rake db:migrate&#8221; das DB-Schema einrichten. rake brach jedoch mit einem Fehler ab: &#8220;no such file to load &#8212; CSV&#8221;. Auf [...]]]></description>
			<content:encoded><![CDATA[<p>Als ich gestern Abend eine Rails-Anwendung, die ich in den letzten Tagen auf dem Mac entwickelt hatte, auf einen Linux-Server depoyen wollte, trat ein seltsames Phänomen auf.</p>
<p>Nach dem Anlegen der Production-Datenbank wollte ich mittels &#8220;RAILS_ENV=production rake db:migrate&#8221; das DB-Schema einrichten. rake brach jedoch mit einem Fehler ab: &#8220;no such file to load &#8212; CSV&#8221;. Auf dem Mac konnte ich das Kommando absetzen. Und die Development-Version lief auch problemlos. Die in dem Projekt verwendete CSV-Klasse lag auch am Linux-Server unter /usr/lib/ruby/1.8/csv.rb.</p>
<p>Es hat mich ewig gekostet, die Ursache zu finden. Warum trat der Fehler bei einem rake-Aufruf in der Production-Version, aber nicht in der Development-Version auf? Der Grund: rails lädt im Production-Environment alle Klassen im Voraus. Daher tritt das Problem bereits beim Initialisieren auf.</p>
<p>Und was ist nun mit dem Fehler? In einer Datei stand require &#8216;CSV&#8217;, das ich per copy&#8217;n'paste aus dem Beispiel von einer Website kopiert hatte. Auf dem Mac ist das offenbar kein Problem. Unter Linux schon. Nachdem ich es in require &#8216;csv&#8217; geändert hatte, lief rake anstandslos durch.</p>
<p>Damit mir &#8212; und Euch &#8212; das nicht noch einmal passiert, habe ich es hier aufgeschrieben.</p>]]></content:encoded>
			<wfw:commentRss>http://www.blogaholic.de/blog/2009/01/22/rubys-require-ist-unter-linux-case-sensitiv/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby-Links</title>
		<link>http://www.blogaholic.de/blog/2009/01/22/ruby-links/</link>
		<comments>http://www.blogaholic.de/blog/2009/01/22/ruby-links/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 23:55:55 +0000</pubDate>
		<dc:creator>Dominik</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[merken]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.blogaholic.de/blog/2009/01/22/ruby-links/</guid>
		<description><![CDATA[Nachdem mich ein paar Leute nach dem letzten AG:SEC-Termin nach weiterführenden Links gefragt haben, habe ich mich noch ein wenig von Google auf interessante Seiten aufmerksam machen lassne.  Die folgenden Links fand ich ganz interessant; vielleicht sind sie das ja auch für Euch.

http://www.rubytips.org/2008/04/07/10-unique-ruby-language-features/
http://www.cs.auckland.ac.nz/references/ruby/doc_bundle/Newcomers/ruby.html
http://neworder.box.sk/news/18210
http://www.linux-mag.com/id/1154
http://www.linux-mag.com/id/1024
http://www.linuxdevcenter.com/pub/a/linux/2001/10/25/ruby.html
]]></description>
			<content:encoded><![CDATA[<p>Nachdem mich ein paar Leute nach dem letzten AG:SEC-Termin nach weiterführenden Links gefragt haben, habe ich mich noch ein wenig von Google auf interessante Seiten aufmerksam machen lassne.  Die folgenden Links fand ich ganz interessant; vielleicht sind sie das ja auch für Euch.</p>
<ul>
<li><a href="http://www.rubytips.org/2008/04/07/10-unique-ruby-language-features/" rel="nofollow">http://www.rubytips.org/2008/04/07/10-unique-ruby-language-features/</a></li>
<li><a href="http://www.cs.auckland.ac.nz/references/ruby/doc_bundle/Newcomers/ruby.html" rel="nofollow">http://www.cs.auckland.ac.nz/references/ruby/doc_bundle/Newcomers/ruby.html</a></li>
<li><a href="http://neworder.box.sk/news/18210" rel="nofollow">http://neworder.box.sk/news/18210</a></li>
<li><a href="http://www.linux-mag.com/id/1154" rel="nofollow">http://www.linux-mag.com/id/1154</a></li>
<li><a href="http://www.linux-mag.com/id/1024" rel="nofollow">http://www.linux-mag.com/id/1024</a></li>
<li><a href="http://www.linuxdevcenter.com/pub/a/linux/2001/10/25/ruby.html" rel="nofollow">http://www.linuxdevcenter.com/pub/a/linux/2001/10/25/ruby.html</a></li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://www.blogaholic.de/blog/2009/01/22/ruby-links/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Noch mehr Ruby Tricks</title>
		<link>http://www.blogaholic.de/blog/2009/01/18/noch-mehr-ruby-tricks/</link>
		<comments>http://www.blogaholic.de/blog/2009/01/18/noch-mehr-ruby-tricks/#comments</comments>
		<pubDate>Sun, 18 Jan 2009 09:53:58 +0000</pubDate>
		<dc:creator>Dominik</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[merken]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.blogaholic.de/blog/2009/01/18/noch-mehr-ruby-tricks/</guid>
		<description><![CDATA[Nach kurzem Durchscrollen stehen auch im Ruby Tips Blog ein paar nützliche Hinweise, z.B. auf den Rubyscript2Exe-Packager, der genau das tut, was der Name verspricht. Der OS X Support ist allerdings noch experimental; für Win32 soll es aber schon sehr gut funktionieren.
Auch sehr lesenswert sind die 21 Ruby Tricks.
Schon alleine dieser Trick ist Gold wert:
email [...]]]></description>
			<content:encoded><![CDATA[<p>Nach kurzem Durchscrollen stehen auch im <a href="http://www.rubytips.org/">Ruby Tips Blog</a> ein paar nützliche Hinweise, z.B. auf den <a href="http://www.erikveen.dds.nl/rubyscript2exe/">Rubyscript2Exe-Packager</a>, der genau das tut, was der Name verspricht. Der OS X Support ist allerdings noch experimental; für Win32 soll es aber schon sehr gut funktionieren.<br />
Auch sehr lesenswert sind die <a href="http://www.rubyinside.com/21-ruby-tricks-902.html">21 Ruby Tricks</a>.</p>
<p>Schon alleine dieser Trick ist Gold wert:</p>
<pre>email = "Fred Bloggs <fred>"
email.match(/&lt; (.*?)&gt;/)[1]            # =&gt; "fred@bloggs.com"
email[/&lt; (.*?)&gt;/, 1]                  # =&gt; "fred@bloggs.com"
email.match(/(x)/)[1]                # =&gt; NoMethodError [:(]
email[/(x)/, 1]                      # =&gt; nil
email[/([bcd]).*?([fgh])/, 2]        # =&gt; "g"</fred></pre>
<pre></pre>]]></content:encoded>
			<wfw:commentRss>http://www.blogaholic.de/blog/2009/01/18/noch-mehr-ruby-tricks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Das TextMate Ruby Bundle</title>
		<link>http://www.blogaholic.de/blog/2009/01/18/das-textmate-ruby-bundle/</link>
		<comments>http://www.blogaholic.de/blog/2009/01/18/das-textmate-ruby-bundle/#comments</comments>
		<pubDate>Sun, 18 Jan 2009 09:40:35 +0000</pubDate>
		<dc:creator>Dominik</dc:creator>
				<category><![CDATA[links]]></category>
		<category><![CDATA[merken]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[textmate]]></category>

		<guid isPermaLink="false">http://www.blogaholic.de/blog/2009/01/18/das-textmate-ruby-bundle/</guid>
		<description><![CDATA[Ich bin auf eine kurze Einführung in das TextMate Ruby Bundle gestoßen. Ich muss mir unbedingt die Triggers angewöhnen!
]]></description>
			<content:encoded><![CDATA[<p>Ich bin auf eine kurze Einführung in das <a href="http://ciaranwal.sh/2008/02/20/textmate-tip-the-ruby-bundle">TextMate Ruby Bundle</a> gestoßen. Ich muss mir unbedingt die Triggers angewöhnen!</p>
<pre></pre>]]></content:encoded>
			<wfw:commentRss>http://www.blogaholic.de/blog/2009/01/18/das-textmate-ruby-bundle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linksammlung zu Ruby und Rails sowie  PostgreSQL</title>
		<link>http://www.blogaholic.de/blog/2008/06/01/linksammlung-zu-ruby-und-rails-sowie-postgresql/</link>
		<comments>http://www.blogaholic.de/blog/2008/06/01/linksammlung-zu-ruby-und-rails-sowie-postgresql/#comments</comments>
		<pubDate>Sun, 01 Jun 2008 20:32:12 +0000</pubDate>
		<dc:creator>Dominik</dc:creator>
				<category><![CDATA[links]]></category>
		<category><![CDATA[Postgres]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.blogaholic.de/blog/2008/06/01/linksammlung-zu-ruby-und-rails-sowie-postgresql/</guid>
		<description><![CDATA[Am Wochenende habe ich viele neue Sachen, die auch für Euch interessant sein könnten:

 Auf Railscasts.com gibt es über 100 Video-Casts zu speziellen RoR-Themen.
Auf rorsecurity.info findet man eine Reihe von Beiträgen zu Sicherheitsthemen.
Mit bundle_fu kann man automatisch mehrere eingebundene Stylesheets/JS-Files zusammenfassen, was die Aufbauzeiten stark reduziert.
calendar_date_select ist ein Rails-Plugin, das einen schönen Date-Picker bereitstellt.
Auf lindsaar.net gibt [...]]]></description>
			<content:encoded><![CDATA[<p>Am Wochenende habe ich viele neue Sachen, die auch für Euch interessant sein könnten:</p>
<ul>
<li> Auf <a href="http://railscasts.com/">Railscasts.com</a> gibt es über 100 Video-Casts zu speziellen RoR-Themen.</li>
<li>Auf <a href="http://www.rorsecurity.info/">rorsecurity.info</a> findet man eine Reihe von Beiträgen zu Sicherheitsthemen.</li>
<li>Mit <a href="http://code.google.com/p/bundle-fu/">bundle_fu</a> kann man automatisch mehrere eingebundene Stylesheets/JS-Files zusammenfassen, was die Aufbauzeiten stark reduziert.</li>
<li><a href="http://code.google.com/p/calendardateselect/">calendar_date_select</a> ist ein Rails-Plugin, das einen schönen Date-Picker bereitstellt.</li>
<li>Auf <a href="http://www.lindsaar.net/">lindsaar.net</a> gibt es einige lesenswerte Rails-Tips, z.B. ein Hinweis auf die <a href="http://www.lindsaar.net/2008/4/22/tip-13-bangbang-transformations">Bang-Bang-Notation (!!)</a> in Ruby und <a href="http://www.lindsaar.net/2008/4/19/tip-11-transact-your-migrations">transactional migrations</a>.</li>
<li>Leider sind transaction migrations bei MySQL nicht möglich, da die DDL-Kommandos (CREATE TABLE etc.) nicht von Transaktionen erfasst sind. Bei PostgreSQL ist das hingegen kein Problem.</li>
</ul>
<p><strong>PostgresSQL</strong></p>
<ul>
<li>Also habe ich mir endlich einmal PostgreSQL angeschaut &#8212; das wollte ich sowieso schon lange machen. Es gibt verschiedene Möglichkeiten, Postgres unter Mac OS X zu installieren, z.B. mit einem <a href="http://www.postgresqlformac.com/">Installer</a>.</li>
<li>Nach einigen Recherchen habe ich mich aber dazu entschieden, die Installation doch lieber mit MacPorts durchzuführen. Interessant war der Beitrag auf <a href="http://www.robbyonrails.com/articles/2008/01/22/installing-ruby-on-rails-and-postgresql-on-os-x-third-edition">Robby on Rails</a>.</li>
<li>Die PostgresSQL-Installation erledigt folgender Aufruf: <em>sudo port install postgresql83 postgresql83-server</em></li>
<li>Nach der Installation muss man zunächst einmal eine neue Datenbankinstanz anlegen &#8212; schon hier wird deutlich, dass sich Postgres viel mehr an Business-DBMS wie dem MS SQL Server oder Oracle anlehnt als an den Kollegen MySQL. Wie in vielen Howtos beschrieben erfolgt die Einrichtung der Instanz wie folgt:<br />
<em>sudo mkdir -p /opt/local/var/db/postgresql83/defaultdb;<br />
sudo chown postgres:postgres /opt/local/var/db/postgresql83/defaultdb;<br />
sudo su postgres -c &#8216;/opt/local/lib/postgresql83/bin/initdb -D /opt/local/var/db/postgresql83/defaultdb&#8217;</em></li>
<li>Allerdings gab es bei mir ein Problem: Der letzte Befehl brachte eine Fehlermeldung hervor (su: /dev/null: Permission denied). Ursache: Der postgres-Benutzer hat als Shell /dev/null eingetragen. Daher kann su keine Kommandos in dessen Kontext ausführen.</li>
<li>Kein Problem, dann ändern wir halt schnell die Shell in /etc/passwd. Denkste! In der Datei existiert der postgres-Benutzer gar nicht. Das liegt daran, dass OS X die sog. NetInfo-Datenbank zum Speichern der Benutzer verwendet. /etc/passwd wird nur im Single-User-Mode, der im Notfall verwendet werden kann, ausgewertet.</li>
<li>Wie ändert man Einträge in der NetInfo-DB? Mit <em>dscl</em>! Aufruf: <em>dscl localhost</em>. Das ist eine Art Shell für die Datenbank. Die Datenbank ist hierarchisch aufgebaut wie ein Dateisystem und man kann nach dem Starten mit <em>cd </em>und <em>ls</em> hindurchnavigieren</li>
<li>Der Aufruf zum Ändern der Shell lautet: <em>dscl . -create /Users/postgres UserShell /bin/bash</em></li>
<li>Danach wird die Instanz eingerichtet (was überraschend lange dauert &#8212; was macht der denn alles?) und man kann den Server mit dem Kommando <em>sudo su postgres -c &#8216;/opt/local/lib/postgresql83/bin/postgres -D /opt/local/var/db/postgresql83/defaultdb&#8217;</em> starten. Puh!</li>
<li>Dann habe ich mir <a href="http://www.pgadmin.org/">pgAdmin3</a>, eine offenbar weitverbreitete Client-GUI für verschiedene Plattformen besorgt, um mich zum ersten Mal mit dem Server zu verbinden. Mit <a href="http://phppgadmin.sourceforge.net/">phpPgAdmin</a> gibt es auch ein mit phpMyAdmin vergleichbares Web-basiertes Tool.</li>
<li>Beim Ausprobieren von pgAdmin3 wird mir schnell klar, dass das komplexer wird als gedacht &#8212; da ist von Table Spaces und Login Rollen die Rede &#8212; Konzepte, die einem MySQL-Benutzer gar nichts sagen. Klingt aber spannend. Weiter bin ich noch nicht gekommen, insbesondere der Ruby-Datenbank-Treiber wird noch spannend. <a href="http://www.nostalgix.org/blog/2005/06/hack-lot-ruby-on-rails-tiger-and.html">Angeblich</a> kann man ihn einfach mit <em>gem install postgres </em>installieren.</li>
</ul>
<p>Puh, das reicht fürs Erste. Ich bin ja gespannt, ob ich mich mit Postgres anfreunden kann. Achja, übrigens: Ich habe mir heute endlich das legendäre <a href="http://pragprog.com/titles/ruby/programming-ruby">Pickaxe-Buch</a> gekauft.</p>]]></content:encoded>
			<wfw:commentRss>http://www.blogaholic.de/blog/2008/06/01/linksammlung-zu-ruby-und-rails-sowie-postgresql/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Vergleich von Ruby und PHP</title>
		<link>http://www.blogaholic.de/blog/2008/05/25/vergleich-von-ruby-und-php/</link>
		<comments>http://www.blogaholic.de/blog/2008/05/25/vergleich-von-ruby-und-php/#comments</comments>
		<pubDate>Sun, 25 May 2008 15:37:38 +0000</pubDate>
		<dc:creator>Dominik</dc:creator>
				<category><![CDATA[links]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Sicherheit]]></category>

		<guid isPermaLink="false">http://www.blogaholic.de/blog/2008/05/25/vergleich-von-ruby-und-php/</guid>
		<description><![CDATA[Ich mache gerne Werbung f&#252;r Ruby und Ruby on Rails. Im RubyWiki gibt es einen knappen Vergleich der Sprachen, der auch auf einige Probleme von PHP eingeht.
Ein bemerkenswerter Satz ist der folgende:
PHP wird oft als Einsteigersprache bezeichnet. Dabei wird aber meist nur bedacht, dass es im Vergleich zu manch &#228;lterer Sprache wie Perl oder C [...]]]></description>
			<content:encoded><![CDATA[<p>Ich mache gerne Werbung f&uuml;r Ruby und Ruby on Rails. Im RubyWiki gibt es einen knappen Vergleich der Sprachen, der auch auf einige Probleme von PHP eingeht.</p>
<p>Ein bemerkenswerter Satz ist der folgende:</p>
<blockquote><p>PHP wird oft als Einsteigersprache bezeichnet. Dabei wird aber meist nur bedacht, dass es im Vergleich zu manch &auml;lterer Sprache wie Perl oder C etwas einfacher zu erlernen ist, ein wichtiges Kriterium wird oft vergessen: In einer Einsteigersprache sollte es nicht zu einfach sein, sich Sicherheitsl&uuml;cken in eine Anwendung zu rei&szlig;en. In diesem Punkt leistet sich PHP leider gro&szlig;e Patzer. </p>
</blockquote>
<p><a href="http://wiki.ruby-portal.de/Ruby_vs._PHP">Ruby vs. PHP</a></p></p>]]></content:encoded>
			<wfw:commentRss>http://www.blogaholic.de/blog/2008/05/25/vergleich-von-ruby-und-php/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
