This is my (in)activity log. You might like to visit
Productivity a subsidiary of Collabora focusing on LibreOffice support and
services for whom I work.
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. Failing that, there are all manner of interesting things to read on
the LibreOffice Planet news
Stuff Michael Meeks is doing
Discovered that it's possible to avoid the boot-time hang
worked around by adding
vga=792, which in turn allowed fglrx to finally get
itself sorted out and bingo a mostly working linux laptop.
Lunch; several interviews back to back; chewed through
some conference pieces. Discovered that the mail address on my
TDF business card was going to
Catch-up with work backlog; estimation; decided - in the
absence of any ACPI / brightness control on the CZ-28 to use
VirtualBox under Windows to run Linux; setup 4 CPUs, and set
about installing until hitting Buffer
I/O error while rsync'ing, zypper si -d libreoffice etc.
concurrently; bother - back to getting Linux to boot.
Up early, mail chew, text fiddling. Lunch. Not terribly
convincing to get a letter from your bank saying: "Thank you
for standing by us during some of the most difficult times in
our history" (the Co-op bank). Partner call. Finished
writing and posted reponse to the UK / Cabinet Office
The UK Government has solicited feedback on its (excellent)
proposals. I've published my response here too
to make it somewhat more legible.
I was profoundly encouraged by the depth of understanding
underlying the Cabinet Offices' recommendation to use ODF for the
default format for saving UK Government documents, which I support
enthusiastically. It can be viewed as HTML here:
- I was a Novell Distinguished Engineer, and Novell's
representative on ECMA's TC45 during the initial OOXML
standardisation work; however I do not speak for Novell.
- I serve on the board of The Document Foundation who
but don't speak for them here.
- For much of the last decade I lead first Novell, then
SUSE's engineering team on OpenOffice then LibreOffice.
These teams did significant work on both ODF and OOXML.
- I am now General Manager of Collabora Productivity
a UK based SME focused on enterprise support of LibreOffice
in addition to development consulting around the product.
- I'm a UK citizen.
- The requirement to share information in ODF is a great
strategic choice for the UK government; I wholeheartedly
support the recommendations here.
- The emphasis on other open, or trivial formats for exposing
information to customers in forms that are susceptible to
easy analysis, scripting, etc. is great. Formats such as
CSV, TXT and HTML provide an ideal form for users to
consume government data.
- I believe that browser based editing is and is likely to
remain immature, and thus the recommendation of ODF for
information sharing by traditional means is an ideal
- By mandating ODF, no user will be required to purchase
software to have a high-fidelity interaction with
their Government. This is not only due to the presence
of excellent zero-cost ODF implementations, such as
LibreOffice, but also a smaller scope of document
features which ensures that multiple high-fidelity
implementations are possible from various vendors.
ECMA, TC45, and OpenXML standardisation
- As a member of TC45, the remit of the committee producing
ECMA-376 was emphatically limited to: full compatibility
with the existing Microsoft XML file format as submitted
i.e. it was a pure documentation task.
- As such, frustratingly, no significant changes to the XML
representation were possible, despite trivial changes being
desirable in several instances. The scope made it possible
only to improve the documentation of Microsoft's submission.
- Large numbers of features in an Office Suite require their
data to be stored in the file format. As such, it is possible
to read a file-format description as a set of Office Suite
features and capabilities.
- ECMA-376 is one such, extremely detailed, and amazingly
comprehensive specification of a single vendor's
feature-set and implementation in Microsoft Office.
It codifies innumerable behaviours of a single proprietary
- Such was the remit of the ECMA TC.
- As an aside, this is no bad thing. It is useful to have an
extremely detailed specification of Microsoft Office.
Microsoft is to be commended for releasing that, and indeed
moving to a more open, XML based format. It was enjoyable
and worthwhile engaging with Microsoft in good faith and
working together on the best possible disclosure of information
relating to those formats. Microsoft applied some excellent
and dedicated engineers to that process.
- Having said that, the result, as continued into the derived
ISO standard (even in 'strict' mode), and as circumscribed by
the remit of TC45 is an emphatically partisan description of
the feature set of a single vendor's implementation.
- As such, those who mandate high fidelity interoperability
between document editors using such a standard are essentially,
as of the present time, mandating the use of Microsoft Office.
- This is due, primarily, to the very significant engineering effort
required to get a high fidelity implementation of the standard.
- While this is something that LibreOffice participants continue
to invest heavily into, with a reasonable degree of success,
building on a legacy of Microsoft investment in that work; it
is still the case that significant areas of the OpenXML standard
find no supporting implementation in an Office Suite anywhere
outside of Microsoft Office.
Open Standards and avoiding vendor capture
- Having seen how it is possible for a vendor to use the
ECMA/ISO fast-track to essentially standardize every detail
of their own implementation it is then interesting to contrast
that with ODF.
- Clearly ODF has a heritage rooted in the OpenOffice code-base,
however the work of the ODF TC at OASIS is emphatically not one
of describing a single vendor's existing implementation.
- Instead at OASIS the standards process is truly open: multiple
Office Suite implementers (including Microsoft) provide their views
on everything pertaining to document representation. Everything
is on the table for discussion, change and improvement in ways
that impact both the textual specification, but also the
implementations of that standard.
- In addition the ODF standard is itself significantly simpler and
as such is far more susceptible to implementation; in
consequence fostering constructive competition.
- This is popularly reflected in discussions of the contrasting
size (in pages) of the competing specifications. Each page
can be seen as requiring significant corresponding development
work to implement the feature with a high fidelity.
A language analogy
- The structure and content of both ODF and OOXML documents
is described using what is ultimately an XML language.
- As such, it may be interesting to compare the OOXML standard
Greek' - a highly inflected, extremely complex
language which, to add insult to injury is frequently written
in capitals with no inter-word spacing.
- Aside from those who have mastered the delightful
intellectual challenge such a language presents, its full
depth is sadly inaccessible to many.
- ODF in contrast could be seen as more of the 'English' of
document content standards: taking inspiration and heritage
from many different languages; it is significantly simpler
to learn, and communicate with.
- The UK Government laudably works hard to present document
content in 'Plain
English'. Transposing this same concern for
wide accessibility into the underlying document structure
would be an appropriate way to extend access to all technical
format consumers and producers.
- The argument that a large number of existing documents are
structured in an unfortunate and vendor specific form should
be an imperative to speed their transition to something more
accessible; not an argument for retaining the status quo: where
a veneer of document interoperability is achieved by using
a single vendor's product.
- The translation analogy has a further application - which is
that of needing an authoritative version. It is good to allow
users to request documents translated into other formats in
response to a specific request. As with any translation though,
it is important to have a canonical original document format
which should be ODF.
The importance of ODF as a single document standard
- An important role of standards is to enabling genuine competition
in this important space, which in turn can drive down cost.
- By mandating only ODF, this benefit will be realised, via a widely
based, open standardisation process with input from many
implementers and consumers of productivity software.
- While a request for standards 'choice' by including OOXML seems
superficially attractive, adding OOXML would be to remove the
requirement for a truly open, vendor neutral standard.
- The existing proposal does not fall into the trap of re-inforcing
the status quo by allowing a vendor specific standard with only
a single high fidelity implementation.
- The existing proposal already wisely provides users with the choice
to request a translation of their document to another format.
- Encouraging individual Government departments to make a choice for
their users of a standard that would require users to have expensive
software that can handle any of the significant, and often arbitrary
complexity of OOXML documents would be unfortunate. Indeed that
would nullify any competitive benefit of a truly open standard.
- This can, perhaps, be seen in the MOD's aversion to ODF, despite
this being an accepted NATO standard for document interchange.
- As such, I believe that the impact of arguing for a 'choice'
of standards in itself leads to a lack of choice. It is by far
preferable to have a choice of implementations of ODF.
Macros expose implementation details
- While I agree that simple macros often form a useful part of
document workflows, macros are typically profoundly problematic.
As such it is great to see the requirement that: "Macros should
be avoided wherever possible, particularly when sharing documents."
- While LibreOffice provides reasonable support for simple VBA
macros, and naturally has built-in Python / Basic and other
scripting support - these are not standardized in either ODF or
- In the case of VBA inside OOXML macro enabled files, the
macro text is stored in several binary streams with partially
documented formats, making the round-trip interoperability of
macros extremely problematic.
- Macros, as programs, tend to propagate very significant details
of the specific implementation of a given document format and
its structure in various ways.
- Limiting the requirement to use Macros in documents for
interchange wherever possible is to be applauded.
- Textual macros are usually rather better from an interoperability
perspective than operating system specific COM and ActiveX
components that can be embedded into OOXML documents.
Device and platform choice
- ODF is usable across a large number of devices and platforms
- LibreOffice has an excellent ODF implementation supported on
Windows, Mac and Linux, it also has promising prototypes for
iOS and Android; although other ODF applications are available
for mobile platforms.
- LibreOffice is also provided by Roll-App as a browser based
on-line office solution for other operating systems and
device form factors.
- In conclusion, the Cabinet Office's proposals have great merit,
are balanced and well rounded.
- If implemented, they would allow Officials within government
to work efficiently, while ensuring that Users do not have
costs imposed upon them.
- It is my belief that these proposals, when implemented will
also stimulate investment and innovation around the Office
Productivity space, and exceed the expected benefits.
Up early, music practices; packed babes off to school; drove
into Cambridge with Italo; met with Tim, Doreé mail chew, built
ESC bug stats, filed bug, reviewed text etc. Back & out for
a curry dinner with the lads from Church.
Up; off into Cambridge with Italo to visit the office;
caught up with Tim briefly. Meetings, and calls with the team
and/or partners for much of the day. Back for some fine Italian
good (thanks to Italo) with the family, chatted through the evening.
Off to NCC, Roy spoke; dropped babes at a party, and back
for a light lunch with just J. Sandy & Daniel over for a bit,
good to catch up. Italo over in the evening for dinner, talked
with him in the evening.
Up late; various slugging, off to Noughton Park for a picnic
lunch in the sun with the family. Back to meet up with David, improved
M's bedside light; disassembled the Sparks coming out of it
Dyson, and ordered some new brushes; roast dinner, enjoyed catching up
with David; bit of work before bed.
Up lateish; mail, read Microsoft's response on the Cabinet
Office proposals on the use of ODF; profoundly un-persuaded.
Encouraged to see Simon's
take. Lunch. Noticed the 4.3 MAB tracker, and added support for
that to my bug stat generation tool.
Up; quick mail check etc. Out to Thetford forest for a break with the kids;
met up with Clara & babes, wandered the forest trying to keep tabs on six
little people; fun. Picnic lunch in some drizzle - very English; more playing, E.
covered in mud but cheery; home. Back to the mail pile.
Up early; mail chew, poked at a profile in some detail.
Lunch, partner call. Positive first board call at some length,
getting the various pieces necessary into place. Bed early.
Up early; mail chew; submitted a conf. abstract, more
mail chew & more production, 1:1 with Philippe. Estimation
call with Kohei, Markus, Kendy. Dinner. Back to mail,
paperwork, created a cut-down test doc for an odd
Up early; poked at mail; Product team call, Consulting
team call, reviewed text. Bible study in the evening with Arun
& Dave; fun.
Up late; off to church, on to GenR8 to pick up H. and N.
after a short service, fun. Home - babes tired, watched movie.
Nigel & Sue over from next door - good to get to know them.
Put babes to bed, set too dealing with a flooding dish-washer,
followed by an amazing experience of the amount of crud you can
rod out of a 4" pipe.
Up lateish; mending around the house - rather pleased with
the new LED light-bulbs with machined glass diffusers; finally some
non-alien-dissection lighting at low power too. Bought another roll
of fibre-glass insulation, this time made from recycled bottle - so
rather an interesting set of colours.
Up early; mail chew, poked at some bugs, great to see
Stephane Guillou making such great progress migrating our old
MAB tracker and re-testing remaining issues. Finally isolated
my firefox crasher as a Mesa driver calling '_exit' fun.
Collected babes at Friday Club, H. and N. off to GenR8
in Cambridge. Encouraged N. to stick it later in the evening.
Up early; plugged away through E-mails, my life is a
writhing mass of text, with not enough code in it, why is that ?
Up early; new laptop arrived - started to set it up. Booting
fails under openSUSE 13.1, so got a Windows build going instead;
some fast AMD processors to burn through the code - nice. Got a build
going there eventually - unfortunately our unit tests get broken by
windows's virus checker.
Up early; boggled at my E-mail variously; built ESC bug
stats and prototype agenda - encouraged to see a drop in
regressions immediately after release.
Up early; mail chew, team meetings; partner calls, built
Up lateish; off to NCC, did a more detailed study with the
older kids downstairs; home for a quick lunch, babes out to a party;
read Jeeves & Wooster to N. Mended fence on the brink of collapse;
applied slugging left & right. Bed early.
Up lateish, tidied the house, peeled carrots etc. Pleasant
deluge of family members over for a birthday-present exchange and
lunch. Good to catch up with all and sundry. Played with the Xbox
One (a gift) in the evening, current selection of games in the
store appears somewhat unsuitable for young ladies, OS is odd,
Up early, practise with babes, back into the routine; mail chew,
worked through a largeish backlog of pending tasks; finally getting some
documents written, poked at Linux Format column. Call with Kendy & Andras.
Woken early by a text; mail chew, back to the conference,
meeting, more pacing of the halls etc. Eventually de-constructed
the stand - lots of smallbits of electronics around the place;
managed to get to Schipol eventually despite the crazy train
ticket machines refusing VISA cards - apparently this is a
feature. Plane (Darwin to Cambridge) delayed by an hour. Finally
got home. Lovely to see the darling wife & kiss sleeping babes
Up too early, set off to Amsterdam, worked on the train with a
rather intermittent internet connection. Finally got to Amsterdam RAI,
and caught up with Scott, Guy, Jeff & Patrik at the booth. Wandered
the show floor - lots of interesting things; misc. meetings.
Back to Guy's fine appartment, and out for some pleasant dinner,
back for hackery and bed.
Up early; breakfast, off to the venue - mail chew. Interested
to see the Eclipse 10'th Anniversary - interestingly, I was under the impression that
GNOME 2.0 started its very time-based release train in 2002, one of our
many accomplishments there (no doubt we were inspired by others); but it's
good to see a growing consensus on the benefits to communities of that. As
for their take on "... also making sure that the community is still
represented in the governance" - I was hoping that someone would have
time to explain at the wikipedia
article the content of the governance documents in
brief / plain English.
Interesting presentation; lunch, talks with UI guys, pushed slides.
Caught up with more hackers, bid 'bye to some fine folks; worked with Ahmad
on a weird bug - an uninitialized memory access, and then with Miklos on
tracking the very strange git behaviour seen in the log of that.
Up; breakfast, off to the LibreOffice hack-fest, very kindly
hosted by Beta Co-working at
their beautiful office space. Got everyone setup, icecream building,
and managed to squeeze a few more than then 20x person limit in.
Worked on a few annoying UX bugs afflicting myself and others,
Print buttons, a calc / sidebar tweak, and cleaned some code up; fixed
sheet sizing in calc (a perennial annoyance for me). Back to the
Up later; breakfast, to the venue, booth lurking, chatted
with a lot of interested people; handed out stickers variously.
Caught up with the openSUSE guys, good to see scarabeus and hear of
Richard's new role; chat with Cat. Helped clear & sweep up;
back to the Astrid on the bus. Another fine meal in the evening.
Up early, off to the conference, tried to work on more
slideware at the booth, but interrupted by a steady flow of old
friends, well-wishers, and good questions - sold some shirts etc.
Gave my talk; good questions, should have tested my demo -
( it worked rather nicely in Milan ). Slides (as hybrid PDF) here:
Wandered off to get some chips with Kevin and onto
the dev-room, wrote a very quick liblibreoffice slide-deck while
watching some talks; gave it - but how can one follow on after
Caolan's epic Accessibility / UI layout talk. Slides (as hybrid
Out in the evening to Kasbah for a 30x person booking,
nice to see more people round the table each year; back to bed.
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
Document Foundation, Spaghetti Hurlers (International), or anyone else.
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)