 Hi everyone to my talk, I'm Gabor Kelemen, currently working as a QA engineer for allotropia, and I would like to give a very, very high level overview of interoperability of LibreOffice, especially in Microsoft formats, a little bit of history about me during the last several years, I have been hunting these sort of issues and reporting them as part of my work, and I can say that compared to like six years ago when I started with this on the industrial level, I can say there is a lot of progress, but we are still not there. And most importantly this talk is not for those who are currently present here, sorry for wasting your time, but for those who can afford the luxury of improving LibreOffice in terms of actual code contribution or giving out contracts to the ecosystem companies, this is just several ideas, what can you do to improve LibreOffice and make sure your documents look the same after opening it in LibreOffice and after saving it in LibreOffice. I will show you some numbers, which is statistics, so it slides, don't believe it. I will define what do I mean good, bad and ugly as feature coverage in LibreOffice and a little bit of very detailed look at DocX, XLSX and PPTX and highlighting the ugly bits everywhere, because they are not concentrated to the ugly parts, but in everywhere. So a lot of numbers, this is the number of metabugs in the first line for DocX, XLSX, bla bla bla and the actual number of open bugs under those categories, which of course include the open bugs, the metabugs and all these subcategories, which I will talk about later. What can you see of this? The color coding of the numbers shows the same applications, so text is red and bla bla bla. What can we see? Best supported format is PPT, because there is a very small number of metabugs and actually a very small number of open bugs for that format. Very good, right? Ok, so this is actually a lie. This just shows that some formats are more popular among users than others. It does not mean those are supported well, that show low numbers. They are not very popular. We are as community not doing enough to find problems in those formats. So perhaps a little bit more effort should be put in those formats, because most features you can have in, let's say, word, you can save those in RTF DocX. DocX is very much covered in terms of bugs, but if you save the same document for which we have a report in DocX to Doc or RTF formats, it will very likely fall apart in those formats. So we need to find a lot more bugs. Next slide. What is good, bad and ugly? Let's say we have a metabug, which covers an area of feature in LibreOffice. Let's say paragraph in DocX. I consider the current state of that feature good, if the ever reported file bugs are mostly solved, so above 85%. It's bad if it's between 60 and 85, and it's ugly if it's below 60. You may say I'm very strict here, and very pessimistic, and actual users will never hit those bugs, maybe, but come on. If you have ever had a decent university exam, performance below 60% would give you a very, very low grade for that, right? So let's be strict with ourselves as well. So now the deep dive into those categories and formats, but only the OXML ones. So for DocX, I see six categories. This may be a little bit difficult to understand, but I just copy pasted the metabug titles, because they are kind of wacky sometimes. One thing to highlight here is a comment issues category. It works pretty well, but this comment replies feature, which word has since, I don't know, at least 2010, is not very interoperable. It's just not. So if you have replied to a comment, it will fall apart in writer. And we are already at the bad ones, and we have several categories of several slides filled with these. Most of these are not necessarily just DocX specific, but just to highlight. For example, there is OXML strict support for in the shapes category. It just shows that for this very new OXML strict standard, we don't have very much bug reports, because it should not just affect the shapes for which we have existing reports. So there is something very deeply buried here. And of course, we don't have multi-color gradients, and we don't have proper table styles, and we don't have table-wide, automatic table-wide support for tables. So there are many, many bugs apart from these, but these are the most important ones, I think, for these categories. And of course, we are having this rotated text, text boxes issue, which is kind of hurtful. And even the aggressive competition is attacking LibreOffice with that feature. So it would be very decent to fix it for the foreseeable future. We have more bad categories. And the generic OXML bug tracker for which the initial size of the 700 figure was shown is also in this category. So it should really see a lot more love. Some more highlighted features is the negative page margins feature, which is very strange, even in Word. But page margin top and bottom works completely different if you put in the field a positive number or a negative number, and we don't support the negative number case. And it causes a lot of real world documents to fall apart, especially those required by the court system of California State. For example, I had seen some lovely examples from that jurisdiction. And they won't change their habits just for us. Sorry, no time for questions. And of course, there is the lovely feature request, a prograph level justification, which is introduced in Word 2013. And we had a feature request for this very same feature since 2011. And we still don't have it while the competition has. It would be really useful to have that as well. Okay, more bad things in Dockx, but this is the bulk of it, I promise. In Word, you can put end notes directly at the end of the document, and not only on the end of the whole document at a new page. And there are several use cases for this, especially in university settings where people are writing long dissertations with thousands of references, and they are put in the end note, and it falls apart. So it would be also nice to have this. And last batch in Dockx bad things, Track changes is a lovely feature of Word, it's a passive feature of Word, meaning Word supports it, and users are just pushing a button to enable it, and the Word tracks any changes it sees. And the user has no much control about what is tracked. Unfortunately, our Word has a lot less support for tracking changes in documents, and it is possible to add support for each and every one of those. And the last one is also doing it currently as part of his job, but a lot more work is needed in this area to be interoperable feature-wise as well with Word. And of course the deletions on the annotations bar so that you can see the final document with changes in the document body, and with additions is also a much-needed feature. And of course we have this support-restrict editing of documents. Word has several ways to limit what can be changed in the document, and Word is very good at this, and we write their supports about half of those options. Another reason for documents falling apart is the use of this continuous section break feature in Word. It's a Word feature since forever, and we have been unable to implement it so far. And the last of this list is VML support for graphics. So this was the XML format used by Microsoft 2007, and it was replaced by DML in 2010 and newer versions. So it might sound like not very important to have this. In general, VML support is unreliable, especially with group shapes. And of course when we save or open group shapes, the rotated text box issue also hits us. And another question is why do I mention VML, like who the hell else uses this other than Microsoft Office 2007? I will return to that later. So last slide is the ugly categories. VML and the fact that we don't have a canvas shape in DocEx. So that is another reason for very detailed and carefully crafted graphics to fall apart in Writer, when they were put on this canvas shape, whatever that is. You can basically resize shapes together in Word. And of course the formula related issues is basically the mathematical equations in this context. And last but not least is the biggest elephant in the room, is the floating table. Someone should really implement that for Writer, not because it makes a lot of sense, but it is used by a lot of people, perhaps even inadvertently. But this does not make it unnecessary to support. And for the last slide of DocEx, a little bit of chart highlighting what is really a bad situation in all those categories. This is the number of open bugs in the meta bugs. So we can see that the floating table alone feature is about 30 open bugs. You may not see 30 as a very large number, like 1 billion is a large number, but in terms of bugs 30 is a large number. And table issues also contains this, but even if you subtract the 30 from this, this very long bar, you are still around 60, it's still terrible. There is no silver bullet here. We just need to fix every single reported issues. It does not mean everything is just plainly an interoperability issue, meaning that we don't need to develop new features and new attributes for existing objects. There are lots of issues that can be solved only by developing new attributes or new features, including UI, including ODF support, including extending the ODF standard. Those are also here among this huge lot. If you want to pull out some very poisonous sticks from the interoperability of writer, please take a look at these categories. With that, we can go to the bad ones in generic OXML. I mean features that are the same in all applications, like writer, calc, and impress. You can have surface charts, pie pie charts, pie bar charts, and the new MSO 2016 chart types, which are six of them in all of those applications, except we don't support those features. I'm already at the bad ones. There are no good ones in this category. We have a little time left. I will just fast forward. More bad categories for OXML, including, of course, VML shape, and EMF support, which is an image file format, and VBA macro issues. I'm actually surprised that VBA is not in the ugly category, but it should really be there. Of course, there are ugly ones in generic OXML, like WordArt and complex charts, which are charts with more than one representation for the data. So chart component supports column and line combination, but Microsoft supports a lot more combinations for data visualization, and in some use cases, those are as well used. Of course, there is Asian phonetic guide. I have no idea what is that, but it looks very bad in terms of open box. Another chart of these categories, what we can see is that shape support, drawing ML and VML is easily topping the list, like single biggest issue, but there is no silver bullet against that. Unfortunately, it's just really a lot of small issues related to the support of that in the three applications all over the place. And finally, we have some good ones at XLSX, finally at that. So perhaps the most important among these is the autofilter-related box, of which my colleague Balazs Varga will have a talk tomorrow, and he will talk about his work in this area. And of course we have this little rarely used feature in Excel, that you can password protect sheet modifications, and Excel has a lot more parts of the sheet that you can password protect. And XLSX is again in somewhat of a bad shape. We have a little missing feature in hyperlinks, which is a fundamental difference in philosophy of Excel and the calc, which means in Excel the hyperlink is a cell-level feature, and in calc it's a text-level feature, and we should really develop this in the long term. And conditional formatting is again festering since a long time. I won't go into details, but you can conditionally format your Excel files in a lot more ways than Dalin calc. More bad ones for XLSX. There was new comment threads support, and there is a page layout view in Excel, which we don't have, and the most interesting part is perhaps this document protection issue, where you can set Excel to allow only users to edit some range of cells, and this is also strongly tied to active directory, if I remember correctly. So the user identification is tied there. And we have aggressive competitors there as well, and you can have equations in shapes, but that's mentioned in PPTX. And of course the striped formatting of cell ranges, which is format as stable in Excel, we completely missed that feature. Form control is again another underloved area. I mentioned who else uses VML these days. Form controls in Excel, they used VML for describing the graphical appearance of their form controls somehow. A little bit of overview. What I would like to highlight is that we have reports that we can save that Excel cannot open, and that's kind of unacceptable for most normal people, which is another word for the user. And PPTX does not seem to have such issues. And one more. I'm just stepping over this. Yeah, 3D model is terribly looking, and kind of popular in drawing shapes in PowerPoint files. And of course there is a lot of options for setting text level effects, which is most popular in PPTX format, but it is also available for Excel SX or DocX documents as well. And of course another elephant in the room is equation issues, like lots of people like to put mathematical equations on their slides. For example in schools, teachers like to do that, and those are just disappearing in a impress last chart. Again shapes are looking out as the top issue. And times up. Questions is outside. Thank you for your attention.