<?xml version="1.0"?>
<rss xmlns:blogChannel="http://backend.userland.com/blogChannelModule" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:blog="http://bitflux.org/doctypes/blog" xmlns:php="http://php.net/xsl" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:georss="http://www.georss.org/georss" version="2.0"><channel><title>gorn.ch</title><link>http://gorn.ch/</link><description>Tobias Ebn&#xF6;ther's personal blog</description><generator>Flux CMS - http://www.flux-cms.org</generator><item><title>xchat on OSX / Command as alt</title><link>http://gorn.ch/archive/2010/07/29/xchat-on-osx-command-as-alt.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/821/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">&lt;p&gt;Hi all, long time no see :)&lt;/p&gt;
&lt;p&gt;Lately I got more and more unstatisfied with &lt;a href="http://colloquy.info/"
    &gt;Colloquy&lt;/a&gt; so I decided to go back to &lt;a href="http://xchat.org/"
    &gt;xchat&lt;/a&gt;. Since xchat aqua seems unmaintained I opted for "the real thing" on X11. Unfortunately &lt;a href="http://www.macports.org/"
    &gt;MacPorts&lt;/a&gt; once again failed to build it (I think I never managed to sucessfully build something with it that has some deps) so I had too look for something else.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://greenbackyard.net/"
    &gt;Bruno&lt;/a&gt; pointed me at &lt;a href="http://mxcl.github.com/homebrew/"
    &gt;Homebrew&lt;/a&gt; which looks totally awesome. There was no Formula for xchat but it was pretty easy to create one. After only two hours &lt;a href="http://github.com/mxcl/homebrew/commit/fb42d7a4eb89bc201ff34704474f21233fe5c9a9"
    &gt;my commit was accepted&lt;/a&gt; and it's in the main branch now :)&lt;/p&gt;
&lt;p&gt;To be able to nicely switch channels I decided to map the command (&#x2318;) key to alt aka meta. For that purpose I added the following lines to my &lt;strong&gt;~/.Xmodmap&lt;/strong&gt;:&lt;/p&gt;
&lt;pre&gt;
clear Mod1
clear Mod2
keycode 63 = Meta_L
keycode 66 = Mode_switch
add Mod1 = Meta_L
add Mod2 = Mode_switch
&lt;/pre&gt;</content:encoded><dc:subject>OS X</dc:subject><dc:subject>Techstuff</dc:subject><dc:subject>xchat</dc:subject><dc:subject>osx</dc:subject><dc:subject>x11</dc:subject><dc:subject>homebrew</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2010-07-29T15:46:01Z</dc:date></item><item><title>YUI3 Test and JsTestDriver</title><link>http://gorn.ch/archive/2009/12/08/yui3-test-and-jstestdriver.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/809/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">&lt;p&gt;As some of you might know I am a big fan of &lt;a href="http://developer.yahoo.com/yui/3/"
    &gt;YUI3&lt;/a&gt;. Currently I am revamping the JavaScript tests at &lt;a href="http://www.local.ch"
    &gt;local.ch&lt;/a&gt; which uses YUI3 for all the new stuff we do. I found some code from lazr and modified it a little to match my taste better. So basically all you do is include that snipped:&lt;/p&gt;
&lt;pre&gt;
YUI.add('jstestdriver', function(Y) {
    R = Y.namespace('jstestdriver.Runner');

    R.add = function add(suite) {
            if ((typeof jstestdriver === "undefined")) {
                // If we are not running under JsTestDriver, then
                // register the suite with Y.Test.Runner and run it.
                Y.Test.Runner.add(suite);

            } else {
                // If ``jstestdriver`` is defined, that means we are
                // running under JsTestDriver, so instead register each
                // test case from the suite as a separate TestCase() with
                // JsTestDriver.
                for each(var test_case in suite.items) {
                    TestCase(test_case.name, test_case);
                }
            }
    };

    R.run = function run(suite) {
            if ((typeof jstestdriver === "undefined")) {
                // If we are not running under JsTestDriver, then run all
                // the registered test suites with Y.Test.Runner.
                var yconsole = new Y.Console({
                    newestOnTop: false
                });
                yconsole.render('#log');
                
                Y.Test.Runner.run();
            }
    }
},
'0.1', {
    requires: ['test', 'console']
});
&lt;/pre&gt;
&lt;p&gt;Now you can write your tests as usual you only need to to the assigning a bit different. Instead of the normal YUI3 Test Runner you use this:&lt;/p&gt;
&lt;pre&gt;
Y.jstestdriver.Runner.add(suite);
Y.jstestdriver.Runner.run();
&lt;/pre&gt;
&lt;p&gt;What you have to watch out for: Load _ALL_ Yahoo code with your tests otherwise you will have very funky side effects of tests not running the first time but passing the second one, when yui3 loaded the missing files. I created one big file including everything that I use for that purpose.&lt;/p&gt;
</content:encoded><dc:subject>Techstuff</dc:subject><dc:subject>yui</dc:subject><dc:subject>yui3</dc:subject><dc:subject>JsTestDriver</dc:subject><dc:subject>tdd</dc:subject><dc:subject>testing</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-12-08T16:30:33Z</dc:date></item><item><title>No iPhone social self experiment</title><link>http://gorn.ch/archive/2009/11/16/no-iphone-social-self-experiment.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/801/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">&lt;p&gt;Lately I get quite annoyed by people taking out their phones everywhere. I mean it's fun to read twitter and stuff but if you sit at lunch and four people around you are playing with their phone it's really sad. Even worse I catch myself doing it more and more often. This is why I'm trading my iPhone for a plain phone with no browser, mp3 player, twitter, facebook and what ever distraction client.&lt;/p&gt;
&lt;p&gt;The goal is to figure out how addicted I'm already to the iPhone and I want to figure out is how it is in the public without distractions. I've got a mp3 player since 10 Years now and usually the first thing I do when walking out of the door is to turn it on. As soon as I'm at the bus stop I take out my iPhone and read twitter or something. I'm wondering how I will experience public transport etc. without those distractions. I will report the results here in a few days.&lt;/p&gt;
</content:encoded><dc:subject>Lifestyle</dc:subject><dc:subject>iphone</dc:subject><dc:subject>distraction</dc:subject><dc:subject>socialexperiment</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-11-16T17:50:12Z</dc:date></item><item><title>TechTalk about the Pomodoro Technique</title><link>http://gorn.ch/archive/2009/10/28/techtalk-about-the-pomodoro-technique.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/794/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">Yesterday I had a short TechTalk about &lt;a href="http://www.pomodorotechnique.com/"
    &gt;the Pomodoro Technique&lt;/a&gt;. It's a great tool to timebox your focus and break intervall. I only tried it for a few days and manage to do a very few Pomodoros each day but it still feels very efficient. You can read more about it on &lt;a href="http://www.pomodorotechnique.com/"
    &gt;http://www.pomodorotechnique.com&lt;/a&gt; or view &lt;a href="http://gorn.ch/files/pomodoro.pdf"
    &gt;my Slides&lt;/a&gt;.</content:encoded><dc:subject>Techstuff</dc:subject><dc:subject>techtalk</dc:subject><dc:subject>liip</dc:subject><dc:subject>pomodoro</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-10-28T07:32:06Z</dc:date></item><item><title>Setting up relayhost for postfix on OSX (with ssl and authentication)</title><link>http://gorn.ch/archive/2009/10/06/setting-up-relayhost-for-postfix-on-osx-with-ssl-and-authentication.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/782/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">&lt;p&gt;Ok several co workers asked me how to make the command line mail tool use a proper mailserver under osx. The problem is that it sends mails directly which will not be accepted by most of the mailservers.&lt;/p&gt;
&lt;p&gt;If you only want to send your mail plaintext over a mailserver and not use any authentication you just have to add this line to your &lt;b&gt;/etc/postfix/main.cf&lt;/b&gt;:&lt;/p&gt;
&lt;pre&gt;
relayhost = gorn.ch
&lt;/pre&gt;
&lt;p&gt;If your mailserver allows SSL encryption you should also add the following lines:&lt;/p&gt;
&lt;pre&gt;
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
&lt;/pre&gt;
&lt;p&gt;Now finally if your mailserver requires a login you need some more steps to do. First add the following line to your &lt;strong&gt;main.cf&lt;/strong&gt;:&lt;/p&gt;
&lt;pre&gt;
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
&lt;/pre&gt;
&lt;p&gt;Now create a file called &lt;strong&gt;/etc/postfix/sasl_passwd&lt;/strong&gt; make sure it's only readable by root because you will have to put in your password there the syntax looks like this:&lt;/p&gt;
&lt;pre&gt;
gorn.ch username:password
&lt;/pre&gt;
&lt;p&gt;Finally run this and you should be good to go. Send a mail over the commandline to make sure it works. :)&lt;/p&gt;
&lt;pre&gt;
sudo postmap hash:/etc/postfix/sasl_passwd
&lt;/pre&gt;</content:encoded><dc:subject>OS X</dc:subject><dc:subject>Techstuff</dc:subject><dc:subject>postfix</dc:subject><dc:subject>osx</dc:subject><dc:subject>relayhost</dc:subject><dc:subject>ssl</dc:subject><dc:subject>authentication</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-10-06T08:57:28Z</dc:date></item><item><title>Jackalope presentation and status</title><link>http://gorn.ch/archive/2009/07/02/jackalope-presentation-and-status.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/773/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">&lt;p&gt;On the &lt;a href="http://liip.ch"
    &gt;Liip&lt;/a&gt; Techday 2009 I had a slot together with chregu and we talked about &lt;a href="http://liip.to/jackalope"
    &gt;jackalope&lt;/a&gt;. We were introducing the &lt;a href="https://jsr-283.dev.java.net/"
    &gt;Java Content Repository&lt;/a&gt; to the crowd and talked about the current state of jackalope - which is our native &lt;a href="http://php.net"
    &gt;PHP&lt;/a&gt; jackrabbit client implementation. It was a great day with great talks and a lot of beers in the evening. You can check out most of the presentations including ours at &lt;a href="http://slides.liip.ch"
    &gt;http://slides.liip.ch&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We're making a great progress writing tests and implementing the jr_cr (aka java-bridge prototype) version. Currently we're switching from JCR 1 to JCR 2.0 using and sharing the interfaces with &lt;a href="http://flow3.typo3.org/"
    &gt;flow3&lt;/a&gt;. This is a great collaboration :) At the moment we switched our plans a little. In the beginning we aimed to achieve full test coverage before we start with our native PHP version which will become the main jackalope component. Currently it seems like we're going to finish most of the level1 tests and then beginn with the native client.&lt;/p&gt;
&lt;p&gt;If I got you interested get in touch with us on &lt;a href="irc://freenode.net/#jackalope"
    &gt;#jackalope&lt;/a&gt; or on the &lt;a href="http://lists.liip.ch/cgi-bin/mailman/listinfo/jackalope"
    &gt;mailing list&lt;/a&gt; contributors are of course very welcome.&lt;/p&gt;
</content:encoded><dc:subject>Techstuff</dc:subject><dc:subject>jackalope</dc:subject><dc:subject>jcr</dc:subject><dc:subject>jackrabbit</dc:subject><dc:subject>php</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-07-02T15:39:52Z</dc:date></item><item><title>Photoseries from places I like</title><link>http://gorn.ch/archive/2009/06/25/photoseries-from-places-i-like.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/764/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">&lt;p&gt;I bought a &lt;a href="http://panasonic.net/avc/lumix/"
    &gt;Lumix&lt;/a&gt; FS20 as my first digital camera which means I'm absolutely clueless when it comes to photography. As a little tryout I'm shooting photos of my favourite places and post it here. :) There is also a photoset on &lt;a href="http://flickr.com"
    &gt;Flickr&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you got hints for me how to improve my photos I'm very open for any tipps :) I will post the photos from flickr on this blog since I believe that's the best way to do it if you got better ideas again I'm open minded.&lt;/p&gt;
</content:encoded><dc:subject>Lifestyle</dc:subject><dc:subject>photo</dc:subject><dc:subject>places</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-06-25T11:29:19Z</dc:date></item><item><title>Bye bye last.fm</title><link>http://gorn.ch/archive/2009/06/17/bye-bye-last-fm.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/755/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">&lt;p&gt;This is my current Top 100 chart before I finally delete my account. Bye bye last.fm.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Dynamite Deluxe&lt;/li&gt;
&lt;li&gt;D12&lt;/li&gt;
&lt;li&gt;Samy Deluxe&lt;/li&gt;
&lt;li&gt;Lady Sovereign&lt;/li&gt;
&lt;li&gt;Xzibit&lt;/li&gt;
&lt;li&gt;Jan Delay&lt;/li&gt;
&lt;li&gt;Deichkind&lt;/li&gt;
&lt;li&gt;Abs&lt;/li&gt;
&lt;li&gt;Amy Winehouse&lt;/li&gt;
&lt;li&gt;Ferris MC&lt;/li&gt;
&lt;li&gt;Audio Bullys&lt;/li&gt;
&lt;li&gt;Absolute Beginner&lt;/li&gt;
&lt;li&gt;Immortal Technique&lt;/li&gt;
&lt;li&gt;Creutzfeld &amp;amp; Jakob&lt;/li&gt;
&lt;li&gt;Crystal Castles&lt;/li&gt;
&lt;li&gt;Die &#xC4;rzte&lt;/li&gt;
&lt;li&gt;The Courteeners&lt;/li&gt;
&lt;li&gt;Afrob&lt;/li&gt;
&lt;li&gt;Dizzee Rascal&lt;/li&gt;
&lt;li&gt;Busta Rhymes&lt;/li&gt;
&lt;li&gt;Gentleman&lt;/li&gt;
&lt;li&gt;Curse&lt;/li&gt;
&lt;li&gt;Access Immortal&lt;/li&gt;
&lt;li&gt;Babyshambles&lt;/li&gt;
&lt;li&gt;Cypress Hill&lt;/li&gt;
&lt;li&gt;Rage Against the Machine&lt;/li&gt;
&lt;li&gt;The Streets&lt;/li&gt;
&lt;li&gt;CunninLynguists&lt;/li&gt;
&lt;li&gt;Richie Hawtin&lt;/li&gt;
&lt;li&gt;Delinquent Habits&lt;/li&gt;
&lt;li&gt;Redman&lt;/li&gt;
&lt;li&gt;Jedi Mind Tricks&lt;/li&gt;
&lt;li&gt;Public Enemy&lt;/li&gt;
&lt;li&gt;Snoop Dogg&lt;/li&gt;
&lt;li&gt;Looptroop&lt;/li&gt;
&lt;li&gt;Sa&#xEF;an Supa Crew&lt;/li&gt;
&lt;li&gt;Fettes Brot&lt;/li&gt;
&lt;li&gt;Mobb Deep&lt;/li&gt;
&lt;li&gt;Marilyn Manson&lt;/li&gt;
&lt;li&gt;Guru&lt;/li&gt;
&lt;li&gt;IAM&lt;/li&gt;
&lt;li&gt;Masta Ace&lt;/li&gt;
&lt;li&gt;Ramones&lt;/li&gt;
&lt;li&gt;Masta Killa&lt;/li&gt;
&lt;li&gt;Nas&lt;/li&gt;
&lt;li&gt;Die Firma&lt;/li&gt;
&lt;li&gt;Jurassic 5&lt;/li&gt;
&lt;li&gt;Buddha Monk&lt;/li&gt;
&lt;li&gt;Method Man&lt;/li&gt;
&lt;li&gt;Van Halen&lt;/li&gt;
&lt;li&gt;House of Pain&lt;/li&gt;
&lt;li&gt;The Beatnuts&lt;/li&gt;
&lt;li&gt;Dynamic Duo&lt;/li&gt;
&lt;li&gt;The Knife&lt;/li&gt;
&lt;li&gt;Beginner&lt;/li&gt;
&lt;li&gt;EPMD&lt;/li&gt;
&lt;li&gt;Raekwon&lt;/li&gt;
&lt;li&gt;Freundeskreis&lt;/li&gt;
&lt;li&gt;Eins Zwo&lt;/li&gt;
&lt;li&gt;Aphrodite&lt;/li&gt;
&lt;li&gt;Nico Suave&lt;/li&gt;
&lt;li&gt;Raekwon and Ghostface&lt;/li&gt;
&lt;li&gt;DJ Desue&lt;/li&gt;
&lt;li&gt;Afu-Ra&lt;/li&gt;
&lt;li&gt;Dilated Peoples&lt;/li&gt;
&lt;li&gt;Skinnyman&lt;/li&gt;
&lt;li&gt;bluekilla&lt;/li&gt;
&lt;li&gt;Method Man &amp;amp; Redman&lt;/li&gt;
&lt;li&gt;Missy Elliott&lt;/li&gt;
&lt;li&gt;Ice Cube&lt;/li&gt;
&lt;li&gt;Hieroglyphics&lt;/li&gt;
&lt;li&gt;Roni Size&lt;/li&gt;
&lt;li&gt;Bob Marley&lt;/li&gt;
&lt;li&gt;Ko&#x44F;n&lt;/li&gt;
&lt;li&gt;Die Toten Hosen&lt;/li&gt;
&lt;li&gt;Ol' Dirty Bastard&lt;/li&gt;
&lt;li&gt;Die Fantastischen Vier&lt;/li&gt;
&lt;li&gt;dead prez&lt;/li&gt;
&lt;li&gt;Ghostface&lt;/li&gt;
&lt;li&gt;Gang Starr&lt;/li&gt;
&lt;li&gt;Black Star&lt;/li&gt;
&lt;li&gt;Tha Alkaholiks&lt;/li&gt;
&lt;li&gt;Swollen Members&lt;/li&gt;
&lt;li&gt;Kosheen&lt;/li&gt;
&lt;li&gt;Wu-Tang Clan&lt;/li&gt;
&lt;li&gt;The Chemical Brothers&lt;/li&gt;
&lt;li&gt;Beastie Boys&lt;/li&gt;
&lt;li&gt;The Roots&lt;/li&gt;
&lt;li&gt;Stic.Man&lt;/li&gt;
&lt;li&gt;Jeru the Damaja&lt;/li&gt;
&lt;li&gt;KRS-One&lt;/li&gt;
&lt;li&gt;Benny Benassi&lt;/li&gt;
&lt;li&gt;Carlos Libedinsky&lt;/li&gt;
&lt;li&gt;M.O.P.&lt;/li&gt;
&lt;li&gt;Elijah&lt;/li&gt;
&lt;li&gt;Cappadonna&lt;/li&gt;
&lt;li&gt;Burial&lt;/li&gt;
&lt;li&gt;Bone Thugs-N-Harmony&lt;/li&gt;
&lt;li&gt;Freeman&lt;/li&gt;
&lt;li&gt;Eminem&lt;/li&gt;
&lt;li&gt;La Coka Nostra&lt;/li&gt;
&lt;/ol&gt;
</content:encoded><dc:subject>Lifestyle</dc:subject><dc:subject>last.fm</dc:subject><dc:subject>bye</dc:subject><dc:subject>mp3</dc:subject><dc:subject>music</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-06-17T15:11:23Z</dc:date></item><item><title>Timestimator updated</title><link>http://gorn.ch/archive/2009/05/12/timestimator-updated.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/748/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">&lt;p&gt;As some of you already know I'm working on &lt;a href="http://timestimator.gorn.ch"
    &gt;timestimator&lt;/a&gt; in my spare time and on hackdays. It's a small tool that lets your team guess the time that will be necessary to accomplish a task. As I'm currently participating at the &lt;a href="http://www.local.ch"
    &gt;local.ch&lt;/a&gt; hackdays (thanks &lt;a href="http://www.liip.ch"
    &gt;Liip&lt;/a&gt; and local to make this possible I'm really enjoying it :)) I implemented a few new features and deployed a working version again.&lt;/p&gt;
&lt;p&gt;The main new features are related to groups. It's now possible to create your group and your team members can join it. Then outsiders won't see your tasks anymore which gives you some security (the code is not bug free so don't trust it too much, patches are welcome the project is on &lt;a href="http://github.com/ebi/timestimator"
    &gt;github&lt;/a&gt;). As I still have half a day left I will dig into python unit testing which I didn't take a look at so far and I really hate to work on untested projects.&lt;/p&gt;
&lt;p&gt;Try it out, but you will need a google account since it's on AppEngine. For any bugs ideas and feature requests please drop me a note I'm happy to hear from you.&lt;/p&gt;
&lt;p&gt;If You don't have a google account there is a small demo for you:&lt;br/&gt;
&lt;object width="425"
     height="344"
    &gt;&lt;param name="movie"
     value="http://www.youtube.com/v/tmAgHybeYhQ&amp;hl=en&amp;fs=1"
    /&gt;
&lt;param name="allowFullScreen"
     value="true"
    /&gt;
&lt;param name="allowscriptaccess"
     value="always"
    /&gt;
&lt;embed src="http://www.youtube.com/v/tmAgHybeYhQ&amp;hl=en&amp;fs=1"
     type="application/x-shockwave-flash"
     allowscriptaccess="always"
     allowfullscreen="true"
     width="425"
     height="344"
    /&gt;&lt;/object&gt;&lt;/p&gt;
</content:encoded><dc:subject>Techstuff</dc:subject><dc:subject>timestimator</dc:subject><dc:subject>python</dc:subject><dc:subject>AppEngine</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-05-12T09:53:19Z</dc:date></item><item><title>Wrote my first blogpost on blog.liip.ch</title><link>http://gorn.ch/archive/2009/05/11/wrote-my-first-blogpost-on-blog-liip-ch.html</link><guid isPermaLink="false">http://gorn.ch/archive/id/745/</guid><content:encoded xmlns="http://www.w3.org/1999/xhtml">Check it out it's about a new project we're kicking off and there will be some follow up posts soon :) I will always post a link to them here. http://blog.liip.ch/archive/2009/05/11/jackalope-started.html</content:encoded><dc:subject>Techstuff</dc:subject><dc:creator>Tobias Ebn&#xF6;ther</dc:creator><dc:date>2009-05-11T12:34:12Z</dc:date></item></channel></rss>

