<?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>Slowtwitch.de &#187; ruby (on rails)</title>
	<atom:link href="http://slowtwitch.de/wp/category/coding/ruby-on-rails/feed/" rel="self" type="application/rss+xml" />
	<link>http://slowtwitch.de/wp</link>
	<description>Anja Leuendorff &#38; Stephan Noske</description>
	<lastBuildDate>Sun, 29 Apr 2012 18:41:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Selenium FlowControl</title>
		<link>http://slowtwitch.de/wp/2009/02/selenium-flowcontrol/</link>
		<comments>http://slowtwitch.de/wp/2009/02/selenium-flowcontrol/#comments</comments>
		<pubDate>Thu, 19 Feb 2009 06:07:05 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[Aktuelles]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[ruby (on rails)]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=893</guid>
		<description><![CDATA[Selenium ist Framework um Funktionale Tests einer Webapplikation im Browser aus zu führen. Der Charme von Selenium ist, das es im jeweiligen Browser läuft &#8211; so lassen sich auch Ajax Calls ohne Weiteres testen. Details zu Selenium gibt es hier : http://seleniumhq.org/. Alle TestSuites werden in Form einer HTML Tabelle geschrieben. Um das nicht immer [...]]]></description>
			<content:encoded><![CDATA[<p>Selenium ist Framework um Funktionale Tests einer Webapplikation im Browser aus zu führen.</p>
<p>Der Charme von Selenium ist, das es <strong>im</strong> jeweiligen Browser läuft &#8211; so lassen sich auch Ajax Calls ohne Weiteres testen.</p>
<p>Details zu Selenium gibt es hier : <a title="http://seleniumhq.org/" href="http://seleniumhq.org/" target="_blank">http://seleniumhq.org/</a>.</p>
<p>Alle TestSuites werden in Form einer HTML Tabelle geschrieben. Um das nicht immer &#8220;von Hand&#8221; machen zu müssen gibt es ein schönes Friefox Plugin.</p>
<p><a title="Selenium IDE" href="http://seleniumhq.org/projects/ide/" target="_blank">Die Selenium IDE</a> .</p>
<p>Mit Hilfe der Selenium IDE lassen sich einfache Tests leicht aufzeichnen und wieder abspielen.</p>
[SinglePic not found]
<p>Auch lassen ich alle TestSuites gleich nach Java, C#, Perl, PHP, Phyton und Ruby exportieren !</p>
[SinglePic not found]
<p>Von Hause aus kann die Selenium IDE allerdings keine Loops (for, while etc.). Möchte an nun z.B. einen Chat testen, möchte man schon in einer Schleife</p>
<p>mehrere Nachrichten Abschicken.</p>
<p>Mit Hilfe der FlowControl Extension geht dies nun auch innerhalb der Selenium IDE. <a title="http://wiki.openqa.org/display/SEL/flowControl" href="http://wiki.openqa.org/display/SEL/flowControl" target="_blank">http://wiki.openqa.org/display/SEL/flowControl</a></p>
<p><strong>Installation:</strong></p>
<ul>
<li>Download der Datei : http://wiki.openqa.org/download/attachments/379/goto.js</li>
<li> Unter Options (innerhalb der Selenium IDE ) unter Selenium Core Extentions den Pfad zu goto.js angeben</li>
</ul>
<div>[SinglePic not found]</div>
<ul>
<li> Selenium IDE neu starten</li>
</ul>
<p><strong>Beispiel:</strong></p>
<p>Nun sind Commands wie : lable  und goto innerhalb der Selenium IDE verfügbar.</p>
<p>Für eine einfache Endlosschleife (zu den Chat Test) nun 2 Lables definieren (eigentlich reicht eins) &#8211; begin und end und dann</p>
<p>mit &#8220;goto begin&#8221; an die Stelle des Lables springen.</p>
<p>Erinnert schon etwas an :</p>
<p>10 PRINT &#8220;hallo&#8221;</p>
<p>20 GOTO 10</p>
<p>aus den Alten Tags was :) BTW : <a title="20 GOTO 10" href="http://www.20goto10.info/" target="_blank">http://www.20goto10.info/</a></p>
<p>Have Phun</p>
<p>Stephan</p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2009/02/selenium-flowcontrol/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Can do&#8221; &#8211; der GASAG Showcase</title>
		<link>http://slowtwitch.de/wp/2008/09/can-do-der-gasag-showcase/</link>
		<comments>http://slowtwitch.de/wp/2008/09/can-do-der-gasag-showcase/#comments</comments>
		<pubDate>Fri, 12 Sep 2008 14:39:17 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[ruby (on rails)]]></category>
		<category><![CDATA[o2world]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=674</guid>
		<description><![CDATA[Heute eröffnen Metallica die O2 World in Berlin. Im Rahmen eines sog. Showcase für den Eisbären-Sponsor GASAG haben wir einen interaktiven Tisch realisiert. Der Touchmaster von ART+COM ist die Grundlage für diesen interaktiven Tisch auf dem, je nach Veranstaltung,  verscheidende Anwendungen laufen. Es gibt zum Beispiel einen Energie-Matchmaker, ein Tipp-Spiel und virtuelles Air-Hockey. Interessant ist [...]]]></description>
			<content:encoded><![CDATA[<p style="float:right; margin:0 0 10px 15px; width:240px;">
		<img src="http://slowtwitch.de/wp/wp-content/uploads/2008/09/tisch-in-acion.jpg" width="240" />
		</p><p>Heute eröffnen Metallica die <a title="O2 World" href="http://www.o2world.de/" target="_blank">O2 World</a> in Berlin.<br />
Im Rahmen eines sog. Showcase für den Eisbären-Sponsor GASAG haben wir einen interaktiven Tisch realisiert. Der <a title="ART+COM Touchmaster" href="http://www.tech.artcom.de/de/products/touchmaster" target="_blank">Touchmaster</a> von <a title="ART+COM" href="http://artcom.de/" target="_blank">ART+COM</a> ist die Grundlage für diesen interaktiven Tisch auf dem, je nach Veranstaltung,  verscheidende Anwendungen laufen.</p>
<p>Es gibt zum Beispiel einen Energie-Matchmaker, ein Tipp-Spiel und virtuelles Air-Hockey.</p>
<p>Interessant ist hier das Zusammenspiel verschiedener Technologien.</p>
<p>Die Tischapplikationen (Spiele etc. ) wurden in Flash realisiert.</p>
<p>Der Tisch verfügt über eine Sensorik und eine Schnittstelle, die die Koordinaten der einzelnen Berührungen auf dem Tisch (X,Y und Z für den Abstand von Hand zu Tischplatte) im OSC Format an einen sog. <a title="http://transmote.com/flosc/" href="http://transmote.com/flosc/" target="_blank">Flosc-Gateway</a> schickt. Diese Gateway-Applikation wiederum stellt einen Server für die Flash-Applikation zur Verfügung.</p>
<p>Eine Ruby on Rails Applikation verwaltet die Anwendungen auf dem Tisch und dient unter Anderem zum Versenden von Wärmebildern, die in einem weiteren Teil des Showcase aufgenommen werden können.</p>
<p>Es Spielen hier also Flash, Ruby und Java (Gateway) mehr oder weniger friedlich miteinander :)</p>
<p style="text-align: center;"><a href="http://stephannoske.de/wp/wp-content/uploads/2008/09/heat-cam.jpg"><img class="size-medium wp-image-675" title="WärmebildTerminal" src="http://stephannoske.de/wp/wp-content/uploads/2008/09/heat-cam.jpg" alt="WärmebildTerminal" width="225" height="300" /></a></p>
<p>Wer Lust hat kommt einfach mal in der O2 World auf Ebene 2 vorbei und macht sich ein (Wärme)-Bild von der ganzen Sache :)</p>
<p style="text-align: center;"><a href="http://stephannoske.de/wp/wp-content/uploads/2008/09/tisch-in-acion.jpg"><img class="size-medium wp-image-676" title="GASAG Tisch" src="http://stephannoske.de/wp/wp-content/uploads/2008/09/tisch-in-acion.jpg" alt="GASAG Tisch" width="225" height="300" /></a></p>
<p>Aber bitte &#8230; keine Pommes auf den schönen Tisch stellen :)</p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2008/09/can-do-der-gasag-showcase/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Schaufensterbummel</title>
		<link>http://slowtwitch.de/wp/2007/11/schaufensterbummel/</link>
		<comments>http://slowtwitch.de/wp/2007/11/schaufensterbummel/#comments</comments>
		<pubDate>Wed, 28 Nov 2007 07:35:26 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[Aktuelles]]></category>
		<category><![CDATA[ruby (on rails)]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=557</guid>
		<description><![CDATA[Shopwindoz ist live ! Die Jungs von den tsoosayLabs haben Ihre Shopwindowz für die Welt aufgemacht. Dort könnt Ihr einen virtuellen Schaufensterbummel Shops aus Berlin machen oder gleich euren eigenen Shop starten. Viel Spass plus : it runs on ruby :)]]></description>
			<content:encoded><![CDATA[<p style="float:right; margin:0 0 10px 15px; width:240px;">
		<img src="http://stephannoske.de/wp/wp-content/uploads/2007/11/shopwindowz.jpg" width="240" />
		</p><p><a title="shopwindoz" target="_blank" href="http://www.shopwindoz.com">Shopwindoz</a> ist live !</p>
<p>Die Jungs von den <a title="tsoosayLabs" target="_blank" href="http://www.tsoosayLabs.com">tsoosayLabs</a> haben Ihre Shopwindowz für die Welt aufgemacht.</p>
<p><a title="shopwindoz" target="_blank" href="http://www.shopwindoz.com"><img style="width: 411px; height: 229px" id="image556" alt="shopwindowz" src="http://stephannoske.de/wp/wp-content/uploads/2007/11/shopwindowz.jpg" /></a></p>
<p>Dort könnt Ihr einen virtuellen Schaufensterbummel Shops aus Berlin machen oder gleich euren eigenen Shop starten.<br />
Viel Spass</p>
<p>plus : it runs on ruby :)</p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2007/11/schaufensterbummel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ShopWindoz teaser site live</title>
		<link>http://slowtwitch.de/wp/2007/09/shopwindoz-teaser-site-live/</link>
		<comments>http://slowtwitch.de/wp/2007/09/shopwindoz-teaser-site-live/#comments</comments>
		<pubDate>Fri, 14 Sep 2007 06:16:07 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[ruby (on rails)]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=539</guid>
		<description><![CDATA[Die Jungs und Mädels von den tsoosayLabs haben eine teaser site der Shopwindows gelaunchet. Unter http://www.shopwindoz.com/ kann man sich ab Nov. seinen kostenlosen Online-Shop einrichten. Besonders cool ist das Tool zum einrichten des Shopz. Wer jemanden kennt, der einen solchen Shop brauchen kann &#8211; und wer kann das nicht :) &#8211; einfach mal ausprobieren.]]></description>
			<content:encoded><![CDATA[<p style="float:right; margin:0 0 10px 15px; width:240px;">
		<img src="http://stephannoske.de/wp/wp-content/uploads/2007/09/shopwindowz.jpg" width="240" />
		</p><p>Die Jungs und Mädels von den <a target="_blank" title="tsoosayLabs" href="http://www.tsoosayLabs.com">tsoosayLabs</a> haben eine teaser site der Shopwindows gelaunchet.</p>
<p>Unter <a target="_blank" title="shopwindoz" href="http://www.shopwindoz.com/">http://www.shopwindoz.com/</a> kann man sich ab Nov. seinen kostenlosen Online-Shop einrichten.<br />
Besonders cool ist das Tool zum einrichten des Shopz.</p>
<p><img alt="http://www.shopwindoz.com/" id="image538" src="http://stephannoske.de/wp/wp-content/uploads/2007/09/shopwindowz.jpg" /></p>
<p>Wer jemanden kennt, der einen solchen Shop brauchen kann &#8211; und wer kann das nicht :) &#8211; einfach mal ausprobieren.</p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2007/09/shopwindoz-teaser-site-live/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Foto Foo Flickr upload [update]</title>
		<link>http://slowtwitch.de/wp/2007/07/foto-foo-flickr-upload/</link>
		<comments>http://slowtwitch.de/wp/2007/07/foto-foo-flickr-upload/#comments</comments>
		<pubDate>Fri, 13 Jul 2007 17:57:42 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[ruby (on rails)]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=509</guid>
		<description><![CDATA[Die Jungs vom Prodev haben ihre Foto-Foo Anwendung um einen Flickr-Upload-Service erweitert. Hier mein Testbild: Hat garnicht weh getan. weiter so Bois :) unter http://foto-foo.com/portal/flickr-foo gibt&#8217;s die flickr-foo public timeline zu sehen.]]></description>
			<content:encoded><![CDATA[<p style="float:right; margin:0 0 10px 15px; width:240px;">
		<img src="http://farm2.static.flickr.com/1388/800952834_748a62ebc9.jpg?v=0" width="240" />
		</p><p>Die Jungs vom <a title="prodev.idmedia" target="_blank" href="http://prodev.idmedia.com/">Prodev</a>  haben ihre <a title="Foto Foo" target="_blank" href="http://foto-foo.com/">Foto-Foo</a>  Anwendung um einen Flickr-Upload-Service erweitert.</p>
<p>Hier mein Testbild:</p>
<p><img title="Foto Foo flikr upload" alt="Foto Foo flikr upload" src="http://farm2.static.flickr.com/1388/800952834_748a62ebc9.jpg?v=0" /></p>
<p>Hat garnicht weh getan.</p>
<p>weiter so Bois :)</p>
<p>unter <a target="_blank" title="flickr-foo public timeline" href="http://foto-foo.com/portal/flickr-foo">http://foto-foo.com/portal/flickr-foo</a> gibt&#8217;s die flickr-foo public timeline zu sehen.<a target="_blank" title="flickr-foo public timeline" href="http://foto-foo.com/portal/flickr-foo"></p>
<p></a></p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2007/07/foto-foo-flickr-upload/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>acts_as_solr I like</title>
		<link>http://slowtwitch.de/wp/2007/07/acts_as_solr-i-like/</link>
		<comments>http://slowtwitch.de/wp/2007/07/acts_as_solr-i-like/#comments</comments>
		<pubDate>Fri, 13 Jul 2007 17:45:50 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[ruby (on rails)]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=508</guid>
		<description><![CDATA[Im Rahmen eines neuen Projekts bin ich zur Zeit am Evaluieren einer Suche auf Apache-Solr Basis um eine datenbankbasierte Suche zu vermeiden. Ich bin ja ein Fan von Lucene. Solr ist eine Art &#8220;Server für Lucene&#8221; mit dem man XML sprechen kann.I m Hintergrund wird dann Lucene zum Suchen über einen Index verwendet. Update, select, [...]]]></description>
			<content:encoded><![CDATA[<p>Im Rahmen eines neuen Projekts bin ich zur Zeit am Evaluieren einer Suche auf <a target="_blank" title="apache Solr" href="http://lucene.apache.org/solr/">Apache-Solr</a> Basis um eine datenbankbasierte Suche zu vermeiden.<br />
Ich bin ja ein Fan von Lucene. Solr ist eine Art &#8220;Server für Lucene&#8221; mit dem man XML sprechen kann.I m Hintergrund wird dann Lucene zum Suchen über einen Index verwendet. Update, select, delete etc. geht alles schön einfach via XML. Es gibt auch ein<br />
JSON API.<br />
Die Installation dauert ca. 5 Minuten. Die Solr-Distribution bringt einen eigenen AppServer (Jetty) mit und ist sogleich startbereit.<br />
Ich habe Solr aber in meinen Tomcat (in dem auch meine Applikation läuft) mitlaufen lassen. slor.war ins /webapps und gut ist.</p>
<p>Mehr zur Solrintegration in die WebApp später.</p>
<p>Das eigentlich interessante ist aber, das ich beim stöbern im Netz auf eine Ruby on Rails Plugin gestoßen bin, das es mir erlaubt meine alte datenbankbasierte Suche in meinem <a title="domain manager" href="#more-426">domain_managr</a> innerhalb von 10 Minuten gegen eine Solr-Suche auszutauschen.<br />
<a target="_blank" title="act_as_solr" href="http://api.railsfreaks.com/projects/acts_as_solr/"><br />
acts_as_solr</a>.</p>
<p>In kurzen Worten:</p>
<p>Vorraussetzung ist nicht einmal eine vorsinstallierte Solr-Instanz &#8211; das Plugin bringt eine eigene mit.<br />
rake solr:start startet den eingebauten Solrserver.</p>
<p>Ich benutze aber weiterhin meinen bereits bestehenden Server &#8211; is ja schon da :)</p>
<p>nach der Installation des Plugins mittels:</p>
<p><code>script/plugin install svn://svn.railsfreaks.com/projects/acts_as_solr/trunk</code></p>
<p>reicht ein zartes:  acts_as_solr im Model:</p>
<p><code> class Account < ActiveRecord::Base<br />
acts_as_solr<br />
has_many:invoices<br />
end<br />
</code><br />
und die Klasse ist nun für solr bekannt.</p>
<p>Die Änderungen an der Suche:</p>
<p><code> def search<br />
@query =  params[:query] # SQL search<br />
# @accounts = Account.find(:all , :conditions => [ "domain like ? ", '%'+@query+'%'])<br />
# Solr search<br />
res = Account.find_by_solr(@query)<br />
@accounts = res. records()<br />
render_without_layout<br />
end</code></p>
<p>Nach dieser Änderung benutzt die Suche nun meinen Solr-Server und ich kann dessen ganze "Macht" nutzen.</p>
<p>acts_as_solr I like</p>
<p>... to be continued ...</p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2007/07/acts_as_solr-i-like/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Hot or Not ? dizkiz.com</title>
		<link>http://slowtwitch.de/wp/2007/03/hot-or-not-dizkizcom/</link>
		<comments>http://slowtwitch.de/wp/2007/03/hot-or-not-dizkizcom/#comments</comments>
		<pubDate>Thu, 01 Mar 2007 20:22:16 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[ruby (on rails)]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=431</guid>
		<description><![CDATA[Die Jungs von der Produktentwicklung haben http://dizkiz.com/ gelaunched &#8211; &#8220;Am I Hot or Not ?&#8221; für Videos. In der ruby-on-rails Anwendung kann man YouTube, Google und T-Community Videos bewerten. Looks nice  &#8211; Respekt ! Leider klappt das einbauen des DizKiZ Wigdets in mein WordPress noch nicht auf Anhieb Erst musste der Rich Text Editor von [...]]]></description>
			<content:encoded><![CDATA[<p>Die Jungs von der Produktentwicklung haben<a target="_blank" title="dizkiz.com" href="http://dizkiz.com/"> http://dizkiz.com/</a> gelaunched  &#8211; &#8220;Am I Hot or Not ?&#8221; für Videos.</p>
<p>In der ruby-on-rails Anwendung kann man YouTube, Google und T-Community Videos bewerten.</p>
<p>Looks nice  &#8211; Respekt !</p>
<p>Leider klappt das einbauen des DizKiZ Wigdets in mein WordPress noch nicht auf Anhieb</p>
<p>Erst musste der Rich Text Editor von WordPress deaktiviert werden und dann siehts auch noch &#8220;seltsam aus&#8221;</p>
<p>What to do ? (<strong>ganz nach unten </strong>scrollen)</p>
<p><span id="more-431"></span></p>
<p><script type="text/javascript">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2007/03/hot-or-not-dizkizcom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JRuby is installed on your workbench, be happy :)</title>
		<link>http://slowtwitch.de/wp/2007/02/jruby-is-installed-on-your-workbench-be-happy/</link>
		<comments>http://slowtwitch.de/wp/2007/02/jruby-is-installed-on-your-workbench-be-happy/#comments</comments>
		<pubDate>Fri, 09 Feb 2007 20:23:08 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[ruby (on rails)]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=428</guid>
		<description><![CDATA[Kollege Stephan Müller hat es tatsächlich getan. Will man ein vorher ganz &#8220;harmloses&#8221; Ant build-script innerhalb von Eclipse ausführen, wird einem ganz lässig das JRuby &#8211; Plugin in den Eclipse Workspace installiert. Freundlich wird man auf den danach durchzuführenden Eclipse-Restart hingewiesen. Der Erste Schritt ist getan: jetzt arbeitet das ganze Team mit JRuby. ruby.was.installed: [echo] [...]]]></description>
			<content:encoded><![CDATA[<p>Kollege Stephan Müller hat es tatsächlich getan. Will man ein vorher ganz &#8220;harmloses&#8221; Ant build-script innerhalb von Eclipse ausführen, wird einem ganz lässig das JRuby &#8211; Plugin in den Eclipse Workspace installiert.</p>
<p>Freundlich wird man auf den danach durchzuführenden Eclipse-Restart hingewiesen.</p>
<p>Der Erste Schritt ist getan: jetzt arbeitet das <strong>ganze</strong> Team mit JRuby.</p>
<p><code> ruby.was.installed:<br />
[echo] !!!----------------------------------------------------------!!!<br />
[echo] !!! JRuby has been successfully installed on your workbench. !!!<br />
[echo] !!!             You need to restart eclipse                  !!!<br />
[echo] !!!----------------------------------------------------------!!!<br />
</code></p>
<p><span id="more-428"></span></p>
<p>Jetzt kann keiner mehr sagen : <em>&#8220;hab ich nicht installiert&#8221;</em> :)</p>
<p>Warum braucht man nun ruby innerhalb von Eclipse ?<br />
Wir nutzen Ruby innerhalb von Ant um aus Ant heraus dynamisch Ant-Build-Scripte zu erzeugen.<br />
Krank aber cool :P<br />
Dieses Ant Script does it (das installieren) : <a target="_blank" title="install-jruby.xml" href="/wp/wp-content/install-jruby.xml">install-jruby.xml</a></p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2007/02/jruby-is-installed-on-your-workbench-be-happy/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>aufgegleist &#8211; (don&#8217;t) believe the hype ?</title>
		<link>http://slowtwitch.de/wp/2007/02/aufgegleist-dont-believe-the-hype/</link>
		<comments>http://slowtwitch.de/wp/2007/02/aufgegleist-dont-believe-the-hype/#comments</comments>
		<pubDate>Fri, 02 Feb 2007 22:07:54 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[Aktuelles]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[ruby (on rails)]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=426</guid>
		<description><![CDATA[So nun hat&#8217;s mich endgültig gepackt. Manche Kollegen sind schon total genervt von dem &#8220;ruby hype&#8221; am Mittagstisch. &#8220;Ruby hier, rails da &#8211; habt Ihr denn kein anderes Thema !?&#8221; Ähmm um ehrlich zu sein: &#8220;&#8230; nicht wirklich&#8221;. Warum ist das so ? Seit nun mehr gut einem halben Jahr ist das Thema auch im [...]]]></description>
			<content:encoded><![CDATA[<p style="float:right; margin:0 0 10px 15px; width:240px;">
		<img src="http://stephannoske.de/wp/wp-content/uploads/2007/02/domain_managr.jpg" width="240" />
		</p><p>So nun hat&#8217;s mich endgültig gepackt.</p>
<p>Manche Kollegen sind schon total genervt von dem &#8220;ruby hype&#8221; am Mittagstisch.<br />
&#8220;Ruby hier, rails da &#8211; habt Ihr denn kein anderes Thema !?&#8221; Ähmm um ehrlich zu sein: &#8220;&#8230; nicht wirklich&#8221;.</p>
<p>Warum ist das so ?</p>
<p>Seit nun mehr gut einem halben Jahr ist das Thema auch im &#8220;new economy amt&#8221; ganz &#8220;heiß&#8221;.<br />
Auch wenn ich ja eher aus der &#8220;Java-Ecke&#8221; komme hat&#8217;s mich doch sofort interessiert.<br />
Nun sind schon die ersten /id ruby apps live zum Beispiel:der <a target="_blank" title="hostnamr" href="http://www.hostnamr.com/">hostnamr</a> oder <a target="_blank" title="http://www.dizkiz.com/" href="http://www.dizkiz.com/">dizkiz.com</a>.<br />
Auch ich habe schon seit längerem ein privates Projekt bei dem ich Ruby on Rails einsetzte. Leider<br />
kann das aus Zeitgründen noch nicht live gehen.</p>
<p><span id="more-426"></span>Jetzt hatte ich folgende Idee: betreibt man &#8211; aus diversen Gründen &#8211; einen oder mehrere Server und vermietet man diese,<br />
muss man ab und zu auch Rechnungen stellen.<br />
Wie alle Menschen denke auch ich nicht ständig daran, wem ich den nun wieder eine Rechnung stellen muss.<br />
Die Ruby on Rails &#8211; Applikation &#8220;domain managr&#8221; übernimmt das aber von nun an für mich.</p>
<p>Alle Domains &#8211; ob abrechenbar oder nicht &#8211; werden jeden Tag vom domain managr geprüft. Ist die Zeit reif, wird aus den Domain und Kundendaten eine Rechnung im PDF-Format erstellt und per email an den Kunden versandt.</p>
<p>Autopilot. Geplant: Reminder und Integration des PayPal &#8211; API.</p>
<p><a title="domain_managr" class="imagelink" href="http://stephannoske.de/wp/wp-content/uploads/2007/02/domain_managr.jpg"><img width="437" height="216" alt="domain_managr" id="image427" src="http://stephannoske.de/wp/wp-content/uploads/2007/02/domain_managr.jpg" /></a></p>
<p>Technisch gesehen wird aus den Kundendaten erst ein XML-Dokument erstellt, welches dann, zusammen mit einer PDF-Rechnungsvorlage<br />
an ein sehr altes, von mir geschriebenes, Java Tool (nutzt <a target="_blank" title="itext" href="http://www.lowagie.com/iText/">iText</a>) übergeben wird.</p>
<p>Charmant hier die konsequente Einhaltung des MVC Patterns:</p>
<p>Auch das XML-Template ist ein View. Ebenso das Mail-Template.</p>
<p>Mit Hilfe von</p>
<p><code> module RenderAnywhere<br />
class DummyController<br />
def logger<br />
RAILS_DEFAULT_LOGGER<br />
end<br />
def headers<br />
{}<br />
end<br />
end<br />
def render(options, assigns = {})<br />
viewer = ActionView::Base.new(Rails::Configuration.new.view_path, assigns,DummyController.new)<br />
viewer.render options<br />
end    def template_exists?(path, assigns = {})<br />
viewer = ActionView::Base.new(Rails::Configuration.new.view_path, assigns,DummyController.new)<br />
viewer.pick_template_extension(path) rescue false<br />
end<br />
end<br />
</code></p>
<p>Ist es möglich auch außerhalb von Controllern ein View zu rendern:<code>obj = invoice<br />
obj = obj.render :file => 'invoices/xml_template.rhtml',:locals=>{:invoice=>invoice}<br />
</code><br />
reicht aus hat man zu vor im Model ein &#8220;include RenderAnywhere&#8221; hinzugefügt.</p>
<p><code> class Invoice < ActiveRecord::Base<br />
include RenderAnywhere<br />
belongs_to:account<br />
end<br />
</code></p>
<p>Das so erstellte XML-Dokument kann nun an den PdfCreator übergeben werden.</p>
<p>Ruby spielt also auch mit Java. Java aber auch mit Ruby. Die Kollegen nutzen bereits ruby in von ant-tasks um dynamisch Deployment Scripte zu schreiben.</p>
<p>Damit zurück zum Mittagstisch. Der "Hype" hält an. Das Schöne daran ist, das man sehr schnell Erfolge feiern kann.<br />
In kürzester Zeit ist es nun möglich solche "kleinen" Apps zu erstellen.</p>
<p>Klar das man sich auch in der Pause darüber austauschen möchte :)</p>
<p>Obwohl ... Die Pause ist ja eigentlich zum Essen da - Guten Appetit.</p>
<p>... zu diesem Thema kommt <span style="font-weight: bold">sicher</span> noch (viel) mehr.</code></p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2007/02/aufgegleist-dont-believe-the-hype/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>First Contact &#8211; das erste Widget</title>
		<link>http://slowtwitch.de/wp/2006/12/first-contact-das-erste-widget/</link>
		<comments>http://slowtwitch.de/wp/2006/12/first-contact-das-erste-widget/#comments</comments>
		<pubDate>Tue, 26 Dec 2006 20:08:46 +0000</pubDate>
		<dc:creator>stephan</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[ruby (on rails)]]></category>

		<guid isPermaLink="false">http://stephannoske.de/wp/?p=406</guid>
		<description><![CDATA[Inspiriert vom Mongrel Cluster Widget, habe ich mich auch mal an die Erstellung meines ersten Dashboard Widgets gewagt. Dank Dashcode war das einfacher als gedacht. Ein Dashboard-widget besteht ja hauptsächlich aus HTML und Javascript. So kann man recht schnell ein einfaches Widget zusammenbauen. Mein erster Wurf: eine mongrel_rails &#8220;admin console&#8221;. Naja eigentlich nur ein Wrapper [...]]]></description>
			<content:encoded><![CDATA[<p style="float:right; margin:0 0 10px 15px; width:240px;">
		<img src="http://stephannoske.de/wp/wp-content/uploads/2006/12/wfront.png" width="240" />
		</p><p>Inspiriert vom <a title="widget" target="_blank" href="http://blog.pjkh.com/2006/12/20/mongrel-rails-dashboard-widget">Mongrel Cluster Widget</a>, habe ich mich auch mal an die Erstellung meines ersten Dashboard Widgets gewagt. Dank <a title="dashcode" target="_blank" href="http://developer.apple.com/tools/dashcode/">Dashcode</a> war das einfacher als gedacht.<br />
Ein Dashboard-widget besteht ja hauptsächlich aus HTML und Javascript. So kann man recht schnell ein einfaches Widget zusammenbauen.</p>
<p>Mein erster Wurf: eine mongrel_rails &#8220;admin console&#8221;. Naja eigentlich nur ein Wrapper um den<br />
eigentlichen Aufruf des <a title="Mongrel Home" target="_blank" href="http://mongrel.rubyforge.org/">Mongrel</a> HTTP-Server für Ruby, aber mit mehr &#8220;bunt vorne dran&#8221; :)</p>
<p>Voraussetzung sind:</p>
<p>- Mac OS X Version 10.4.3 oder höher<br />
- Eine funktionierende <a title="http://www.rubyonrails.org/" target="_blank" href="http://www.rubyonrails.org/">Ruby on Ralis</a> und Mongrel Installation.</p>
<p>Nun muss man noch den Pfad zu seiner Ruby on Rails Applikation eingeben und los geht&#8217;s.<br />
Per Klick auf die URL im Widget öffnet sich diese auch im Browser.<br />
Optional sind die Adresse, der Port und die Umgebung (Entwicklung, Test oder Produktion)<br />
konfigurierbar. Man kann hier sicher noch unendlich viele Optionen einbauen. Es ging mir aber<br />
in erster Line darum, mal ein Wigdet zu erstellen um zusehen wie das geht.</p>
<p><img alt="widget front" id="image407" src="http://stephannoske.de/wp/wp-content/uploads/2006/12/wfront.png" /><br />
<img alt="widget back" id="image409" src="http://stephannoske.de/wp/wp-content/uploads/2006/12/b1.png" /><br />
Das Widget gibt es hier:<a title="download widget" target="_blank" href="http://www.stephannoske.de/downloads/MongrelStarter.wdgt.zip"> http://www.stephannoske.de/downloads/MongrelStarter.wdgt.zip<br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://slowtwitch.de/wp/2006/12/first-contact-das-erste-widget/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

