Yesterday I gave away the free Ubuntu cd's which I mentioned here.
I needed fifteen minutes to get rid of one box of fifty such CD's and I left the remaining 100 cd's to get picked up this Friday by a second teacher who's going to give them away to students and by colleagues who haven't got one from me personally. A few weeks ago we already distributed a box of fifty Ubuntu Warty CD's at our company. So that brings the number to 100 owners of an Ubuntu Warty CD. Thats one in seven. Sweet.
We are actually getting some questions about Ubuntu on our Linux company mailinglist. So I assume thats a sign the CD's are actually being used.
So he proposed a new one. After some discussion on IRC and sending some userinterface-mockup screenshots in both directions to each other we found this getting more or less the way we want it. Other screenshots here and here.
It's not a promise it will be available in that release. But chances are getting high.
During one of the #evolution-meeting's I got interested in implementing a feature request. The feature request requested that the alarm notification dialog would be shared for all alarm notifications that happen while you're not paying attention.
At this moment will Evolution spawn a new instance of a dialog box each time an alarm notification happens. If you leave your Evolution instance running for a few hours and extensively use the calendaring and it's alarm-features. You might end up with a desktop with lots of such dialog box instances.
After my work on this, Evolution will make a treeview/listbox at the left of the already created dialog visible and will add the alarm notification to the dialog box instance.
This won't make it to the Evolution 2.2 release. I'm not even sure yet whether it will ever be included whatsoever. Nevertheless can you already try it.
You can find documentation on building Evolution from source here. You'll have this alarm-notification stuff after applying this patch. I created that BuildEvolutionFromSource a few weeks ago for people who are planning to hack on Evolution. So don't let the hassle of building Evolution hold you back. It's easy.
Getting free cd's from Ubuntu
Ubuntu is so cool. A few weeks ago I used this URL to ask for 200 Ubuntu Warty cd's to giveaway at my company (Cronos/X-Tend). They actually shipped it. So now I have a box full of Ubuntu Warty cd's. Thats so cool! Thanks Ubuntu! I can't wait for my Hoary order.
I've already gave 50 of the cd's to a friend of mine who is going to distribute them in schools. He's a teacher informatics and maintains software and hardware in a few schools here in Belgium/Antwerp.
I've never been superstitious nor ever really believed in a God or anything that can't be seen, can't be studied with my own eyes. Nevertheless I'm okay with people who do.
Last Friday, however, (my) destiny seemed to have it's periods.
Thursday evening I just couldn't stop thinking about the meeting that we had at my current Customer, Maia Scientific (read about them and what I am doing there in my bio). The consensus was that we couldn't use any other way than some difficult mathematics to know at which exact location the motor that makes focusing the microscope happen is.
Somehow I caused a breakthrough in knowing the exact position of the motor in real-time, programmatically, by using some special techniques for reading results from and instructing commands through the RS-232. Friday antemeridian, the result was that the microscope can be set in focus. And the really nice thing is that it actually can be reliably reproduced. The mathematically technique only 85% reproducible for a yet unknown reason. Mine, so far, has been 95% reproducible.
So we where all very happy about that. Postmeridian I went back to my personal laptop, and noticed that the screensaved was hanging. I couldn't login to it either. It really seemed like a hardware problem, actually. So I forcefully rebooted the laptop. The result was that even GRUB failed to load! The harddisk was making funny noises: Tssk Tssskk Tsssk. Panic!
At home during my recovery attempts, using Knoppix, this weekend, it seems that sometimes I can actually mount the harddisk. But the more I try recovering from it, the more it starts failing. I am suspecting a headcrash or something.
So I decided to advertise the brand of my laptop, so that you people know what type you should buy if you want harddisk failures too: Acer Travelmate. I just hope that their service is good. I've bought this device a half year ago so it should be warranted. I wonder if and with what argument they'll try to void that. Probably something like: Fedora Core 3 isn't a supported software on the device, we can't therefor test the harddisk and we can't therefor test whether or not it's broken. I guess I'll have to pray to the Gods in which I don't believe. Damned.
Yesterday (and other evenings this week) I had some fun with the code of the famous diagram drawing application Dia.
While I was doing a diagram for my current customer (Maia Scientific for whom I'm developing software for a scientifically microscopical device) I got very annoyed with the fact that Dia cannot handle setting the properties of multiple selected objects simultaneously. The current release will only set the properties of the first selected object. And it isn't a bug. It's actually coded that way.
So I decided I was going to fix that when I was done at Maia Scientific, that day. This illustrates how much of a code addict I am. I just can't stop, also not in the evening. Luckily my girlfriend knows how to stop me, from time to times. IMHO, an addicted programmer, is a healthy programmer. No? We ought to be addicted. It's our passion, job and life. (or replace "our" with "mine" if you're a programmer and dissagree with this).
A few hours later I mailed my intentions to the mailinglist of Dia. A day later I had my first prototype diff file ready. Some other Dia developers responded. Eventually also the man in charge, Lars Clausen, who appears to be one of the current Dia-maintainers, responded.
Lars told me he likes the idea. There's still a few features and bugs attached to this new feature (manipulating properties of all your selected objects). Like how to show which property has changed and thus will be applied on all selected objects, and which property isn't changed. And how to store the undo/redo history (make the whole set of propertysets atomic. The undo will have to undo all applies on all objects that where selected at the time).
However. We or I am expecting support for this in Dia in the next release. They told me this has been a very frequently requested feature. So I guess it's good news for all the Dia users that people, like Lars and me, are working on this today.
I got myself interested in clipboards again. I kinda lost my interest
while trying to maintain gnome clipboard manager a few years ago. The
clipboard of X has lots of problems which I wanted to tackle by doing a
I didn't succeed for the simple reason that the X clipboard wasn't very accesible. For example to know when another xclient became the owner of the current clipboard, you had to make sure you (as a clipboard manager) had to own it at all times. By stealing it from the new owner and claiming ownership. Simply because the only event available was "you have lost the ownership". Well actually, I did succeed in creating it. But I didn't in making it actually being used. For the application itself was ugly clumbsy and needed to perform horribly ugly tricks to get it's job done.
The new xfixes extensions, however, make it possible to know about clipboard-owner changes more easily. Therefor some common clipboard manager tasks can be done more easily today. I'd like to create a common clipboard manager daemon that can be shared by different popular desktop environments.
Some of the tasks such a clipboard manager could do:
I also want to tackle the problem that an xclient needs to first
deliver it's clipboard to the xserver when another xclient is
requesting it. While often both xclient processes are running on the
same host, the xserver isn't always. It makes sharing larger clipboards,
in such a situation, a very network intensive job. It causes lots of
network-traffic. And honestly, it's slow. In my humble opinion, it
would be better to utilise an Inter Process Communication mechanism. An
added advantage would be that sharing the clipboard between non xlib
applications and xlib applications could take place much more easily.
Today this is only possible while utilising a clipboard manager or an
xclient like xterm which will copy it to the console-window it's
displaying, as if it's being typed by the user. Imagine vi supporting
pasting the HTML-source behind the selected text of your Firefox
instance without the need for first going to the source of the website
you're viewing. Imagine two instances of vi copy and pasting to each
other in both directions without the need of temporary files (which is
more or less how mcedit does it). Imagine copy and pasting on the
console as easy as today on X.
One problem with implementing such an idea was the fact that there wasn't an IPC-system being liked by the programmers of the popular desktop environments. For example KDE preferred to use DCOP whereas GNOME preferred ORBit. Today, however, a new such mechanism is being designed just for the purpose of desktop inter process communication by the freedesktop.org organisation: DBUS.
We have all the ingredients to implement these idea's. I am working on a very first piece of testing code here. For non-programmers there's nothing interesting to see there at this moment.
There's a discussion about this going on at the xdg mailinglist of freedesktop.org.
Yesterday I invited Gaute Hope and Kristof Vansant to this advogato-site. They are co-authors of the gnome-schedule module. Gnome-schedule is a userinterface for configuring the crontab and at daemons. In some future Gaute Hope is planning to add support for anacrontab.
If you are interested in scheduling mechanisms, you also want to checkout (the highly unfinished project) Eventuality by Maciej Katafiasz which promises a scheduling mechanism that works like how GConf works for configuration. So events to which you can subscribe to in your applications.
We're planning a first stable release of gnome-schedule very soon. Dag Wieers will probably create Fedora packages for it. It's being written in Python and uses PyGtk.
Personally I started to dislike Python and PyGtk after this first project I made with it. It's not really something for me. I'm one of those developers who like to code with and for the very latests GNOME technologies. PyGtk from CVS offers that, but the distributions weren't using such an unstable version of course. So it has been holding me back lots of times during development, and is has been holding back a packaged release for various distributions. Next time I'll just use plain C or perhaps C++. Maybe C# once it's going to be adopted by the distributions. Other than that doesn't python feel like my programming language. Sorry.
However, it looks like both Gaute Hope and Kristof Vansant liked it for the purpose of creating gnome-schedule. So I guess it's okay as a development environment for many other people
This is a repost (old nickname nolonger in use) (original posting date was 21 Dec 2004)
So now you got it's code compiled (the code of Evolution) nothing is stopping you from exploring it and perhaps making contributions? I suggest you take a look at the plugins/ directory. There's lots of work todo! The Evolution dudes organise an IRC-meeting from time to times. Hackfests. Join the next one?
Also check out the developer pages for Evolution.
Oh and Damien: I'm very interested in that GnomeMeeting and GAIM integration -topic. What can be done to still get some integration between Gaim and GnomeMeeting going? Or perhaps with other Instant Messaging clients?
My personal opinion on Desktop Integration is that a (new) foundation like freedesktop.org should focus on this subject and get projects to work together.
New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!