This is my (in)activity log. You might like to visit my employer
SUSE which is an amazing company, and also
Dell who in days of yore provided me with a
free laptop for Gnome development / conferences.
Also if you have the time to read this sort of stuff you could enlighten
yourself by going to Unraveling Wittgenstein's net or if
you are feeling objectionable perhaps here.
Stuff Michael Meeks is doing
Prodded mail, rather a nasty sore throat coming on. Visited
Bert to reset his circuit-breakers. Call with Christian & Kendy.
Poked at and fixed gtk/broadway so it doesn't leak / jam modifier
key state with v7 websockets, submitted to openSUSE:12.1:Update:Test.
Pleased to see Stephan's lovely configmgr
API cleanup, that should let us make configmgr access even more
efficient in the future, as well as being much simpler and more
readable now; nice. Of course, also an easy-ish task to help out
with: dunging out much less pleasant, old code in this area.
Horribly frustrated by cups, not only does it insist on
pausing the (network) print queue whenever something prints, but
finding the un-pause setting [ incidentally hidden in one of two
combo-boxes in the printer maintenance page ] was extremely
non-intuitive. Filed misc. bugs, eventually got something working,
it seems adding
is a good idea.
Clobbered some gtk3 theme color issue. Poked Lowell,
Ciaran, Gerald. Sync. with Martyn. Dinner with the parents.
Hacked on this & that, sat by the fire chatting to the
parents and poking android emulators until I got some.
Up, practises, babes off to school. Chewed mail, out to
a funeral of Jane Hancock (Dave's wife), back to mail, tripple (and
more) patch review etc. Admin / status report writing. Lunch.
Poked at the ClamAV signature databases, found main.avd, then
dug around for the source for them. Poked Ciaran, chat with Simon.
Dinner, Dave around for Bible study & catch-up, good chap.
Woken by babes being noisy in the morning; off to NCC,
Tony speaking. Had Justin & Karen back for lunch & sat
by the fire with them for the afternoon.
Babes had a Marx (Engels, Groucho, or & Spencer?)
movie while we tidied up, played with & then put babes to
bed. Hyperactive slugging in the evening.
Up late, breakfast. Pair of Jehovah's witnesses around
for an hour of interesting, and widely ranging dialog
& friendly discussion, on the 144,000
for example. Or why the inspired authors of scripture
the tetragramaton as kurios: lord etc. and whether 'name' is
rather more of a profound concept of identity and goodness than
even a profound label can be.
Checked mail, Sue, Clive & family arrived, then
Bruce & Anne on much improved form, eventually Auntie
Louise. Big family, birthday-time lunch.
Anthony & Tim arrived from the cricket later, in
time for H, N, and M's trio. Good to catch up with Tim a little
Sandy arrived to baby sit, out to the Pregnacny Crisis
Quiz - happily heavily over-subscribed; 65 participants, had to
use the creche tables ourselves; much fun (quiz, and puddings)
had by all. Bed late.
Up, mail chew; pleased to see three guys interested in
porting LibreOffice to OpenIndiana (using gcc), poked at misc.
bugs. Started working on talk about Easy Hacks for FOSDEM,
cleaned up the wiki page. Sudden inspiration for android -
pushing all rendering to the main thread; failed - still
inexplicably hangs in ANativeWindow_lock.
Switched to use EGL instead eglLockSurface - runs
beautifully, returns no errors, and a NULL pointer from
eglQuerySurface(...EGL_BITMAP_POINTER..) - stymied
again. On to trying
glTexImage2D - surely that
will get a lot of pixels to the screen fast, lots of error free
gl calls, with a blank screen to match; hmm.
Out for a run, read stories, fish soup for dinner (to
assist the brain), started adding sample rendering code through
the startup process to see where it goes wrong, and reviewing
patches in the idle cycles.
Up extremely late, eventually discovered that the
problem seemed to be caused by not processing (unexpected)
events on the thread's
ALooper - which causes
aforementioned lockup; nice - finally an up-side-down,
wrong color, no font VCL error dialog windows.
Up early; practise with the babes, back to the window
locking oddness. Nice post from Fridrich on making
the best of FOSDEM.
Managed to get some pixels onto the screen eventually,
team meeting, ESC call, Vojtech's staff, pixels no longer going to
the screen: meetings are like that it seems ! Dinner.
Switched to EGL rendering to attempt to retrieve pixels
from locked up system, no joy there either but more interesting
errors. Setup a new cppunit git repo on freedesktop for Markus,
apparently it is unmaintained & we really need more features.
Chewed mail, quick call with Vojtech, then Charles. Finally
got around to submitting a LinuxTag paper or two. Lunch. More mail,
J. out for Rosemary's leaving pizza party. Up extremely late
poking android's wedging on ANativeWindow_lock - sadly the debugger
gives no trace: an thread un-attached to the VM ?
Up early, misc. mail chew, question processing, patch review,
re-building action etc. Inched through more startup problems, Lunch.
Chat with Kendy, more mail cleanout. Lydia over for dinner.
Up late hacking android main-loop pieces with Tor.
Mail chew, read the git commits over the weekend.
Call with Simon, improved the LibreOffice donation page
to include a nice image rotation.
Misc. android hackery - got past several unpleasant
roadblocks in the UNO bootstrapping. Reviewed slideware.
Dinner, babes to bed. J. under the weather, but out to a
meeting. Back to the hackery - started on the first-start,
user-installation creation code.
J. dropped me to NCC to practise with the band, service,
Thea spoke. Back for lunch with Keziah over. Out to a service of
Christian Unity in the town. Back. Played games, lazed on the sofa.
Tea, told stories to babes, put them to bed & read more stories.
Sermon from Hugh Palmer, silly Naked Gun movie, bed.
Up earlyish, H. and N. off to Bury to do music & book
buying. Cleaned the house up, hacked a bit at some androidish
pieces: discovered some problems with unit tests not being
Lunch, Mary Rogers over in afternoon, sat by the fire and
played with babes. Lydia over in the evening - more hacking at sal/
stopped readLine corrupting/writing to it's input buffer and
crashing and fixed misc. build issues.
Chewed mail and misc. vcl fixing - and finally calc unit test
runs to completion on Android (great work from Tor); getting the process
slowly better documented in
README.Android and no pixels yet of
course. Chat with Simon, then Charles.
FOSDEM Devroom Schedule went live - a really great set of shortish
talks (to get the most grist we can into eight hours) and some great speakers,
I'm really looking forward to it.
Planned my day, interspersing the tedious stuff with fun hackery, so
that at least -some- tedious things get done. Lunch.
Filed a few more easy-hacks
around cleaning up the horrible old
tools/ - a duplicate system
abstraction that still malingers underneath LibreOffice. Hid a few more unused
locking methods in SvStream, and made the FSysRedirector more obviously a no-op.
There are big blocks of easy-to remove cruft in tools needing a beginner or two.
Poked mail, fixed misc. build problems, poked at and
spent the morning extending the tools/ stream abstraction also
fixing some build issues. Nice to finally get some hacking done.
Chat with Jonathan, lunch, SUSE team meeting, LibreOffice
ESC call, Vojtech's staff, discovered I'm late at my travel budget
Pondered the LibreOffice team. There is one set of very
skilled hackers that perhaps people don't notice. As of today, we
have quite a chunk of people working full-time on LibreOffice that
used to be on Sun's OpenOffice.org team (in order of migration):
seven guys: Caolan McNamara (RedHat), Noel Power (SUSE), Thorsten
Behrens (SUSE), Bjoern Michaelsen (Canonical), Stephan Bergmann
(RedHat), Eike Rathke (Redhat), Michael Stahl (RedHat) - making
(I think) the largest concentration of full-time ex. StarDivision
hackers on any project with a nice cluster in Hamburg still. It'd
be great to grow that list of course.
More hackery and build fixing; late call with Camilo.
Read babes stories, J. out for a run, final emulator hackery
Up lateish, call with Vojtech. Dug through the mail, until
finally, in the afternoon - got to a little Android hacking; fun.
In connection with the somewhat irritating MS Office 2010
issue I mentioned
last Tuesday, I was somewhat startled to see Rob Weir change tack to a
attitude about standards:
I have no wish for the ODF standard, like the US Constitution or the
Bible, being used as an excuse to justify stupidity. ODF is a
specification for document exchange.
If you are using it in a way that decreases interoperability then
you really need to step back and ask yourself if your literal
interpretation really makes sense.
Of course, amazingly the implication is that it would be
'stupidity' to follow the spec.
and produce documents that are valid
ODF 1.2 (as LibreOffice 3.5, and the Apache OpenOffice 3.4 pre-release builds do.
Then we have this gem:
If a program does not meet user expectations then it is a bug. If you
want to be compatible with Microsoft Office then you need to play by
their rules. ...
This is really a deep & rich lasagne of irony, I'm really trying
to work out which bit is most tasty, could it be - first the aggressive,
purist, open-standards champion advocating deliberatly writing non-conforming
output, and making ODF 'play by' Microsoft's rules ?
Or - could it be the fact that (apparently) the TC chair hadn't
bothered to validate or test changes to his standard in 'real world'
office suites, but rather prefers to deflect attention at
'woefully inadequate QA' to a single implementor: LibreOffice.
Or finally could it be that he hasn't noticed that his own
Apache OpenOffice implementation actually does the same thing.
Hard to choose really; mystifying; checked colour of the moon to
make sure: apparently not blue.
In any case Seeing responses like this from LibreOffice makes be
very optimistic about the future of Apache OpenOffice. Whatever
the cause, the fact that LibreOffice ships with this problem shows
either a woefully inadequate QA program, or total indifference to
real world requirements. Even testing a single LibreOffice document
in Office 2007 would have shown this bug. Is that too much to expect?
Of course, personally, I'd love us to have a good solution
that ensures maximum interoperability while conforming, no doubt
we'll find some way to work out what that is in the end. It is
clearly not just as simple as removing that single version
attribute: forwards compatibility is somewhat tough - but starting
with backwards-compatibility is prolly sensible. Since ODF 1.2 is
not completely backwards compatible with 1.1, knowing what the
version is is rather useful for correct interpretation.
Emily & Sarah around to read stories, share dinner
& sit up late to chat - lovely to spend time with them.
Crawled from bed, practise with babes, rapid
mail triage, into Cambridge for interview at Sticky Beaks,
dropping obsolete computers & electronics off at reboot on
the way - somehow I feel like I lost something; the CPU
count is substantially down, but cat swinging is possible.
Lunch & home.
Dug at some bugs, Roger W. kindly dug out a PPTX test
document to isolate a performance regression. Put babes to bed,
Lydia over for dinner. Chewed through getting the LibreOffice
dev-room schedule into Pentabarf, phew. Poked mail, worked
Up early, mail chew, patch review, license statement collation
in the wiki. Chat with Holger. Lunch. Split out multi-screen / display
fixes and back-ported to -3-5. Poked at detecting old file-systems to
avoid fsyncing on them.
Dinner, put babes to bed, call with Pete ,
Up; off to NCC, Tony speaking on Truth. Back for lunch,
lazed around, out to a Baptism (or two) of Charlotte & Jane.
Back for more slugging, watched some Marx brothers comedy.
Put babes to bed, tidied the office with J. while
listening to a Rico Tice sermon on Psalm 1. Dunged out lots of
obsolete electronics and boxes of things no longer needed in the
Up, took H. to try out some choral and brass music
lesson / practise goodness in Bury; hacked away at multihead
work while there. If only we didn't have two types of integer
indexed screens, both called 'screen' in the code, with tangled
nomenclature everywhere. Started to push through some big cleanups.
Home for lunch, tidying and prepping for Naomi's party.
Helped games: guessing things in pots from the smell, pass-the-parcel,
party food, and expended a four-year-old box of fireworks from
my parents - lots of smoke.
Put babes to bed, back to hacking multi-display issues.
Up early; walked babes to school. Chewed mail, watched
Bryan M. Cantrill's Lisa talk on Illumos,
it's always nice to listen to someone that gets it - Solaris
users look like they'd do well to switch to Illumos (to me).
Particularly amused by his take on Apache as a template (27:00),
Oracle (34:00), the closing OpenSolaris (41:30) and more; wow.
Mail, patch and bug bits, lunch. Spent the afternoon
working away at a vile multihead bug of my own creation around
the gtk3 port busting gtk2 as well. Worked late.
Mail chew; poked at systemd socket cleanup again, a new
attempt at beautification, more mail, patch review and misc. bugs.
Estate Agent came over to value the house.
More mail, patches. Team meeting, TSC meeting, wrote
up minutes, worked away at FOSDEM dev-room scheduling - an
encouraging set of speakers this year, really looking forward
to meeting up with them.
Emily kindly over to baby sit for us; J. out to
swimming with Miriam; out for a drink & an Indian meal
with J. - lovely.
Mail, call with Vojtech, another with Pierre-Yves, dug at
my systemd tmpfile cleanup issue sent off a patch. Lunch. Call with
exciting to meet so many interesting & helpful new French people.
Out to cell group in the evening, good to catch up with
the crew after a long break.
More mail, and admin. Surprised and saddened to see that MS
Office 2010 has a built-in allergy to ODF 1.2.
Worked through a FOSDEM interview.
Lunch, call with Tor, a little hacking, chat with Philippe
Desmaison. Dinner, Lydia & Janice over. Spent some time struggling
once more - trying to get simple VCL samples to run: once again the
endless life-sucking experience of UNO bootstrapping.
Chewed mail, poked at the perennial fsync issue, chased my sudden
socket death issue - it seems our compile doesn't kill the sockets. Wrote
status report & other monday admin.
Dumped graph, booked FOSDEM travel arriving midday on the 2nd,
leaving midday on the 6th. Out for a run, dinner, J's pregnancy crisis
group over. Prodded at the android sdk/ndk with some success, and tried
to get Eclipse installed, despaired of my inkjet, and bought a color
One of the unfortunate things that LibreOffice inherited, as part
of the several decades worth of unpaid technical debt, is unused code that
has been left lying around indefinitely. This was particularly unhelpful
when mingled with the weight and depth of the useful code we have around
the place. Caolan McNamara of RedHat wrote a beautiful tool callcatcher that
identified these unused methods, and in recent times in LibreOffice we've had an unusedcode.easy
file in our toplevel with a list of methods that should be removed. It's pretty
easy to find and expunge a method or two, with a quick
and dropping a patch to the developers
mailing list. To escape from a pile of administration recently, I knocked up a pretty nasty
perl script to parse the git numstat output, to see how we're doing. That
produces a fun graph:
It seems that over half of our unused code has now bitten the dust.
Uunfortunately as we remove more, more wasteage tends to be revealed, which
explains some of the upward jumps in the graph, nevertheless the trend is
clearly down. One of the side benefits of the unsung heros working at the
conversion of our old-style macro driven generics to modern STL is that
this looses us several unused methods per class converted.
If you want to get involved with LibreOffice development, it
doesn't get much easier than this - please do check out the code
and have a go. For the more adventurous finding an unused destructor,
without a matching unused constructor is proof of a leak that needs
chasing, of which there are a handful.
Failing that, why not run Caolan's callcatcher over your project
to see which nooks and crannies are surplus to requirements.
NCC, Tony spoke on the Way - back home for lunch with
Claire, Simon, Phoebe & Tally good to see them. Andy & John
Madden around for dinner (the latter sadly moving away to Exeter
tomorrow), spent some time writing up some chunks of his interesting
Lazy day, slugging, and lots of house cleaning preparing
for a valuation; amazing amounts of 'stuff' get stuffed everywhere
over time. Ruthlessly pruned baby bits, sorted many workshop items
cleaned all those potential metal splinters out of the zone. Out
to Newmarket Open Door to drop things off, business until late.
Up early; mail chew, into Cambridge for Lunch, back,
wrote LXF column, chased some tango / artwork licensing.
Dinner. Interested to read about the future of CouchDB.
Built some tooling to generate statistics on our dead code
Up early; more mail reading and backlog unblocking. Some
patch review, commit account creation, and account management.
More slog; team meeting, TSC meeting, posted minutes.
Chat with Ross, built some stats. Dinner.
Tried to buy Deutche Bank Ethical ETF's (listed on the
LSE interestingly) using Barclay's wunder-trading website.
Seemingly not possible - it appears they list only some subset
of funds they happen to like - que ?
Last day of the holidays; frantic tidying, cleaned out an
unpleasantly blocked U-bend, fixed the heated towel rail, re-attached
a malingering door-handle etc. Lunch. Tried to dig a tiny metal
splinter out of Hannah's foot (most odd) with no real joy.
Pollyanna in the evening, and tax filing afterwards.
Up earlyish, off to Bruce & Anne's, nice to see them.
Lunch, out for a walk on Aldeburgh beach, unseasonably temperate,
and queues for fish & chips - amazing. H. feeling unwell.
Caught up with David M. in the evening.
Up earlyish, drove to Hertford, preached, talked afterwards with
some interesting people; back to Helena & James' for lunch with Rose,
Mike & Anne - lovely food, fine company - home late.
My content in this blog and associated images / data under
data/ directories are (usually)
created by me and (unless obviously labelled otherwise) are licensed under
the public domain, and/or if that doesn't float your boat a CC0
license. I encourage linking back (of course) to help people decide for
themselves, in context, in the battle for ideas, and I love fixes /
improvements / corrections by private mail.
In case it's not painfully obvious: the reflections reflected here are my
own; mine, all mine ! and don't reflect the views of SUSE, Novell, The
Lithuanian Gov't or Arnold Schwarzenegger. It's also important to
realise that I'm not in on the Swedish Conspiracy.
Occasionally people ask for formal photos for conferences
Michael Meeks (firstname.lastname@example.org)