27 January 2002
Skyshow
Went to the Australia Day fireworks on Saturday night. I cycled into the city to see them, which was worth it (didn't get stuck in a traffic jam -- just had to dodge pedestrians on the way home). The fireworks looked so much better in the city (I went just a little past the narrows bridge). There were fireworks being let off the tops of the buildings in the city, off the narrows bridge, and off the barges in the middle of the river. At one stage, some small tough-ducks were driving past about 50 metres away and letting off some smaller fireworks. One of the embers from these smaller fireworks landed about 2 metres away from me! (on the esky belonging to someone sitting nearby).
Sony NEWS
I have been looking at reviving an old Sony NEWS NWS-1580 workstation. This is from a line of 68030 based unix workstations made by sony in the early 90's. It had been left off for about 5 years, so wouldn't boot at all. Apparently the problem was with the battery on the NVRAM chip, so I will try and get a replacement for it (its an MK48T02B-25 chip, which was also used in a number of Sun boxes). While I had the system open, I decided to take a few photos of its insides:
While searching for information, I ran accross the NetBSD/news68k FAQ, which gave a button combo to press to boot a system with a discharged NVRAM battery, or new NVRAM chip. Using that combo, I was able to get the system to boot NEWS-OS 3.3 (a BSD-4.3 derivative).
Once the system is running nicely, I might look at transfering the OS off the 180MB disk onto a spare 2GB SCSI disk I have (provided I can find the installation tape). I could probably fit two 3.5" disks into the space the current 5.25" disk takes up, which would mean I could put NetBSD on it too. I can also fit in another 8MB of RAM, which should be helpful (it takes standard 8 or 9 chip 30pin SIMMs). I will also look for a AUI -> 10Base-T tranceiver, so I can hook the machine up to the network (6 COMM ports can only get you so far ...).
Python
On the PyGTK development side, we now have bonobo bindings in CVS, using jdahlin's orbit-python bindings for ORBit2. We now have support for libbonobo, libbonoboui, bonobo-activation, nautilus views and panel applets (most of this work is thanks to jdahlin).
I have also been looking at doing some automatic signal/property documentation for GObject wrappers. Rather than calculating all this documentation up front, I decided to use the cool new descriptor support in Python 2.2. This is essentially a generalisation of the rule that maps functions in a class dictionary to methods on instances. Rather than this being a special case in 2.2, functions implement a tp_descr_get() function, which gets called asking the function object to return itself in the context of the instance. This generalisation has made it trivial for support for static methods, class methods and properties (objects with setter/getter functions) to be added to the language. I used this for my automatic documentation hack. I set __doc__ in the class dictionary to a special object, which implements the tp_descr_get() slot. The tp_descr_get() slot looks up the information when instance.__doc__ or class.__doc__ is requested and returns it.
This worked great for the instance.__doc__ case, but class.__doc__ was always returning None. On further investigation, I found out that this was caused by the type.__doc__ property descriptor ("type" is now a new style class, rather than just a function for getting the type of an object. It serves as the standard metaclass), which took precedence. I have a patch for python now that gets rid of the property and makes __doc__ on new style classes work more like old style classes (and lets you have unicode doc strings as well).
The upshoot of this is that typing help('gtk.Widget') lists all the signals and properties of gtk.Widget (provided my patch is applied).
linux.conf.au
I am going to l.c.a next week, which should be a lot of fun. Looking forward to meeting everyone there (including gman and malcolm). Looks like I will be fixing up my grandmother's Windows XP box while I am over there as well.
GUAD3C
I submitted a talk proposal for GUADEC 3, so it
looks like
I will have to write up the paper. The talk will be on
writing GTK 2.0 and GNOME 2.0 applications with Python.
Looking forward to a free trip to Spain :)
.