[ OS X ]
[ Techstuff ]
by Tobias Ebnöther
@ 29.07.2010 16:46 CET
Hi all, long time no see :)
Lately I got more and more unstatisfied with Colloquy so I decided to go back to xchat. Since xchat aqua seems unmaintained I opted for "the real thing" on X11. Unfortunately MacPorts 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.
Bruno pointed me at Homebrew which looks totally awesome. There was no Formula for xchat but it was pretty easy to create one. After only two hours my commit was accepted and it's in the main branch now :)
To be able to nicely switch channels I decided to map the command (⌘) key to alt aka meta. For that purpose I added the following lines to my ~/.Xmodmap:
[ Techstuff ]
by Tobias Ebnöther
@ 08.12.2009 17:30 CET
As some of you might know I am a big fan of YUI3. Currently I am revamping the JavaScript tests at local.ch 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:
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']
});
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:
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.
[ Techstuff ]
by Tobias Ebnöther
@ 28.10.2009 08:32 CET
Yesterday I had a short TechTalk about the Pomodoro Technique. 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 http://www.pomodorotechnique.com or view my Slides.
[ OS X ]
[ Techstuff ]
by Tobias Ebnöther
@ 06.10.2009 09:57 CET
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.
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 /etc/postfix/main.cf:
relayhost = gorn.ch
If your mailserver allows SSL encryption you should also add the following lines:
Now create a file called /etc/postfix/sasl_passwd make sure it's only readable by root because you will have to put in your password there the syntax looks like this:
gorn.ch username:password
Finally run this and you should be good to go. Send a mail over the commandline to make sure it works. :)
[ Techstuff ]
by Tobias Ebnöther
@ 02.07.2009 16:39 CET
On the Liip Techday 2009 I had a slot together with chregu and we talked about jackalope. We were introducing the Java Content Repository to the crowd and talked about the current state of jackalope - which is our native PHP 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 http://slides.liip.ch
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 flow3. 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.
If I got you interested get in touch with us on #jackalope or on the mailing list contributors are of course very welcome.
[ Techstuff ]
by Tobias Ebnöther
@ 12.05.2009 10:53 CET
As some of you already know I'm working on timestimator 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 local.ch hackdays (thanks Liip and local to make this possible I'm really enjoying it :)) I implemented a few new features and deployed a working version again.
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 github). 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.
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.
If You don't have a google account there is a small demo for you:
[ Techstuff ]
by Tobias Ebnöther
@ 11.05.2009 13:34 CET
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
[ Techstuff ]
by Tobias Ebnöther
@ 14.04.2009 19:35 CET
I finally migrated to my new server and got a clean and maintainable installation. Sorry for the days downtime I guess most of you didn't notice ;) I am still working on more regular blog posts but the nice weather is blocking me.
[ Techstuff ]
[ OS X ]
by Tobias Ebnöther
@ 06.08.2008 14:26 CET
Skype has an awesome new feature. If you want to edit your last message you can simply do it with a regular expression. Definitely a feature every command line geek will love and most likely already use without knowing (took me some days to figure out ;))
So if you type something like "Hello Patrick" to Patrice you can simply correct it by writing "s/Patrick/Patrice/" see the video for a demo:
[ OS X ]
[ Techstuff ]
by Tobias Ebnöther
@ 28.07.2008 16:00 CET
I am a big fan of Araxis Merge and I also use svnmerge.py quite often. Lately I run into a bunch of nasty conflicts that weren't so easy to resolve. I wrote a little script that you can execute in the current directory to open all conflicting files in Araxis.
It opens the file diff with your working state on the left and the subversion state on the right. If you save it saves to the "real" file. You still need to execute svn resolved afterwards.
#!/bin/bash
OPTS="-2"
for FILE in `svn st | grep '^C' | awk '{print $2}'`; do
/usr/local/bin/compare $OPTS "${FILE}.working" "${FILE}.merge-right"* "${FILE}"
done
You probably need to adjust the path to compare. I specified the full path here since Image Magick has the same command. You can add additional options like -wait to the OPTS variable to resolve one file after another.
PS: I hope someone from Araxis reads this and renews my support which is running out soon :)