Older blog entries for mjg59 (starting at number 33)

Dasher

Discovered that XFree >=4.0.2 includes keysyms for the entirity of Unicode. This isn't really documented anywhere. If X_HAVE_UTF8_STRING is defined, XStringToKeysym on anything looking like U0041 will give you a keysym in the range 0x01000000+unicode value. Assign that to a keycode and Bob's your uncle. Rewrote Dasher to use this in preference to the at-spi code (it'll fall back to using at-spi if X_HAVE_UTF8_STRING isn't defined, but currently it requires CVS at-spi and still doesn't work terribly well), and now I seem to be able to input arbitrary interesting characters into applications if I'm using a UTF8 locale. Hurrah, eh?

<Krystof> dasher and dashboard between them seem to have the zeitgeist sewn up <Krystof> maybe I should call my next project dashfoo

UKUUG was good - lots of enthusiastic people, food and drink. Despite my best efforts I didn't quite get to spend the entire conference hung over. Edinburgh still has too many hills. Entertaining to discover that their goth community appears to overlap with London about as much as the Cambridge one does, with the result that half the people I met I knew at one or two removes anyway (note: Not A Goth). Dasher talk went well, though I should really try to get out of the habit of rewriting chunks of the core code at 3AM the previous night (it works now, of course...) and no alphabetti spaghetti thrown at me. Mildly surprised to discover that there was a 3 page article on Dasher in Linux User and Developer. They've taken screenshots of the old, ugly interface. Grr to them. It's pretty good otherwise, though.

Devious thoughts involving trust metrics and Dashboard. I'm worried that I'm getting excessively close to winning buzzword bingo based only on my own interests.

forrest: Either your hardware is fucked or your X server is fucked. If you're using the binary Nvidia drivers, stop.

Gah. Must get up and head for Heathrow. Norwegian knowledge status: poor.

Dasher

Windows hacking this week. I'd rather be using an axe to do it, but never mind. This picture shows Dasher synthesising text entry events - this one shows Dasher controlling Visual Studio's menus. I'll probably make a new release in a couple of weeks after the next bunch of stuff is dealt with:

Other

Debcamp next week, Debconf at the weekend. I'm heading to Oslo on Sunday. Should try to learn some Norwegian, really. UKUUG at the end of the following week - I'm giving a presentation on Dasher there. Not sure which day yet. Maybe I should start thinking about writing a talk more than half an hour before I'm on this time?

Playing with Nat's Dashboard - first C# application I've had to build, so much fun in tracking everything down. It's alarmingly fun - this is a picture of what it looks like on my system. It's just pulled out an appropriate bookmark and a bunch of relevant files based on the username of the user who's just IMed me. Much, much coolness.

Gu4dec (continued)

Wednesday: Showed Dasher to even more people. Dinner with Debian and Gstreamer guys, pub. Beer. More beer. MORE BEER.

Thursday: Dead.

Overall: Quite massively fun. People like Dasher. Hurrah.

Dasher

Bill Haneman implemented the SPI_KEY_STRING method for SPI_generateKeyboardEvent in spi CVS, so I hacked that into Dasher on Sunday. It only took me 3 hours to work out that the reason it wasn't working was that I needed to kill the running accessibility daemon and start the new one. A-hahahaha.

Gu4dec

Saturday: Dropped bags off in the hacking room and met gman and jdub. Town for a bit, walked back from the station (ARGH VENDING MACHINES FROM HELL) and then bumped into a bunch of people heading for dinner. Then we went to the pub.

Sunday: Hacked on Dasher, demoed it to various people. Considered writing my talk. Grabbed food. Considered writing my talk. Went to the pub. Considered writing my talk. Wrote my slides.

Monday: Had breakfast. Considered writing my talk. Gave my talk. Decided not to bother writing my talk. Lots of questions, enthusiasm and so on. Some of the audience appeared to be very crackful. Lunch with Sun guys, enthusiasm for getting Dasher into 2.6 (it gives them an excuse to implement an accessibility control panel to choose the default text input method...). More talks, went to the pub with Debian guys.

Tuesday: Had breakfast. Went to talks. Hacked a bit. Lots more discussion about Dasher. Ximian party. In a pub. Beer. More beer. Good chat with nat about Dashboard and getting as much context as possible from users. Even more beer. Thrown out at 2:30 or so, wandered around with hadess and others looking for another pub. Failed. Bed.

Wednesday: Didn't have breakfast. Failed to go to talks. Hacked, failed to get the Zaurus talking irda usefully, showed Dasher to even more people. Pub forecast: Good.

In Dublin. Hurrah.

MUST. WRITE. TALK.

Sye: The new Zauruses use the Intel Xscale, not the x86. It's ARM compatible.

Spent 18 hours straight hacking on integrating Dasher with the GNOME accessibility stuff. It's a nice interface - the majority of the time was dealing with stupid bugs and wondering how the hell my test application ever worked. All sorted now, anyway. It's still missing basic features like responding to changes in the state of applications (if I kill a window, it'll become upset), but I can now quite happily choose menu options and the like from various applications. Screenshot at http://www.codon.org.uk/~mjg59/dashercontrol.jpg - this shows me controlling the applications menu in my panel.

It's been a while since the last update, so:

Dasher

Quite a lot of progress here. The Windows and Linux versions are now pretty solid. I'll be doing a new release soon to fix a few core bugs.

We've had a MacOS X port contributed by Doug Dickinson - there's a screenshot at http://www.codon.org.uk/~mjg59/DasherMacOSX.jpg - beta release out very soon, but the code is already in the CVS tree ( http://www.inference.phy.cam.ac.uk/dasher/WhatsNew.html).

I've got a version running as an input method on the Zaurus - see http://www.codon.org.uk/~mjg59/zaurusdasher2.png for it running under Opie on x86 and http://litux.org/bruno/photos/2003.06/2003.06.04/part_1.html for the same code running under an iPaq running Opie. I've played with it under Opie on the Zaurus - it ought to work on the Sharp ROM as well, so there's an ipkg at http://www.codon.org.uk/~mjg59/dasherinput_0.1_arm.ipk. If anyone does test it on the Sharp ROM, I'd like to hear if it works - flashing this one back and then dealing with getting stuff installed again seems like hassle and stuff. Note that it increases qpe startup time considerably, and I make no guarantees about it not breaking everything, but it works for me.

GU4DEC in a week and a half - I've submitted my paper, so should really get round to doing some slides. And fixing the code that I'm demoing. Oh well, fun ahead.

We've got someone turning up for a summer placement next week, so I also need to implement the stuff he'll be working on. Further excitement. Dasher is surprisingly usable with switch input, so I need to code up sufficient support for him to be able to test different layouts and work out what's optimal.

I'm meeting someone from MSR to discuss getting the WinCE port current again. Shouldn't actually be a great deal of effort. Once that's done (and the GPE version builds again) the only interesting platforms we won't support will be Palm and Symbian. A friend in the CL next door has just got hold of a P800 for investigating security stuff, so I may look into that. I guess there's a large number of potentially interested Palm developers out there, but I've got no idea how to find them - my last Palm hardware was sufficiently old that the screen really wasn't up to running Dasher on it, so I'm not in a great position to do it myself.

Debian NetBSD

Have hardly had the time to touch it. Still weird toolchain stuff on Sparc. With a bit of luck I'll be at Debconf and we can hammer out some of the issues.

Cambridge

Have a PhD offer for next year, so back to "real" academia (and somewhat less money) for me. Cambridge really is lovely at this time of year if you're not an undergrad - the tourists haven't turned up in full force, the undergrads are all off revising, and it's pretty and stuff. Or it was until the weather started pissing stuff down again.

24 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!