Stuff Michael Meeks is doing
|
|
This is my (in)activity log. You might like to visit
Collabora
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
feed.
Older items:
2023: (
J
F
M
A
M
J
),
2022: (
J
F
M
A
M
J
J
A
S
O
N
D
),
2021,
2019,
2018,
2017,
2016,
2015,
2014,
2013,
2012,
2011,
2010,
2009,
2009,
2008,
2007,
2006,
2005,
2004,
2003,
2002,
2001,
2000,
1999,
legacy html
-
Lie-in, J. out for a walk with H. and N. Played games with
the littlies, Becky, & Ilona - Tom & Rob out to sort out their
banking finally. Lunch - Uncles left, set off to Sandra's for some
swimming action.
-
Lots of swimming - much of it against the stream of a side-
mounted impeller - a lovely private pool. Babes reluctant to leave,
tea & cakes with Sandra & Arnold - back home for a warmed
pizza tea. Put babes to bed, read LOTR to Namoi - getting through
the Two Towers slowly.
-
Poked at E-mail in the evening to try to unwind visa bits,
bed late.
-
Up early; Mum & Dad's 40th wedding anniversary: a good
innings. Out to chuch at a Cineman in Harrogate the "Life Destiny
Church" - a reasonable sermon despite an almost total lack of
expository authority and hard work. Back for a light soup lunch.
-
Out to setup at the Harrogate Quaker meeting for the big
wedding anniversary beano. Lots of family and friends arrived,
great to see cousins David & Richard with Sharon & Matthew
a decade on from our wedding. Gave a brief talk on my parents'
marriage.
-
Helped clean up, pack up, and back to M&D's for a
buffet / dinner / pizza party for the immediate family and close
friends - fun.
-
Up earlyish; breakfast with Joy & Chris, enjoyed admiring
Chris' garden-study (with unusual foundation / subsidence issues in
a rather water-logged garden) - some fine books on display there.
-
Bid 'bye, set off for M&D's in Knaesborough; arrived for
lunch - with Tom & Becky here too. Rob & Ilona arrived in the
evening for dinner. Some present opening, put the babes to bed.
-
Up early, lots of packing, roof-box securing etc. bid 'bye to John
and Louise. Drove to Oldham. Met up with Joy, Chris & family (curate
in Chadderton).
Enjoyed fine food, and catching up with them much of the afternoon and late
into the evening - the joys of extended family.
-
Up earlyish, packed (with Sue & Clive), drove everyone
home, got Ilona's present in the town & back to meet up with
Louise & John staying at our place. Enjoyed the afternoon with
them - walked out on to the heath and made a swing for the
babes to enjoy - albeit in the rather cold weather.
-
Up late playing scrabble, and getting to know John better,
rather fun.
-
Up late, out to Sizewell beach - extensive gravel spit
creation with the babes - foiled by the tide going out. Back for
a fine lunch, kids played happily in the afternoon. Read about
diamond mining in the evening - rather a curious affair.
-
Lots of child-noises in the night - proximity to tooth
grinding, sleep-talking babes is over-rated; up for an excited
review of stocking contents with four daughters and two nephews.
Breakfast together, one present before Church.
-
Off for a short service with Adam. Back for a huge and
lovely turkey dinner. Much present opening goodness - got a fine
metalworking vice for the workshop, and many other good things.
Slugging, in the afternoon watched the Snowman & Dog with the
babes. Bed early.
-
Up early; packed the car, drove to Aldeburgh, arrived
for lunch. Unpacked, caught up with Bruce & Anne, Sue, Clive,
Adam & James.
-
Out to a crib service with all the kids, Sue & Clive.
H. led a procession around St Peter & St Paul - enthusiastic
singing, a good time. Home, peeling action with Sue & Clive of
vegetables. Tea, put babes to bed - stocking stuffing. Bed ourselves
late.
-
Woken early by a sick E. couldn't get back to sleep. Up,
house cleaning, Jo, Mike & Robin over for a big roast lunch
lots of fun getting to know them.
-
Bit of a relax, out to the Carol
service in the evening, practised for a couple of hours beforehand.
Lots of people crammed in, played - helped M. with her Cello music -
playing with H. N. and Andrew for a Calypso Carol. Suitable
shared-supper blow-out afterwards: good to catch up with Ed, Sam,
Gael and more.
-
Home to try to get to grips with the un-written
Christmas card crisis.
-
Up late, substantial brunch with the family. E. feverish.
Played games with babes, pottered around tidying the house up,
wrapping presents and so on: fun.
-
Out to Peace & Solomon's for an afternoon meal - good
to catch up with them. Home, booked a series of personal family
visiting flights in Australia: if you're in Sydney, Melbourne or
Hobart between 22nd and 28th January and not going to LCA; it
might be good to meet up.
-
Up early; chat with Felix, mail chew, breakfast, form filling, posted
Chinese visa bits. Plugged away at a domain-mapper slowness affecting both
rtf and docx import (the joys of code sharing I suppose) got somewhere after
lots of idiocy, it is remarkably easy to forget how STL containers work after
a week away from them.
-
Glad to see my work on bootchart2 is not entirely obsolete and is being used for
GNOME login
profiling at least (warning Big Lebowski / gun image on link) - such graphs
make my fingers itchy. Worked in the evening, then a Dr Who.
-
Beginning of a two week Christmas vacation, relaxation in a box.
-
Mail chew, status report, polished and pushed a TDF blog about our
Munich
Hack-fest thanking our supporters etc. Also encouraging to get a blog out
about shipping on the Raspberry Pi app-store.
-
J. picked up M. from school - sick (again). Lunch. Team call,
ESC call. Dinner with the babes; put them to bed, J. out for a party. Spent
the evening doing some fun profiling / speedup of word-count and i18npool's
break-iterators.
-
Up early; mail chew, sync. with Vojtech. Poked LCA travel
some more. Lunch, into town for passport photos. Back, forgot how
soul-destroying dealing with Government beaurocracy is - a few
dozen pages of paperwork helps remind one.
-
Bits of admin, wrote some blurb. Reading through older-mail,
rather pleased with Caolan's description of the difference between a
TWIP
and an EMU. Poked at some gstreamer testing in 4.0, filed expenses.
-
Thrilled to see LibreOffice as the Linux Journal
Readers
Choice of 2012 - with 73% of the vote, with Google Docs as #2 with 12%,
what a sensible lot of readers they apparently have; thanks.
-
Up early, chewed mail, fixed a nasty a11y crasher around manages
descendants widgets (which were always a bad idea in my view). Built ESC
bug stats and agenda. More bug hunting.
-
Pleased to note that Tino's rather nice random function improvement
and bug fix as extensively
discussed
on our public lists came up with a beautiful
implementation
re-using the excellent boost library - one of many great recent improvements
to calc from Tino: thanks !
-
Watched Kill Bill in the evening - when I remember which crazy told
me it was a good film I'll take a hideous revenge on them (or perhaps not).
Apparently a movie absent any redeeming features at all - unless you're a
samurai who
enjoys cleaving people. The exclusive choice of obsolete weaponry for honour's
sake seems almost as crazy as the British Army officers spending more on
horses (presumably for their prestige) than on tanks prior to world-war two.
-
Chewed mail, chat with David, triaged and chased bugs,
conference-call much of the afternoon. Nailed a nasty shapes regression -
everyone holds weak references on everyone else it seems in svx. Worked
until late, filed J's tax return and started poking at mine.
-
Encouraging to see not one but two great proposed locations
for the LibreOffice
Conference 2013 - we'll no doubt get to vote on them: as always
hard to choose.
-
Up lateish, off to church; sermon on hope from Tony. Back
for a lamb lunch, slept for a while. Managed (somehow) to get an
ethernet cable (in some sort of state) from my attic, cleated under
the eaves around to the workshop - defeating the horrible topology
of the house; finally reliable networking next to the reprap. Lots
of help from little girls.
-
Up lateish; pottered about with the babes, out to NCC with
H. N. & M. to practise for the carol-concert next weekend. Home,
J. out with the littlies, watched Ice Age for a bit with H. and M.
and did some hacking on Android.
-
Mail, H. ill and at home still. Poked new year travel.
Chased some build bugs, out for an apparently interminable
consultant's appointment in Cambridge - traffic is terrible
at 3pm it seems. Back for dinner, worked late.
-
Up early; chewed mail - interested by Keith's Software Wars
fund-raiser / trailer thing: nice to see Greg, Bradley, Karen,
Jono, Linus & more interviewed. Voted for the next pair of
openSUSE board members. Profiling, call with Jan.
-
Lunch, team call, ESC meeting. Chewed away at misc. bugs
in the evening between writing Christmas cards - I'd send more if
the price of stamps was not so exorbitant this year.
-
Up early; mail chew, fixed the selection rendering performance
issue, call with PM, lunch. Brief call with Jan, more mail some hackery.
Dinner, walked M. to her school play, and back to work until late.
Fixed another autocorrection issue.
-
Chewed away at this and that, built ESC bug stats; poked
away at profiling a nasty page rendering / selection slowness issue
with multi-thousand-page documents; interesting. Some data crunching.
-
To work early; bug review, misc. bug fixing - fixed a horrible
autocorrect slowdown from std::set - not good to insert already sorted
items into it it seems. Wrote Linux Format column.
-
NCC, helped the kids get their musical effort together. Home
for lunch with Mary Rogers, spent a fine afternoon with her by the
fire; fun. Tea with the babes, stories, watched Dr Who in bed, sleep.
-
Up late; porridge breakfast, Charlotte & co. stitching
small animals from felt. Lunch, out for a walk down to the railway,
enjoyed playing in an abandoned pill-box. Onto a nearby farm shop /
cafe for a hot-chocolate. Dropped Charlotte home. Back for tea.
-
Up early; chewed mail - poked at a most-annoying RTF performance
bug with Miklos' help. Got a 4x speedup in load-time, with a bit of real
hacking at last - fun.
-
Out to the school fair to baby-sit the children while J. sold
innumerable goodies on her stall. Four small visits to Father Christmas,
queueing for face-painting (only to be washed off again shortly after),
buying of sweets and more. Charlotte over for a sleep-over, worked late.
-
Up early; to work, poked at most annoying bugs variously.
Rather encouraged to see that Petr has got 4.0 Beta1 building and it
looks good (official test packages to follow). We normally get around
1500 commits each month - but in only two weeks between Alpha1 and
Beta1 (the feature-freeze) we got 1350.
-
Team meeting, ESC call, Vojtech's staff. Fish & chip
supper, and out to N.'s christmas play: some great
Waiting for
Christmas music from Tearfund.
Back for a bit more bug chasing - some interesting RTF issue.
-
Chewed mail; started to catch-up with the long backlog; fun.
Started looking at the bug backlog, looking at patches etc. Cell group
in the evening.
-
Breakfast, practise with the girls, sleep. Back to work - built
ESC bug stats & prototype agenda; dealt with babes music lessons in
the afternoon to give J. some time off. Out to turn down heating at Falmouth
Street. Bed early.
-
Up early; worked solidly until 7am Tuesday to catch the 4.0
feature-freeze - encouraged to see others doing the same: eg. Markus
landed the beginning of his gnumeric importer (as an experimental mode feature) rather
early in the morning too.
-
H. horribly sick in the night, up every hour or so. Lie-in until
mid-day, roast lunch, applied slugging with the babes; bed early.
-
Lie-in, breakfast, out to Falmouth Street with a protesting H.
to bleed radiators and get the heating into some sort of shape. Back,
more work - racing the 4.0 feature freeze deadline. Watched Lord of
the Rings with H. and N. in the evening.
-
Up early; to work, slogged away all day and until late into
the evening.
-
Up early, bid 'bye to Robert. Mail chew, lunch, Team call,
ESC call, Vojtech staff, minutes etc. Worked late - started to
wrestle the travel planning snake around LCA.
-
Nice to see an interview with Kohei
up (thanks Marc), and also the nice work Laszlo has done around
LibreLogo:
A nice (small) feature for 4.0 that can be really useful in the classroom,
with a beautiful Hungarian workbook, using graphics generated by the
embedded logo fragments in the workbook itself.
-
Lots of administrative slog; TDF board call, Robert came
to stay - lovely to catch up with him, up late.
-
Mail chew, built ESC bug stats, reset some builds, poked at
unit tests. Lydia over, worked late.
-
E. sick in the night, there to prod me awake in the morning while
J. worked. Back to sleep in time for parcel-delivery to wake me - bother.
Fitful pay-back of sleep debt through the day, nursing of E. baby-sitting
little people & general recovery. Good to see lots of small girls at
tea time, read lots of stories, bed.
-
Up early; breakfast, checked out, & headed to the hack-fest.
Spent lots of time talking / assisting various people with various
hacks, some fruitless debugging of what is apparently a Win32 / DB2 driver
bug that shows up in base; chat to Jan W. Met Alex, another new contributor
who showed-up, liked Peter's console / build log. Tried to get to the
bottom of Moggi's interesting VCL / modality / mouse event delivery
issues. More setup with with Markus; walk + train to the Airport, dinner;
tired.
-
Arrived at Stansted - waited an hour for the cheap National Express
bus, got on it, set off - door wouldn't shut properly - back to the airport,
sigh. Taxi home instead late - sleep.
-
Up early, breakfast, off to the office for some more hacking
bliss; reviewed Caolan's nice bug fix for 3.6.4, back-ported to 3-5
thanks to Markus. poked at some comment translation, lovely pasta
lunch made by Italo. Florian Reuter showed up with his cute sleeping
son; group photo; caught up happily for a bit - back to break an
annoying Android version dependency.
-
Caught up with Michael who kindly gave me a copy of his book;
Pizza for dinner, worked on pointless E-mail instead of hacking:
shame, poked at autotools with Cedric's new libcmis unit-testing
framework. Got a great demo from Laszlo of his logo work for
schools - sweet, his blogs to follow. Poked at the presenter console
dbus code with Thorsten.
-
Eventually the hack-fest closed at 2am or so - wandered
the town looking for a pub to chat in, eventually found a suitably
disreputable but quiet establishment & enjoyed some beers in
paper cups; bed around 5am.
-
Up before dawn, coach to Stansted - ran the normal triage of
electronics stores and interrogation of assistants.
- Lots of Apple products in big flashy displays but (apparently)
lower margin for the seller than for Windows 8 PCs - though they
do offer discount pricing.
- Played with Windows 8 a bit - interested to see
Intel App-Up pre-installed as well as the Win8 app-store.
- Chrome-book apparently connected to the wifi but unable to
browse the internet - reducing it's demo-ability significantly,
also none of the 'docs' type apps work without an account, and
no demo account in the image. Sales-person down on the device -
prefers to sell a cheaper, more functional Windows 8.
- Security guard doing baggage scanning not seen a single
Windows Surface yet - interesting.
- Interesting to see how poor many of the pre-canned displays
are for all products: clearly an after-thought. Can't even launch
the pre-loaded Office on Windows 8: it needs registration, can't
install apps with App-Up: requires user credentials - and this
pattern endlessly repeated.
-
Hacked on the train, walked from the Hbf, nice offices of the
LiMux guys - sat and
hacked while people arrived variously, good to see all. Nice to see David's
huge LibreOffice dependency graph in paper on the wall. Helped out with
a horror X server / XErrorHandler conflict between SWING and LibreOffice
afflicting Wollmux. Interview with a couple of fun Journalists (met
Michael from LWN) with Florian & Italo - fun.
-
Caught up with lots of cool hackers streaming in; great to see
so many here; a new volunteer Peter just saw the hack-fest advertised and
showed up - pointed him to some easy-hackable-bits. Worked with Rob a
little improving the bug submission assistant URL construction.
-
Poked a little at reading hsqldb binary 'data' streams in C++.
Lengthy talk with Thomas, then Fridrich S. Back to the hotel with the
lads, talked until late - sleep.
-
Off to the Doctor in the morning - my blood is completely normal:
despite eating butter endlessly, cholesterol is low; good. Back, mail chew,
admin. Read the XAggregation.idl
advice fixed my issue; added some code to deprecate the delegator for 4.0;
that thing shouldn't be used. Added some theme / version hints to help
designers.
-
Pleased to see that Zolnai Tamás' nice kill-sdf branch got
merged: finally we are clean .po file users without some hideous OO specific
nastiness (.sdf files) lurking around - good.
-
Mail chew, minute writing, slideware work. Poked BT to work
out why they didn't arrive twice - multiple-systems / software error
apparently. J. kindly poked at LCA/FOSDEM travel scheduling, how to
fit Beijing, Hobart, Canberra & Brussels all into one trip.
-
Dug into the reference-counting intricacies of the UNO
WeakAggregate object - less than transparently obvious what's up
there - J. out counselling; poked at it until late.
-
Up early; mail chew, lots of work on stats, analysis, slideware
production. Expecting BT engineer to arrive and sever the internet at
any stage. Lunch. More admin - positive LibreOffice Advisory Board call.
-
Lydia over, out in the evening to poke the other house - back
for a fruitless quest for radiator keys - my plumbing supplies appear
to have been bagged and taken somewhere else - bother; bleeding
radiators with long-nose pliars is really not fun.
-
Up early; to work, mail chew - pleased to see Miklos' nice gallery
of a few of our recent OOXML
improvements in writer with sample files. Paid fedex/taxes. Lunch, attended
Falmouth St. to supervise abhortive water-meter fitting work. Worked on
slide-ware.
-
Up lateish; dropped J. at NCC, collected H, helped with the kids
work at church. Had Peter & Joy over for lunch. Encouraged to hear that
Joy (a teacher) had LibreOffice installed by her (apparently clueful)
Brother - nice work.
-
-
Lydia over later, played with the babes variously - H. and N.
learning to sing two part harmony with each other nicely. Lazy evening.
-
Up lateish; dropped H. off at a friends for a sleep-over; off to
Falmouth Street to mend a cupboard and check the other house. Back for
lunch. Watched a Christmasy sort of film with the babes while E. went to
a party; dinner, put babes to bed; worked.
-
Some .apk analysis / size breakdown work. J. pranged the car -
spent a while attaching bolts & washers to various pieces of plastic at
the front. Built some stats. Emily over for dinner, up late.
-
Mail chew; dug through JUnit tests - which (it seems) find some
really nice errors - and are reasonably easy to debug now - (using the
nice failure message they produce); lots of code reading. Lunch with
Janine. Team call, ESC call,
Vojtech's staff call.
-
Dinner, read stories, back to work; generated some stats.
-
Up early; mail chew, worked away reviewing and polishing the
Unity menus work from Canonical / Bjoern / Antonio Fernandez of
Aentos. For the curious
pictures of this and more are here - it should ship working out of the box
in 4.0. [Update:] - turns out I forgot to mention the other
heros supporting this nice integration: Alberto Ruiz, Ryan Lortie and
Ted Gould - thanks guys !
-
Lunch. Baak to mail, admin etc. TDF Board call.
-
A few quick thoughts in response to Armin (an IBM employee):
Of course we're grateful to all who have contributed code to LibreOffice,
and we will do our best to credit them where appropriate as we build out
our 4.0 release notes; thanks Armin. We're currently in a 4.0 feature-freeze /
release crunch, with the code shaping up really nicely with contributions from
hundreds of volunteers. No-one should get the idea that LibreOffice will blindly
include whatever gets into Apache OpenOffice into our code-base going forward.
That is emphatically not the case - any code that is included will be
reviewed rather later, with a priority and preference given to code first
contributed to LibreOffice. If you haven't tried it - why not jump into hacking on
LibreOffice today: our codebase gets rapidly cleaner and prettier but
we're always in need of help. One great live topic of today is the new:
Widget
Layout work in VCL that makes the UI look significantly prettier.
-
Poked mail, tried to track down some (apparent) confusion between
system and internal boost breaking some tinderboxes; finally found
the issue some missing
use_unpacked,,boost
dependencies.
Built the ESC bug stats.
-
Lydia & Janice over for dinner. Worked late; read some blogs -
lots of encouraging work going on in LibreOffice - a small fraction of
which is being blogged; my favourites today:
- Until recently it was fashionable to complain about regressions
in the RTF filters: the background being that we kicked out a huge scad of
old, ugly duplicate code and unified it with the existing MS format filters.
Anyhow - as of now, only 1 (minor performance) regression bug remains open that
I'm aware of. Miklos has also added a huge slew of features (things like not
loosing all the document after the first embedded formula). He just blogged
some pretty pictures of these
RTF
Drawing Object import.
- Another fun development is Fridrich's (spare time) project to work
on the Visio file formats which is yielding some great fruit - he has even
implemented Visio 2013 import support before that has shipped:
LibreOffice
Visio filter at LibreGraphics World.
- Also nice to see people arriving for the group photo from the LibreOffice
conference, hopefully a better shot to follow at some stage:
from the LibreOffice conference - lots of happy contributors (and a small number
of ODF plug-festers) in a wonderful venue, with many thanks to the German Federal
Ministry of Economics and Technology.
-
Up, read the raging histrionics around journalism and opinions of
software: personally I deeply care about what influential and respected
people think of my software - I recognise the reality of thought-leadership,
and the criticality of a huge hidden web of relationships to drive opinion
forming. I do believe that marketing has a significant role in that process,
and that creating valuable brands is often pathologically non-rational - and
sadly is rather de-coupled from any positive or negative aspects of the
raw design / functionality.
-
Then again, we also have such significant usability problems in
LibreOffice that it is easier to improve without annoying people, and the
scale of the problems and the size of the team makes it hard to change too
much at once; then again - with Caolan's sexy Widget
Layout work - almost anyone can now get involved in re-drawing and
improving the UI.
-
Chewed mail miscellaneously; tons of patch review, things to
respond to - discovered my
make check
was failing due to some
bustage in ~/.ure
- odd.
Lunch. Wrote a Linux Format Column while doing a ton of administration.
-
Dinner. Back to work - interested by another robust defence of
Software Patents
from IBM, the sad thing is - that while lobbying against S/W patents myself
- I've met Patent Lawyers who sincerely believe this sort of baloney and need
disabusing; sad really. Self-defence in a world gone mad is the only legitimate
justification I can come up with for them.
-
Up early, off to NCC, spoke, home for lunch with Calan, Julie
& Emily - fun, sat around catching up. People's life-stories are
so interesting. Watched the Dawn Treader with the babes, tea, put them
to bed. Bed early.
-
Lie-in; breakfast, played with the babes, picked up H. from a sleep-over.
Much more reading around Daniel 10, IVP commentary, Wayne Grudem, read a rather
useful Powers
of Darkness evaluation of Hermenutical approaches.
-
Lunch with Jane, Lilly & Harry(?) - fun-sized friends for N. and co.
Back to the reading, collation, writing, thought & prayer. Dinner, eventually
came up with some explanations; bed.
-
Up early; mail chew, dead pleased to discover that the yast2-gtk
bugs I've been fretting about for ages have already been fixed by Federico;
nice. Tried to get VirtualBox running - what excuse for a custom kernel
module is there in the days of KVM ? horribly annoying; tried to re-build
the spec. for the latest stable kernel - failure; yuck - what a waste of
time. Why is it that I can use KVM without a hassle, but then the VM / disk
images are in some uselessly non-exchangeable format ?
-
Dug at misc. patches, a CUPS issue; mail. Out for lunch with J.
Eventually got a VM setup, now to trying to make GNOME behave well
inside it; first fallback mode - rendering needs to be fast; eventually
found the gnome-tweak-tool button to persuade nautilus to render the
desktop, so I can drop a single, nice big "click here" icon launcher
on the desktop; phew.
-
Out for lunch with J. in Bury - looked for a better office chair.
Fixed a libcanberra issue, and re-visited the osc branch / sr magic
with DimStar's kind help. Worked late. Started reading C. Peter Wagner on
Spiritual Warfare - substantially unconvinced at his take.
-
To work; upgraded my kernel to avoid a nasty memory
pressure related X crash; hopefully 3.6.6 will do better. Mail
chew, patch review, helped a few newcomers.
-
Lunch; Team meeting, ESC call, Vojtech's staff. Posted minutes.
Discovered that we have a functioning cisco VPN end-point these
days; nice - out of the box, easy, working VPN with NetworkManager;
good. Plugged away at the code.
-
Poked at the election result, listened to the speeches variously.
While still somewhat nauseated by the rampant cult-of-the-state-ness, am
more persuaded by Landes that national culture is indeed really important,
so perhaps it does make sense to shape and channel that to some positive
end. Mail; out to the doctor's for lung capacity measurement.
-
Lunch. Wrote some C++ regexp unit tests, after discovering the Java
ones were crippled by using the same search pattern as the search string.
-
Plugged away at building and testing some re-based
code much of the day - some real fun there. Mail chew.
Lydia & Janice over for dinner - watched an interesting
Horizon program on the earth's core.
-
Up early; packed babes off to school with J. - music practises
etc. back into the routine after half-term. Poked at a document load
profile, some bug triage / review.
-
Played with the (very pretty) engineering sample of the
Nexus 7 - with many thanks to Google for their support: LibreOffice for
Android should look amazingly crisp on this display. Lunch.
-
Dead pleased to see Norbert's new drop-in unit test harness for
StarBasic - making it easy to add new basic/syntax unit tests for both
VBA and StarBasic compatibility modes: very nice.
-
Up earlyish; played world-of-goo in bed with the babes;
breakfast. Off to NCC, helped J. downstairs with the younger kids;
Studying the fall: Genesis 2. Lunch at church, and packing of
shoe-boxes for Operation
Christmas Child - fun.
-
Home, slugged with the babes, a fine chicken pie for dinner,
put littlies to bed, read stories etc. Finished listening to
Tombstone
(BBC book of the week by Yang Jisheng) -
simply staggering, a diffuse and systemic taxonomy of failure of leadership.
-
Listened to and wrote notes on a couple of sermons on Daniel 10.
-
Up earlyish; breakfast, packed everyone into the car - off to
Bruce & Anne's for lunch - with Sue, Clive, Adam & James there.
Much slugging, enjoying the company, a fine lunch. Out to play pooh
sticks at a small (slow) nearby river. Back for dinner and fireworks in
the evening - ably setup by Clive. Drove home.
-
Up early; off to the Doctor's for a checkup; some blood
letting; chest X-ray, all the fun of the fair. Poked at mail.
Poked Scott wrt. a SLED L3 bug.
-
Up early; mail thrash; sync. with Martyn. Sue, Clive, Adam &
James came over - had a fine lunch with them. Caught up with Julien and
looked through a few nice bug fixes with him.
-
Up late; took half a day off - attempted to go to an activities
day on Studlands Park, but managed not to fit in. Out to the racing museum
instead in town to draw, and ride an electronic racing horse. Home for
lunch.
-
Got around to up-loading my slides (as hybrid PDF). Some thoughts
on community interaction / anti-patterns:
And some easy-hack pieces:
And a project overview of where we're at now (sadly missing the 3.6/3.7 new
feature slides that I didn't get time to build on the train) from the openSUSE conference:
-
Thanks to the RSA for their great
video content.
-
Up; re-arranged the office to make it easier to sanely install
the BT / infinity magic - interesting to see how it will cope with our
phone cabling. Breakfast; mail chew; built ESC agenda & bug metrics.
The installer failed to arrive or call in the time-slot; hey ho.
Apparently too-busy to call to mention they're not coming - flooding
(surely that's in the USA) causing issues.
-
Dirk got LibreOffice building nicely on openSUSE / ARM it seems,
some minor spec. changes to reduce parallelism were needed. Lydia over
for dinner, watched silly movies in the evening.
-
Enjoyed the extra hour of sleep somehow left over from the
weekend. Mail chew, expense filing. Poured over code much of the
afternoon. Bed early.
-
Up earlyish - noisy babes; packed, off to Pulborough Brooks Baptist
Colin managing the sound setup etc. Enjoyed the service, fine shared
lunch, met lots of interesting new people.
-
Off to a green in Pulborough, put up a bouncy castle, and
encouraged people to have some free bouncing / face-painting / baloons
on rather a cold day; bid thanks & 'bye to Barbara & Colin, drove
home at length. Fed babes, put them to bed; sleep.
-
Up early; breakfast, dressed babes & packed them into
the car. Off to Barbara & Colin's house in West Chiltington for
a fine lunch. Dressed up in wedding finery, and off to St Lukes for
Louise & John's wedding - J. the matron of honour - looking
lovely.
-
Cake after the service, met an interesting accountant, and
drove the babes back to Barbara's - rather late, for tea, and then
put them to bed read stories. Quick chat with Barbara & Colin,
and drove back to the evening dance, lots of talking and nibbles.
Helped tidy the church when all was finished - ivy removal, leaf
sweeping etc. Dropped a lady guitarist home with J. and back to
Barbara's, sleep late.
-
Early up, off to the office, caught up with Petr, chewed over
bugs & trends together. Sync. with Kendy, bid 'bye to all, and off
to the airport. Once again suckered by EasyJet's "not real leaving time"
on the boarding pass; will I never learn ? much too early. Lunch; sat
and hacked.
-
Back to Stansted, taxi home - relieved Mary Rogers - kindly
baby-sitting, read lots of stories, put babes to bed, dinner. Tidied
up, bed - exhausted.
-
Up early, breakfast, off to the office, got a small lan setup
for the team, and set too with a serious icecream
farm:
Started chewing mail backwards - lots of it.
-
Admired Radek's fine photo-taking / printing skills. Bought-in
lunch, had some tips & tricks / sharing sessions with good tips from
everyone. ESC call, visited the physical servers that help build some of
the SUSE LibreOffice products; provide some tinderbox horsepower etc.
-
Out for a final meal in the evening to a Greek restaurant - lots
of good food, amusing jokery and more, back to bed late & bid 'bye to
team-mates.
-
Up rather early, quick breakfast, off to meet with the labs team
at the central station; train out through some beautiful countryside - got
off, and walked through the forest with the team. Attempted to find sites
of interest, tried to climb some substantial tree to get to a geo-cache.
Wound up in a pub for some food, lots of new kernel insights, discussed
missile design.
-
Onwards on the train to the river for some canoeing action;
shared with Radek - and enjoyed a smooth trip down the river - with
a number of watery speed-bumps for some participants. Arrived, quick
beer at a pub, train back to prague; quick sandwich for dinner, bed.
-
To the conference; tried to get Kendy productive again with
the latest GNOME 3.6 - which appears to have killed
scroll buttons in the bars - tried to unwind the issue and turn them
back on; hunted for options - none, hunted in gnome-tweak-tool: nothing,
hunted for themes to use / install - unable to easily find/install one that
restored the ability to use evolution with large mail folders. Turned to the
gtk theme css to try to tweak it, getting lost in some
@url(resource://not/a/path)
construct. Eventually begged for
help from on IRC (thanks desrt !): apparently the solution is a scroll-wheel (laptop),
or a touch-pad with a scroll side-bar (disabled), finally 'discovered' middle-button
and nipple drag: urk - the solution is apparently more training - 30 man-minutes+
burned.
-
Built ESC bug stats, poked at another area for some profiling.
Spent a while reviewing our progress as a team since last year - encouraging to
see that some of the significant bugs/features from our brain-storming last year
are now closed by either us or the community. Generated a lot more for good measure.
Out to a rather fine restaurant near an attractive monestary, wandered back in
the dark, chat with Simon.
-
To the openSUSE conference early, working with the team in
a hacking room; Kohei showed a pretty impressive performance drop-off
loading his beautiful LibreOffice
structure documentation odg. Did a bit of analysis, and got a 40% win on
load (6.5 seconds of 16) and greater than that on save (though harder
to profile). Encouraging.
-
Lots of hackery on various things, some sort of mail catchup,
merged a fix to -3-6. Out in the evening with the team for a Czech
meal - complete with Kendy's (least) favourite tune: about a goat and
a bush.
-
Up rather late at last; missed breakfast at the hotel.
Out to buy something for myself and Tor, ate that. Noticed a
czech church meeting in the hotel - attended the service to
improve my Czech, enjoyed a familiar hymn: Blessed be your name,
in Czech. Met an interesting American professor and
wife at the end; apparently I need to read The Economics of
Good & Evil, 70% of Czech people are Athiests, despite
the good work of Jan
Hus (a fascinating chap to discover) pre-dating Luther by some
significant margin.
-
Back to my room to study & pray somewhat in
English. Out to meet up with friends at the conference, sat
around, caught up with Mirek in more depth. Out for a fine team
dinner & to meet / congratulate Petr in the evening.
-
Up early, breakfast with the team, got the Berlin to
Prague train with team plus Mirek. Hacked on an openSUSE talk,
compiled various demos dissected slides etc. Arrived - Kendy
bought tram tickets while we ate. Lubos kindly took Tor and
myself to the venue, arrived with 15mins to spare - spoke,
followed by Tor.
[update - slides ]
-
Wandered the conference looking at the fun things on
display, caught up with Vincent, enjoyed the huge reprap-style
3D printer with a print-volume of ~1m cubed, and also the fine
quality of their smaller printed items; neat.
-
Back to the hotel with Kendy, then to the old-bridge for
a party before; de-camping to a nearby Irish pub for Guiness and
food. Back to bed late.
-
Up somewhat later, caught some of Bjoern's reflections on UX, then
did some lightning talks - for myself just pointing people towards the
LibreOffice bug triage
starter page, and demoing triaging a bug, live. Followed by a series of fine
talks, with suitable ad-hoc nature.
-
Helped a new volunteer get his machine setup and building LibreOffice,
it seems that if the submodules magic fails during checkout the error messages
are rather less than helpful. Caught the end of Norbert's how-to-do-an-easy-hack
demo / talk.
-
Discussed spreadsheet design with an interesting chap at lunch, and
on to Lionel's Improving LibreOffice with Money talk; the punch-line - pay a
consultancy (like Lanedo) to implement your pet feature; enjoyed Alexander &
Florian's infrastructure talk.
-
Then a final board / summary talk - no questions, failed to ask
intelligently enough how we can improve the next conference; then again
this one was so smoothly run by Jaqueline, Fries Office Deutchland e.v.
and others that it seems hard to know how to improve. Cor pre-armed the
audience for a rather enjoyable elastic band fight at the end.
-
Out for an Italian meal, via witnessing a nasty car collision into
a lady on a bike and waiting with Markus for the police to arrive. On to
c-base for some drinks, and a tour of the private area - back to bed
rather late.
-
Up early; arrived in time for Bjoern's talk; gave an updated
Easy Hacks talk (pleased to catch up with a number of interested people
afterwards, with some build/checkout/system setup).
On to the Impress State of the Union talk, then did a quick
presentation of Andrzej's great Impress / remote work in the GSOC track.
-
Lunch, and catch-up with the Lanedo guys, enjoyed Jutta's talk
afterwards, then Otto's. On to a series of shorter talks - catching
CMIS, talked about interaction anti-patterns;
[update - slides ]
heard about WikiHelp,
and great to see Peter Jentsch's other great work around Regression
Testing.
-
Out in the evening, for pizza (again), good to catch up with the
interesting people around and hear about all the great work that has been
going on left and right; really encouraging to find out about the good
things happening in Japan for example.
-
Up earlyish, breakfast & out to the venue, security checks
minimal and sensible. Enjoyed the welcome speeches & Jeremy's
keynote - lots of good things about software freedom. Nice to see
the pretty Gource
video created by cloph. Interested in Jesus'
analytics, gerrit for LibreOffice, the great work the KACST guys have been
up to, Stephan's API talk, Tor's Android lessons talk, and Kohei's
calc core / performance work. All punctuated by some great hall-way
track interactions. One of the luxuries (or sadnesses) about so
many good talks, is the hard choices: Widget Layout, or API futures ?
-
Group photo, free beer, and fine meal in the ministry in
the evening, back to the hotel afterwards with a group and up rather
late talking, then even later writing slides.
-
Up early, breakfast with Caolan, back to hack a bit; out
for some lunch together. Met up with the lads from .cz and off to
the conference venue for first a board meeting, then the ESC. Really
great to catch up with the wider board, MC and ESC guys.
-
Up earlyish, bid 'bye to the lovely family; M&D dropped me
into Cambridge to get bus to Luton, E-mail catchup. Hacked a bit on
the plane. Arrived, tubes, caught up with Thorsten and Caolan. Out for
dinner together with a lot of old friends - fun. Back to the Motel One
bar until late.
-
Off to NCC earlyish, spoke & managed not to upset my
much loved dispensational brothers & sisters, despite preferring
a more traditional understanding. Home for a fine lunch with the
parents.
-
Snoozed in J.'s lap for a bit, while the babes played. M∓D
out to evensong at Kings College; tidied the house a little, poked
about in the workshop. An evening spent talking with the parents,
arranging diaries etc.
-
Up lateish; breakfast, out to Noughton Park to wander and
enjoy the lovely colours of autumn in the trees - some amazing reds.
Home, plugged away for much of the evening at the end of Daniel 9 -
finally approaching some sort of comprehension.
-
Plugged away at e-mail; more admin. Parents arrived in the
evening. Up catching up with them, didn't sleep well, bit of hacking
in the night.
-
Up excessively early, worked a little; backed up the laptop,
walked to the station. Train/Eurostar/Tubeness to Paris /
OpenWorldForum - wrote talk on the way. Caught up with Ralf
quickly.
-
Met up with Dave, Leslie, Robyn and co.
found our room; listened to a diverse series of interesting talks,
and gave one in the end on communities & relationships.
-
Interested by Dave Neary's dichotomy between more efficient
tooling for collaboration (taking less time), and the side-effect of
decreased personal interaction leading to poorer relationships.
-
Quick chat to Dave, Lars, Richard F, Bradley K, and more.
Tube to Eurostar. Finally got annoyed enough to do something about
the big dependencies problem - elided
.hdl
and collapsed
internal boost headers to a single dep, and - ~50% smaller aggregate
deps, so should be faster to load - needs a full-from-clean test
build really.
-
Spent some time chewing on Daniel 9, with particular help from
Gordon Hugenberger's
70
weeks write-up.
-
Mail chew, chat with Tor, then Vojtech. Encouraged to
see David's unit test for the thunderbird addressbook database
backend, our first fast, small, native-code 'base' unit test.
-
The parallelism that the new gnumake work is getting as
it touches more of the external modules; fixed another set of
dozens of parallel ant/javac compiles causing grief with big
icecream parallelism.
-
Out to the St Bedes open-day in Cambridge with Rachel;
pleasing talk from the headmaster, home.
-
Up early, chewed mail, built ESC agenda & stats.
Started building some slideware for Thursday at the OpenWorld
Forum.
-
Mail chew, bug processing, built master - great to see Peter's
work over the weekend adding Windows 8 SDK support, making mergedlibs
work, fixes for VS2012. That's one of the nice things about LibreOffice,
checking out the great work done over the weekend by so many. The
gbuild-ification is also going well, with around fifty external modules
left to go.
-
Lunch, wrote a Linux Format column, did some stats crunching.
Discovered 'icerun' - a lovely wrapper to use to stop the massive
parallelism of icecream's gcc wrapper overwhelming the machine when you
get to doing dozens of a javac processes in parallel. Pushed a patch to
use that.
-
Up early; played at Church, back for a quick lunch. Down to
The Severals for a race - J. running 12k around the horse walks for
charity, and H. N. M. running as many laps as possible of the green.
Helped marshal, hand out rubber-bands for laps, and entertain E.
-
The lead runner came in really a lot earlier than anyone
else, at 44 minutes in; waited with the babes for various other
runners from the school - and cheered 'Mrs Meeks' in with the
babes at 1.22:30 - good stuff.
-
Taught massed children to fire elastic bands without injuring
their fingers: strangely in an electronic generation, with dying
terrestrial mail this has turned out not to be an innate skill. Played
elastic band fights. Home eventually, fed everybody, put people to
bed. Transcribed a couple of sermons on Daniel 9.
-
Off to Sandringham with E. for her trip out with her Father
this year. Rushed through the house, and museum - with a quick snack
to fend off hunger. Back through the lovely gardens to the Restaurant.
Had a fine lunch together, played together in a playground nearby. Tractor
ride through the estate, wandered back for some snaps of E. in residence.
Home. Slugged by a movie in the evening.
-
Lots of admin; couple of long, fun design calls with
Kohei, worked late.
-
Up early; mail chew, lunch. Team meeting, partner call,
ESC call, Vojtech's staff, calc patch back-porting and bug poking.
-
Out to see Botisham Village College; somewhat disappointed
really with their ethos.
-
Mail chew, long day of hackery, admin, patch review, research,
chased a few misc. bugs. Lydia over for dinner, cell group in the
evening.
-
To work; mail chew, administrative grunt work, lunch. Backported
a fix for a silly comment visibility error in XLSX import (and export).
Built ESC agenda.
-
Out in the evening with the lovely wife; really great to spend
some time together away from the distractions of home.
-
Up early, to work - lots of weekend mail chewage; patch review:
lots of nice fixes from Markus, testing, more mail, lunch, wrote a status
report. Plugged away at misc. tasks - added Petr's rather nice improvements
to our startup / wrapper script to substantially simplify the backtrace / strace / valgrind HOWTO for LibreOffice.
-
Dinner, interesting call with David, bed.
-
Up earlyish; out to NCC, spoke on the first part of Daniel 9 -
mostly around prayer. Home for a quick lunch, out to an Education Sunday
service in Bury Cathedral.
-
Wandered the park afterwards; admired the ruins and discovered a
fine poem about the Magna Carta - the Barons swore their oath in Bury
St Edmonds it seems. Buns or Ice creams, home again. Bathed & put
babes to bed. Lots of church friends over for a movie in the evening.
-
Up earlyish; out to Tyndale
House for a seminar on same sex marriage lots of interesting
grist, and questions. Home for lunch, Charlotte around for a sleep-over
with H.
-
Set too reading & writing for tomorrow; babes watched
The Simpsons movie, up late reading & writing.
-
Up early, chewed mail, spent a while digging at the
nice new conditional formatting code in calc - sync. with
Markus - got a few pet bugs of mine fixed. Back to the
tedious admin.
-
Transcribed another sermon on Daniel 9 in the
evening; interesting.
-
Mail chew; good to see the LibreOffice Conference program announced.
Lots of interesting talks lined up, and some great guys to work
with there too. Registered for the openSUSE
conference as well.
-
Lunch. Team call, ESC meeting (with
minutes). Vojtech's staff.
-
I wonder why Google+ sends me E-mails with links that don't work
when clicked; that's somewhat annoying. Dinner, back for a bit after some
stories, caught up on our all-hands.
-
Mail chew, day planning, call with Vojtech, patch review,
license statement collation, catchup with Kendy; lunch. Great to
see GNOME 3.6
released - nice work guys.
-
Up early; mail catch-up, stuck into avmedia - fixed my top few
most annoying bugs - horrendous interaction performance problems on slides
with embedded media: now very snappy. Added preview / thumbnails of media for
GStreamer 0.10 and 1.0 with Wim and Tim's kind help. Hopefully that overcomes
people's concern that it is not in fact embedded due to a missing preview.
-
Off to visit the Dentist - who surveyed the disaster area, and stuck
in stalling mode - better to wait & see etc. babes all enjoyed their
checkup except for E.
-
Out to see DT & Zoe in the evening.
-
Up early, chewed mail, got laptop prepped with a build; got
misc. admin done for London train-travel later.
-
David created a lovely write-up
about his experience implementing the new Thunderbird addressbook
driver in LibreOffice - great to see a personal itch satisfyingly
scratched.
-
Knocked up a status report, walked to the train, onto a LXF
column. Partner meeting in london much of the day; poked at avmedia
on the way back - plenty of problems to nail there.
-
Up earlyish, off to NCC to practise / play, worked with the
kids downstairs. Home for a big lunch. Out to Laura & Creighton's
in the afternoon - nice to see them, spent some time debugging their
2nd hand sewing machine; neat.
-
Home for tea, put babes to bed, red stories & spent time
with the older lasses; wrote notes on Daniel 9 for next weekend, bed.
-
Lazed in bed for a while, out to band practice; back
for lunch. Practiced cycling / balancing with E. in the street for
a bit. Wandered into town to rent the The Pirates! and play in the
memorial hall gardens. Back to watch the movie, pizza dinner, popped
babes to bed.
-
Watched Dr Who in the evening as iplayer inches us towards
content consumption. Sadly the BBC in their infinite wisdom have
geographically locked the Android tablet app so I can't even install
it. Spent some time fooling it - landing on firefox's desktop mode to
get back to flash.
-
Up early, mail chew, patch review & back-porting. Stopped
OLE2 storage reading from duplicating the entire stream in memory, and
unwound the hideous lifecycle management there. Dug into some valgrind
logs.
-
One thing that has gone under-reported is the great work that
David Ostrovsky has done to implement a native 'mork' parser, such that
it is no longer necessary to build/link/distribute an ancient version of
seamonkey on Linux. Excellent work, and it just hit master.
-
Tested Andrzej's latest nice remote-control bug-fixes, bluetooth
seems to be working well on Linux at least; found a few lingering issues.
Dinner, late call.
-
Up early, walked babes to School. Mail chew. Spent a while digging
into some hideous
OLE2 structured storage performance N^2, turned a XLS / pivot load
time from 100seconds to 20seconds: better. Cleaned the code significantly
at the same time; back-ported to 3.6 and set to work reducing the memory
footprint.
-
Rather a hot Chinese dinner, out to cell group.
-
Up early; mail chew, interview, admin, worked on our GStreamer 1.0
support - seems to work nicely, though some more cleanup would be good.
Lydia over for dinner; back to work - discovered my javac was too new for
Android's DEX to cope with re-writing the bytecode; downgraded to 1.6.
Helped Xisco get the python wizards port working again.
-
Poked tinderboxen variously, tested new UCB cleanup, sync. with
Bjoern, built some stats with Florian, mail chew etc. Out for a run in
the evening.
-
Up earlyish, off to NCC to play the violin. Back for lunch;
pottered around the house - hair-cut; put up some shelves in the
workshop to clear some bench-space. Babes watched Shrek. Ciaran &
Amy over for dinner - great to get to know them better.
-
Lie in; drew up a list of tasks to get stuck into - cleared
out the workshop, mended a doll's cot, de-loused our guttering. J.
collected H. for her sleep-over at Tina's; Lunch.
-
Training of E. to balance her bike in the road. Dinner,
bathed little people & put them to bed.
-
More mail chew, note writing; bit of bug triage. Played with
Andrzej's remote control - nice stuff; worked on slideware.
-
Out to the school fair / hog-roast in the afternoon; wandered
around chatting to people, playing with the babes; fun.
-
Dug through mail. Misc admin, calls, team call, ESC
call, Vojtech's staff, sync with Kohei, partner call.
-
Encouraging to see the
Motah
announcement go public. You know you're dealing with a competent
bunch when they get nice code reviewed and into the product before
even reaching out to talk.
-
Another day of admin, misc. calls, re-setup the printer,
filed misc. bugs, booked travel to Paris.
-
A day of mail, admin, code reading, and such like. Chat with
Dave N, and got a talk sorted out for Open World Forum, Paris
next month.
-
Up early; breakast & music practices variously with the
babes; to work, mail chew, call with Thorsten. Tor got a great handle
on another two causes of the vile Mac accessibility bug, worked on
some fixes together - life should be better in 3.6.2rc1.
-
Lunch with J. Chased an icecream scheduler crasher in 12.2
fixing that created some odd incompatibility issue; strange.
Overview
Arriving back from vacation, I read Miguel's
thoughts
on the state of the Linux Desktop in the race for the consumer market; I
happen to mostly agree with his conclusion - that we're still facing a
huge up-hill struggle there. While I have huge respect for his experience and
insight, I think the causes are larger. My punch-line is that the Linux Desktop
faces a huge and multi-factored ecosystem challenge, there is no single simple
issue to fix. Over the last decade I've been peripherally involved in trying
to tackle many of the problems in this area, here are some of my random thoughts
and open questions on the topic, there are no radical new insights:
Our attractiveness to ISVs
Clearly this is a significant factor in our problem. No matter how
bad and limited our APIs are, if there is market pressure to port software
to the platform - it will come; hacks and all. Yes, the Linux Desktop is a
horrifying thing to deal with from an ABI stability / interface perspective.
Aside from the diversity of pointlessly different distribution packaging
details, the Linux Desktop stack (with existing frozen / back-compatible
API/ABIs) is not profoundly different from other operating systems - indeed,
arguably it is better for ISVs since we have access to open the lid on the
box and work with each other as some
are finding out.
Other's attractiveness to ISVs
Often the disguised thought here is that the competition are simply
wonderful at producing clean, crisp, working, tested, performant implementations
of everything, for which there are no compatibility problems, and life is
wonderful. People then often point at Windows XP - perhaps the best
understood mature operating-system ever, with a decade of workaround
development and integration testing.
How do Windows ISVs get such a great deal ? one thing they do is to distribute
much more of the system in duplicate with each application. So for example
each app ships it's own libc
and gets to try to install it somewhere. This is something that we typically
don't do on Linux, but it could be done: some form of application virtualisation
would help. Conversely Windows ISVs suffer a lot of performance, scriptability,
and repeatability problems that are just not there on
Linux.
How about other new successful platforms like iOS / Android which are loaded
with ISVs - do they have
the world's most beautiful development environments ? given that Xamarin are
selling sexy tools to improve the ISV environment
there my suspicions is that not all is perfect. Enjoying native code development
on these platforms is like enjoying extreme DIY dental surgery - the Linux Desktop is
infinitely preferable as an ISV platform. Why do ISV's put up with it ? in my view, it
is driven exclusively by the large addressable market. You don't need an MBA to see
the trends and opportunity there.
Questions around a better ISV story
There is a lot more to say; but perhaps some of it belongs as questions.
Let me frame them in this way; Question: is there something that we (as Free
Software lovers) can do to make our ISV story sexy enough that it makes the
Linux Desktop an attractive enough platform for developers that it overrides
our lack of market share, and makes a Linux Desktop port of each piece of
software automatic ? [ notice I'm abandoning the idea of a Free-Software
killer-app that sticks to only our platform ahead of time, the market realities
will bring it to Windows / Mac even against our will ].
What will attract ISVs to our platform ? what will make them feel at home, and
productive producing software for the other major platforms ?
If we make it easy to purchase proprietary software, or to donate money to free
software app developers and overcome our fragmentation to integrate this
everywhere (a single 'App-Store'), will this bring us back to parity with
other OS' or make us compellingly better ?
Attractiveness to (consumer) OEMs
It is often noticed that OEMs pay money to install Windows on their machines,
and that the Linux Desktop is an apparently free alternative - so surely our zero
cost should make us wildly successful right ? It seems to me there are a multitude of
interesting problems here.
Zero is too inexpensive
One of the major business problems of hardware enablement is that it takes
a constant investment of real cash to pay excellent engineers to make (brand new) hardware
work reliably. Linux has more drivers working out of the box than any other OS - of
course we rock; however - the Windows ecosystem distributes that cost among hardware
vendors: who write their own drivers (subsidised by the hardware you buy), and the Mac
ecosystem ships a very limited set of hardware.
Unfortunately, the cost of the Linux Desktop to OEMs has been driven down to a
marginal level by somewhat cut-throat competition. That makes enablement development
hard to justify without enough volume.
Substantially exacerbating this is the habit of consumer-grade hardware of constant
switching of components. There is a silent, invisible, gigantic, cost-engineering war
going on out there which squeezes cash out all along the
chain. In the absence of good standard interfaces, this makes
device support much harder for consumer hardware; a trivial but comic example is
of custom tweaking batches of hardware to pre-define vflip states for built-in
webcams,
cf. the kernel.
Zero is not cheap enough
Unfortunately, even if hardware can be perfectly enabled, fully translated,
with accurate manuals, support and update plans, integrated with OEM's
imaging infrastructure etc. and at near-zero cost, this is still too
expensive. Looking at other ecosystems there are substantial flows of cash to OEMs
that are not obvious. There are a lot of these:
-
co-marketing dollars - whenever you read adverts that feature
Foo inc. recommends the latest Baa for home users it means
that the cost of that marketing was substantially offset by OEM
kick-backs.
-
a cut of advertising / sale revenue - arguably the true cost
of some mobile-phone operating systems is negative due to the cut of
the advertising revenue going back to the operator / OEM. This is a
serious consideration in all advertising-interesting or mobile-device
segments: there are a limited number of Google, Amazon, Microsoft's
out there. Clearly for real advertising / secondary sales related
funding, you need relevance and volume, cf. Firefox.
-
Upgrade revenue - a simple example is the trial version of
Microsoft Office you get pre-installed; that makes it easy to pay
$100+ to upgrade it to the full version: but some chunk of that
ends up back in the OEM's hands.
-
Antivirus revenue - another popular upgrade/trial version fitting
the pattern of paying an extra for making up for the OS' lack of
functionality. AV vendors pay lots of hard cash, up-front every
year to ship pre-loaded on consumer-grade hardware. Arguably the
celebrated lack of Linux viruses is an ecosystem problem, no AV
vendor can take the credit for that.
Channel issues
Even when the hardware is perfectly enabled, and there is an advertised
Linux that works on this hardware - it is frequently extremely difficult to
actually buy that model. Often these models are geographically limited, frequently
the imaging process is done in the factory, and so the lower-volume Linux version
you want is not in stock / is un-available on-line. Clearly by the time you head to
an interactive shop display, the expensive (paid-for) display space is unlikely to
be used for a little-known Linux variant of the hardware. So, all in all it's
usually far easier to buy the device with Windows installed, and image it.
Potentially there is a market for OS vendors to sell device-specific to-customer
desktop O/S support but the transaction costs are likely to be high and the market
small.
Zero can be much too expensive
The cost of supporting shipped hardware can be rather a large proportion of
an OEM's expenses. That's particularly so if you image tens of thousands of machines
with some crippling issue, or ship an update that breaks updating, or - any of the other
software horrors you can imagine loaded on top of the inevitable hardware problems. I
recall well being told by a nameless support technician to hold down 'QWER' while
powering on a dead machine, not for some obscure BIOS feature - but to help re-seat
the loose CPU immediately underneath the keyboard.
Perhaps here is somewhere we could excel - having ultra-robust, translated,
cross-distro standardised recovery, re-imaging, disk repair, hardware diagnostics,
incident reporting, built-in help-desk agents - which combined with relative
virus-freeness could reduce consumer support costs. Re-installing windows is currently
a routine lifestyle-choice for some people, nevertheless it is somehow a familiar
and re-assuring experience - not something you send your netbook back for: just
re-install. My hope is that the base-system consolidation around systemd might bring
us some of this critical disaster recovery / re-imaging / rescue functionality in a
standardized form.
Attractiveness to the Consumer
So perhaps the consumer is going to ride to the rescue, demand Free Software
because it is better, and all will be well - the OEMs will respond to market pressure
and produce what people want, and ISVs will respond to that.
If we build it, he will come
It is a nice dream. Clearly we want to make the best product possible
for consumers. It is of course possible for an excellent product to spread virally
by word of mouth, clever volunteer marketing, and more - but it is hard work. I
often hear the idea that we just need to implement XYZ new feature, and people will
flock to us. I'm always eager to see new features, but it seems to me that a
feature-edge is rather a small part of the answer - we may well already be more
secure, more manageable, more easy to upgrade, and lower cost: but unless
consumers know about us - with the best will in the world, they can't choose us.
Making it easy to buy
Absent a near infinite supply of enthusiastic local hacker-types to
install and maintain Free Software for everyone, your average consumer needs the
ability to buy it. Unfortunately, the economics of encouraging high-street shops to
position, and advertise it are punitive - a game for the very rich, and the results
are not uniformly ideal - cf. Nokia's expensive Lumia displays in every mobile
store window in the UK, and the resulting trivial market share. Potentially in
an Amazon / web-purchasing world people can buy "one just like my mate has"
without going into a shop, possibly media hype and brand loyalty can make people
buy expensive new products on-line that they've never physically seen. On the
other hand the experience of the rather cool Litl product - is not too
encouraging.
Economies of scale in retail often lead to a
few,
large high-street vendors - whose appetite for across-the-board risk and
experimentation with new software/hardware combinations is low.
Revolutionary technology improvement
There are two types of people: those who don't like to learn new things,
and what was the other one ?. Persuading people to like
change and new-ness is rather difficult - it seems to me, that the more humdrum
and non-novel a product is, the more attractive 'new-ness' is as a marketing
feature: "new ultra-squeeze toothpaste" turns out to be just the same old
stuff in the same old kind of tube. Conversely - "new - radically
different approach to keyboard key layout - up to 5x more productive" already
doesn't sound like a winner. Apparently some new technologies are just so
usable that people are willing to invest their spare time in learning them -
perhaps that, or their brands, constructed by expensive marketing, are so powerful that people
buy before they try, and feel
they ought to catch up with their friends later.
Questions around Consumer demand generation
Can we create and retain a feature edge vs. other operating systems
(who will relentlessly copy our killer ideas) for long enough, that we can
create a marketing story that reaches enough consumers to build significant
demand ?
Can we mobilise, motivate and inspire enough (tech literate) early
adopters to evangelise, support and unambiguosly advocate the Linux Desktop ?
Can we simultaneously please enough innovators such that they love using the
platform to get their tasks done and let us capture a significant proportion
of the leading edge of the adoption curve ?
Instead of targetting immediate ubiquity, could we find, and focus on a
series of consumer niches which we can grow to become the de-facto
solution, in turn growing a community of developers to sustain that niche ?
Are there intrinsic strengths of the Linux Desktop that would stop any killer
apps moving to other, existing platforms to avoid migration pain ?
Tentative Conclusions
While I've been hacking on and/or using the Linux Desktop it has
improved in an simply incredible fashion. It is hopeful that on it's current
trajectory it will continue to improve, assuming we can continue to (mostly)
avoid the duplication, pointless re-writing, and un-necessary re-invention that
plagues Free Software. However from a consumer adoption point I draw these
hesitant conclusions:
-
There are clearly vast, assymetric, network-effect problems that a
new-entrant into the desktop operating-system market faces. Arguably this is
one reason why that no new entrant to the market proprietary or free has
gained significant market share in the last decade+. The corpses of various
different, well funded but failed attempts abound:
BeOS,
NeXT,
OS/2,
MeeGo Netbook
etc.
-
The economics of an excessively cheap product are a difficult fit for
the consumer market, and drain money from the ecosystem necessary to invest in
development. The relentless drive to a zero cost-point to gain market share in
Linux Desktop pre-loading helps to further sterilize the space.
-
x Free Software applications, and cloud service integration points are
mobile - so the hope for a 'killer app' for linux is unrealistic.
Conversely - working on great cross-platform Free-Software applications makes
a fully-free system a much more viable prospect, not co-incidentally a great way
you can contribute to that is to hack on
LibreOffice, or perhaps
Firefox / Webkit.
-
Ease of use is a laudable goal, but building a rich ecosystem is even
more wonderful. Since (in my view) all software should be Free Software, having
mind-blowingly-sexy integration with for-pay / cloud hardware services at a desktop
level might provide a less transient Linux specific feature edge.
Postscript - the Business user
So - perhaps focusing exclusively on the consumer desktop seems a
bit depressing. It is interesting to consider instead the enterprise / business
user. There are a number of factors here that make this a much more
promising space, and one that I'd love to persuade more hackers to take
seriously as they work. A note of self-interest, my employer SUSE happens to
sell a fantastic Enterprise desktop
SLED.
A quick run-down of the salient differences are:
-
Enterprises like a constrained / locked-down environment - so
a limited set of software from ISVs that can be installed can be a
feature-not-bug. Having said that, it is necessary to have the key
ISV software - luckily many big ERP/CRM systems use the web anyway.
So the ISV problem is much reduced.
-
Enterprises typically purchase hardware in batches of at
least dozens of new machines of a well controlled, specific type
avoiding some of the hardware enablement nightmare. They also try
to continue to buy identical / approved machines on an ongoing
basis, that helps reduce their support cost - and OEMs provide
less crazy component turnover in response.
-
Enterprises also dislike their users being badgered by
trial-ware, so they pay more for their hardware - and get it
imaged in the factory, preferably with a complete set of the
(few) applications that they expect to have in their standard
install.
-
Enterprises are fewer in number than consumers, have highly
technically literate staff choosing technologies, have in-house
support and hopefully do their own pre-deployment testing.
The net effect of the above is to make the economics far more
favourable. Clearly there is still a co-marketing cliff of pain, the
hardware manufacturers provide and debug windows drivers 'for free',
etc. but the economics are much more tractable.
So - what does a strategy for tackling business users look like ?
What do business users care about that consumers tend to care less about ?
I have a few thoughts, probably others have more:
-
Security / Compliance / Encryption / Privacy - businesses
like to not leak their critical customer data, relationship
information, pricing, trade-secrets, and more. Easy to use auditing,
multi-factor access control, encrypted disk, swap, VPN, Tor, DNS
etc. are really useful features to businesses.
-
Lock-down and remote management; it is no good giving people
sexy features without giving an admin the ability to turn them off
for almost everyone. Being able to do that centrally is really
important, and having pretty tools to build and test policies is
also key.
-
Very few features: the more features there are, the more
bugs and odd configuration options the user will find, enable and
then mis-use to crank up support costs.
-
Hetrogenous network integration - integrating well with existing
policy and authentication mechanisms; eDirectory, Active Directory,
LDAP is crucial. Ditto for server services: Exchange, Notes,
Groupwise, instant messaging, remote windows share browsing. The
same for kerberos authentication, single multi-factor sign-on,
secure proxy support and more. All apparently un-sexy integration
problems that are supposed to 'just work', but frequently bit-rot.
-
Enterprise users like a smooth upgrade path, with well
advertised technology deprecations, moving from one high-quality
release to another (many refuse to deploy something new until
after the first service-pack). They also think they dislike rapid
upgrades: every two or three years is enough disruption for their
users. For a potentially de-stabilising OS upgrade - Windows-XP's
10 year run is also appreciated.
-
Enterprises also want primarily bug-fixes, optional new
features, and no re-training costs. Naturally the combination of the
need for bug fixes, new/improved features, no re-training cost, no
regressions and a multi-year update lifecycle is somewhat toxic to
innovation. However it is quite easy for
the staff-time, trainer time, and opportunity cost of spending a day
re-training each user to exceed the cost of the software itself.
We need to justify that by increased productivity: can we persuade
people that the upgrade will clearly save much more than a man-day in
aggregate each year ? the
endless TCO arguments get read by someone at least, and need considering
during development. I sometimes hear the meme "no-one needs
training to use a Mac" - a quick google for 'OSX training services'
(43m hits), vs. 'Windows training services' - (226m hits) is
superficially encouraging until you consider the relative
market shares. If we care about business users, we need to care
about wider cost, and have in-mind the materials / pretty cheat-sheets
to help people migrate.
In my view the most hopeful strategy for the Linux Desktop is to
make it ideal for an enterprise, while not crippling it for consumers and
very early adopters. It is perhaps not glorious - enterprises care little for the
bling that doesn't have a direct, unarguable business benefit - and bling is fun
to hack on; but surely creating real value, that allows people to work more
efficiently, reliably, and speedily has to be a satisfying thing to do
as well.
[ This is a live-ish post, that I'll try to update, correct, and cross-link
better over time. ]
2012-09-09: Sunday.
-
Up rather late - 10:15 - and Church starts at 10:30 - bother;
luckily the babes had quietly dressed, eaten breakfast, and played
happily ('it was boring when you're not around') downstairs.
-
Bundled team Meeks into the car, and got there in time to
help with the larger kids work. Caught up with people after the
service, set off home.
-
Lunch; out to Claire & Simon's party, babes spent ages
wetting each other in the sun / garden in various creative ways -
talked to a number of interesting folks. J. arrived back.
-
Home, quick tea, put babes to bed, listened to a Gordon
sermon on 1 Peter, sleep.
2012-09-08: Saturday.
-
Up early; J. leaving for Louise' Hen Party in Brighton. Made a
picnic lunch for the babes, and set off to Thetford Forest; police closed
the road just above fiveways, diverted to Lackford Lakes instead.
-
Picnic lunch, mourned the lack of sisal in the car to build
crazy structures with; played in the playground, wandered the park
climbing helpful oak-trees whose lower bows have not been removed by
the health and safety executive - fun.
-
Back; babes watched The Voyage of the Dawn Treader, E. out
to play with Sophie, while I worked. Heated the fine lasagne from J.
fed the babes, put them to bed, read a full round of stories. Back to
work until late - enjoyed Citizen Kahn & Dr. Who - sleep.
2012-09-07: Friday.
-
Up early; mail chew, sync. with Ciaran, poked a nasty impress
undo bug, discovering some rather quite exciting code in svx at the
same time in need of re-writing.
-
I love feedback;
Please consider newbies. In
LaTeX you say \documentclass{book}
, and ...
.
Setup a freedesktop account, lunch with J.
-
More hackery, auditing, admin - dinner, helped J. out with
some bits.
2012-09-06: Thursday.
-
Up early; more mail and some writing; set off some builds,
updated server to OpenSUSE 12.2 using
zypper dup
- bit annoying to manually tweak all the
repos.
-
Lunch with J. after her first partial day. Team meeting,
ESC meeting. Poked at the Android / Bionic linker - looks like
bumping a 128 to a 256 and a bit of a re-compile there would be
good. Shame the linker is missing the gnu hash style optimisation.
-
Pizza for dinner, read babes stories, J. out - back to work
for a bit, misc. calls, unwound some un-answered questions on the
list.
2012-09-05: Wednesday.
-
Up early; various sync. calls, more mail chew, board call,
more mail catchup. E's 1st day at school, and others first day with
new teachers, changed classes - lots of tired people in the evening.
2012-09-04: Tuesday.
-
Up early; J. off to her first (Baker) day at work at the kids'
school, other larger three babes playing happily downstairs. Started to
haul down the mail, and filter it. Quick sync. with Kendy, triaged mail,
if you havn't had a response yet - it's really not personal.
2012-09-03: Monday.
-
Up early, cleaned the centre until it shone; packed the cars
and set off for Raglan castle. Had a picnic lunch there, enjoyed the
sunshine, admired the fantastic ruins; now with masonry being restored
in places by Cadw; climbed lots of spiral stairs etc.
-
Back for a typical M50/M5/M42 driving experience - having to
avoid the road by going through lots of smaller nearby roads; stopped
for fish & chips at Kettering, home reasonably early - put babes
to bed. Good to be home.
-
Got the new BT (unlimited) 'unlimited' internet connection
setup, improved 16MBit down and 1Mbit up - more money, but apparently
a 'truly unlimited' connection; as opposed to the disingenuous Talk
Talk product.
2012-09-02: Sunday.
-
Up lateish, off to an entirely re-built Church in Brecon - an
interesting place; cheerful preacher. Back for a roast lunch, out for the
traditional circular walk around a nearby green lane. Back for some abhortive
badmington practise, Bambi on DVD, tea, put babes to bed with a Just William
story, before a final firework or two. Tidied up the house.
2012-09-01: Saturday.
-
Made sandwiches, Mother rather bitten; off to the saddle-point
above Llangorse - just us. H. helped open a gate, but the other remembered
and promised gates that needed opening didn't materialise; annoying.
Helped push a pair of para-gliders' car out of the mud; parked carefully ourselves.
-
Set off up the hill, lunch at the top on the lee side. Lots of
para-gliders taking off, a beautiful day. Wandered across the top, added
some stones to a cairn. Back to the car, and drove down to Llangorse lake
for some rowing-against-the-wind fun, broke the bank with an expensive round
of ice-creams.
-
Back home, sat on the car-park creating chalk drawings on the
pavement - read the start of a Sherlock Holmes story to the babes to get
them into crime fiction. Dinner, bedtime stories, up late talking to the
parents about the YHA governance of yore.
2012-08-31: Friday.
-
Up early, parents out at a kindly local Farmer's. Set off to
visit The Big Pit with Father and four small girls. Lots of fun emulating
the 'works underground with a lamp in his hat' - interesting
displays, rusting pit-props etc. Lots of coal mining history, hard for
babes to understand working 12 to 14 hours per day, or working from six
years old in the dark, with no holiday for your whole life.
-
Drove back, watched The Voyage of the Dawn Treader, with dinner
in the middle, up late.
2012-08-30: Thursday.
-
Up lateish, packed lunch - out to the Elan valley to admire
the various dams, enjoyed the visitors centre, and the Mansergh
heritage variously. Lunch in the playground nearby. Up the valley to
see another dam - this one over-topping beautifully - unusual: the
wettest drought since records began. Good to see 15 days worth of water
for Birmingham in the wet. Did the mental arithmetic for a pumped
power storage scheme here, 120m drop, lots of water, and an easy-ish
route to lay a 2m diameter pipe - sadly order 100's of MW
and recovery it seems.
-
Back to another stream to dam it ourselves with Naomi, Elizabeth
and Grandad. Much fun. Back to meet Barbara and her daughter - a
succeeding (thus far) Mastermind contestant who had helped buy the
study centre when it was setup.
-
Dinner, put babes to bed, watched Ladies in Lavendar -
an extraordinarily odd film.
2012-08-29: Wednesday.
-
Up lateish; Miriam's birthday - breakfast and present opening.
Slugged and played with the babes, got a new mp3 player charged. Played
rush-hour with E.
-
Out into Brecon to dump lots of bits of rubbish and detritus
that won't be used now.
-
Lunch, off to swim in Brecon, much fun had trying to get the
oldest three to the bottom of the 3.5m deep-end. Sadly the high diving
boards are no more in the modern health-and-safety era.
-
On to watch 'Brave' at the cinema, quite fun. Back for a curry
and birthday-cake; put babes to bed.
2012-08-28: Tuesday.
-
Up late; sandwich making, and out to the Tal-y-bont reservoir,
walked over and admired the dam, apparently the Elan versions were
designed by David Mansergh's Grandfather. On to climb along a fine river
going up Pen-y-fan, spent a good while damning first one stream; then
lunch, then another. Admired some waterfalls, forded the stream, much
fun. Fed the babes and put them to bed. Dropped down by Father to
the Griffin Inn with J. for a fine meal - lovely time together, and
walked back under the stars.
2012-08-27: Monday.
-
Up earlyish, out to the Dan-y-rogof caves with Rob & Ilona.
Enjoyed the caves variously, the Cathedral particularly impressive.
Sandwich lunch, admired the heavy horses, and a fine play-barn. Bid 'bye
to R & I. Continued to play a bit. Home via Brecon to get some shopping.
Babes watched 'Up' while I had a conference-call. Fed & put them to bed.
Slugged variously.
2012-08-26: Sunday.
-
Lie-in, tried to follow the parents to Masseyronen but ended up
in Hay on Wye instead; found a church there starting at 11. Back for
lunch with the family. Out to Erwood for a fine walk up a hill in the
bracken. Surprised lots of quizical looking sheep, picked and ate
bilberries, practised skimming flat stones in a convenient lake,
and more. Back to the centre, ate dinner put babes to bed. Up late
talking with Ilona, Robert & family.
2012-08-25: Saturday.
-
Up earlish, slugged around until late. Good to see Robert &
Ilona who arrived in the night. Out to the Brecon Beacons
Mountain Centre. Helped out dry-stone-walling, admired various bits on
sale, saw some tents, bought the wrong collapsible chair by mistake,
got fleeced for some olives. Watched a long movie about the area.
-
Back, via Brecon and slugged - set too on a 3D holographic jigsaw
puzzle. Spag-bog dinner, put babes to bed - read Just William to them,
chatted with the family
2012-08-24: Friday.
-
Up earlyish, packed the car, and set off to Wales. Drove at
some length; stopped off in Rugby to see Chris Halls of Credativ - good
to catch up with him and see his business.
-
On for a longish drive through lots of single lane roads into
the Brecon Beacons to Boughrood. Unpacked, lots of excitement from small
people. Caught up with the parents, bed.
2012-08-23: Thursday.
-
Up rather early; quick breakfast, chewed mail, wrote mail;
reviewed misc. patches - nice to see the 3.6.x fixes flowing in
variously. Call with Noel, lunch. Team call, ESC call, Vojtech's
staff, sync with Kendy.
2012-08-22: Wednesday.
-
Up lateish; chewed mail, call with Vojtech, lunch. More mail
and admin chew; knocked up a LXF column. Called Talk Talk business to
get a MAC code to move to BT - who (it appears) offer a truly unlimited
'unlimited' internet connection instead of a limited 'unlimited' internet
connection (I -hate- that). Got an instant offer to more than halve my
monthly fee to UKP10/month (incl. static IP) - went for the more ethically
advertised product instead.
-
More administration, TDF board call, dinner, put babes to bed,
back for more mail. Worked late.
2012-08-21: Tuesday.
-
Chewed mail; reviewed patches, submitted talks for the
LibreOffice Conference, built ESC bug stats, lunch. More mail
chew. Discovered LCA and FOSDEM overlap - not such good news.
-
Filed expenses, filled out Andrzej's nice Android / remote
GSOC project. More plugging away at cleaning loose ends up. J.
and babes back from Suzie's. Lydia over for dinner, and study
with Dave in the evening.
2012-08-20: Monday.
-
Up early; J. left to her sister's with the babes. Mail chew,
poked at a callgrind profile wrt. auto-correction a little. Chat
with Mark, more mail thrash - how is there so much of it ?
-
Pleased to see Miklos' nice blog on range comments
(with pictures), thanks to the OSBA. Worked late.
2012-08-19: Sunday.
-
Up earlyish, again woken by E. and M. in concert; breakfast,
off to NCC played the violin family service; pleased to see Clara's
Rise Up Youth Teen stories which
are interesting.
-
On to the race-cource to wander; made a rope-swing with mixed
success - no-one significantly injured.
-
Back for lunch, sunned ourselves in the garden & relaxed
variously with David who sadly left mid-afternoon. Got babes fed, and
to bed, sleep early.
2012-08-18: Saturday.
-
Woken by a knocking E. in some dispute with M. oh dear.
Slugged variously until David arrived, caught up, lunch. Managed
somehow to manually inflate the paddling pool, and spent a while
playing in the sun with the babes - David getting rather wet.
-
Mary Rogers over for a cup of tea, got a barbeque going,
lazed in the sun & caught up with David happily while the babes
squared their eyes. Dinner, put babes to bed, J. not feeling great,
talked until late.
2012-08-17: Friday.
-
Up early, mail chewage, administration, calls, a tedious day
of non-hacking.
2012-08-16: Thursday.
-
Chewed mail, bit of patch review, some analysis work,
wrote notes, lunch.
-
Team call, pleased to see Tor's use of some
more (kindly donated) Bytemarkhardware to get
Android (X86 and ARM) tinderboxen
setup and building. Hopefully we can get them up-loading
debugging APKs in a bit.
-
ESC call, wrestled with BCD's awful (compared to kayak)
travel booking tool variously to book LibreOffice Conference
flights. Plagued by errors, and system failures trying to book a
return leg; eventually got it.
-
Pleased by Ecuador's plucky stance against the incomprehensible
gormlessness of the Swedish prosecution. If you want to question the man,
go and question him ! in an age of telecommunications, there is simply no
need to extradite someone to talk to them. Perhaps we should start a
whip-round for the apparently penniless Swedish prosecutors to buy them a
plane ticket to get them to London. Cost of one-day round-trip booked
today, for tomorrow: UKP 200 - inexplicably lame.
2012-08-15: Wednesday.
-
Up; read mail. Excited to see gcc switching to a more modern
language
for compiler development; hopefully that will over time not only improve
the generated C++ binary output, but also hopefully as a side-effect of
re-writing de-foul the horrendous type-unsafe tree tangle in the core.
Not being a language-bigot I have no stake in any C vs. C++ wars, it is
possible to write clean, readable, maintainable code in both - however
the gcc core really needs a big cleanup - and if this is the trigger: I'm
excited; go gcc !
-
A fair bit of feedback on NEEDINFO bugs that got automatically
closed, (sadly in error) multiple times; thanks to all the kind folk who
pointed out that the lack of response was nothing much to do with the bug
and re-opened real, live issues vs. a recent release: we rely on bug
reporters keeping their bugs up-to-date. The reason some of our earliest
bugs were in NEEDINFO anyway was a proxy for UNCONFIRMED - a state to which
it is (apparently) impossible to return unless you have direct DB access,
thanks for your patience; if a bug is still live please just re-open it -
and yes, getting involved with LibreOffice QA
is a great thing to do to help out.
-
Chewed more mail, reviewed patches, responded to bug traffic,
turned a number of bugs into easy hacks by adding code pointers. Sent out
lots of individual reminders about the canonical git repository moving
under gerrit's control.
-
Chat with an old friend; dinner, put babes to bed, processed
some administration; off for the evening.
2012-08-14: Tuesday.
-
Up early; read mail - most encourage to see Noel Grandin finally
finish
the move away from the horror/legacy tools pseudo-templates to STL. Wonderful
work. There are a few more type-unsafe 'List' and 'Container' class places to
remove, but it's really good to see this done: thank you Noel, and Michael Stahl
(who did lots of the review). Hopefully, this should allow us to get the unused
code list finally down to a real zero, and to keep it there.
-
I'm always somewhat curious as to why the canonical Lena
image, which has an unfortunate
back-story hasn't aroused the massed ire of geek-feminism crew; it seems like a
worthy target.
-
David wrote a nice blog about how gerrit can help improve our checkin flow
here.
Bruce, Anne & Sandy over for lunch. Plugged away at an annoying PDF generation
issue / workaround for a broken printer for Davidé.
-
Built ESC agenda and bug stats: looking good, despite the release.
Read the fascinating Gartner Mobile
analysis.
2012-08-13: Monday.
-
Up early, chewed mail, call with Kendy, then with Marie. Poked
at patches, noticed I'd pushed the gstreamer 1.0 work to master by
mistake already; sent some notes out on that. Some stat crunching.
Babes out for dinner.
-
Pleased to see Marco Cecchetti get his freedesktop user
space sorted out so it's easy to enjoy his great work on SVG slide
export, checkout some svg
with lots more samples
available.
2012-08-12: Sunday.
-
Breakfast with & bid 'bye to Georgina, Stephanie &
Isabelle. Off to NCC, Helen spoke on wine from water. Back for a
re-heated barbequeue lunch. Slugged and read variously, helped E.
with her cycling / balancing. Babes watched Polyanna, trampoline
action, tea, put everyone to bed; bed early.
2012-08-11: Saturday.
-
Up earlyish, poor Georgina not slept much; Georgina got
some barbeque bits setup, and out into Cambridge for punting,
good fun had by all. Lunch on the meadows by the mill, an
ice-cream. Park and ride home.
-
Barbeque in the sun, lots of fun. Bathed and put babes
to bed. Watched the Italian Job with G & S, - mini lovers
bed.
2012-08-10: Friday.
-
Up early; day off - off to Wicksteed Park with lots of excited
babies. Arrived, payed an exhorbitant amount for wrist-bands, and enjoyed
an intense day of roller-coasting, pirate-ship riding and more. Met up
with Georgina, Stephanie & Isabelle.
-
Fish & Chips, then home. Good to catch up with Georgina and
her company Pleasetech doing some (proprietary software) for review & co-authoring
fun cartoons to explain the problem.
2012-08-09: Thursday.
-
Up early; dug at mail, three eldest babes all off to a science
day out. Plugged away at gstreamer 1.0 issues, interesting problems trying
to make
catch throw
or b __cxa_throw
do my
bidding; most odd.
-
Team meeting, ESC call, Vojtech's staff call, chat with Caolan,
more misc. hackery, Android build-ary, and GStreamer integration.
2012-08-08: Wednesday.
-
Up early, chewed mail, poked at a new
cppu::WeakObject
lifecycle hack / cleanup I have planned. Wrote an update on what I could
remember about LibreOffice 3.6 behind-the-scenes. Created a templates
git repository for all the nice new templates
the design guys are working on.
-
J. and babes out for lunch, adminery, lunch; poked at bugs.
Dunged out a swathe of obsolete / already merged feature branches in
git. Board call. Plugged at GStreamer 1.0 support, seemingly working
reasonably well (for the legacy 0.10 support) with a new from-clean
master build, interesting.
LibreOffice progress to 3.6.0
a
Today we released
3.6.0, checkout the new
feature summary and release
notes. As always a lot more has happened under the hood than
can easily be addressed in the features page; so here are some of the
behind-the-scenes bits and some of the unsung heros doing the vital, but
more hard-to-see work.
Improving extension registration
For this release we introduced new code to improve the way
extensions (and built-in components) are registered and looked up. This
dungs out a very old and unpleasant piece of the UNO core, replacing it
with a rather simpler and cleaner version that performs better - casual
callgrind profiling shows some nice wins here.
Unfortunately, for one reason and another, despite a delay for a
fourth release candidate, there are still some circumstances where an
upgrade will not re-register some built-in extensions, and silently exit
on first launch (just re-run it). On the down-side
that can affect spell-checking dictionaries, and (for some) on the
up-side disables Auto-COrrection too. This is already fixed for
3.6.1,
due in three weeks, and can easily be worked around by removing the
extensions/
directory from your user-profile (which will
then be re-generated). Better than that as this has been fixed
Stephan Bergmann has further dunged out the registration /
upgrade code to stop this recurring.
The ESC decided
to sticking to our release discipline and cadence to underline the
importance of early QA and bug fixing. I'd love to see more people running
our daily dev-builds of
master and reporting bugs much higher up the food chain, and building
good relationships with the grateful developers who just created them.
See here for a list of other annoying issues in 3.6.0.
Upgrading the code: dead code
In other areas we've made improvements that are hard to see; one of
these is eliminating dead code; here's how we're doing at that: unused
methods vs. time - lower is better.
As you can see the task is ~nearly done. The remaining bits are particularly
hard and involve finally completing the re-write away from the legacy,
non-standard macro-generated template-alikes, to use modern C++ STL
templates, that are far more accessible. Many thanks in particular to
Noel Grandin for his ongoing work there in this release, and
Michael Stahl for reviewing lots of patches, and
Caolan McNamara
for building the dead-code detection infrastructure.
Upgrading the code: German comments
The ongoing charge to translate our remaining German comments
continues to bear fruit. We're around 50% done here - down to around
25k lines (as detected by Miklos' nice bin/find-german-comments
script).
With many thanks for this release to
Luc Castermans,
Philipp Riemer,
Julien Nabet,
Tomaž Vajngerl,
Jesso Clarence – Murugan,
Florian Reisinger,
Sebastian Spaeth,
Philipp Weissenbacher
and several others. One of our (encouraging) problems is that comment translators
tend to get hooked on code cleanup, and move off to do ever more substantial fixes
elsewhere - so it's a great way to get involved in LibreOffice: not unlike the
typing-in of BBC BASIC games that got me into code syntax; if you can understand
German, you can help out here - but please don't send automated translations,
we're eager to have the highest quality.
Upgrading the code: fixing the make system
One profound unpleasantness of the OO.o legacy was the custom version
of the unusual 'dmake' required to reliably build the code. Some heroic hackers
have been taking on the work Bjoern started at Oracle to convert to using GNU
make instead. One benefit of this is exposing massive build parallelism - we now
have a global view of dependencies for nearly all of our internal code in one
GNU make process allowing an incredible degree of parallelism - thousands wide
at times: so if you want to actively stress-test your 1024 CPU machine, we can
help you.
Many thanks to
David Tardon,
Matúš Kukan,
David
Ostrovsky,
Peter Foley,
Pierre-Eric Pelloux-Prayer and more
for working hard at this; and many others for detecting, filing and fixing any
associated bugs. It is encouraging to see David's latest test branch to complete
the UNO Runtime Environment migration, nailing the last set of problems before
tackling the final chunk of 'external' modules - the around 80 bits of source
we download, patch, build and distribute (mostly to enable Windows builds).
Hopefully we'll be fully dmake-free in six months time.
Upgrading the code: unit tests
One of the most exciting things that has been ongoing in LibreOffice
up to 3.6 is the growth in unit tests. In contrast to the various unreliable
automated tests that were present before, these are run very regularly. Some
we run on every module build (ie. just building calc), and yet more we run
on straight-through builds. We aim to spend some small proportion of our
compile-time say under 5% building and executing these as widely as possible:
Many thanks to
Markus Mohrhard,
Artur Dorda,
Daniel Bankston,
Kohei Yoshida,
Miklos Vjana,
Caolan McNamara,
Michael Stahl, and many more - who got tired
of endlessly re-fixing the same sorts of bug, and did something permanent
about it by writing small, fast, reliable unit tests. This is a great job to
get stuck into - we have code lying around that could be turned into nice
unit tests, and it would be great to have more people involved in that work.
Faster, more readable code
Another thing that can't be seen are the very long overdue
improvements in our basic String classes. Traditionally we've had four
string classes where one would be best - heroically Caolan McNamara
finally killed the ByteString
class in 3.6, leaving only three.
With perhaps a greater impact Lubos Lunak spearheaded a fantastic
improvement in good-taste-based-coding with some tweaks to our OUString
class, used almost everywhere. You can see the improvement in this
pseudo diff based on real changes:
- if ( aFlavor.MimeType.indexOf( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( ";Aspect=THUMBNAIL" )) ) != -1 )
- xPropSet->setPropertyValue(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HelpText")), aAny);
+ if ( aFlavor.MimeType.indexOf( ";Aspect=THUMBNAIL" ) != -1 )
+ xPropSet->setPropertyValue("HelpText", aAny);
This sort of change is repeated many, many times. Interestingly in
many cases these make the code not only far more readable, but also produce
smaller, faster code by avoiding intermediate allocations of strings; a great
improvement.
Lubos also has some interesting clang plugin in progress
to automatically generate this sort of semantic code upgrade. Using that is
naturally blocked by completing the on-going
re-basing
on the Apache licensed version of LibreOffice.
Cross-compiling code
Other major improvements in 3.6 are the ability to do cross-compiles of
LibreOffice - Tor Lillqvist did a lot of work here, initially focused on
ensuring that the MingW cross-compile for Windows from Linux worked well. This
can be run on very fast hardware as a tinderbox to ensure that master remains
buildable always. That work has expanded into cross-compilation to Android and
iOS both of which continue to develop and improve in master. At the same time
Eilidh McAdam for Lanedo has done some great work at cross-compiling
.msi files from Linux, re-using wine code - to improve that install flow and
move us towards fully Free Software tooling.
Better builds out of the box
Another nice improvement is the growth of big-machine tinderboxes to
ensure that we keep master in a buildable state on many platforms at all times.
You can checkout the latest build status. With many thanks to Norbert Thiebaud for his time and
CPU horsepower donations, and to ByteMark
for their generous donation of a very substantial machine for native Win32
building that really helps.
Easier code contribution
Yet another ongoing initiative, is that of improving our code submission
process - Bjoern Michaelsen, Norbert Thiebaud, Robert Einsle,
David Ostrovsky and others have been working hard to get Gerrit (an automated code submission
system) setup. This lets you convert your OpenId account to git push access to
a review branch without any interactions, it also has a fine code review flow
for submitted patches, and makes including cherry-picking patches, and providing
feedback much easier. We plan to migrate our main repository to this shortly,
leaving freedesktop as a read-only mirror.
Conclusions
Well, there is much more to say - so many people have done such a lot of
work to make 3.6 better; the QA team has been doing a fantastic job triaging incoming
bugs and raising their priority / flagging them as Most Annoying - we couldn't work
effectively without you guys. The design team have done some really excellent work
in 3.6 as well, overall it's an exciting time for LibreOffice. I hope I've given
you a snapshot of some of the things you can't easily see in the 3.6 release - of
course, there are also a ton of things you really can see that are visible
on our 3.6
new features page - I commend that to you; thanks to Marc Paré for
pulling that together.
If you want to get involved in LibreOffice, there has never been a better
time, there are more people spun-up to help mentor, we continue to grow our developer
base, and there are still plenty of easy
hacks to ease you into the code - we'd love to hear from you.
2012-08-07: Tuesday.
-
Big cooked breakfast with K & J, fun. Met Tim Chapman,
prayed them off briefly; out to the dentists. A certain amount of
drilling later, discovered that, indeed the root in question is
cracked, hmm.
-
Back, to work for another half-day. Built ESC minutes.
Patch review, poked at liblang. Finished early, walked up the heath
with the babes and attempted to fly a kite in rather little wind.
Home, tea, put babes to bed, Dave over for study - good to catch up.
2012-08-06: Monday.
-
Up early, half a day of work - chewed mail, pushed
Android, chart merging, and ahunt's GSOC work to master
(kindly fixed up by Michael Stahl later). Wrote status
report, blog bits etc.
-
James & Kate arrived for lunch, had a really
lovely afternoon, and evening with them - catching up with
where they're at - profoundly enjoyable, up rather late.
2012-08-06: Sunday.
-
Up late, rush for Church, short service - Dami over for
lunch, nice to see her. Encouraged E. into doing some rather
impressive cycling runs. Sat in the sun supervising extended
archery heats in the road between 4x small girls - interestingly
archery (with a shocking plastic bow) is an amazingly age /
ability leveler.
2012-08-04: Saturday.
-
Up lateish; set-too dismantling the PVC french-windows locking
mechanism, which appears to have become increasingly hard to lock/unlock.
An interesting, reasonably simple mechanism apparently installed
incorrectly causing the locking action not to fully engage; silicone
lubricant everywhere, hack-saw surgery on mis-placed bits of metal,
re-assembly between downpours & a working back-door again.
-
J. out with M. out for complimentary underwater photos, lunch.
Got E. out in the road on her bike, eventually after a quite staggering
amount of spurious complaining she got the general idea of steering to
balance, phew.
-
Hacked a little on Android-ness chasing down another random
exception problem. Got hooked on "White Van Man" on iPlayer,
sadly rather profane.
2012-08-03: Friday.
-
Up lateish; to work, mail chew. Cleaned up some android / ant
rule sharing to reduce duplication, killed Makefile cut/paste problems.
Installed android-ndk-r8, which randomly moves more paths around, fixed
the breakage from that; finally got gdbserver working on Intel / Android.
-
Plugged through a few exceptions, added a few missing libraries,
and suddenly - the LibreOffice viewer on Android/Intel is working really
slickly, and with far less pain than the ARM port. It also starts in the
emulator in ~two seconds - but I suspect that it's cheating just a bit to
take advantage of the 3.4Ghz host CPU with 8Mb of L2 cache and everything
coming from RAM.
Back for more prep, Android & LibreOffice on-line talk:
Merged the chart libraries together to try to get under the DSO limit.
2012-08-02: Thursday.
-
More mail thrash, back to some analytics.
-
Pleased that after two years of persecution under a 'hate speech' statute Paul Chambers
has been vindicated for telling a joke. The substantial public cost, stress
etc. apparently caused because of a poorly drafted law and it's enforcement
by the lower court. In their
ruling
the justices noted that:
The 2003 Act did not create some newly minted interference with the first
of President Roosevelt's essential freedoms - freedom of speech and expression. Satirical,
or iconoclastic, or rude comment, the expression of unpopular or unfashionable opinion
about serious or trivial matters, banter or humour, even if distasteful to some or
painful to those subjected to it should and no doubt will continue at their customary
level, quite undiminished by this legislation. Given the submissions by Mr Cooper, we
should perhaps add that for those who have the inclination to use "Twitter" for the
purpose, Shakespeare can be quoted unbowdlerised, and with Edgar, at the end of
King Lear, they are free to speak not what they ought to say, but what they feel.
Perhaps interesting for people who like to defend the continuation of
much more poorly drafted rules on the basis that they are enforced by reasonable
people. It is a great shame such freedoms are widely under threat in private
conversation at free-software conferences.
-
Lunch, Vicki & family over. Team meeting, ESC meeting. Had a go
at editing the geekfeminism wiki. Put babes to bed, read stories. Dinner with
Lydia, back to half work, half watch the Olympic opening ceremony - some
pleasing hymnody and choreography on display.
-
Is it just me or are Captchas getting more clever than I am ?
I routinely fail to identify them first time for some reason.
2012-08-01: Wednesday.
-
Up early, started to chew through an epic mail / task backlog.
Reviewed patches, poked at python bits for Xisco. Really pleased to see
Tollef's work on the sexy "Possible duplicates" work for
bugs.freedesktop.org, hopefully will help reduce the QA team's load.
-
Call with Vojtech, lunch; build ESC bug stats. Submitted a
paper. Dinner, back to work, bed.
2012-07-31: Tuesday.
-
Up rather late; pottered around, lunch. Out swimming to the
pirate pool in Bury St.Edmonds, lots of fun with the girls. Back for
a fine dinner, sermon in the evening, bed but no sleep.
2012-07-30: Monday.
-
Breakfast, talked with the Intel folks, taxi to the airport;
dug through mail on the flight, poked at gstreamer-ness a little more,
some amazing things going on in hit testing there.
-
Train, train, train home - more coding bits. Good to see the
family again, lots of excited little girls. Put them to bed, dinner,
sleep.
2012-07-29: Sunday.
-
Up early; more slideware prep, bus to the venue, more hackery.
Got various bits working - discovered it is indeed Federico's birthday:
apparently his calendar still works as expected.
-
I'd love to have some hints as to who it was that tried to grab
me just before my talk about finding and killing dead code in GNOME,
please mail me, I'd love to talk.
-
Gave a talk on LibreOffice and GNOME integration, with some
misc. status updates around what is going on in development right now:
-
Enjoyed the history talk, had lunch with Andreas; enjoyed the
lightning talks about lots of cool new things happening, fell asleep
by mistake.
-
Caught up with Will & Rob, Tim and hacked on GStreamer 1.0
support, all that dynamic system adaption / detection is always fun.
Off into town for dinner with a group of happy Collaborans. Back to
Rialta for drinks with may other hackers & friends, traditional
game of Napoleon with Jonathan, Rosanne, and j5 - fun. Sang happy
birthday for Federico, bed rather late.
2012-07-28: Saturday.
-
Up late; off to the conference, more catching up with people
left and right. Quested for someone with Android skills, before
discovering the new compile problem is down to an updated sdk that
needs clobbering a different way; it'd be nice if it was not necessary
to copy/paste some chunk of ant-ness to override asset compression.
-
Beer & fine cheese with Federico, Dave, Jonathan &
Rosanne. Out on the bus to the tower, wandered the beaches, found a
nice restaurant, much fun. On to the party later to catch up with
John. Back rather late. Continued trying to debug the android-x86-ness
and started on slides in earnest. Bed extremely late.
2012-07-27: Friday.
-
Woken by the wife calling; lovely to speak to her - lots of
holiday fun happening with the babes. Bus to the conference, caught
Cosimo's Documents talk, fixed the android build there. Lunch, hacked
on LibreOffice's gtk3 support with Cosimo for a bit - nailed a few
nasty theming / re-rendering alpha issues - looking rather better.
-
Enjoyed Rob Bradford's Wayland talk, and seeing gnome-shell
on Wayland in Rob/Neil's. Back to the hotel and spent the evening
with Agustin & Scott.
2012-07-26: Thursday.
-
Up early, bus to the conference. Enjoyed Jacob's Tor talk,
sculled around catching up with people variously. Lunch with Guy,
Jacob, Karen and more. Caught up with Lionel / Lanedo and Lennart.
Out for some tapas with Rob, Stef & Lennart before the cocktail
party. Back, and discussed the industry until late with Andreas.
2012-07-25: Wednesday.
-
Up rather earlier than necessary; breakfast, back to bed.
Out in taxis to Igalia's pretty office. GNOME Advisory Board meeting
for much of the morning. Out for lunch together, then back for more
meetings. Pre-registration party, up until extremely late talking to
and catching up with many friends.
2012-07-24: Tuesday.
-
Up early; packed, got babes packed up, quick mail chew,
build ESC bug stats, checked LXF column, set off by train to
Heathrow.
-
Missed much of the mailing list thrash & excitement
of public triple review / nailing of the last blockers for 3.6.0 -
to allow rc3 to get tagged & pushed.
-
Great to see Las Palmas (exemplary GUADEC hosts of 2009)
moving
to LibreOffice. Amused by the interesting Skype Upgrades
research courtesy of theregister.
-
Hacked on slideware and demo pieces in the plane; some
progress, arrived at La Coruna, shared a taxi with Germán
Póo-Caamaño to the hotel; caught up with the assembled masses,
out for a dinner until very late.
2012-07-23: Monday.
-
Off to the dentists to pick up a new, harder mouth-guard
apparently one that is harder to grind in half. Chewed mail
instead of own teeth for a while.
-
Misc. release time panicing about bugs variously, lots of
patch review, chased the Mac accessibility related crasher. Pleased
to read Kohei's nice post about the ongoing calc
data structure re-work. Wrote weekly status report.
-
More mail & task unwinding. Wrote LinuxFormat column on
LibreOffice 3.6. Slugged with J. sadly our evening out postponed
by lack of a baby-sitter.
2012-07-22: Sunday.
-
Up lateish; H's birthday - more present unwrapping action; good
to see a little person happy with her gifts. Off to NCC, helped out with
the creche; hopefully nearing the end of a creche era. Back
-
Roast lunch; watched last Line of Duty - somewhat grisly,
while babes watched a Narnia DVD. Out into the road to try to teach E.
to ride her bicycle - much improved steering action; good.
-
Tea, slugging; sermon on 1 Chronicles from All-Souls.
2012-07-21: Saturday.
-
J's birthday, up earlyish - banner construction with H.
N and M. Tea in bed, breakfast & present un-wrapping. Fun.
-
Packed everyone into the car, popped into the estate
agent's to ammend a contract; bought some bread & off to
Colchester for a feast of live gladiation (with real fake blood),
Roman pot-making, chariot racing, over-fiftys-acting, and more;
fun.
-
Back later, tea, put babes to bed. Somehow hooked with J.
to the Line of Duty series on iPlayer, up late.
2012-07-20: Friday.
-
Up early, dropped babes to school and J. for a run. Mail chew,
design review and code-reading with Kendy much of the morning and early
afternoon.
-
Tried to chase-down a Mac a11y bug by poking at a similar
Linux issue: which is not there, pleasing at one level.
2012-07-19: Thursday.
-
Up later; mail chew; bug triage 3.6.0 looking in good shape.
Lunch. Team meeting, ESC call, Vojtech's staff. Misc. patch review
and merging for 3.6.0.
-
Great to see Fridrich porting away from the Mozilla ldap
code, and work from David O. to parse the (rather simple) Thunderbird
addressbook database. With a bit more work: certificate management,
Outlook integration, perhaps we can finally kill the big copy of
mozilla we build and distribute.
-
Nice to see the H-Open's take on the
Open Source Business Alliance's investment
in improving LibreOffice, an encouraging way to aggregate and apply
funding from multiple sources to improve Free Software for everyone;
thanks for some great work.
-
Out to Falmouth St. to unscrew some shelves for J's wall
painting, and replace a few lights.
2012-07-18: Wednesday.
-
To work early, chewed mail, catch-up with Vojtech. Misc. patch
review, read some of Andrzej's code, some VCL re-factoring bits, and
continued the re-basing slog. Call with Alan, chat with Thorsten,
dinner, back to work, inadvertently missed cell group.
2012-07-17: Tuesday.
-
Mail chew; worked away at re-basing, included Jurgen's ucpp
re-work of idlc, cleaned some manic perl / drawshape XML parsing used
to generate docx vml shape tables.
-
Naomi & Grace Brighty over for a sleep-over in the evening.
2012-07-16: Monday.
-
Up early, mail chew, patch review, more mail. Wrote status report,
poked into a number of Mac accessibility related stack traces. Lunch.
Fixed a presenter view silly.
-
Poked at x86 Android cross-compilation. Call with Kendy, returned
from holiday. Dinner, worked late digging into code history.
-
Followed the Microsoft Office
2013 announcement; mildly pleased that they also have problems articulating
the scattered new features they have. Further pleased that one of their marquee
features is PDF import - you saw it in LibreOffice first. I wonder if they've got
to Hybrid PDFs yet (embedding the original ODF inside PDFs). Also interesting
is the abandonment of Windows XP - true it's only 25% of the PC market, but we
continue to build LibreOffice for Mac and Linux which together are less than that.
Of course, we've still got a lot of work to do to overtake on feature / function /
performance across the board, but it's a good race to run.
2012-07-15: Sunday.
-
Up late; out to NCC with Charlotte, helped in the creche; home
for a fine lunch; lazed variously. Watched Chariots of Fire with
the babes, dinner, bed early.
2012-07-14: Saturday.
-
Up lateish; breakfast, out to a music group practise that was
cancelled, stocked up on light-bulbs instead; home for a quick lunch;
out to fit them. On to a kids, orchestral extraveganza in the Memorial
Hall.
-
Back to prepare for H's party; kids arrived, painted nails,
fed, entertained people variously; watched The Italian Job with
the bigger girls; Charlotte sleeping over with H. Tried to get them to
sleep.
2012-07-13: Friday.
-
Up early, bit groggy; Andrzej over to cheer me up -
good progress on his Android slideshow remote, planned out
the next weeks. Lunch. Bug triage and digging variously.
-
Installed the nice x86 Atom version of ice-cream
sandwich, installed the kvm package
modprobe kvm-intel
no idea why that is not there automagically; and bingo - an
ultra-fast Android emulator: wow, really nice - I wonder if
it is faster than the real devices though; perhaps a risk
there. You have to download/upgrade the latest SDK package
and re-load the SDK/android tool in order to see the x86
profile.
-
Call with Fridrich, Cedric & Andrzej & bid
'bye to him. Dinner, bit more work after that.
-
Got stuck into The Wealth and Poverty of Nations
by David Landes to complement Guns, Germs & Steel,
interesting.
2012-07-12: Thursday
-
Chewed mail, poked at code, horror cold coming on; Lunch.
Team meeting, ESC call, poked at Android remote-control build
builds. sync with ahunt on IRC. Hideous toothache in the evening,
medicated sleep.
2012-07-11: Wednesday
-
Poked mail, reviewed reports. Extended the parallelism
reduction for linking - it turns out that being able to link
dozens of libraries at the same time on the local machine
is a mixed blessing. For icecream we want to compile tens of
modules wide - since much of the compilation is done elsewhere,
yet for linking - serialisation (particularly with debug symbols)
is mandatory to avoid running out of virtual memory / swap etc.
More work needed here.
-
Andrejz arrived narrowly missing some rather substantial
delivery of rain. Dinner, out to cell group in the evening.
2012-07-10: Tuesday
-
Mail processing; visited the dentist, who once again spent his time
persuading me not to have any treatment - interesting; new gum-shield. Back
for more mail, sync with Thorsten. Out to have lunch with E. on her first
trial day at school (starting next term).
-
Misc. patch review, building; upgraded hardware in my many-CPU
build machine. Built ESC bug stats. Dinner with Lydia, Janice & J.
Back to work, caught up with David O.
2012-07-09: Monday
-
Up early; chewed mail - pleased to see Markus doing a new
cppunit
release after so long.
-
Andrezj Hunt arrived, and started to check-in some smartphone
remote control related pieces, good to see him. Switched to Google DNS
"Talk Talk" appear to not like to resolve names reliably or in a
timely way.
-
More mail chew, bit of a deluge of gerrit mail. Lunch. Wrote
status report, helped Andrezj debug various bits - somehow his machine
performs appallingly despite being well endowed with RAM and CPU, odd.
-
Dinner, J. with a PCC meeting, back to catch up on my work;
Lydia dropped in until late.
2012-07-08: Sunday
-
Breakfast, out to NCC, Ben & Miriam visiting - good to
see them, spoke on Daniel 8. Back for lunch, slugged a little, out
to see an art exhibition nearby, home for tea; put babes to bed.
2012-07-07: Saturday
-
Up earlyish; Dave & Emily over to cook an American
style breakfast for us: pancakes, syrup and other goodies,
lovely. They played with the kids, giving me some time to read
up on Daniel 8.
-
Out to Newmarket Carnival after lunch. Much British-style
driving rain, and a few hair-raising rides, circus equipment to
play with, and more. Home for tea.
-
Out to watch the Olympic Flame wend its way past our
end of town; worked late reading around Daniel 8; Persians,
Greeks, Selucids, Antiochus Epiphanes etc. bed late.
2012-07-06: Friday
-
Up lateish, babes off school due to severed water main;
toothache; fun. Submitted a conference paper or two, chewed mail.
More re-basing work, fixed a number of bugs in misc. compiled code.
2012-07-05: Thursday
-
Up; mail chew, call from Novell UK checking I still exist:
apparently I do (not going to Bracknell has this effect apparently).
Call about new menu design / re-factoring. Lunch. Team meeting, ESC
meeting.
-
Out with M. for her swimming lessons - impressive progress.
Back, fed babes, put them to bed; back to work until late.
2012-07-04: Tuesday
-
Up, chewed mail, overnight builds finished nicely; call with
Thorsten. Fixed a basic IDE crasher, started bisecting a Presenter Console
bug caused by some change elsewhere out of the codebase. Pleased to see
the gcc guys tackling their unintented c++11 vs. c++08 ABI incompatibility.
-
Built ESC bug stats, wrote up Android blog bits, more code
crunching. Worked late while J. filed a job application.
2012-07-03: Tuesday
-
Up, chewed mail, overnight builds finished nicely; call with
Thorsten. Fixed a basic IDE crasher, started bisecting a Presenter Console
bug caused by some change elsewhere out of the codebase. Pleased to see
the gcc guys tackling their unintented c++11 vs. c++08 ABI incompatibility.
-
Built ESC bug stats, wrote up Android blog bits, more code
crunching.
LibreOffice / Android update
This last week, Tor Lillqvist handed me the task of mentoring
Iain Billet for his Google Summer of Code project. He is working hard to
make a nice viewer out of LibreOffice for Android. Rafael Dominguez's new
templates dialog blog post provoked / inspired me to give a quick
status update on where we're at. To re-emphasise, the bulk of this is
Tor's work, with viewer bits by Iain; I just took some screenshots.
What is done already ?
For those unlucky enough not to have been at FOSDEM / LinuxTag
to catch the latest status, and see the live demo fun - here is a quick
snapshot of the current state of affairs:
- Cross-compilation to Android (and iOS) works rather
acceptably, almost the entire code-base cross-compiles out
of the box for both 3.6 and master.
- Basic system functions and bootstrapping works. The
UNO run-time is running nicely, we dynamically binary patch the
bugs
in the ARM STL implementation to make C++ work, and all that good
stuff.
- Packaging, signing, installing and running the mix of Java,
C and C++ code works reasonably reliably - though an un-install
before a re-install helps avoid some operating-system leaks.
- We can run a number of the new LibreOffice unit tests
that exercise eg. the calc core intensively. These pass, as
expected just like on a normal linux system.
- We have a basic VCL / toolkit backend proof-of-concept to
allow rendering windows to an Android NativeWindow, and capture
event input for a Frankenstein demo.
What does that look like - well, that gives a fairly horrific,
bolts and all, barely usable (even with keyboard and mouse) office suite
on your tablet; here is a picture of it under the emulator:
As you can see the rendering is reasonable, albeit with the odd
silly re-draw artifact but the user interface is otherwise
utterly
horrible for a tablet device.
Current state
As part of the Google Summer of Code, Iain Billet is working hard
at building a Java viewer UI for LibreOffice, that will integrate nicely
into the platform, and provide fast pan / zoom / page-flip browsing, and
all that good stuff you expect. Tor meanwhile (modulo having just left for
vacation), is working on tiled page rendering to textures. That will allow
us to quickly render portions of document content at any scale,
asynchronously in a background thread, to suit the viewer. This is going
reasonably well.
We have a viewer / file-manager shell to allow managing and selecting
your documents on the sdcard. Hopefully this is iterating slowly towards the
beautiful design
from the design team:
And the initial viewer UI with page selector is coming along nicely too, again targetting
the design:
The code for the viewer is in the git / master branch in the
android/experimental/LibreOffice4Android
directory. It should
build out of the box with a make clean all install run
, of course
after you have followed the
compilation instructions
and Android how-to.
Help much appreciated improving and extending this to other components: calc, impress etc.
The test-files above are (for interest)
1,
2.
Ongoing viewer work
As you can see, lots of the heavy lifting is already completed, and
the stage of fertile hacking is arriving, with smaller incremental forays from
something working, to something better. There are still a largeish number of
things that need doing / cleaning up though, some of these will help other
platforms & products too:
-
Move to using the cunning Mozilla faulty linker not only
to get faster startup, and avoid the need to de-compress and
duplicate libraries from our 70Mb install onto internal flash.
-
Complete and expand the page rendering abstractions for
spreadsheets and presentations, to allow better async rendering /
zooming and navigation of these different document types.
-
Target Android - Intel/x86, not only to take advantage of a
faster / accelerated emulator and thus quicker development iterations,
but also to target Android/x86.
-
Optimisation: profiling, with valgrind
on android or better begging a profile from someone with a
beefier machine already setup.
-
Optimisation: removing irrelevant pieces from startup,
such as parsing dimensions for many thousands of different kinds of
print-able sheets of labels.
-
Optimisation: continuing the move to a single shared library
already in-place with the
--enable-mergelibs
configure
option to reduce link time and allow better optimisations such as
global code re-ordering.
This is also good for desktop users of course, and getting everything
into one DSO is a pre-condition for the iOS port.
-
Tons of UI / viewer improvements, 3D transitions, pretty
page flips, and more. Improved, distinctive artwork for different
file-formats (we support so many) etc.
Help much appreciated with any of that, please do mail the
developers list if
you want to get stuck in somewhere there.
Future editor work
Of course, a viewer, even one that handles the full breadth of formats
that LibreOffice can handle, is not enough. The plan in the deeper future is to
add editing functionality. That brings plenty of challenges, particularly around
re-using existing code and widgets in a tasteful way.
One thing that really needs working on is a liblibreoffice.so
model. That would allow developers to link a single shared library and do a small
amount of platform/toolkit integration work to re-use the LibreOffice core and renderer.
That is something that is reasonably do-able today in fact, indeed - it would be
rather excellent to fully split the rendering core from the presentation / scrolling
etc. internally. That would also allow a new, native linux, viewer client, which in
turn would accelerate prototyping of what is needed for mobile. Currently a slow
build, re-package, install, run appears to be required for native Android
development.
Finally if you want to hear, and see more, and get involved with what
we're up to, a great way to do that is by coming to:
2012-07-02: Monday
-
Up early; mail chew, and more mail. More re-basing, patch
merging, misc. build improvement. Built Matus' latest tubes branch,
wrote status report, patch review etc. Left lots of code building
overnight.
2012-07-01: Sunday
-
Up earlyish; off to NCC - helped in the creche. Back for
lunch, slugged variously on the sofa with J. and babes. Out for
George Wood's party, and a walk onto the heath in the afternoon, fun.
-
Soldered up George's motor in the evening; read up on the
latest reprap-ness, sleep.
2012-06-30: Saturday
-
Woken early by M. talking of 'school trips', back to sleep.
Up, and off to Thetford Forest with M. for her annual day-out-with-daddy,
Go-Ape Junior - for the over 1m tall's. Lots of fun and bravery on
display from a small person high above the ground. Lunch at the cafe.
Played on more machines, home.
-
De-briefed M. with the family, read stories to the other three,
slugged variously. Bit of mail chew, thrilled by J's office tidying spree.
Bathed babies, tea. Watched LOTR #3
part 2 with H. until Lydia arrived: locked out. Set off with H. and a
ladder to get through a window, and got the door opened - a triumph
for H.
2012-06-29: Friday
-
Up early; mail chew - plugged away at windows build
issues: the cl.exe /EP flag generating pre-processed output
without embedded line-number markup is great.
-
While playing with the Android build - hacked at the
Java viewer a little. More code audit pieces. Out for a run
before dinner, caught up with some google-IO-ness. Watched
LOTR #3 part 1 with H. & J. later.
2012-06-28: Thursday
-
Up early, mail chew, more auditing and re-basing work. Lunch.
Normal round of meetings, Team meeting, ESC meeting minutes.
More plugging away at helper tooling. Dinner, worked late while J.
counselled.
2012-06-27: Wednesday
-
Chewed mail backed up machine, and upgraded hardware.
Crunched some stats. Lunch. Spent a while re-working our use of
cppunit to simplify that.
-
Emily, Dave & his charming family over for dinner,
had a fine evening together, bed late.
2012-06-26: Tuesday
-
Analytics work, mail chew, clawed back through some of the
queued up patches in the inbox. Built ESC bug stats etc. Lunch.
-
On the subject of offense; thankfully it seems Jewelfox got
less concerned; and Jono posted a longer but useful post
pointing out that causing offense is not per-se harrasment. I rather
agree. I've mortally offended a much loved survivor friend simply
by offering my opinion ('basically a bit liberal') on a Christian
music festival - and (apparently) ruined her week. It appears impossible
to simultaneously avoid everyone's PTSD triggers: simply
being male and being behind someone can be enough to make some feel
unsafe, nevermind having a loud voice. Some people have such tragic
experiences that you can only thankfully marvel that they did survive.
Having said that, some form of proportionate harm minimisation has to
be good, even if it is impossible to please everyone.
Re-reading the policy, I think an immediate, helpful band-aid might be the
insertion of a 'can' (of worms?): Harassment can include offensive
verbal comments... making it more of a useful guideline than a hard rule.
I'd also love to see verbal comments that people find offensive de-coupled from
their juxtaposition with stalking and worse. Thinking around this I've learned
a lot - particularly reading the meta-derailing
literature. Invoking derailing sometimes seems to me to have a rather malign
side-effect of simultaneously asserting victimhood, expert status, and thus
exclusive competence: an argument by authority. No doubt some people are just
thoughtless trolls, but many are not and get confused by a siege mentality,
no matter how justified. I also discovered that my profound moral dismay
at the act of prostitution
- take for example it's effect on the intimacy, exclusivity and mutual self-giving
of marriage - has a new name: "Whorephobia", an amusing label indeed:
how did we end up here ?
-
Prodded the Android build some more, I should try the Intel
target overnight I think. Dinner with Lydia, worked late.
2012-06-25: Monday
-
Mail chew, reviewed and cherry-picked misc. patches. Tested a
performance fix, only to find that the performance bug was already
fixed, at least it made things no worse. Wrote status report.
-
Lunch, more mail, call with Kendy, wrote LXF column. More
analytics, dinner - J's PCC meeting, worked rather late.
2012-06-24: Sunday
-
Left J. sleeping, off to church to play the violin; the
on-the-park version cancelled due to excessive rain, fun. Shared
indoor-picnic afterwards. Home, slept much of the afternoon.
-
Meal, bathed babes & read stories - Puck of Pooks Hill
with H. Bit of repsnapper multi-settings hackery, bed early.
2012-06-23: Saturday
-
Up lateish, dressed & set-off for Tim's 50th birthday
party, lots of family, fine food, mixed weather: fun. Back for a
quick tea, put babes to bed, watched LOTR #2 2nd part with H.
2012-06-22: Friday
-
Up early; mail chew. Patch merging action, more book-keeping
scripting, and re-basing work.
2012-06-21: Thursday
-
Mail chew, slogged away at some auditing work. Lunch. Team
meeting, ESC call, posted minutes, Vojtech's staff call. Tried to get
the sexy new gerrit instance
(which should help further simplify the flow of patches into LibreOffice)
to do my bidding. Re-read the instructions
to discover that setting up the username is rather important; good.
Continued to poke at dependency reduction around .hdl and .hpp
files - which make up some ~50% of our dependency weight after the huge
chunk of boost-ness is removed. Discovered my Android build was being
scuppered by an unwanted -Werror, good.
-
Tried to unwind BCD's to my mind rather misleading passive
approval system which requires approval it seems.
-
Watched The Italian Job with the wife to see if it is
suitable for the babes.
2012-06-20: Wednesday
-
Poked at mail, a set of concerns from
Danielle
and jewelfox.
It seems my brief
critique of the vagueness of 'offense' as a yardstick
for harassment is itself sufficiently offensive that (sadly) it makes some
feel that people like me don't belong here. That is emphatically
not my intention, but remarkably similar to my feelings when reading the
policy I was discussing. Sigh, that's why I think we could have a clearer
and better (longer) policy that makes everyone feel safe and at home. For
what it's worth the short and medium versions of the suggested policy
seem fine to me:
-
Interestingly, it seems we share quite a lot of common ground.
There is a concern about harassment on both sides. Even more
encouraging, there is some exemplary casuistic presentation.
Who can deny that an extended, un-solicited harangue
as from a bus driver ranting at someone about going to Hell is
harassment whose equivalent has no place at a conference ? Personally,
I think that that is an unloving, profoundly counter-productive and hostile
presentation that could easily be codified as a good case of what is
unacceptable, in a form that all can enthusiastically agree with.
-
Counterbalancing that I enjoy being part of a community of
intellectuals - delighted by and interested in diverse ideas. Accidentally
forbidding the full exploration of these in dialog seems like it benefits
no-one, yet that is how the verbal offense policy reads to me. Mandating a
'politically correct' monoculture, where no differing views are
expressed seems both extraordinary and to require adjudication to
tax Solomon to work out what is 'correct'.
-
I think that Daniele captures what I'd proscribe rather well
with: "You can willingly consent to discuss your religion, but you
don't have to accept being verbally abused because of it." -
I totally agree. If the harassment policy read: "includes verbal
abuse" - or somesuch, to cover the pernicious, unsolicited aspect.
However I still think a case-based approach with clear examples of
unacceptable and acceptable behaviour is much more likely to
provide a useful guide for the poor organisers who get to adjudicate,
and more likely to get common support from participants than a
precise / language-lawyer approach.
-
As an example, I agree that sexually explicit imagery and
discussion in presentations is completely inappropriate -
hopefully that's something that's easy to preclude.
Yet, on the other hand - I occasionally show a sample
image
of my wife & I on our wedding day in my presentations, sometimes I make
a tame related comment on the obvious aphrodisiac qualities of hacking
on XYZ project in relation to it. No doubt, if you seek it, there is plenty
of potential offense to be found - yet I fear a bland world where
celebrating one's beloved wife in public gets forbidden in the name of
diversity.
-
I'm certain that just being me also offends plenty of people;
perhaps also common ground. What I don't expect is for people to
advocate attempts to censor others (like Gerv) who carefully
express their political views - even if they happen to disagree with
mine.
So in conclusion, I still believe there is a serious risk in creating
this sort of semi-legal enforcement structure in an unclear area of great
complexity - which is also land-mined by many tragic and emotive experiences of
rejection by family and worse. I'd like to clarify, and proscribe in a more
case-based way what is unacceptable and acceptable, preferably in a pleasant
atmosphere. I'm not eager for a right to persecute, far from it ! I hope instead
for an expectation of open, interactive, sensitive, deep discussion on any
topic: including private discussions that can be overheard if sought out.
Certainly it is easy to critique the policy
(which has raised these issues and gone a long way towards helpfully stating
the obvious), but to be constructive I should try to write such a set of
pattern and anti-pattern pairs - oh for the time to do so.
-
Dropped the car off for servicing in Cambridge. Plugged away at
various compilation, dependency size, and rebasing issues.
-
Dave & Emily over for dinner, had a fun time with them.
2012-06-19: Tuesday
-
Chewed mail backlog much of the morning, generated ESC bug
stats, wrote weekly status report. Lunch. Tried to book the GUADEC
flight, prodded gitdm with Dave.
-
Unfortunately, the lame BCD travel planner shows only much
more expensive flights that take five hours and require one change,
an expensive call to a manual agent finally guarentees the same
direct flight kayak would find you, but costing more, and with a
booking fee on top: cost saving in action.
-
Registered for GUADEC, a smooth flow - modulo the general
sense of revulsion at the Attendee Policy; no doubt discussed to
death elsewhere - but pretty aggravating to me at least. Fair enough
getting aggressive against stalking, groping and such horrors; but
encouraging censorship of "offensive" verbal comments related to sexual
orientation, religion etc. looks like a persecutors charter in the making.
What is offensive ? and to whom ? the fear being that -very- quickly such
good aspirations slide from "applied common sense" into a militant denial
of a basic right to reasonably critique others' world-views. Put another
way I'm really happy for people to tell me how wrong-headed I am on
any number of engaging topics, and to discuss them in an animated
and friendly fashion. I loathe a framework that will discourage
people from coming and saying: "your Christian faith seems
incomprehensibly stupid to me" (for example), or "the crazy
English always fall down the stairs", or whatever.
Since ultimately enforcing whatever policy ends up in just the same
organisers making a decision, I'd prefer -much- less specificity
in a casuistic set of rules. Those would proscribe those genuinely
awful things that are within the range of plausibility
and are not acceptable, without accidentally forbidding normal,
robust, wide-ranging discourse over say fourty or fifty shades
of grey.
-
Plugged away at tooling.
2012-06-18: Monday
-
Up early, breakfast with the babes - turns out that, after a
year of thinking I was 35, today is my 35'th Birthday - perhaps that's
good news. An assortment of tools, plastic-printing related goodies,
and obligatory socks.
-
Triaged mail quickly, booked the day off, call with Kendy.
Out on an extensive shopping trip: glass merchant, electricians,
plumbers, garden centre etc.
-
Off to Falmouth St' to scrub mould from the house for sale,
not ventilating the place: a bad idea. Removed cruft from the loft
etc. Home - pottered around attaching mirror'd glass to an (as yet
to be heated) bed, and adjusting the Y axis variously.
-
Toilet filling mechanism re-plumbing action; spent much of
the afternoon poking at repsnapper advancing the multi-machine
settings support and trying to re-netbook-compress the GUI.
-
Out in the evening to Pizza Express with the lovely wife,
Sandy kindly baby-sitting.
2012-06-17: Sunday
-
Up early, off to NCC dug into the text variously.
Progenitor B's day (or is it A?), RIP Fatherhood. Home for a chunky
pork roast. Slept while babes to James' party.
-
Ate tea with them, read stories, and watched LOTR #2 part
one with H. and J.
2012-06-16: Saturday
-
Up early, E's party preparations today. Strung up flags in the
garden, scrubbed the climbing equipment too; considered party games etc.
-
Influx of large number of fun-sized people, and parents. Much
fun, weather: clement, competitive pass-the-parcel playing etc.
-
Cleared everything away, tea, put most babes to bed. Back to
Daniel 7 until late at night.
2012-06-15: Friday
-
Up early; chewed mail, patch review, more work on perl tooling,
fun. Slogged away at that cheerfully. James & Kate over for lunch
and a lovely afternoon together, played an ad-hoc violin / piano duet
with James, enjoyed their lovely presents; got to understand Chinese a
bit better: no tenses eg. good.
-
Dinner, put babes to bed - back to work, more scripting action.
Worked away in the evening at Daniel 7 take #2.
2012-06-14: Thursday
-
Up early, E's fourth birthday - presents at breakfast, fun.
To work, chewed mail, filed a random gdb
issue, amused and pleased while filing to see a suggested potential
duplicate bug:
Message "I'm sorry, Dave, I can't do that." should be removed
marked WONTFIX - neat (but unrelated).
-
Misc. admin, lunch, more re-basing during team call.
2012-06-13: Wednesday
-
Call with Vojtech, wrestled with purchasing system, breakfast.
Mail chew, more auditing and rebasing work, misc. patch review.
-
Call with Bjoern, Board call, interview alongside Charles with
FLOSS weekly - rather an
unusual and interesting format.
-
Worked away researching Daniel 7, Revelation 13 and more for
a sermon this Sunday, fascinating.
2012-06-12: Tuesday
-
Up early, mail chew, built ESC bug metrics. Sync. with Matus.
Got my windows build going again, it seems restoring the previous config
and running a plain VirtualBox command without a path to a vbox file
works better.
-
Lots of code auditing and incremental rebasing; Lydia over
for dinner, worked late.
2012-06-11: Monday
-
Up early, music practices with the girls, packed them
off to school, to work. Sync with Norbert, chewed mail etc.
Wrote status report, did more admin, filed LinuxTag expenses.
-
Fixed an annoying 3.6 presenter console bug. Lunch,
poked at misc. other bugs. Wondered who was using the noisy
machinery outside all day, annyoing.
-
Struggled variously with reprap softare & hardware
in the evening, call with Father, bed.
2012-06-10: Sunday
-
Up lateish; off to NCC, Tony spoke on Philippians.
. Home for lunch, bid 'bye to Leanne,
practised some singing in Harmony with H. and N. - lovely.
-
Played fighting games with M. and N. variously.
Dinner, put babes to bed - bit of python / game programming
with H. call with M&D, bed early.
2012-06-09: Saturday
-
Up lateish; J. out, chewed mail quickly. Babes arrived
back. Pottered around until lunch time. J. and Leanne out into
Bury St Edmonds.
-
Entertained little girls, more cycling training with
E. and M. in the road - a little progress.
-
Poked at FreeCad
and after a lot of random frustration managed to get something
like what H. needs to replace her broken light grip modelled
in 3D.
2012-06-08: Friday
-
Mail, admin, posted ESC minutes, amazed at the unsual suspect's
uninformed backlash to RedHat's (to my mind) rather sensible approach to
the (horribly problematic) UEFI / secure boot issue. Of course, it'd be deeply
preferable to have eg. the well resourced Linux Foundation, or similar body
step in and run a signing program and evangelise it instead IMHO, but if
they or similar others don't want to do that, this like the next least-bad
thing to me. I'm rather impressed by the progress made by Matthew on this
front to safeguard users' ability to choose to manage their own keys.
-
Dug at holiday entitlement - some kind HR person reminded us
suitably in advance of loosing it: neato. Chewed through perl scripts
& auditing work. Chat with Kris, dug through VCL meta-files funkiness
a bit.
-
Read the new corporate expense policy; apparently sticking reciepts
to A4 sheets is now fashionable instead of stapling them together.
-
Spent a while threading my git blame double checker, somehow
spawning 16 git's in parallel works really nicely on an 8 CPU machine,
great to do thirty minutes of work in under five.
-
Talked with Leanne & J. until late, missing H. out for
a sleep-over with Charlotte.
2012-06-07: Thursday
-
Up earlyish, to work, sync. with Norbert, chewed mail - added
bugzilla components etc. Patch review, etc. worked away at some careful
auditing all day.
-
Poked at git tags as notes; wow git notes are unpleasant to
use, merging (non-conflicting) changes with others is really non-intuitive,
git notes show
can't show the note text easily, etc. etc.
-
Had Dave & Emily, Kerry & Cathy over for dinner,
very pleasant.
2012-06-06: Wednesday
-
Chewed mail, several days of catch-up. Call with Vojtech,
knocked up bug stats for ESC call. Looked over Matus' nice work with
Telepathy / Collaboration.
-
It seems that Riccardo did a nice bootchart-2.14.4
release with misc. fixes and python3 support. I suspect that systemd
makes bootchart2 increasingly pointless by booting fast enough, becoming
ubiquitous and by having built-in charting.
-
Pleased to see Brennan Vincent's Google Summer of Code project,
as well mentored by Fridrich, and Valek, and their blog entry showing off
the Microsoft Publisher import - which seems to be going well thus far:
Nice to see the LibreOffice 3.7 feature pipeline starting, as the 3.6
3.6 feature
freeze happens.
-
Lunch, Laura over - analysed some stats, call with Norbert.
Out for a run, dinner, Janice & Lydia over for a call, talked to
Leanne (who is staying for a bit), bed.
2012-06-05: Tuesday
-
Up, scrambled egg for Breakfast, got sucked into Four Days
in June rather a gripping account of the Battle of Waterloo.
-
Out to the substantial tent for the Jubilee 'Street Party' on
the warren - fine food, interesting company, what a celebration etc.
Helped to pack everything away in the afternoon.
-
Drove home, potted around machining the brass heater block,
mounting it etc. in the evening; bed early.
2012-06-04: Monday
-
Packed, off to Bruce & Anne's via West Suffolk Hospital
for an anti-tetanus shot; how long can one twenty second injection
consume in paperwork and waiting ? hacked in the waiting room for a
good while.
-
On to B&A's for a fine lunch; played machining brass in
the workshop for a bit - discovered that my tap set is not tapered
enough, which no doubt is a large part of one problem there.
-
Bit of work in the afternoon, closing out misc. issues
for the 3.6 feature freeze today.
2012-06-03: Sunday
-
Up early, kindly given a lift to Church by Jackie & Peter.
Played the violin & latterly the guitar variously; fun. Claire spoke
on stealing & covetousness.
-
Home for lunch, re-hash of the movie, poked at machining some
brass - with mixed success - drilling sub-mm holes through larger ones
at an angle is a great way to break small drills; you can try drilling
the small ones first, but drilling through them tends to annoyingly
re-seal them.
-
J. arrived back to much applause; bathed babes, tea; bed.
2012-06-02: Saturday
-
Up earlyish, bid 'bye to Rob & Ilona. J. already left to
Brighton. Spent time with the babes, disassembled washing machine to
mend inadequate plastic spring backing the start button; unfortunately
fell down the back step and into a bag of firewood (contining some
nice rusty nails) and got a fine puncture wound to the right thumb
muscle, drat.
-
Lunch with four babes, out into town to admire their work
displayed at the library and get 'Monsters vs. Aliens' for them
to watch. Met a chap 'Mike' distributing Jack Chick pamphlets, it's
been a while since I met one of those. Played in the playground with
the babes.
-
Back home, watched movie, lasagne tea, put them to bed,
exhausted myself - how does J. do it ?
2012-06-01: Friday
-
Up lateish, great news from Google around
API
copyrightability - no doubt the GNU Classpath & Wine guys will
be celebrating tonight.
-
Posted the ESC
minutes lots of nice features racing the feature-freeze just now,
everyone rather busy. Tor and Iain seem to be making good progress with the
Android viewer tangles too, encouragingly. Quick call with Mike.
-
Claire over to interview J. in the evening; Rob & Ilona popped
in to stay for the night, checked out their flashy new car. Nice to catch
up with Ilona until late.
2012-05-31: Thursday
-
Mail, begged QA guys for help testing the beamer fixes in the
latest master snapshots. Reviewed and merged some nice gtk+ theming
improvements. Slogged away at auditing the last 0.3% of commits without
clear license statements.
-
Watched 2nd half of 1st LOTR movie with H. in the evening.
2012-05-30: Wednesday
-
Mail chew; tried to distract myself from re-reading the ALv2 by
hacking on the presenter console and the sorry state of 'primary' vs.
other monitors in LibreOffice; in theory you should project your slides
by default on the external VGA output - how hard can that be ? Finally got
it done - the longest standing, lamest ESC action item bits the dust...
Out to cell group in the evening.
2012-05-29: Tuesday
-
Chewed mail, and more mail, wrote LXF column on the latest
wonders of systemd. Chat with Sjoerd. Lunch. More mail, and unwinding
of git history afterwards - it's fantastic to have fast, local history,
--numstats logging and more. Lydia over for dinner in the evening.
2012-05-28: Monday
-
Up lateish; prodded mail. Really pleased to see the
printerd
project getting underway; having just removed the custom SEGV handler we
had just-for-CUPS to try to overcome it's behaviour when mis-configured,
getting a decent, well-architected, thread-safe (or async), modern printing
API on Linux cannot come too-soon. Better, having something that does sensible
logging by default, provides reasonable error messages, does hot-plug well,
and preferably is worked on by people with a low-tolerance for abominable
user-experience issues would be wonderful.
-
Posted hybrid PDF slides
for LinuxTag talks.
-
Annoyed by VirtualBox writing it's own settings in a version that it
apparently can't re-load (yet another reason to never quit it I suppose).
"Error in VirtualBox.xml (line 3) -- Cannot handle settings version '1.2-linux'"
is not ideal; each time I hack that file about re-create the settings, and
on exit they're busted again; I wonder why.
-
Pushed the latest set of Android fixes to master. More mail, and
cleanup. Dinner.
-
Machined some brass bits with H. read some bedtime stories; watched
the 2nd half of the Lord of the Rings movie.
2012-05-27: Sunday
-
Something of a lie-in, breakfast, off to NCC - Tony spoke on
Philippians. Home for a lazy lunch in the heat of the day. J. & all
but E. out to messy-church; poked with machining brass blocks for
repraps, tapping PTFE tubing, a tapped PTFE tube in a brass block forms
an extremely strong bond at least at room temperature; nice. Machined new
needle nozzles of various sizes.
-
Tried to catch up some of the sleep debt; woke for tea with E. put
babes to bed; watched the first part of the first half of LOTR on DVD with
H. J. and Sandy. Dug through the UK legal verbiage to try to unwind the law
behind a '12' rating. It >seems
that (12) is the same as (12A) such that while renting/selling to 12 year
olds is forbidden, parental discretion is allowed showing these to younger
children. Luckily the first in the trilogy is a PG.
2012-05-26: Saturday
-
Up later; to the conference, manned the booth much of the
day, answering questions, handing out free beer, and in between
trying to read the mail backlog. Good to have Andreas, Florian,
Jaqueline, Thorsten and more helping out.
-
Lunch with Rene, Tim, Thorsten, Cornelius & Lars.
More booth duty, until the end - helped pack up, bid 'byes
& train + plane back to Stansted, bed rather late.
2012-05-25: Friday
-
Up early; breakfast on pleasing top-floor restaurant with
a fine view of the city. To the conference, in time to catch Dirk
and Jurgen's interesting talk; quite a contrast to Italo's
following it.
-
Apparently we need to switch to using the Intel version of
Android for much faster emulated behaviour - which would be rather
a pleasant speedup.
-
Met Daniel Naber of languagetool fame, discussed grammar
checking. Plugged away at my talk variously, fixing misc. bugs,
getting the demos to work nicely, writing more slideware. Sad to
look out over the car-park where, last year I was sitting trying to
persuade Luke Kowalski to do the right thing. Quick interview with
golem, chat with Jurgen.
-
Back for more prep, Android & LibreOffice on-line talk:
-
Long discussion with Philip about rcs and more. Lunch. More work,
Svante's talk, my collaboration talk + demos:
-
Talked with an exciting
new hacker who can translate German comments afterwards, and then
a lengthy and fun discussion with Svante about composeable operations,
change tracking etc.
-
To the booth still talking, caught up with Tim Janik at
length and managed to miss the free beer party; off with the rest
of the extended LibreOffice team to a BlockHouse for a fine steak,
good company etc. Back to the hotel, sync. with Thorsten, bed.
2012-05-24: Thursday
-
Up at 3:45am lovely; taxi to Stansted. Pleased to see
that, as predicted, there is nothing fundamentally innovative enough in
Java to justify significant patent protection. Hopefully that will
encourage the use of OpenJDK in various remaining contexts. It is
interesting to see the contrast to that in the UK where they are
reminded that:
"To members of the jury. Her Majesty’s judges
remind you of the solemn obligation upon you not to reveal, in any
circumstances, to any person, either during the trial or after it is
over, anything relating to it which has occurred in this room while
you have been considering your verdict.
-
Taxi to airport, flight to Berlin; DB to Spandau; checked
into the hotel; to the venue. Met up with a besuited Kendy, and
Italo, Jaqueline, Florian & more. Lunch with TimJ too, fixed a
rich seam of silly bugs in the Android backend.
-
Back for booth duty, met a number of people, gave some
demos. Eventually went off to the LinuxTag party. Good to see
lots of familiar faces and catch up with them. Started hacking on
slideware for until late; taxi back with Jaqueline, Florian
& co. Bed rather late.
2012-05-23: Wednesday
-
Up early; mail chew, call with Vojtech, seemingly the
SUSE Labs conference
is adjacent to the LibreOffice
conference.
-
Discovered that the nice Oracle expense filing application
pre-fills historic exchange rates these days, but only if you leave
them blank. Booked travel for tomorrow early.
-
Needles arrived, machined a beautiful 0.3mm nozzle out of
a 23 gauge needle by grinding off the end, and half of the side
higher up creating (I hope) a beautiful stainless steel mixer
fitting for multi-colored printing. Potentially a 22 gauge might
be better. Lunch.
-
Poked at a 3.6 crasher, and more android demo work, got the
launcher working sensibly named, and a number of annoyances cleaned
up.
2012-05-22: Tuesday
-
Up, poked at the Android build, fixed a number of sillies to
the point that it works again nicely, inasmuch as it works of course.
Chased bugs and misc VCL / broadway backend issues.
-
More LinuxTag
preparation / slide-ware bits. Lunch, filed queued expenses. Did a
bit of hacking on a collaboration demo mode in case of missing / slow
conference wifi.
-
Dinner with Lydia, Janice & Dave over for study - good to
catch up after a while.
2012-05-21: Monday
-
Up early; bought some PTFE tubing for making bowden extruders
from reprapworld. Poked mail.
Mildly amused to read an interview with Rob W. accompanied by a
substantial google advert for LibreOffice thanks to go-downloads.com,
nice.
-
Tried to persuade the gtk+ team of the general loveliness
of enabling getting threading right inside the toolkit rather than
dozens of different applications. Wrote status report.
-
Dug at the Android build a bit. Dinner, out to the local
council meeting to discuss the proposed plan - the council
recommended against them; home - lit fire for counselling
supervision meeting; back to Android poking.
2012-05-20: Sunday
-
Up lateish; off to St Ives for a Plumbline service in a fine set
of barns. Hog roast afterwards, bouncy castle in the adjacent grain barn,
lots of fun. Back later for another spin of the Tintin with the babes.
-
Out for a drink with some other planning victims.
2012-05-19: Saturday
-
Up lateish, slugged in the house for a bit. Took the babes
into town to get Tintin out for the babes including H. to watch.
Tried to buy a 23
guage needle to try to make a new type of reprap / mixing
extruder I'm hoping to make; couldn't buy one at Boots - odd.
-
Took the babes to the playground, back for lunch. Checked
mail; watched Tintin with the babes, fine homemade pizza dinner.
Lydia over to watch Tintin in the evening - hacked on repsnapper
at the same time. Bed.
2012-05-18: Friday
-
Up early; mail chew, great to see the good work that
David(s), Matus etc. have been doing on the gbuild
conversion - switching away from a plunging 'dmake' compile
to a pure gnumake version which has a ton of parallelism
advantages.
-
Encouraged too to read the list of bugs
fixed in 3.5.4rc1 release - rapidly ratcheting up the 3.5 quality,
with several misc. improvements not captured by the generating script either.
-
Joined linkedin to try to hunt a few quiet ones down, and
curious at the number of people it immediately identified as
potential links; I wonder how - I didn't let it see my gmail
addressbook.
-
Fine dinner with the babes in the evening. Back to work
for a bit afterwards.
2012-05-17: Thursday
-
More mail, pleasant call with Sean, an old friend, lunch.
Team meeting, ESC meeting, Vojtech's staff meeting, call with Brian
Green. Dinner, back to some typing.
IBM's Symphony code contribution
Today IBM seems about
to deliver on their promise of opening up the Symphony codebase. That is a
good thing. It represents an important way-point, in the middle of a long
process.
A long journey
I recall well meeting Don Harbison at the OpenOffice conference in Koper
in 2005, and a memorable party during which I no doubt bored him to death by
re-iterating the importance of working with the community, in the open and
contributing your code. Then around April 2006, IBM Workplace 2.6
arrived: a proprietary product based on a version of the OpenOffice.org
1.x code-base. That was enabled by the non-copy-left SISSL license variant
the code was under at the time. Fast fowarding to September 2007,
Lotus Symphony appeared in beta, complete with an
interview "IBM joins OpenOffice to widen it's reach"
with Doug Heintzman, promising:
"IBM will dedicate a core team of 35 programmers in
China to the OpenOffice project, but more people will
be added as needed around the world, he said."
Around this time, we got some contributions of parts of the Symphony feature-set
thrown-over-the wall. Sadly these were mostly vs. an obsolete code base, and were
mostly not maintained or forward ported (though LibreOffice's current Lotus Word Pro
filter was rescued from that dump). At the time I confess I was eager for IBM
not to contribute anything towards propping up the fundamentally unjustly
managed and structured OpenOffice.org project, with which I'd become utterly
disillusioned.
As time passed, the waiting and suspense continued to build, in November 2008 at
OOoCon Beijing
I had the pleasure of meeting Michael Karasick, whose (keynote) gave an
apologetic score-card for this contribution, and promised "we will be contributing".
More time passed. By July 2011, the donation of the code was announced in
a press release
"IBM Donates Lotus Symphony Source Code to the Apache OpenOffice Project",
and still no code.
Then, this week Don Harbison announced that IBM have
signed a software grant agreement to the Apache project for the code, which is
planned to appear in svn as a single, flat, code dump. At last ! the code will be
read and the valuations independently assessed.
I have fond memories of working together with Doug, Michael & Don,
and I'm certain their commitments were sincerely given and meant on each
occasion. I suspect the primary cause of the delay is degrees of embarrassing
frustration inflicted by part of a corporate machine fearful of, and unused
to the transition costs of open, community based development.
Every day, open and engaged ...
Of course, it is great when code that has been proprietary and closed is finally
opened, and licensed in a way that LibreOffice can include it. While there is some sad
level of duplication vs. work done in LibreOffice, there are also some nice sounding
features that
should be useable for our next release as/when we have re-licensed.
On the other hand, one of the real pleasures of working in LibreOffice is the
collegial, interaction and co-operation with my much-appreciated
colleages from Red Hat, SUSE, Canonical, Lanedo, Google and the hundreds of
developers and other supporters that have contributed to the project since we
started ~eighteen months ago.
The credit these guys deserve, for their outstanding effort defies praise.
In my book what looks like the boring, every-day, long-haul work of open
interaction to achieve shared goals is worth immeasurably more. It may take
time to hammer out results that I don't always agree with, but it is good.
Playing well with the community seems to me to mean a lot more
than a one-off code-dump. It also means being willing to compromise and work
constructively with others of differing ideological viewpoints, encouraging
and motivating people to work together.
It means that companies should not horde their changes, to try to be
first to the market. There should be direct contribution of the totality of bug
fixes and improvements, as they are made, to an appropriate branch.
Unfortunately, licensing is a factor here too. The Apache license, by
providing you with the choice of when to release your code: "now ? later ? never ?"
creates an economic incentive to horde and create a saleable, proprietary
feature-edge. That in turn creates a disincentive for others to share. In
contrast, a weak copy-left license pushes people inevitably towards sharing,
working together, and a service & support based business model.
Hoping for good corporate citizens
So, what does this mean, if anything ? if this move signals a
genuine change of heart, towards working collaboratively with the developer
community in a sustained and non-proprietary fashion - releasing code
changes as they are made and working fully in the open, that is good news.
Of course, the most convincing way to make such a commitment
to work well as peers with the community, is to join with the existing
majority of the developers around the code-base, who are eager to work with
IBM as part of LibreOffice. Indeed, more than that - I (and I suspect others)
are anxious to make room for our friends from IBM: Peace, Love, LibreOffice !
However, that will inevitably mean making a few real compromises, working
in community always requires that. One would be formalizing that intention
to contribute well in the most convincing way: using the form of a
source-code-license like the MPLv2
or LGPLv3+
which codify such good behaviour. That helps to ensure timely,
collaborative code contribution from all players, protecting everyone
independent of scale. Is it hard to make such a binding commitment ?
Failing that the option of competing with that community, while
trying to build a track record from scratch as an enthusiastic believer in
open development, collaboration, compromise, working as an equal, etc. may prove
problematic. One canary here may be how this substantial code dump is treated.
Will it be split up into individual, digestible features & commits, which
can be merged individually into the existing Apache OpenOffice codebase.
Or will a single, big, un-documented code commit be attempted ?
A conclusion or two
It looks like IBM will release six+ years of work by their
development team; that is a good thing, it will be interesting to see what
their sharp team has been up to over that time. Opening previously proprietary
software is almost always a good thing, and it may provide our users with
some improvements in due course.
In this historical context actions speak much louder than words,
but are much harder to extrapolate into the future. Will we see a
positive, constructive engagement moving forwards ? the best sign of that
would be positive interaction with, compromise and re-unification with
the vast majority of developers. An ongoing sadness for me is the lack
of even contemplation of that.
Still, in the meantime the LibreOffice community is having fun preparing
for it's 3.6 freeze with steady hacking progress; a prototype new
feature page is in the process of getting built, though I
suspect completing that will need to wait for some last minute
features to get pushed. It's a great place to have fun, make a
difference and get involved with Free Software, why not try an
Easy
Hack today ? every little helps.
2012-05-16: Wednesday
-
Mail chew, call with Vojtech; more trawling of statistics,
E-mail, and wiki editing; minor patch review. Interview. More admin.
2012-05-15: Tuesday
-
Up early, more mail chew, generated some bug metrics for
the ESC. More patch review / merge, worked at slideware. Continued
licensing work.
-
Advisory Board call in the evening. Dinner with Lydia & J.
out for a beer with Chris - good to catch up with him as he prepares to
go into the Anglican ministry.
2012-05-14: Monday
-
Up early; mail chew, created another commit account,
patch review variously for the 3.5.4rc1 freeze today. Pushed a
substantial grammar checker speedup - removing an un-necessary
annoying hang on first-typing (basically caused by poor design of
the
linguistic/
APIs).
-
Wrote/sent status report, spent some time on slideware.
J.'s Pregnancy Crisis Centre AGM in the evening, hacked away at
this & that.
2012-05-13: Sunday
-
Up late, off to Church, N. off to a party. Ruth spoke on
holiness. Chatted to people afterwards; Emily & Beth over for
lunch, played in the garden with the babes.
-
Got everyone kitted up, and tried to train E. to steer a
pedal-less bike in the road, against fierce resistance. Finally
got somewhere at least, no injuries.
-
Watched the Princess Bride with the babes; put them to bed,
did a little hacking on repsnapper, and up late talking to J.
2012-05-12: Saturday
-
Up early; packed the babes in the car and set off to
Aldeburgh, dropped J. off near Ipswich. On via a diversion to
Anne's. Cup of tea.
-
Out to the boating lake, Bruce had kindly made up four
boat-hooks for rescuing model boats (far more fun than the boats
themselves it seems); much fun had by all. Went to throw stones at
the sea - as you do.
-
Back for fine lunch, and off to pick J. up, then to
hospital in Colchester - went to see him. Home - packed babes
off to bed.
-
Worked until midnight looking at an obscure OLE2 file
format / fat chaining issue causing performance issues, the
trivial fixes defeated by our regression tests; finally got it.
2012-05-11: Friday
-
Up, more gut-wrenchingly tedious mail, commit license
auditing, wiki statement list updating, etc.
-
Lovely steak dinner with babes, put them to bed.
Worked late.
2012-05-10: Thursday
-
Up, enjoyed H's PGL assembly - on their adventure activity holiday
with the school year recently; fun. Back to E-mail. Lunch. ESC meeting.
Dug into Caolans' nice fix for an OLE2 stream reading performance regression
caused by some more aggressive security related stream checking, good stuff.
-
Created an account, more scripting and careful digging through
license mails.
2012-05-09: Wednesday
-
Up lateish; mail, patch review, merge, cherry-picking etc.
Dug into grammar checker related slowness from Daniel's nice notes.
Poked away at scripting, and mailing people, worked late.
2012-05-08: Tuesday
-
Up, poked mail, worked through license E-mailage,
updating the wiki etc. Got idly curious & poked my pile of
perl at my Apache OpenOffice (incubating) git repo. Omitting
Rob Weir's checkin of everything, hdu's removal of tango and
Andrew Rist's changing of header licenses, it's interesting to
see out of the ~66k files in the repo, less than 4k have any
other changes: 6% of files changed even slightly, filtering
just for .[ch]* the same number - 6% - ho hum.
-
It is amusing to me that the "developers from over
21 corporate affiliations" advertised by Apache
OpenOffice (incubating), are never enumerated; presumably many
are co-incidental employers of free-time volunteers rather than
official supporters of the project; and odd given the 23 committers
in the last year that Ohloh suggests.
-
Matus got his collaborative editing session going, so
we're all set for some Google Summer of Code goodness. Worked
away until Lydia & Janice over for dinner.
-
Worked through bugs with patches in the evening, pushing
them to people for review, and merging a good few.
2012-05-07: Monday
-
Up earlyish; packed everyone into the car and off
to the Dinosaur park near Norwich. Played outside on the
wonderful climbing facilities, enjoyed the various trails.
Had a picnic lunch.
-
Enjoyed the farm / zoo, sheepdog demonstration,
goat feeding, hand-washing, stamping of sheets etc.
-
Back to the soft-play area - really an impressive
new addition to the park: a set of three drop-slides and
play areas - in a world where the nanny state bans ever
more fun things, big drop-slides for three-year-olds is
one thing I didn't enjoy as a child - fun.
-
Fish and chips on the way home, bed.
2012-05-06: Sunday
-
NCC in the morning, back for lunch. Slugging, and
house tidying; threw out some huge stack of obsolete CDs,
paperwork and un-necessary electronic bits.
-
Played a shape-tracing game on the little girls
to much amusement; after N's successfull guess of a
hexagon, E's square was guessed to be a 'Mexican', hmm.
-
Poked at repsnapper in the evening - looking really
nice - Martin "hurzl" Dieringer has done some simply fantastic
cleanup of the core, threading the slicing, adding all manner of
infill modes eg. hexagonal, and producing some beautiful gcode,
wow !
2012-05-05: Saturday
-
Up late, breakfast; out to Claire & Simon's
for lunch, caught up with them happily. Home for some
slugging. Dug at the planning database, it appears that
a vile
property speculator has submitted plans to build a petrol
station adjacent to our house. Sadly, it appears that UK
planning law appears to have no means of compensating owners
for the reduction in their property value as a side-effect of
the next-door speculator's substantial gain. Drat.
-
Justin & Karen popped by for a meal, and talk
around the fire in the evening.
2012-05-04: Friday
-
Up early, mail chew, more scripting and admin work - how
I prefer substantial C/C++ hacking to perl-ness.
Bid 'bye to the parents, lunch. More scripting in the afternoon,
digging out this and that - Friday club over at our house - dinner,
put babes to bed, more hacking and mail.
2012-05-03: Thursday
-
Up early; mail chew, call with Vojtech. More scripting.
Amazed to see Nokia suing others for patents, yet another terrible
sign of their corporate vitality.
-
Parents arrived in the evening, up late catching up with
them by the fire - fun.
2012-05-02: Wednesday
-
Up early, packed babes off to school, chewed over
some code with Matus, chatted with Andre too. Andre pointed
out a local geocache which we tried to find; took them to
the bus.
-
Chewed mail, merged patch, created new account, call
with Kendy, lunch. Enjoyed Xamarin's beautiful Android
in C# idea, in an amusing twist, Mono is protected by a real
standardisation effort, with its surrender of copyright, that
Java never had.
-
TDF board call, more administrative and scripting grunt
work of deep tedium. Dinner, back to work.
2012-05-01: Tuesday
-
Up early, chewed mail; beavered away at auditing and
scripting. Lunch. Further obsoleted the go-oo website, setup
a new commit account, reviewed text: admin. Got my SUSE/VPN
password reset/changed, still failed to make the
ultra-meta-secure openVPN magic to work, hey ho.
-
Matus (my GSOC student for LibreOffice / spreadsheet
collaboration) and his friend Andre arrived in the evening -
good to meet them in person; up late enjoying the company.
2012-04-30: Monday
-
Up lateish, still feeling pretty awful; urk. Chewed mail.
Worked on scripting and some stats. Interested to see Mirek's
blog about the design team seeking designs for
several of the GSOC projects.
-
Lovely to have H. back in one piece from her wall-to-wall
fun PGL holiday, encouraging stuff.
2012-04-29: Sunday
-
Off to NCC, helped out with creche - surprisingly fun.
Home, lunch, slugged & watched Tintin with the babes. Much
relaxing action. Bed early.
2012-04-28: Saturday
-
M. sick over several hours in the night; urgh. Up reasonably
early. Out to Norwich Castle on a day-out with N. - examined lots of
exhibits; Nando's for a pleasant lunch - back to enjoy more of the
museum and displays in the basement of the keep.
-
Home; dinner, put babes to bed, watched Tintin - really
rather impressed with the animation.
2012-04-27: Friday
-
Up, packed babes off to school - H. leaving for a PGL
holiday with the school for her first few days away from home -
exciting times.
-
Encouraged to see the City of Largo switching
to LibreOffice with some nice touches, such as new-feature lists - I wonder
if we could do that in the core application as an on-upgrade document view, as/when
we get our template/document translation story fixed; hmm. Good to have Dave in the
wider QA community too.
-
Encouraged too to see all the great systemd
progress. Wrote Linux format column. Lunch. Reviewed LXF column after lunch.
-
Spent some time digging at an evil yast2-gtk sizing problem afflicting
the latest releases, nailed most of it - took longer to get cmake to set it's
prefix to
/usr
, and yast2 to show debugging info than to fix the
issue.
-
Dinner, out to see Falmouth Street in the evening with Solomon,
got various bits cleaned out & inspected, met the lady next door.
2012-04-26: Thursday
-
To work, quick mail scan; published work. Poked at a
performance bug that Korrawit had kindly generated a profile for -
incidentally doing the profiling is something a user can easily do
for their pet slow-ness, making developers much more productive
(especially when a wall-clock noticeable win is expected from an
improvement). ~Halved the autocorrect loading time for big tables
killing an N^2. Lunch.
-
Team call, ESC call, more scripting goodness. Dinner, read
stories - H. away at pgl holiday tomorrow. Posted ESC minutes, chat
with jrb, bed.
A LibreOffice/Apache OpenOffice Comparison
Update 2015-06-05: this is now deeply obsolete; checkout the updated sixty page version instead.
As the date of the Apache OpenOffice release approaches,
and the final release candidate wends its way through a couple of rounds of approval
/ voting, I thought it might help clarify the current situation to have a side-by-side
summary of what is in each suite. I'll update this entry in response to
feedback, please do mail me with corrections if I've got things wrong.
Let me say, straight off, that I think the 'removal of copy-left'
code (or at least its replacement) has been done reasonably well. Potentially
rather a confusing description though: there are still great big gobs
of copy-left code as hard requirements for a useful Apache OpenOffice but
these are category b
copy-left, instead of the category x
licenses: (including the LGPL) that Apache excludes. The functionality loss
from this removal is modest, as new versions of dependencies have been
selected or system dependencies added, with even some rule-bending around
shipping GPL dictionaries.
On the other hand, thus far, there are rather few really new
features in the release that did not come from Oracle's existing work;
that is outside of some pleasant drawing improvements, which we hope to
merge into LibreOffice for our next
major release.
A (very) potted history
So - what has been going on in these projects:
-
2010-06-24 - OpenOffice.org 3.3 feature freeze
-
2010-09-28 - OpenOffice.org community
launches
The Document Foundation, with website, lists, beta binaries etc.
-
2011-01-25 - LibreOffice 's first - 3.3.0 release
-
2011-01-26 - OpenOffice.org 3.3 release (a day later)
-
2011-02-28 - OpenOffice.org 3.4 Beta 1 ready for release
-
2011-04-15 - Oracle announces moving OpenOffice.org to a
community project
-
2011-04-20 - Oracle Office Global Business Unit shutdown, all developers on leave
-
2011-06-01 - Oracle donates OpenOffice.org trademark
to Apache
and re-licenses their code.
-
2011-06-03 - LibreOffice 3.4.0
release
-
2011-08-24 - OpenOffice.org 3.4 code
copied over into Apache svn.
-
2011-10-12 - Inaugural LibreOffice
conference in Paris.
-
2012-02-14 - LibreOffice 3.5.0
release
-
2012-02-17 - The Document Foundation
formally incorporated as a German Stiftung.
-
2012-05-01? - Apache OpenOffice 3.4 release
Of course, that misses a huge amount of detail out, a huge team of
developers, translators, QA guys, infrastructure / sysadmin, conference and
hack-fest work that people have done on the LibreOffice side: a simply
staggering job, building a near-complete infrastructure and community that
relentlessly execute against our time-based release plan. I can't begin to
itemize or call out everything that has been achieved by so many.
On the other side work eventually started at Apache OpenOffice
Incubating. Here - there were a few star developers from the Oracle
Office BU that, despite having just been fired, continued to help
Apache fix up what was left post Beta-1 by that hasty exit. They did so,
not because they were required by their employer, but because they felt
bound by duty to the project and the codebase. Prominent among them were
Mathias Bauer, Eike Rathke and Michael Stahl, the last two of whom we
enjoy the company of as active LibreOffice contributors today.
Rob Weir of the Apache project also produced an infographic on the
project's
progress which is worth checking out.
A side-by side comparison
I spent a little while building a side-by-side comparison matrix
to make it reasonably easy to see what is going on and what is in each of
the three versions involved. I collected my data from the Apache OpenOffice 3.4 new
features page which is helpfully split into those from the beta, and
the new ones. I merged some subset of the distinctive main features
from LibreOffice:
3.3,
3.4,
3.5
until I gave up.
Perhaps the biggest single chunk of the work we've done is hidden behind
just a couple of bullet-points: MS Office 2007+ import / export.
While all right-thinking people demand ODF,
there is a sad reality of people using Microsoft's formats that Free Software
users need to interoperate with. Having said that, the
LibreOffice team has done some amazing work building other file filters to
migrate legacy formats into the ODF future. Other features mentioned are a bit
passé, SVG import has been shipping to GNU/Linux users, and many others
since around 2008. Anyhow - here it is (also as an odg):
Some thoughts
One of the most curious things about the OpenOffice.org brand, is the
loyalty that users have to it, despite the 3.3 feature freeze being twenty-two
months ago, having lost much of its development community, and having had no
new release since January 2011 - users are still
downloading this increasingly old and creaky release at top speed. Getting the
LibreOffice message out: about the new, exciting, much more featureful, and fun
suite is important - and much appreciated. Existing profoundly clueful GNU/Linux
communities already know about the best free office suite ever others
don't yet.
So - re-merging the projects; what is the sticking point ? In large
part this comes down to licensing; do you believe that large companies will
contribute their changes in a timely and constructive fashion without the
encouragement of the license requiring that ? do contributors 'just want to
see their code used' ?, or do they really 'just want to work together
with others towards a common goal' ? who can say; only time will tell.
Interestingly, there is perhaps a middle ground in the category b
license. This type of copy-left license can allow binaries to be
distributed under eg. an Apache license - but only after all of the
source code is contributed back.
Interestingly, Apache OpenOffice Incubating already has a heavy
dependence on code under this license; LibreOffice plans to move wholesale
to the category-b Mozilla Public License (MPLv2). For me, going further to the
Apache license would break faith with that significant proportion of our large
developer community who see enabling non-contribution of core fixes and improvements
as anathema, encouraging proprietary software creation. LibreOffice's
weak-copy-left licensing is a compromise, enabling all sorts of awful proprietary
things to be created and sold alongside, and embedded into LibreOffice, yet
it requires contribution to humanity of changes to its core. That is good for
interoperability, and community dynamics. Sadly, most end-users care remarkably
little about licenses - clicking through them without even reading; that is
something we should try to fix.
Another possible development, is the ongoing hope that IBM's
commitment
(of nine months ago) to donate whatever improvements Lotus Symphony has made
to the code-base will finally materialize; which may help to close the growing
feature gap to LibreOffice somewhat in places.
Ultimately, I would strongly prefer to have all of us working
happily together in a community chosen by the active developers, and
governed by a license that defines and regulates our co-operation. I'd like
to think we have a good and growing track-record of being a flourishing,
dynamic and stable foundation in The Document Foundation today.
Certainly, we can't compete for length of track-record with the Apache
pedigree, but in terms of attracting and inspiring developers to have fun
together and produce a predictably great product I think we're excelling.
The Document Foundation is a diverse meritocracy, open to all
contributors with plenty of room for new parties. We will share the same
category-b licensing style that Mozilla and Eclipse have. There is no
reason for more companies not to get involved. I'm happy with where
LibreOffice is, but we can always be better - why not get involved today and
become a key part of the future.
2012-04-25: Wednesday
-
To work, mail chew, lunch. Call with Charles & Sophie.
Chat with Jonathan, did some research variously. Worked at some
scripting pieces. Dinner. Back for more scriptage.
2012-04-24: Tuesday
-
Up early, prodded mail, created an MS Publisher repo for Fridrich
& Valek's GSOC project to produce a nice LibreOffice filter, knocked
up a new commit account. Mail, call with Gabriel, then Noel G., lunch.
-
Great to see we have ten GSOC students this year, with some great
proposals between them, encouraging to see their introductions on list.
Built an ESC agenda.
-
Ranked a number of GUADEC
papers (other than my own on LibreOffice). Reviewed a nice patch from
Caolan for an unusually unpleasant bug. Call with Thorsten & Kendy.
2012-04-23: Monday
-
Chewed mail, and more mail, reviewed misc. patches, got builds
going. Lunch. Chat with Julian & Rob, sync. call with Kendy, wrote
status report.
2012-04-22: Sunday
-
Up early; to NCC; spoke on Daniel 7 - with an emphasis on
the fullfilment of prophecy, rather an inaccessible topic - next
time hope to have time to build some helpful slideware of statues
with clay feet etc.
-
Back for lunch with the family & David, lots of
left-overs to eat up, bid 'bye to all and sundry; slugged around
watching Mad Hot Ballroom (a curious gift from a friend)
with the babes. Bed early.
2012-04-21: Saturday
-
Up early, out to Waitrose to collect food, glasses etc.
Home - packed food, and more food, and yet more food and drinks
into the car, wow - J. has been hard at work. Games, toys, mini
chair for kids, coloring materials, the works.
-
Off to drop J. into Moulton Village Hall, and back to
collect the babes. Returned to find everyone getting setup, tables
out, banquet nearly spread etc.
-
Fine family lunch to celebrate 10 years of marriage;
chatted to all & sundry. The hog-roast man arrived, with lots
of bread & hog; Stow Folk arrived and the band setup, around
a hundred & fourty friends & children arrived and set too
eating, dancing and talking over some fine food & puddings.
A lovely time to celebrate ten happy years and a day of marriage.
-
Finished in reasonable time for babes to get to bed, kindly
helped by a stalwart few to get everything torn down, and loaded
back into the car: apparently more full returning - is it a packing
artifact ? or more puddings.
-
Home with Dave, Robert & Ilona, M&D, Chris to
unpack, stayed up late finishing some champagne, and talking.
2012-04-20: Friday
-
Mail triage, parents over, lots of preparation for
10th wedding anniversary tomorrow.
2012-04-19: Thursday
-
Chewed mail , misc. admin. Lunch.
Team meeting - how can POTS be worse than VOIP; ESC meeting,
Vojtech's staff.
-
More time digging through Daniel 7, the idea of
preparing far ahead of time, makes you realise how much more
time could easily and helpfully be absorbed.
2012-04-18: Wednesday
-
Poked mail, chat with mjw, pleased to see Jakub doing some
great work
shrinking the size of debuginfo. Poked at the UK open-standards
consultation
briefly - the conslutation starts from a rather encouraging place
at least if not mandatory RANDZ.
-
Filed some more easy
hacks, including removing
the cookies.
-
Lunch, created another new commit account; poked at registry
accesses, apparently we grope around in types.rdb for the most amazing
things - initializing enumerations eg. PropertyState in Any's, every
single queryInterface we do, etc. seems like there is some scope for
some real improvements.
-
TDF / Board call. Pleased to see Noel Grandin finally kill the
obsolete/non-standard
tools/table
pseudo-template in favour
of STL; nice.
-
Spent time digging through Daniel 7, and listening to two
of four excellent sermons from Gordon Hugenberger on the topic.
2012-04-17: Tuesday
-
Up lateish, read mail, GSOC proposal review - some
encouraging submissions. Lunch with E. and J. chat with
Simon. More mail, patch review, bug work later.
-
Lydia & David over in the evening for study.
2012-04-16: Monday
-
Up late, mail chew, lunch with Thorsten, Anton & Linus
lovely to have a chance to practise my awfully rusty German. Kindly
dropped at the train station. Dug through the mail backlog a little
on the train.
-
Mail on the plane; analysed the large images digging out
the worst offenders in the ugliness / uselessness stakes, quite a
nice way to find old & dead code it seems.
-
Home late, via bus & taxi. Lovely to see J. again.
2012-04-15: Sunday
-
Up, train to the club with Bubli & Kendy. Breakfast,
misc. hackery, happily caught up with some passing friends from
the old world. Poked at shell background mis-rendering, only to
discover it's a (previously fixed) clipping bug in the Intel X
backend.
-
Bid 'bye to people variously, caught up with Astron a
little and tested some bits with him. Out for a quick dinner and
some beer in town with Bjoern, Miklos & Andras, joined by Kay
Sievers
-
Back to Thorsten's rather late, up even later
talking; sleep.
2012-04-14: Saturday
-
Up early, off into town with Thorsten to the Chaos Computer
Club's interesting home. Got tables & chairs set out, rolls
buttered and familiar with the place. Lots of cool kids turned up
eventually.
-
Thorsten opened, and set too catching up with people, and
helping with pointers to code and skeleton fragments of this and
that variously: PDF export features with Andreas, medical imaging
bits with Christina etc.
-
Long & interesting discussions with Benjamin
about the future of gtk, and how to fix our theming bugs. Demo'd
the rather regressed Android port.
-
Fine pasta from Italo, mini board meeting, stayed up until
dead late, finally got an fsync issue fixed.
2012-04-13: Friday
-
Up lateish, breakfast, chatted with Thorsten, got to the
hacking worked on re-accelerating the XML service rdb directory
reading. Met Thorsten's interesting Father, lunch with Anton.
-
Laboured at service registration corner cases much of
the afternoon. Out in the evening to meet up with the lads &
lasses at a restaurant by a train station, lots of fun & new
faces to put to names, really enjoyable. Drinks very kindly
sponsored by Lanedo.
-
Back to Thorsten's with an army of couch-surfers, got
everyone sorted out, bed late.
2012-04-12: Thursday
-
Up early, breakfast, dropped into Cambridge by the lovely
family. Chewed mail on a nauseating bus to Luton Airport, smooth
EasyJet flight (despite their ploy of using 'last call' as their
first boarding message - another horrible victim of inflation).
-
Trains to Buxtehude, picked up by Thorsten, and flushed
mail, worked while he dealt with his sons , Bubli arrived, fine curry dinner, up late talking with
Thorsten, bed.
2012-04-11: Wednesday
-
Up with the babes, packed the car variously, set off home.
Made good time - 2:45 or so. Lunch, random business call arrived during
it, took that. Out to buy some milk, started on the Private Eye, and
Economist backlog in the garden. Lost at the African stones game vs. H.
-
Worked out travel for tomorrow, got belongings together, and
laptop with a building source tree (useful for hack-fests). Bed earlyish.
2012-04-10: Tuesday
-
Up early dealt with babes while J. slept; set too in the
Garage, got one garage door permanantly shut, and book boxes
stacked high against it (having lots of heavy books is a good
thing in the abstract at least). Managed to rid ourselves of lots
of bulky and light chairs etc. on top of that.
-
Lunch; out into the town, tried out some random exercise
machines in the park, admired the old church, wandered down to
the river, underneath the bridge. Contemplated the daylight robber
selling ice-creams suspiciously - back up to the castle & home
for tea.
-
Watched 101 dalmations with the babes, put them to
bed, and out on the town with J. Pint of guinness, and an Indian
meal at SO! Fine meal, minor annoyance that the pint of lime+soda
silently morphed into a pint of wine+soda (rather different).
Home, chatted to parents, bed.
2012-04-09: Monday
-
Up late, set too working at shifting boxes from A to B
in the double garages, got some larger, lighter bits into the
attic, and considered the problems of cutting spider-trusses
to enlarge roof hatches.
-
Lunch. Trip to the tip to lighten the loads and onto
Sandra's (past the interesting Menwith
Hill base).
-
Swum at Sandras happily for some time, back for a pizza
dinner, put babes to bed, and caught up with the blog.
2012-04-08: Sunday
-
Up lateish, off to the local Methodist Church, large
building pleasant service, application-lite sermon. Back home
for a quick lunch. Poked at boxes, managed to make another way
through the piles in the double garage to the doors.
-
Out to Brimham rocks with the little girls, Robert,
Ilona & Father. Much clambering over the rocks, hoisting
of little girls, fun, hiding in caves, etc. No significant
injuries despite the significant drops. Lots of alive,
obedient little people. Fun jumping over big gaps holding
hands.
-
Home for a pasta dinner, Rob & Ilona left,
watched some James Herriot, bed.
2012-04-07: Saturday
-
Up late, more cleaning of house, vacuuming etc.
Preparation for house-warming party. J. took babes to the
pie shop (in response to much demand from E.).
-
House warming party, John & Jean, Sandra &
Arnold, Ted, Karen & Poppy, Brian & Rona - fun.
Greatly enjoyed the Cambridge vs. Oxford boat race. Light
tea after substantial meal earlier.
-
Stayed up late with Grandma catching up with Robert.
2012-04-06: Friday
-
Up lateish, box moving, unpacking, re-arranged the Garage
further.
-
Out to Coldstone's Cut - a rather pleasant stone sculpture
thing, overlooking the (rather more interesting) industrial quarry.
Into Pately Bridge for lunch, trip to the sweet shop, play in the
playground etc.
-
Back home, more box moving, Robert & Ilona arrived,
dinner, put babes to bed, chatted variously.
2012-04-05: Thursday
-
Prolongued attempts to put up shelves, discovered that
the B&Q spring-loaded plaster / wall fixings were utterly
inadequately tapped and could be trivially pulled apart in the
hand.
-
Into Harrogate, to B&Q to get them refunded - ever
wondered why B&Q have two help/refund queues for four
checkout queues ?
-
Bought some 'heavy duty' B&Q splay plasterboard
fixings instead. Returned home, amazed to discover our repeat
naivety - B&Q fixings again utterly inadequate, not
only (apparently) a cheap Chinese copy of a working splay fixing,
but multiple failure modes and no success: much more torque
required to splay the fixing, than can be provided by any
plasterboard, having held the front steady, the fixing twisted
itself around the bolt, a third failure-type was the end
thread failing, not a single fixing worked.
-
Caught up with the babes and wandered through Knaesborough
looking for them, admired the castle, substantial viaduct over the
river etc.
-
LibreOffice ESC call in the afternoon. Out to Travis
Perkins instead - bought some Rawlplug fixings that 'actually
work (TM)' - and were significantly cheaper.
-
Finally got the shelves up, parents fell asleep in front
of ;the life of plants' in the evening.
2012-04-04: Wednesday
-
Up earlyish, packed car, quick breakfast - set off for
Knaresborough in some terrible driving conditions. Arrived in time
for lunch - not so bad.
-
Admired the parents' new house, and set too getting shelves
erected, boxes moved, and helping out variously. Babes out to wander
some local park-land, while battling boxes and shelves.
-
Board call in the afternoon, good to see so much progress.
-
Applied blow-lamp, wire-wool, flux & solder to the
plumbing to re-arrange the cranked washing machine outlet, and
got that plumbed in.
-
Dinner, put babes to bed, lazed in the evening.
2012-04-03: Tuesday
-
Up lateish; to work, mail chew, poked at some patches, nursed
a windows build.
-
Really pleased to see Fridrich and Valek's beautiful
Corel Draw import. The filter adds (for the first time) historic Corel Draw file
format filters, but - almost better than that it also supports the updated binary format
(v16) used in their new version released less than a month ago.
Another nice new feature for LibreOffice 3.6, itself going into feature-freeze
in a couple of months. I recall using Corel Draw as part of my Design & Communication
GSCE many years ago; it's wonderful that LibreOffice provides an excellent Free-Software
alternative, and great that we can help migrate people's legacy proprietary formats
into ODF, read the full
story.
Perhaps more importantly, there are two, Google Summer
of Code slots open to work with Fridrich & Valek in this area this summer.
First to improve and extend this Corel
Draw filter, and secondly to work on a Microsoft Publisher filter with the same team. Having started my
(serious) contributions to Free Software in the form of file filters (for gnumeric), I'd
love to be a student again and work in a team with Fridrich & Valek as mentors - there
are only a few days left to apply.
-
Chat with Martyn, more mail. Lunch, patch review, paid
some friendly lawyers, did some more licensing paperwork.
-
Built the ESC agenda, thrilled to see Markus Mohrhard
(moggi)'s work on calc regression bugs - down to only two open -
an amazing result - particularly given the unit tests designed
to keep it that way. If only we had some other sharp volunteers
to give this degree of tender love to writer and impress.
-
Filed a number of easy hacks. Really pleased with the work
Lubos has done to cleanup the rtl::OUString mess, and make it much
easier to move to a world of UTF-8 strings in future (if that makes
sense):
- rtl::OUString foo(RTL_CONSTASCII_USTRINGPARAM("foo"));
+ rtl::OUString foo("foo");
- if (foo.equals(rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("baa"))))
+ if (foo == "ABCD")
much more readable and comprehensible.
-
Poked at Andrew's nice about box improvement patch;
aborted half way through the review for a week of vacation over
Easter - back at work next Wednesday or thereabouts, but reading
mail in between times.
2012-04-02: Monday
-
Up later, babes on holiday. Poked IRC, lots of good things
going on spontaneously everywhere, re-generated last month's commit
stats - positive trends in committers per month continue. Wrote Linux
Format column on collaborative editing. It seems rnagy's horrific bug
is down to a aliasing / compiler issue in our sequences; nasty.
-
Lunch. Poked at pointless string allocations, and came up
with a trivial patch or two. What application has nearly 20k copies
of the string "/" in UCS2 stored in memory ? Chat with kendy.
-
More plugging away at mail, patches, admin, cherry-picked
some calc re-factors from 'tubes2' to master after a make-check.
-
Dinner, put babes to bed, finished the pidgeon-proof frame
for J's vegetable garden. Back to some more mail and hackery, got
much closer to one of the horrors I've been hunting for, good.
2012-04-01: Sunday
-
Awoke; the dawning of Q2, late breakfast, off into Aldeburgh
for church service. Wandered around the church following a donkey &
waving (suspiciously reed-like) palm branches; good fun. Some hymn
singing, mini-sermon missing some application; curious interview with
passing Royal Anglian Regiment (Vikings) leader, some hymns, and back
home for lunch - via petting the donkey.
-
Out for a walk down to the beach with Clive & dog, met up
with the rest of the babes boating, ice-cream. Home, admired Bruce's
new creations, pizza tea, drove home.
-
Notes on a G. Beynon sermon on Daniel 7, sleep.
2012-03-31: Saturday
-
Up earlyish, breakfast. Off to Walberswick to catch some
crabs, this
achieved by throwing weighted bags of bacon into a very murky
river, and then hauling them out - with crabs still grabbing on
with a pincer. Fun despite the freezing cold, wind, and complaints
from smaller people. Returned crabs to the mud - no doubt some of
them are on their third flying trip of the day through the air, in
their high-octane, Bockover-style bacon-fueled existence.
-
Picnic lunch huddled in and between Sue & Clive, and
our cars. Back home via the Long
Shop Museum - lots of wonderful engineering-style mechanical
contraptions, tools, and gnarled old hands talking about them.
Where else in the world can you discover a working steam engine,
taking children on rides to and fro - down a 30 metre (it's entire
length) railway track.
-
Back to the Griffin's for tea, bit of string related
libreoffice hackery; fish & chip shop trip to stock up.
Dinner, put babes to bed, fine tea, chat with my parents -
recently moved into their new home (no longer homeless);
talked, sleep.
2012-03-30: Friday
-
Poked at misc. mail, bugs, Regina's interesting dependency
problem, more mail, some analysis work, poked at tubes2 compile
issues. Lunch. Backed up mail.
-
Dug at some simple string analysis to shrink footprint.
Drove to Bruce & Anne's - back for more work & hackery.
Pleasant evening, nice to see Sue, Clive & babes too.
2012-03-29: Thursday
-
Up, to work, poked at misc bugs, mail, and hacked around some
vile toolchain problem. Lunch. More admin & writing. ESC call,
Vojtech's staff.
-
Poking at a gnumake dependency problem - was amazed to see
how shallow the
pwd
concept is in the face of symlinks,
it seems your 'cwd' is a realpath at all times, and the shell just
pretends, passing PWD
from one process to another -
interesting.
-
Out for a run in the evening, dinner, put babes to bed;
knocked up some netting frames for J's vegetable garden. More mail,
bed.
2012-03-28: Wednesday
-
Up early, excited to see Norbert's new high-speed (minimal) Windows
tinderbox beating
some Linux ones in tests and catching individual problem commits in some cases,
neat.
-
Crunched some statistics, dug into some very unusual compiler /
toolchain issues with rnagy. I like Simon's Document Freedom Day post explaining
the joys of embedding ODF inside
PDFs.
-
Drew & Cloph kindly re-worked Will's collaboration video to
something with both voiceover, translated captions, and pixels to boot,
available here.
-
Amused by the How
to marry Bill Gates' daughter school of business ethics. Watched
a BBC / Dirk Gently repeat in the evening.
2012-03-27: Tuesday
-
To school with the babes - Music Assembly. Assisted
babes with their instruments, setting up the music; they
played a pleasant trio - violin, 'cello & piano' fun.
-
Home, chat with Ciaran, lots more mail & patch
chewage. Lunch. Did some sysprof profiling, wondered why it
produces quite different results to callgrind, dug into a
curious document issue. Put together an ESC agenda.
-
Lydia over for dinner, prayer & study with Dave.
2012-03-26: Monday
-
Up early, chewed mail, synched with Will & Eike, wrote
up the hack-fest, misc. admin, tried to push embedded iframe / video
playback into gnome planet, failed. Tried to push the 'old style'
embedding, failed - nasty.
-
Relaxed in the evening, watched a BBC / Dirk Gently
thingit, sleep.
LibreOffice Collaborative Editing Prototype
One of the last, big missing features in LibreOffice is
collaborative editing, to fill this hole Eike Rathke (of RedHat) has
been working for some weeks getting Telepathy code hooked
into the LibreOffice core. This was chosen to allow us to setup a channel
for multi-way communication over existing Instant Messaging (IM) protocols,
without requiring any form of server.
A mini hack-fest
With the lovely Google Summer of Code coming up and this
Collaborative Editing task on the menu, we thought that it would
be good to break the back of the problem, so we had a basic design agreed,
some of the heavy-lifting done, and an awareness of the problem areas, so
that we'd be good mentors for that task (though please apply for other tasks
too, since we suspect this will be rather a popular one, there are a load of
other great things to get stuck into in the project list).
Using some quick funding from The
Document Foundation, it was possible to get Eike to Cambridge, with
Collabora sponsoring us providing office space and Will; getting all the
brain-power we needed into one place: Will, Eike, Myself & Rob.
Outline / progress
The kernel of the collaborative approach chosen here is to realise
that, as long as every user of the suite applies every change in exactly the
same order, it doesn't much matter what the result is; users will get used
to resolving occasional conflicts, as long as they can deterministically
see the results, and know that this is what everyone sees. Naturally, more
complicated designs are possible, but this at least provides a simple,
initial approach while we tease the code apart to extract real controller
objects.
Telepathy provides a powerful instant-messaging framework that
allows the creation of abstract 'tubes' that tunnel invisibly over the
IM protocol - allowing arbitrary new protocols to piggyback on your
existing IM chat. Perhaps, even better than that, the Jabber protocol
provides multi-user chat-rooms, where the order of messages is defined
and consistent - meeting our collaboration requirement. Extending that
to one-to-one connections we can select a master to ensure ordering, and
for local LAN / auto-discovery we have low enough latency that we can do
likewise.
So after some initial design overview from Will, we hacked away
happily - I spent much of my time re-immersing
myself in the calc core code. It is easy to forget how heroic the hackers
that work on the top of LibreOffice are - after all, the lower layers of
the system are shared, and have more use and polish. I dug at the view code,
and ensuring that the ScDocFunc object, was used - splitting large operations
(such as cell entry) into a series of smaller, simpler operations in an undo
transaction on the model.
Eike meanwhile worked to get our unit tests working with various
main-loop integration horrors under control, and the basic
communication channels created and sending messages from A to B. Then he
connected that to my lame demonstration protocol work to get messages and
co-editing flowing.
Will - providing invaluable design input, hacking help, debugging
assistence, API work, an 'Approver' to handle incoming connection requests
from mission control, chased down obscure g_signal
and
C++ exception mis-interactions, provided non-stop enthusiasm, and was
an exemplary host.
We spent much of the week, Monday to Friday, from early until late
at night closeted in a remarkably pleasant sunlight room hacking away, heads
down - with occasional frustrated noises, shaking of the head at code in
dire need of discipline and so on.
What does it look like
(awful image hack linked to
movie
above to avoid iframe/planet troubles). For those who dislike
screencasts, a more shaky, real-camera and two side-by-side laptops version,
where you can see rather less you can go
here, failing that perhaps you'd like
a much higher resolution, non-dubbed
webm
of the above.
Thanks
To Collabora (where dreams
solidify into reality) for hosting us, and providing the invaluable advice,
support and enthusiasm of Will Thompson - thank you: Rob McQueen, Philippe
Kalaf, Guy Lunardi, Neil McGovern & team. To RedHat for Eike's time &
of course to SUSE who pays your humble scribe.
Also to all those who supported LibreOffice financially,
your generosity makes this sort of strategic travel possible, thank you.
What's next
This is really just a prototype, there is a lot of work to turn
this into a product, ie. you will not be seeing this anytime soon outside
of some Experimental feature in any shipping LibreOffice - so unless you
actively want to help hack on it - please don't bother the developers with
questions.
Next, is the Google Summer of Code, there are a lot of rough edges
here for this demo, the instant-messaging contacts list needs finishing,
connection setup and negotiation needs re-factoring and pushing down into
the framework. Then of course, big chunks of re-work to slowly tease out
a controller concept from the code, and ensure that it is interposed
correctly between the Model and View / Scripting.
Another area that will need more work, is encouraging the
Empathy client onto windows, and providing the telepathy framework in
an easy-to-consume form there.
Of course, if you want to play with this, and/or see what new
exciting things will come out of the next LibreOffice Hackfest, it would
be fantastic to see you at:
For some good German beer, sausages, excellent company, and some
intense co-editing of the code.
Get involved
Are you a developer ? do you want to get involved with
LibreOffice ? Now is a better time to start than later. It's a good idea
to get a generic build
first, and do an Easy
Hack to get confident that we welcome code contributions, and love
to have new people involved.
Then if you want to hack on the telepathy integration -
assuming that it has not been merged to master by now (if so the
branch will be gone) you want to checkout the feature/tubes2
branch, build it and ask on the developer list which bit you
could best work on.
2012-03-25: Sunday
-
Up, breakfast, NCC - Taui's dedication - attempted to
explain and apply Daniel 6
to the assembled mob. No particularly grist-worthy questions at
the end, but - an opportunity anyhow.
-
Downstairs for a big shared lunch with Maria's family
& much of the church. Home, applied slugging - more house
tidying, made some tin concertenas to concrete into the floor,
taught H. to mix and spread the stuff, and filled the offending
giant, hole.
-
Dinner, bed-time for babes, stories, read news around
the web, caught up whith J. bed early.
2012-03-24: Saturday
-
Up; J. out to Bury with H. and M. for a music workshop.
Pottered around, Eric and Brian (some JW friends) popped in to explain
themselves. Went back and read De
Buhne with them, having done my research; in particular comments
on their 'speculative emendations' of the New Testament.
-
Back to cleaning the house, washing up & tidying to
result in a happy wife on return; lunch, pre-emptively changed all
the clocks backwards.
-
Plugged away at some research on Daniel 6 for sermon tomorrow,
dug away at the text, literary structure, context, for an hour or two.
Took a break to tidying out the larder and locate the large hole that
supplies a near endless series of mice.
-
Dinner, bathed babes, read stories put to bed. Back to
Daniel 6 - struck by the rejection of the ideal boss implied in the
whole plot. Laboured on reading around the subject and collating
thoughts until rather late.
2012-03-23: Friday
-
Up early, into Cambridge to the Collabora offices. Discovered
that yesterday's curious signal emission re-starting corruption was
down to exceptions getting thrown across g_signal emissions; hmm -
nasty.
-
Yet more rather smoother hackery; finally got all the pieces
together and some simple collaborative editing happening, more details
later.
-
Out to show Eike some bits of Cambridge, it'd be a shame to
stay a week and not see any beautiful turf and suspended masonry,
had a walking lunch through misc. colleges.
-
Back to the station with Eike, and back to the hacking
with Will, more encouraging progress, bid 'farewell to Will &
the guys assembled for an overlapping browser hack-fest;
Collabora: home of cool hack-fests. Train home.
2012-03-22: Thursday
-
Up early, into Cambridge, another intense day of
hackery with Will & Eike for most of the day, lunch in
the office. Worked until late - another 12 hour day - fun.
Train home, bed.
2012-03-21: Wednesday
-
Up early, into Cambridge, even more hackery with Will
& Eike much of the day, another enjoyable lunch with
Christian too in the Bottanical gardens.
-
Progress, and board meeting, train home earlier for
dinner. Chatted with Claire, played guitar with Eike - bed.
2012-03-20: Tuesday
-
Up early, into Cambridge, hackery with Will & Eike
all day, enjoyed lunch at the Bottanical gardens, out to a pub
for dinner in the evening with Neil as well. Much code reading
and general thrash. Train home, violin playing, bed late.
2012-03-19: Monday
-
Up early, mail thrash, patch review for the 3.5.2rc1
branch point lots of good fixes going in there. Lunch. Off to
Cambridge to meet Eike - arriving for a mini
Collabora / RedHat / SUSE collaboration hack-fest. Met up, off
to the office.
-
Met up with Neil, Rob, and worked with Will through the
afternoon, hacked at fun things until late. Out for a fine Indian
meal with Rob & Vincent until past the last train, kindly
taken home by Vincent.
2012-03-18: Sunday
-
Up, spontaneous mothers-day toast in bed for Mother from
the babes, lovely & thoughtful. Off to NCC, Tony spoke. Home,
roast lunch, snoozed on
the sofa with M. and J. N. out to a party, while everyone else
watched 'Up' (again - really an excellent film).
-
Attempted to mend my 'Ideal Standard' hot water tap
(how can you find cement wedged in your hot water ?),
discovered in a fit of irony the highly non-'standard' washer
required; annoying. Phoned Mother to catch up.
2012-03-17: Saturday
-
Up reasonably early, quick breakfast. Into Cambridge for
Science Week - headed to the Downing site for an extremely
fun-packed biology session - with microscopy of your own stained
cheek cells, blood vessels you can crawl through, statistical
duck counting games, and much more.
-
Out to Browns for lunch with Dave, Anne & David
Camp - really great to catch up after many years, fince meal
too. Happily wandered the colleges with Dave & family for
the afternoon.
-
Home for tea, babes to bed; bit of reading &
youtube-ness. Wrote notes on another sermon on Daniel 6.
-
Amused by the awesome HUD of
the future.
2012-03-16: Friday
-
Up - poked at mail, bit of profiling, reviewed a number of
patches for 3.5.2, rc1 coming out soon. Got some more drmemory logs
on Windows for that cleanup
easy-hack. J. out for lunch at school.
-
More admin bits, patch review, license statement collation,
patch review. Dinner. Bathed kids, put them to bed.
-
Booked flights to the fun LibreOffice
Hamburg Hack-fest (April 14-15th), should be there midday 12th (by
some administrative error) to midday the 16th; hope to meet, eat and hack
with many cool kids there.
-
Thrilled that LibreOffice was accepted for Google
Summer of Code 2012 - we have a fantastic list of mentors with some
great
ideas lined up for students who love to make an impact, thank you Google.
2012-03-15: Thursday
-
Up early, chewed through mail. Annoyed once more by Rob's
timeline
with the central Removal of Copyleft item, quite aside from
the general problems with that, the reality is that to reliably build
the code, you need a copy-left dmake, core functionality like document
encryption needs NSS code, hunspell is used for spell checking, graphite
for complex text rendering, and much more - of course, semantically it
is accurate, these 'category B' licensed pieces (in Apache terms) can have
their binaries shipped under liberal licenses - but the project is still
dependent on copy-left code from top to bottom; and so it should be.
-
Quick chat with Fridrich, about zip structures. Sandy's birthday,
J. out for lunch. Off to the Dentist - missing misc. conference calls.
Dug at some more analysis tasks. Dinner, back until late.
2012-03-14: Wednesday
-
Up, packed babes off to school. Chewed mail. Interested to
read Rob Weir's blog
with an attractive looking timeline of nearly a year of work, which
is worth some detailed reading and analysis. He makes a curious assertion
though:
To give a sense of the magnitude of this interdependence,
the libreoffice.org domain contains 13,281 links to webpages hosted
on openoffice.org domains.
-
I'm encouraged by Rob's approach - he doesn't simply re-hash this old chestnut
based on some ~25 links in the wiki help (now removed), when translated to a hundred
languages, for some tens of versions. That is encouraging.
-
I'm amused at the 'Guinness Book of Records' precision -
"13,281" is curiously precice a number, without an equivalently precise
date or explanation - our website evolves and grows rapidly.
-
I was discouraged by my attempts to replicate this "magnitude
of interdependence". My first attempt, was to use a google link search:
site:libreoffice.org link:openoffice.org -
which gives me 4980 hits(today), interestingly if I
search for link
first I get 5170, so perhaps there is some +/- 10% thing going on.
-
Digging through those links, what immediately jumps out is the sheer
weight of false positives - that demonstrate no inter-dependence. Apparently
our home-page and donations page link to OpenOffice.org, but I can see no
trace of that. Then there are myriad mentions from bugzilla (which shouldn't
be crawled I think) that helpfully cross-link to the archive of many tens of
thousands of historical bugs. It also appears that our mailing lists are
indexed which also here and there refer to the legacy project.
-
Checking vs. link:apache.org, we get 31k hits, which starts to get
to a similar ball-park, but again all the same problems - false positives,
hits inside documents attached in bugzilla bugs, E-mail etc.
-
It is an interesting idea to extend this idea and judge inter-dependence
by looking at mutual referals. Perhaps it yields interesting results for the
industry. These are webhits I took
Relationship | A links to B/khits | B links to A/khits |
google.com vs. microsoft.com | 1960 | 38 |
|
oracle.com vs. ibm.com | 68 | 21 |
|
kde.org vs. gnome.org | 30 | 10 |
|
apache.org vs. freedesktop.org | 41 | 0.5 |
|
libreoffice.org vs. apache.org | 31 | 7 |
|
So - is Google overwhelmingly dependent on Microsoft ? is Oracle
more dependent on IBM than vv. ? personally I'm skeptical. It really feels
like this should show us something interesting, but it's an extremely crude, noisy,
and misleading metric, particularly when LibreOffice development is split over two sites.
I suspect the hit counts also vary wildly depending on locale, and the state of mind of the
hard-working mechanical turks that produce the nice-ranking / hit count metrics.
-
Some conclusions
- Such hit counts are a very blunt and misleading tool, it
is unclear if they accurately reflect any true "sense" of
interdependency.
- Inasmuch that they show some interdependency it is unclear to what
extent this is just a legacy problem. It would be appreciated if
Apache's hosting of the hundred-thousand plus legacy bugs, or other
big chunks of historical material that they did not produce
and our linkage to them are not used in this way. Hosting copies of
legacy information is not particularly taxing.
- Together these confirm my feeling that if Apache OpenOffice disappeared
tomorrow, it would have little-to-no impact on LibreOffice at all,
perhaps the converse is true too. To me - that is a true measure of
interdependence from first principles, though of course as a project
- I imagine we're eager to re-unite around a single weak-copy-left code-base
and to meet IBM's legitimate needs; so perhaps one disappearing
could be a positive thing.
[ I'll update this entry as/when I find any errors. ]
-
Lunch, meeting with pension fund provider. Attempts to explain why
a pension with a higher charge structure are better than one with a lower
one couldn't be answered: ask your company, attempts to explain how
Scottish Widows can manage cash funds around twice as badly as
Friends Provident proved fruitless.
-
Dug into some research for a while, call with Rob Taylor.
2012-03-13: Tuesday
-
Chewed mail, amused to notice that the Oracle / Google case is now being pleaded like this:
"While this case awaits trial, more than 700,000 Android-based
devices are activated every day, all fundamentally built around
the copyrighted Java APIs"
It's clear that this is a far more significant case than a simple patent
feud as I
noted at the start, surely Oracle won't pull down the API interoperability
edifice on their own heads ?
-
Dug at pensions, amused to discover that the 'better', 'new' corporate
pension has a 10% higher (0.75 to 0.85%) commission rate, and pays a small
fortune to the intermediaries annually, more than I've ever seen before. Who
negotiates these things ? set out to find out.
-
Downloaded and played with Dr.
Memory - Google's (gratuitous and unfortunate) re-write of valgrind - still,
it works for windows, and it shows another huge slew of issues we need to
incrementally fix (destroying GDI objects in the wrong order eg.):
drmemory -no_count_leaks -ignore_asserts -no_check_gdi -no_check_uninitialized -- soffice.exe
Got me a useful trace, though drmemory itself seems incredibly crash-prone,
making it a delicate task to get through to the point of the real bug, eg.
exiting the file-selector crashes it. Finally found the Uniscribe code doing
some bad things.
-
Unamused to see Gerv getting duffed up for being different; apparently
'diversity of opinion' is proving unexpectedly hard to embrace in some parts of
Mozilla land.
-
Really pleased to enjoy Jesus' video about How to Debug LibreOffice on
Windows, extremly helpful. Jesus windows hero Corrius also started
building and up-loading LibreOffice
Windows debug builds which should be extremely helpful.
-
Met with Dave in the evening, much fun & Bible study too.
2012-03-12: Monday
-
Chewed mail, re-built everything. Continued a windows full-symbols
build to chase a nasty crasher. Had to enlarge the virtual machine partition,
it turns out that using the GParted live CD makes
this really sweet. Overall rather pleased with VirtualBox so far, though I'd
love to use a non-(C)-assignment soft fork if there is one.
-
Nailed a smoke-test failure caused by my fsync bug-fix. Worked
until late.
2012-03-11: Sunday
-
Up earlyish, off to NCC, Tony explained part of
Ephesian's 3 well - back for a lazy lunch. Lots of cycling
practise in the road, and visited Russell & Sue for
tea, and to play.
-
Robert & Ilona visited again on the way past for
a fine tea, and stayed up chatting. Bed.
2012-03-10: Saturday
-
Up rather early, gave Emily a lift to Epping with H. and tube
into the Science Museum. Enjoyed lots of wonderous toys, fine shows on
the science of Rockets, and another on Explosions. Out to Pizza Express
for a nice lunch together.
-
Back to the fray - lots of space rockets, aeroplanes, snow-cats,
energy games, interactive displays and more to excite & exhaust.
Off to St Pauls, met up with Emily & her visiting cousin Kimber &
friend . Enjoyed evensong together, tube home, bed
early; tired.
2012-03-09: Friday
-
Slogged through mountains of cruft - E-mail, patches etc.
Worked away at a particularly evil Windows crasher, trying to get
a debugging environment setup that works well.
-
Robert & Ilona passed through in the evening on the
way to some dancing, and had Emily for dinner too; good to see
them and have a meal.
2012-03-08: Thursday
-
Worked through the mail and patch review backlog,
prodded some build issues & a bug or two. Bruce & Anne
over for lunch. Worked on bug-stats for ESC meeting.
-
Team meeting, ESC meeting, Vojtech's staff meeting. Bid
'bye to Bruce & Anne. Posted my analysis
of the problem of the growth of exception unwind information in
LibreOffice; 48Mb of unwinding vs. 75Mb of winding (.text), surely
there must be a mistake somewhere.
2012-03-07: Wednesday
-
Up extremely early, can't sleep, back to work for a bit.
Pushed babes off to school. Quick mail check.
-
Out with DT & Mike in Cambridge listening to Mike Reeves
on The Trinity - it's impact on theology and our lives, an encouragingly
winsome approach to the Living God. Bought the book of the talk The
Good God.
-
Home, house tidying, baby handling, avoided computers and
rested, nice to have much of the day off.
2012-03-06: Tuesday
-
Dug through mail, wrote initial Linux Format column. Lunch.
Continued cleaning up some high-level documentation of the code,
some minor cleans to stay sane, polished LXF column. More mail.
-
Lydia over for dinner, worked late.
2012-03-05: Monday
-
Up early - an all-day mail day, and still no progress, bits
of admin, status collection.
-
Dinner, babes to bed, worked late - and still didn't get to
any fun hacking, wow. Call with parents.
2012-03-04: Sunday
-
Up earlyish, off to NCC to practise, played in service; Mike
preached on the whole of Hebrews. Home for lunch with Emily.
-
Lazy afternoon, relaxed somehow, bed early.
2012-03-03: Saturday
-
Up at midday; breakfast, babes made some substantial
stage-coach / carriage out of most of the kitchen chairs,
blankets, cusions. Pottered around cleaning up, lunch.
-
Out to Lackford Lakes for a pleasant wander through
the countryside, dealt with E., played in the playground, fun.
-
Home, put babes to bed, poked mail / hackery in the
evening.
2012-03-02: Friday
-
Up early, mail thrash, misc. admin, planned the day, etc.
Generated stats, sync. with Ciaran, poked at OOXML custom shape
import. Lunch.
-
More poking at auto-generated custom shape code
compiliation. With a few tweaks, got a minor compile-time win (on
windows), from twenty three minutes to compile, down to six seconds
- the moral of the story ? optimisers like to do expensive operations
at the method level, so if you produce a single 20k line method, it
will not compile incredibly quickly.
2012-03-01: Thursday
-
Up in the night, hackery / patch review & merging, back
to bed, up for lunch. Calls much of the afternoon. Got Windows virtual
machine building LibreOffice nicely there, to chase some odd bugs.
-
Out in the evening to see H. and N. performing at a concert
at Newmarket College.
2012-02-29: Wednesday
-
Poked mail, sync. call with Vojtech, misc. patch review.
-
Tim Hardek kindly got the slides
of LibreOffice / FOSDEM dev-room up-loaded, and looking lovely
in the wiki (where we have slides). Sadly I missed a few talks myself,
so plenty to enjoy there, nice to see Markus' slides on our new testing
work eg.
-
Chased some 3.5 crashers and misfunctions, idly built a couple of
install sets with and without some fairly pointless exception throw/catching
for small allocations: nearly 2% bigger with that there. Reviewed some (great)
German to English translation. Tried to reproduce / poke at some more bugs.
-
Out in the evening with the wonderful wife, a delayed valentines day
treat - much fun.
2012-02-28: Tuesday
-
Off to visit Coleridge school in Cambridge, interesting.
Back, mail, hackery, Lunch. Dug at some statistics, agendas, GNOME
Advisory board call.
-
Busy-work most of the afternoon, Lydia over for dinner,
Dave around for the evening / bible study.
2012-02-27: Monday
-
Up, chewed mail, fun call with Martin,Lionel,Charles & Jerome.
Really pleased to see that ByteString
finally died today - our four string classes, turned into three; nice.
-
Lunch, account setup, more mail chew, patch review etc. Merged a
completed easy hack improving repeated search (ctrl-g) in the find bar.
Dinner - call with Alan Clark, more patch review / merge / hackery etc.
2012-02-26: Sunday
-
Up lateish, off to church, played the vile-din, helped out
with creche. Home for a fine roast lunch with Heather Llwelyn. More
cycle training with E. outside - nominally eight paces of free-cycling.
-
Bathed and treated children, dinner. Bed early, sermon, sleep.
2012-02-25: Saturday
-
Up lateish, looked after a (still recovering) M. while
everyone else went out to Bury StEdmonds. Interleaved commit
reading with Android damage detection. Finally got it working,
only to discover you need to refresh the whole
ANativeWindow_lock
buffer, or second guess the
double buffering. Time to switch to bitmap rendering I think.
-
Played M's favorite card-game: 'Rat-a-tat-cat' with her.
Troops returned, lunch. Afternoon of cycling training - coaxed
E. onto a stabilizer-free bike for six free-steering steps.
Played tag with H. and M.
-
Out to hoover / clean the church with Solomon & Peace.
Back for dinner, put babes to bed, sat by fire, and got J.
setup with some interviews, lovely to work with her.
2012-02-24: Friday
-
Poked mail, a slow-mail-day: great, merged a patch or two,
interleaved re-building, bug poing, and android stuff - trying to
dig out some particularly annoying basic related dialogs.
-
Started analysing commit histories, reading through old
commits is encouraging and interesting, so many wonderful people
to have worked with over the years.
2012-02-23: Thursday
-
Up early; mail chew, text bits. Thrilled to see Gert van Valkenhoef's
(more advanced) Easy Hack land, switching us to clucene - which gives much
faster multi-lang indexing at compile time, and far more responsive and
complete help searching. Just cleaning up this area also revealed and fixed
a load of l10n bugs that will improve help in asian locales too; nice.
-
Great to have Intel joining
The Document Foundation's Advisory Board today - welcome ! I'm looking forward
to helping to build on that partnership around the office suite of the future.
I should thank some of the heros behind the scenes: Ciaran Farrell, Holger Dyroff
and Camilo Rodriguez whose tenacity and support made this possible. Naturally TDF
is truly independent of any single corporate sponsor, and open to all.
-
Lunch, team meeting, ESC meeting, break. Advisory Board call,
grabbed a quick dinner, enjoyed catching up with Mike Leibowitz, read
stories to babies.
2012-02-22: Wednesday
-
Up early; mail chew, call with Vojtech, more digging
through the code around autosave, patch merging, easy hack
creation etc. Sandy over for lunch.
-
More hackery for 3.5.1 rc1, board call. Dinner, out
to cell group.
2012-02-21: Tuesday
-
Up early, mail triage, dropped babes at school, off to visit
Netherhall in Cambridge, seems a good place; back for a call with
Charles, more mail, misc. mentoring etc. Lunch. Call with Naji.
-
More patch review / merging, massaged some text to; chased
graphics manager oddity some more, there is something beautiful about
programs that SEGV, but only when you're stepping through them under
gdb.
-
Dinner with Lydia, Dave over for bible study in the evening.
2012-02-20: Monday
-
Up early, chewed mail, merged patches left and right. Thrilled
to see Anders Holbøll's beautiful new download page
complete with one-click goodness.
-
Tony over for lunch to discuss schools, poked bugs variously.
Admin / status report writing. More mail poking, dinner, bug hunting /
code reading in the evening around the rather horrible graphics cache.
2012-02-19: Sunday
-
Up, to NCC with H. and N. while E. and J. were at home, and M.
went to Burwell Baptist for a birthday bash. Helped out with the youth
work.
-
Back for lunch, lazed around much of the afternoon - got N's
airfix spitfire glued up with her - no cement / fingerprints on the
cockpit windshield this time.
-
Made the mistake of wandering into the workshop to do some
work on the reprap - deluge of small girls wanting to practise cycling
instead: did that, met Russel & Sophie practising too.
-
Babes to bed, some frozen planet-ness, more bits in the workshop:
lathe starting to play up now the drill-press is working beautifully
(drilling a lovely 0.3mm hole with a broken drill). Sermon, bed.
2012-02-18: Saturday
-
Up early, more patch review & merging. Breakfast, took
E. to Hannah's party in Mildenhall. Back for lunch, slugged with the
babes, setup old computer for J. to use.
2012-02-17: Friday
-
J. iller than ever, very odd trajectory for this, poor dear.
Mail, patch review, admin. Lunch. Spent much of the afternoon on
patch review - encouragingly many submissions from people. Dinner,
bit of bug poking, and more patch review.
2012-02-16: Thursday
-
Read mail, reviewed misc. patches, lots of nice fixes on the
mailing list. Knocked up a patch to inhibit the last two bogus JRE
warnings on windows first-start (without a JRE installed). Lunch.
Team meeting, ESC meeting, more hackery.
2012-02-15: Wednesday
-
Up early, to work, mail, chat with Marc; call with Norbert.
Lunch, more mail & admin catchup. Dug through various reviews of
LibreOffice, more and less encouraging, looking for nuggets of how we
can improve. Poked a number of people with relevant bugs. Worked late.
2012-02-14: Tuesday
-
Chewed through mail, bit of patch review and back-porting to
older branches. One of the nice side-effects of the renewed focus on
bug fixing our 3.5.0 release (for the 3.5.1 freezing next
week) is that we've been getting a subset of these into 3.4.6 at
the same time, sharing the reviewing burden.
-
Thrilled to see LibreOffice 3.5.0
finally released. We had a beautiful LibreOffice
3.5 new features page created by a kind volunteer: Marc Paré There is
a press
release, with a rather pretty infographic to match, though there is only
so much you can fit into one of those, and we did so much more.
Sadly, due to illness, I've not prepared a condensed: "hackers view" of
all the hard-to-see nuts, bolts and heavy-lifting behind the scenes;
perhaps later. Zonker wrote a really nice review here.
-
Lunch; wrote status report, misc. admin, chat with Ross.
Pleased to see Markus'
nice work to automatically add bugzilla comments with commit links,
when git commits are made that
mention
that bug, it makes a developer's life just that bit sweeter.
2012-02-13: Monday
-
Bit better, but substantially sub-par; presenteeism ? chewed
through mail slowly, call with Thorsten & Kendy. Lunch, J. starting
to come down with the lurgy too.
-
Reviewed and merging a dozen or so patches, quite a bit of
nice work arrived over the weekend it seems; procrastinated status
reportage.
-
Knocked off early, tired. Dinner, bed early with an
unwell J.
2012-02-12: Sunday
-
Even worse, slept fitfully most of the day, N. similarly ill;
unpleasant really. Rallied a little in the afternoon, watched some Frozen
Planet prettiness.
2012-02-11: Saturday
-
Slightly brighter, visited by a couple of Jehovah's Witnesses, with a
Dan-Browne quality conspiracy theory: that the New-Testament autographs were
uniformly corrupted without
anyone contesting that, or writing a word about it. Justifying your translation
on the basis of other people's subjective decisions (when back-translating to
Hebrew), made a thousand plus years later also seems curious [sic]. Using
J.BeDuhn to try to buttress quality when he condemns this too is odd.
-
Slugged, sickly around; fever worse in the evening; slept fitfully.
2012-02-10: Friday
-
Wiped out day, lay in bed sleeping fitfully on and off, urgh.
2012-02-09: Thursday
-
Awoke in the night with pins & needles in half of
the scalp, whatsat ? Back to the e-mail in the morning. How does
it back-up so ?
-
Chat with Guy, lunch. Wrote Linux Format column. Team
meeting, ESC, did a bit of legacy git repo surgery to avoid
confusion.
-
Started to feel pretty awful in the evening; headache.
2012-02-08: Wednesday
-
Up early, dispatched babes; mail. Pleased to see Josh
Heidenreich's growing work on adding README's to each top-level module
in the source tree and then building a pretty source directory
from that - a pleasant, hacker-friendly place for code overview documentation.
-
Pleased to see that Gerv as well
as Hacking for Christ, has duplicated himself; hence the absence from FOSDEM.
-
More E-mail thrash, quick chat with Gabriel, then JRB, then
TDF board call.
-
Out to cell group in the evening.
2012-02-07: Tuesday
-
Up unfeasibly late, is that the sleep debt ? breakfast,
checked mail. It was a sad day when my friend GregKH, veteran of
many absorbing SUSE initiatives, decided to
leave SUSE
for a dream job at the Linux Foundation. Sad (perhaps) to see
less of him, though naturally he will continue doing cool stuff at the
Linux Foundation. Imagine my surprise and pleasure to see the start
of this new, rich seam of awesomeness in his first
patch
set to LibreOffice which arrived last night. Of course, we value
all our contributors, especially new ones - without them we'd be nothing;
here's a snapshot of Ohloh's nice
statistics (though the 'first commit after two months' stuff is clearly
barking):
The lines removed/added also shows a rather pleasing direction of
change, given that we're adding features. Truly, the easy
hacks are easy. Want to be where the cool kids are ? why not try one ?
Failing that, simply mentioning that
you "use" LibreOffice
might help to redress a historical imbalance, and lack of an 'un-use'
button.
-
Idle catch-up; took babes to music lessons, early dinner, J.
out, chat with Kohei, and worked through mail for much of the evening.
2012-02-06: Monday
-
Woken at nine by a request for slides by a dear Behrens;
it seems I get to eat breakfast; did that, pushed slides, blog,
checked mail etc.
-
Eurostar, train, another train - managed to get through
a good bit of the backlog, admittedly in rather a haze of
tiredness.
-
Home, family not here - odd; flushed mail, poked a bug.
Arrival of lots of "Daddy, daddy !" style noise in
mid-filing of a kernel issue. Hugs with H. and E. rushed out
to play in the snow with N. and M. - lots of fun (and snow
down the spine).
-
Dinner, read babes stories, bed early, exhausted.
2012-02-05: Sunday
-
Up early, breakfast with Lucas off to the conference with a
chap from Cambridge. Caught the end of Garret's talk with Susan.
-
Spent much of the day at the LibreOffice booth, chatting
happily to the steady stream of passing friends and aquaintances.
Lots of fun. Eventally, bid 'bye to many a co-contributor.
-
Out for dinner with Guy, Aaron & the remaining lads.
Up until late with Eike, Anne & Markus - onto the Delerium
cafe for an even later bender with Kay, Lennart, Pippin & co.
Eventually managed to get rid of my USB debugging dongle to
Egbert; bed at 5am.
2012-02-04: Saturday
-
Up early, breakfast, off to the LibreOffice dev-room, good to
catch some of Italo's nice overview talk, lots of Lanedo guys, friendly
RedHat faces and key members of the team. Enjoyed Caolan's toolkit /
layout talk.
-
Gave my: talk on Easy
Hacks: they're easy and they're significant hacks:
-
Off for a bite of lunch with Caolan, then on to the (packed)
Legal dev-room (with Bradley as bouncer) to catch the end of Allison's
talk. Then gave a talk: Risks and Benefits of Copyright Assignment
-
Talked to Michael and a Wiki translation chap a little after that,
and rushed off to building K, to see our lovely booth manned & womaned by
a great mix of contributors. Tried to get my demos setup - somewhat
frustrated by a nasty suspend/resume kernel crasher. Gave a talk:
LibreOffice: on-line and in your pocket - with the first Android
prototype screenshots (and demo):
-
Finally relaxed: bit of an intense day, synched with Dawn, Guy, and
helped a contributor with his build. Wandered to the booth to hand out stickers,
and catch up with the stream of interesting people passing by.
-
Off to the speakers dinner with Bdale & Keith, whiled away much of
a happy evening together. On to the sudden death to catch up with
Richard Fontana, Andrew Haley, Simon Phipps and more - bed at 4am.
2012-02-03: Friday
-
Up early, breakfast, onto Easy Hackery slides, nasty head
cold catching me with a vengance. Italo published a beautiful
FOSDEM
infographic which he has been building.
-
Slogged away at slide production, banana lunch, yet more
bashing of text into rectangles etc. Kendy arrived to help hack on
Android-ness, and catch up, ~immediately finding my dumb focus / event
delivery bug: nice, the keyboard sort-of-works finally.
-
Caolan over in the evening, then off to meet the massed
LibreOffice team at the hotel Astrid; on (rather late) to the
Delerium cafe, to catch up with Lennart, Kay, Alp & many more.
2012-02-02: Thursday
-
Up earlyish, attempted to catch the train to Cambridge,
drove instead, slideware on the train to Kings Cross. More happy
hacking on the Eurostar.
-
Off to meet up with some Mozilla hackers at a
beautiful co-working
space. Caught up with JP, Julian Seward, Taras Gleck &
met a host of others. Out for dinner.
2012-02-01: Wednesday
-
Up early, breakfast, poked the build; failed to reproduce last
night's success, read mail, debugged variously, admin. Lunch. Worked
away at slides, while running misc. builds.
-
Plugged away at keyboard event delivery - not as clean and
obvious as it could be inside VCL; strange. Chatted with the parents,
bed early.
2012-01-31: Tuesday
-
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
ipp://.../ipp?waitjob=false&waitprinter=false
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.
2012-01-30: Monday
-
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.
2012-01-29: Sunday
-
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.
2012-01-28: Saturday
-
Up late, breakfast. Pair of Jehovah's witnesses around
for an hour of interesting, and widely ranging dialog
& friendly discussion, on the 144,000
Jewish,
male, virgins
for example. Or why the inspired authors of scripture
translated
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
afterwards.
-
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.
2012-01-27: Friday
-
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.
2012-01-26: Thursday
-
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.
2012-01-25: Wednesday
-
Chewed mail, quick call with Vojtech, then Charles. Finally
got around to submitting a LinuxTag paper or two. Lunch. More mail,
patch pieces.
-
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 ?
2012-01-24: Tuesday
-
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.
2012-01-23: Monday
-
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.
2012-01-22: Sunday
-
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.
2012-01-21: Saturday
-
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
compiled.
-
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.
2012-01-20: Friday
-
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.
-
The LibreOffice
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.
2012-01-19: Thursday
-
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
planning; bother.
-
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
and bed.
2012-01-18: Wednesday
-
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
new
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. ...
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?
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.
-
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.
2012-01-17: Tuesday
-
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
rather late.
2012-01-16: Monday
-
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 ,
worked late.
2012-01-15: Sunday
-
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
modern world.
2012-01-14: Saturday
-
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.
2012-01-13: Friday
-
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.
2012-01-12: Thursday
-
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.
2012-01-11: Wednesday
-
Mail, call with Vojtech, another with Pierre-Yves, dug at
my systemd tmpfile cleanup issue sent off a patch. Lunch. Call with
Pierre-Francois -
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.
2012-01-10: Tuesday
-
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.
2012-01-09: Monday
-
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
laser printer.
Removing unused code in LibreOffice
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 git grep
,
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.
2012-01-08: Sunday
-
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
biography.
2012-01-07: Saturday
-
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.
2012-01-06: Friday
-
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
removal.
2012-01-05: Thursday
-
Up early; more mail reading and backlog unblocking. Some
patch review, commit account creation, and account management.
Lunch.
-
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 ?
2012-01-04: Wednesday
2012-01-03: Tuesday
-
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.
2012-01-02: Monday
-
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.
2012-01-01: Sunday
-
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
images/
and 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 Collabora, 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
or fun.
Michael Meeks (michael.meeks@collabora.com)