We’re moving

by Arne Brasseur in def Arne.blog, Tue, 22 Jul 2008 16:18:11 GMT

Soon this site will get a serious face lift. I’m moving from the blogging platform Wordpress to the more flexible Drupal system. This site will contain both my blog in Dutch and various pages of interest in English.

For those who are subscribed to my RSS feeds, please note that the addresses will change. I will use the FeedBurner service in the future so feed addresses should stay the same from now on.

You can already see a preview of the new site at blog.arnebrasseur.net, its temporary home before moving to this domain. The old site will still be available as legacy.arnebrasseur.net.

The new site has currently only been tested on Mozilla Firefox, users of Internet Explorer can expect problems. Respectable browsers like Opera or Safari are expected to work.

View: We’re moving - More entries from def Arne.blog, Nitro

The last post

by Arne Brasseur in def Arne.blog, Mon, 24 Mar 2008 05:53:12 GMT

I have decided to no longer continue to blog in English on this site. I will still be blogging in Dutch.

It’s been increasingly difficult for me to maintain a certain continuity here. It’s been a great experiment, and a lot of fun, but I feel it’s time to let this one go.

I’m working on a new site with a much more narrow focus, something this site dearly lacks. It might still be a while before it sees the light of day, so I’m not revealing too much about it yet.

A big thanks to anyone who has been reading this blog, leaving comments or just following what’s happening. It’s been great!

View: The last post - More entries from def Arne.blog, Nitro

Happy Birthday Oxyliquit!

in Oxyliquit, Wed, 27 Feb 2008 20:40:18 GMT

It now has been 2 years since Oxyliquit first breathed the air.

Oxyliquit has been the idea of a community platform, however - the diminishing positive response in large attributable to the withering of Nitro and Og support in general leaves me with one laughing and one crying eye.

As this is a completely community driven application, it lives and dies with its community.

That said, I still think Oxyliquit is a good source for Nitro, so it will stay as long as there are still interested people browsing through it, it might however reopen in a slightly different form.

I thank everyone who has ever contributed to Oxyliquit in any way. Thank you.

View: Happy Birthday Oxyliquit! - More entries from Oxyliquit, Nitro

what

in Oxyliquit, Sat, 26 Jan 2008 20:52:13 GMT

aaaa

View: what - More entries from Oxyliquit, Nitro

what

in Oxyliquit, Sat, 26 Jan 2008 20:13:32 GMT

aaaa

View: what - More entries from Oxyliquit, Nitro

Getting subtitles in sync

by Arne Brasseur in def Arne.blog, Sun, 23 Dec 2007 01:40:58 GMT

As an early new years resolution I’ll start with sharing more of the snippets I code up to make my life easier. Here’s one : the SRT subtitle scaler. It’s a little ruby script to sync subtitles with a movie. I don’t know how often one needs this, but I got some English subtitles on-line for a Chinese movie and I just couldn’t get them to properly line up with the movie.

Mplayer has an option to set a delay (possibly negative), but that didn’t help in my case. You can also set the subtitle fps (frames per second), but that only works when the subtitle format uses frame numbers, while SRT files use timestamps.

If you have this problem this script can help. There are usage instructions in the comments.

Enjoy!

View: Getting subtitles in sync - More entries from def Arne.blog, Nitro

Do what you can’t not do

by Arne Brasseur in def Arne.blog, Thu, 29 Nov 2007 16:25:59 GMT

By accidentally using the right four-word combination on Google I stumbled upon a 2002 article by Mark Pilgrim, and somehow it prompted me to use that good old blockquote tag once again. These are the closing words of the article, citing himself two years before that. Spot on Mark, spot on!

As I write this, the year is 2000, and the Internet is a battleground of intellectual property disputes. Some people would like you to believe that, without proper financial incentives, music, literature, and computer software would disappear. After all, who would make music if they can’t make money on it? Who would write? Who would program? I know the answer. The answer is that musicians will make music, not because they can make money, but because musicians are the people who can’t not make music. Writers will write because they can’t not write. I’ve been programming for 16 years, writing free software for 8. I can’t imagine not doing this. If you can imagine yourself not doing what you’re doing, do something else. Do whatever it is that you can’t not do.

View: Do what you can’t not do - More entries from def Arne.blog, Nitro

Do you what you can’t not do

by Arne Brasseur in def Arne.blog, Thu, 29 Nov 2007 16:25:51 GMT

By accidentally using the right four-word combination on Google I stumbled upon a 2002 article by Mark Pilgrim, and somehow it prompted me to use that good old blockquote tag once again. These are the closing words of the article, citing himself two years before that. Spot on Mark, spot on!

As I write this, the year is 2000, and the Internet is a battleground of intellectual property disputes. Some people would like you to believe that, without proper financial incentives, music, literature, and computer software would disappear. After all, who would make music if they can’t make money on it? Who would write? Who would program? I know the answer. The answer is that musicians will make music, not because they can make money, but because musicians are the people who can’t not make music. Writers will write because they can’t not write. I’ve been programming for 16 years, writing free software for 8. I can’t imagine not doing this. If you can imagine yourself not doing what you’re doing, do something else. Do whatever it is that you can’t not do.

$KCODE="UTF8"

in Oxyliquit, Thu, 29 Nov 2007 08:23:57 GMT

If you're using any characters beside those uses in 7-bit ASCII you'll have to think about character encodings. The easiest thing nowadays is usually to make every subsystem use UTF-8. To make Ruby use UT8 add $KCODE="UTF8" to app.rb. Make sure to add it all the way at the top, before loading Nitro. Then "charset=utf-8" will be added to the headers of a html response. If you set $KCODE after requiring Nitro this does not work!

View: $KCODE="UTF8" - More entries from Oxyliquit, Nitro

Element content

in Oxyliquit, Wed, 28 Nov 2007 08:20:38 GMT

The Nitro concept of elements is terribly flexible. Whatever you put inside the elements tag is available through the content method. You could for instance parse this as YAML and take it as configuration for how the element should render.

class SomeElement def render opt = YAML::load(content) if opt['variant'] == 'big' ... end end

View: Element content - More entries from Oxyliquit, Nitro

RSCDS

in Oxyliquit, Tue, 27 Nov 2007 11:22:08 GMT

I'm terribly sorry for showing this RSCDS page the whole week. I do not plan to discontinue serving the Nitro Q&A system anytime soon.

I apologize again for the inconvenience.

Jonathan Buch

View: RSCDS - More entries from Oxyliquit, Nitro

Going Gutsy : installing the latest Ubuntu

by Arne Brasseur in def Arne.blog, Tue, 13 Nov 2007 12:24:14 GMT

A while ago the fabulous folks from Ubuntu released the latest version of their popular Linux distributions. The version number of Ubuntu, Kubuntu and Edubuntu is now up to 7.10 (being the year and month it was released). More often however Ubuntu versions are referred to by their alliterating nicknames. I’ll go over my experiences upgrading from Feisty Fawn to Gutsy Gibbon.

Upgrading from Feisty

Being a Debian based distribution all software management can be easily performed by the ‘apt’ family of tools. The first step in upgrading is letting apt know that I would from now on prefer the Gutsy packages.

sudo sed s/feisty/gutsy/g -i /etc/apt/sources.list
sudo apt-get update

You might notice that there is no gutsy-commercial repository like there used to be a feisty-commercial, with for instance Opera and Realplayer. If you were using it you’ll have to comment it out or keep using the one from Feisty.

When I do these big upgrades I switch to a plain tty console because I’ve had it happen that one of the install scripts restarted X11. So press SHIFT-F1 and login to the console. To have some record of what happened afterwards I use the great little utility ‘tee’. This will record whatever passes stdout to a file. So to start upgrading do this:

sudo apt-get dist-upgrade | tee feisty-to-gutsy-`date  %Y%m%d`.log

This way you’ll get a nice date stamped log of the whole install process. If you switch back to X (Shift-F7) to do some work in the meanwhile, you can open a terminal window and do a ‘tail -f’ on that file so you know what’s happening

First hickup : device-manager

After some 1300 packages were upgraded I rebooted my computer. A new kernel (2.6.22-14) had been installed, and it seemed to be making some trouble. Instead of booting into X I saw per second several identical error messages flying over my screen, the gist of it being:

device-manager: linear: dm-linear: Device lookup failed

Booting with my previous kernel solved the problem, so I got on-line and after some googling found a fix, in /etc/evms.conf find the line that says ‘exclude=…’ and change it to:

exclude = [ sd* ]

I’m not even sure what EVMS is, I’m guessing this is related to HAL (Hardware Abstraction Layer). What this does is exclude your harddrives, from eh.. something. It solved the problem for me.

I’ve had kernel upgrades in Ubuntu create problems before, IMHO they could be a little bit more conservative with their kernels.

Smaller hickups

After booting again everything was working like a charm. They also did a great job again on the artwork. I had to tweak a few more small things.

Mozilla’s Thunderbird email program is now started simply with ‘thunderbird’ in stead of ‘mozilla-thunderbird’. I had to update a shortcut.

I use Emacs for most of my editing tasks, and somehow the version with XFont backend that I previously had installed got replaced by another one. The version with XFont support is not available in the Ubuntu repositories so this is understandable. There’s a guy that packages this pretty version, and apparently he has since I last checked made an actual apt repository available. See this article : Pretty Emacs by Alexandre Vassalotti.

Looking closer I found to have three different Emacs flavors on my system. I just removed them all, added the repositories from Alexandre and installed my trusted XFont version. Nice!

There seems to also be something going on with StarDict. The little windows that pop up with translations jump to the upper left corner when you hover over them, and then immediatly disappear. I might have to revert to the old version.

Conclusion

I’ve been upgrading my system since Dapper, and although there are often small hickups a little bit of google will solve most of your woes. I’ve only used my new system for a day now, so there’s probably lots of new little features that I still have to discover. All in all this seems to be another rock solid distribution which I’d wholeheartedly recommend to both newbies and seasoned hackers.

Running Nitro with FastCGI and Lighttpd

in Oxyliquit, Fri, 19 Oct 2007 08:54:16 GMT

I'm assuming you've installed Lighttpd with the package manager of your distribution of choice. Next you need to enable the fastcgi module.

If you're using Debian or a variant (like Ubuntu) you can use the lighty-enable-mod script:

lighty-enable-mod fastcgi

This will create a symlink from /etc/lighttpd/conf-available/10-fastcgi.conf to /etc/lighttpd/conf-enabled/10-fastcgi.conf. Open this file in your editor. If this doesn't work for you simply edit the main configuration file /etc/lighttpd/lighttpd.conf.

To enable the module you need this line:

server.modules = ( "mod_fastcgi" )

If you find any fastcgi.server portions in the configuration comment them out, we won't be needing them. Now add a fresh portion: fastcgi.server = ("" => (( "bin-path" => "/path/to/app.rb", "socket" => "/tmp/nitro.socket", "check-local" => "disable", "max-procs" => 1, "bin-environment" => ("RUBYOPT" => "-rubygems -I/path/nitro_repo/script -rlib/glycerin") )) )

Issue

sudo /etc/init.d/lighttpd force-reload

and you should be all set. Keep an eye on /var/log/lighttpd/error.log in case stuff doesn't work right.

Adapt bin-environment to whatever is necessary on your site to get nitro running. I'm assuming you're using the repo version. Otherwise a simply "-rubygems" might suffice.

Announcing ZhongWiki

by Arne Brasseur in def Arne.blog, Sat, 13 Oct 2007 14:52:42 GMT

Last week saw the launch of the first version of ZhongWiki. A wiki for people learning Mandarin Chinese. It’s still in it’s infancy, but I have a feeling it might become a great site and possibly a vibrant community.

A wiki is a site that can be edited and expanded by basically anyone. The best known example is Wikipedia. This site however does not try to be an encyclopedia, but rather a resource and a meeting ground for students of Mandarin. This means that not everything has to be properly sourced and you don’t need to have a neutral point of view. Opinions are appreciated and encouraged.

The name ZhongWiki is a wordplay on 中文 which means Chinese language and is pronounced “zhong wen” in Mandarin. It is written in CamelCase with the “Z” and the “W” capitalized as a homage to early wikis which used CamelCase to create links in pages.

So head over to ZhongWiki if Mandarin is your cup of cha, and keep a lookout for the edit button.

View: Announcing ZhongWiki - More entries from def Arne.blog, Nitro

Installing Nitro on Windows in 11 steps

in Oxyliquit, Wed, 03 Oct 2007 18:04:54 GMT

Assuming that you've already installed Ruby and MySQL on your system

1) Download Darcs from www.darcs.net and decompress it in any directory

2*) Add the darcs root folder in the PATH environmental variable (i.e. C:\Darcs;)

3) Download the latest Nitro version from the repository through darcs by: going to the directory you want to store nitro and typing in command line: darcs get --partial http://repo.nitroproject.org nitro

4) Find the RUBYOPTS environmental variable (it should already contain -rubygems in it and after it add the following:

-I(NITRO)\nitro\lib -I(NITRO)\nitro\vendor -I(NITRO)\og\lib -I(NITRO)\glue\lib -I(NITRO)\raw\lib

  • replace (NITRO) with the path to your nitro folder (example: C:\nitro). Note that -I is Capital i, and not lowercase L.

5) Add the same directories in the PATH environmental variable as well (ex. C:\nitro\nitro\lib;C:\nitro\nitro\vendor;C:\nitro\og\lib;C:\nitro\glue\lib;C:\nitro\raw\lib)

6) Go to the Nitro root directory and type: darcs pull and select "yes" to all patch prompts

7) Install the "facets" gem (gem install facets)

8) Install the "redcloth" gem (gem install redcloth)

9) Install the "xmlSimple" gem (gem install xml-simple)

10) Install the "mysql" gem (gem install mysql) [Select option 1]

11) Install the "uuidtools" gem (gem install uuidtools)

  • In order to get to your system's environmental variables, right click on your "My Computer" icon and select Properties. Select the Advanced Tab and on the bottom click on the Environmental Variables button.

 

Nitro

Nitro provides everything you need to create state-of-the-art Web 2.0 applications with ease and joy. Nitro applications are written using Ruby (server side) and Javascript (client side). Nitro’s source code is easy to understand and extend. More importandly your Nitro application source code is elegant, readable, consize and efficient. Nitro automagically provides most of the functionality for you.

Feeds