Older blog entries for murrayc (starting at number 163)

Java generics

I am very pleased to see that generics will actually be in Java soon. It has long been my biggest problem with the language. And it's nice that the syntax is similar to C++ templates. I really didn't think they would do it because, by making the language more complicated, it will make Java more difficult for beginners while making it much easier for experienced developers.

Now, can I have const object parameters please?


I have spent excessive amounts of time recently fixing the gtkmm build on the SUN Forte C++ 5.3 and g++ 3.4 (cvs) compilers. Everything is working for SUN Forte for gtkmm 2.2, and g++ 3.4 is now fine for gtkmm 2.2 and 2.4, but we still have problems with libsigc++ 2 (needed for gtkmm 2.4) with the SUN Forte compiler. I've been able to get this far because a potential gtkmm user gave me access to a SUN box.

I felt under pressure about these because there was a risk that we would need to change API to satisfy strange compilers, and total Bindings API freeze is soon. But, actually, no API changes were necessary.

I think libsigc++ 2 might work with the SUN Forte C++ 5.5 compiler, but I don't have direct access to that. Apparently SUN have something that we can use but we need to find somewhere suitable to host it.

Common runtimes

My positions on this are firm and unhelpful:

  • I have absolute confidence in Microsoft's technical incompetence, based on years of experience. So I'm actually not worried about any new Microsoft technology being too successful, or even of it appearing soon.
  • I have absolute confidence that Microsoft will continue to act illegaly to prevent competition and that no US government will stop them. So I'd like to keep far away from them.
  • I like C++ and I'm against any non-standard extensions or subsets. "Managed C++" is not C++. You can't use .NET APIs without using "Managed C++" language extensions.

GNOME keyboard shortcuts

I started a little list of really useful GNOME keyboard shortcuts for GNOME 2.6. Maybe there's one or two more. There's already a full list for accessibility, linked there, but that has a lot of stuff that most users don't need. I remember real MacOS Classic users liking these kinds of things. Maybe we could put something like this in a Help menu.

GNOME Betas, GTK+ API Freeze, and GNOME Bindings API Freeze

This is the time when we get stressed:

  • The GTK+ maintainers had to decide to finally freeze their API to avoid delaying the GNOME 2.6 release.
  • The GNOME release-team had to decide whether GNOME was ready for 2.6, based on the bugzilla status, and particularly with the lateness of the GTK+ API freeze.
  • The GNOME Bindings had API freeze, though we weren't sure until the last minute whether GTK+ would do the same. For the Java and Perl bindings this is the first time they've ever done an API freeze. It's the 4th time for gtkmm.

It's always scary to make these decisions, but we shouldn't forget that it's meant to be scary. It's far better to tear your hair out for a week at API-freeze time than to have a constant state of uncertainty for a year. And I think it's actually perfectly normal to have repeated threats and expectations of API freeze - you need to shake the problems out of the tree.

Likewise with the worrying about the stability and quality of final betas - having a schedule makes everyone really think about it, and really fix the big problems.

I'm becoming a release schedule fanatic.

Mark McLoughlin has lots more time for the release-team recently, as part of his new job, I guess. During the past few weeks he has done a really wonderful job of organising us and coordinating with the GTK+ team. It's a very significant contribution to GNOME 2.6.


I try very hard not to express any strong opinions here on divisive stuff such as politics or taste in music. That's dull but keeps everyone feeling included.

But sheesh, the Bush administration must go. A constitutional ammendment to ban homosexuals from getting married? In the fine tradition of amendments that abolished slavery, gave equal rights regardless of race, gave women the right to vote, and reduced the voting age from 21 to 18. The constitution, crufty as it is, makes Americans relatively free and it's outrageous to use it to reduce the harmless freedoms of a part of society. In europe we call this facism.

Bush knows that this amendment will never be passed because it's just meant to please an extreme minority of voters (I wonder, will he dare to support the amendment to deny abortion to women.), but it is unacceptable for a president to even suggest this.

I know that it's bad to invade a country, send people to die, kill innocents, destroy the world's environment, and destroy the american economy, and lie to the public, just so your friends get a few dollars extra for their retirement. But I think this is just the final straw for me.

The rest of the world is praying that Kerry wins the election, but the chances are very slim, what with the routinely corrupt american election process (see Kennedy v. Nixon), and now:

  • Probably-legitimate reweighting of the states' electoral votes so that Bush would have easily won in 2000 without Florida.
  • Widespread sweeping unregulated removal of people from voting lists, so that they can't discover until voting day that they can't vote. It worked in Florida in 2000, so they're doing it all over the place now.
  • Use of known-to-be-flawed electronic voting machines, controlled by politcally-motivated companies.

If Bush gets to rule for another 4 years, the rest of the world is likely to just give up on America and try to keep out of it's way. Unfortunately many people already have. That's a shame for the majority of decent moderate Americans.

Settled, connected

For the past week or so I have been surrendering to humankind's base instincts to gather and assemble IKEA furniture, and to acquire household electrical items.

And I now have DSL. No more frantic hotspotting for minutes at a time.


We have until March 1st to get stuff done for the Bindings API freeze, but that should be OK now I'm connected. Bryan Forbes has taken care of a lot of minor API issues recently, which gives me more time for bigger problems.

Giving me money

Someone just gave me $1 via PayPal for some FileMaker templates that I put on the web 5 years ago. Sounds like the start of a late-90s business plan to me.

My SMTP server (not really under my control), can't send to sourceforge mailing lists:

... while talking to mail.sourceforge.net.:
>>> DATA
<<< 550-Postmaster verification failed while checking <murrayc@murrayc.com>
<<< 550-Called:
<<< 550-Sent:     RCPT TO:<postmaster@murrayc.com>
<<< 550-Response: 550 <postmaster@murrayc.com>: User unknown
<<< 550-Several RFCs state that you are required to have a postmaster
<<< 550-mailbox for each mail domain. This host does not accept mail
<<< 550-from domains whose servers reject the postmaster address.
<<< 550 Sender verify failed550 5.1.1 <libxmlplusplus-general@lists.sourceforge.net>... User unknown
<<< 503 valid RCPT command must precede DATA
This is annoying and obscure to me, and I have 5% battery left. Ooh, I think I just figured it out, and can fix it. Pressing Post anyway.

Back to Bayern!

After a lot of wandering around Munich, looking at a lot of random places, I finally found an apartment - on Schellingstrasse in Schwabing. It's not the Glockenbachviertel, but oh well. It is, however, the classic clean white, geometrically-perfect, empty, german apartment. Now I need to try not to throw too much money away at IKEA.

I already ordered DSL so the year of internet-deprivation should be over next week.

libsigc++ 2 and gtkmm

I just released versions of gtkmm and co that use libsigc++ 2. Everything seems to work, and the syntax is incrementally better - no more numbers such as Slot0<>, Slot1<>, etc. Martin Schulze has done a wonderful job maintaining libsigc++ 2 and put a lot of effort into getting it and gtkmm ready in time. I critize everything and everyone but I can't find a single fault with what he's done. That doesn't feel right.

Bindings API freeze has been delayed by 2 weeks due to the GNOME schedule slip of 2 weeks. So, that gives everyone one more last chance to get changes in and test stuff properly. That's actually the ideal way to do API freeze sometimes - keep saying it's the last chance and keep sounding like you mean it. However, schedule slip is exceptional and I wouldn't bet on it ever happening again.

Finding an appartment in Munich is an ordeal, but I'm not quite ready to give up the dream of the perfect 2-room in the Glockenbachviertel.

I met frehberg yesterday. He's here in Munich for a customer. It sounds his company, Xtradyne, is doing well.

jhbuild on debian

Yesterday I tried again to get jhbuild working on my debian installation. This script from jamesh seems essential.

gtkmm and SUN Forte C++

I am still very concerned that I have no access to a SUN box with the Forte C++ compiler to fix the build issues. I guarantee that the Forte users will resurface a few days after the total API freeze.


I finally got around to putting gallery on my site so I can have thumbnail views of my photos. It was very easy with my hoster. Moving all of my old (boring) photos into gallery was tedious. Now is not the time to tell me that there is something better than gallery.

Leaving Comneon

Today is my last day at Comneon, where I've been a contractor/freelancer/consultant for the past year. This means sweet blessed freedom from ClearCase. ClearCase is failure.

The idea is to be in Munich instead of Linz, though I don't have anything lined up yet, and I'm not trying very hard. Don't bother sending email to murray.cumming@comneon.com any more.

This happens every year or so. Once again, I won't be very online for the next month, because I need to find an apartment and I will no longer have access to the company's DSL. But I will deal with the important stuff and you should flame me if I don't.


I noticed that dreamhost have added all kinds of features for free, including SMTP access and mail forwarding (to an account behind a proxy at whatever company I am at) and webmail (so I can see my email behind a proxy even when the company's exchange servers are down). So I have no more need for usa.net, though they've been very reliable for the past 8 years or so.

So, I'll now be using murrayc@murrayc.com, and nobody needs to think that I'm a Yank. murrayc@usa.net will forward to murrayc@murrayc.com for a while.


I'm pondering the idea of starting some small open-source-based company in Munich so that I have some hope of working on worthwhile projects in future. I like that using open source means that it's not a big disadvantage for a software company to be small, or even at risk of being short-lived, and that we could be honest about that. In fact, I think that the ability to have a more personal working relationship with a local software company could be a big advantage, particularly for other small companies.

At the start this would not be so different than freelancing, but it would allow me to have a company name that could build a small reputation and advertise itself, and it would allow other freelancer-type people to huddle under the same company name.

Of course this is insanity, sure to fail, but I for the last few months I haven't been able to get the idea out of my head. I keep thinking up marketing blurb that sounds both effective and convincing. The only thing that might save me is that it is impossible without finding other suitable developers in Munich. I think I'll see who I can find over the next few months.

29 Jan 2004 (updated 29 Jan 2004 at 20:13 UTC) »

blogs as tech support

If anyone knows what I need to apt-get to make my Dell Inspiron 8100 touchpad work with kernel 2.6 in debian, please email me. Apparently there's some new X driver that I need. Or maybe I'm supposed to configure it as a PS2 device.

Update: I received several answers, mostly involving installing a synaptic touchpad driver from source. But enveraltin showed me that I just need to add psmouse to /etc/modules, and that you can get it working quickly with a "modprobe psmouse" command. I think Jan Van Buggenhout was trying to tell me the same thing, but he vastly overestimated my understanding of these things.

154 older entries...

New Advogato Features

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!