Free Software movement at the public University of the Basque Country

We had a meeting at Engineering faculty in Bilbao yesterday, where I'm working as a teacher and researcher. The meeting was organized by ITSAS , the Free Software group at faculty.

The purpose of the meeting was to gather interested people from all the faculties of the University and join efforts. Around 50 peple have attended the meeting, from very diverse origins: students, teachers, researchers comming from engineering, computer science, physics, mathematics, economy, medicine, arts, sociology and political science faculties, groups related with NGOs, enterprises, etc.

After agreeing that current status of Free Software and open standards support at university is rather frustrating, we have talked about how to improve this situation at different levels: looking for ways to be heard by institutional representatives, possibly with help from Free Software based enterprises; trying to inform teachers about the possibilities of Free Software and looking for ways to allow students to do their work with Free Software tools.

The meeting has been very interesting, with lots of discussed topics, but there are some curiosities I would like to stress:

aKademy rocks !

Well, everybody is talking about it, so why not me too ? I have KFormula 1.6 ready enough for release and have to wait for trunk to build, so I can take some time to write about this week in Ireland :-)

It's my first aKademy and my first visit to Ireland, and if I had to summarize it in 2 phrases they would be aKademy rocks and these Irish are crazy!

I attended last conference in Saturday and the ones in Sunday. Great stuff there. I have to remark specially KOffice talks: Inge explaining how to promote your pet program, Sebastian talking about our great scripting framework Kross. David Faure's talk was really impressive too, even if it wasn't KOffice related. Confereces ended with aKademy awards, one of them going to KOffice's raster image application Krita and one of its core developers Boudewijn, in his birthday. It was great to see all his family coming to IRC to congratulate everybody.

OpenDocument day had also some interesting talks. It was really nice to see tech people trying to push ODF in European Union administration. There were some proposals about some toolkit around ODF, which was followed by a breakout session with Rob Weir and Florian Reuters as chairs that ended with some pretty good ideas. Stay tuned about this, you will hear news soon :-)

The best moment to know what people is doing is not conferences though, in my opinion. What I really love is those breakfast, lunch, dinner times when you meet tons of different people and have the opportunity to discuss about what they are doing and what they want to do in KDE4. It is then when you realize all the great things going on. KOffice hackers are marvellous and I am absolutely convinced that KOffice really is The Next Big Thing.

And finally, I must mention Dublin at night. It is really impressive to see how each weekday zillions of pints of beer are finished on the pubs, how people is crazily singing and dancing and drinking and laughing all the time. I have to recommend specially "The Celts", great place with live music and lots of crazy drunk Irish. Too bad that it closes so early and that I have to go back home it two days. I'm sure I'll come back to this place.

More MathML / ODF support

I have written in my previous post about SoC results of my application, but I have not shown the support updates since my last report, so this entry comes to fill the gap.

Styles have gained support for those attributes not part of token elements, but of <mstyle> of which you can see some in action the shot:

spacer

<ms> element is also supported now. This element is intended to represent literal strings:

spacer

Support for linethickness attribute in fractions is now available too:

spacer

<mpadded> element is also available now and fully supported. This element is used to adjust space around content:

spacer

The same applies to <merror> element. This element is intended for MathML generators that find processing errors and want to mark them in the MathML file, so that viewers have that information:

spacer

<mphantom> element is also fully supported. This element renders invisibly its content, but with the same size and dimensions. It can be used for alignment purposes:

spacer

<mspace> element represents a blank space of any desired size:

spacer

There has also been added support for <menclose> and <maction> but there's not much to show here. The first element has a set of optional notations of which KFormula doesn't render any of them and the second defines a set of action types, also optional, thought mostly for rendering in browsers.

Summer of Code is over

Yesterday ended Google's summer of code, so it's time for evaluation. First of all, I would like to thank to all the people that made this possible: Google for organizing and financing, KDE and those that voted for my application, David Faure, my mentor who has helped me a lot (probably more than what he thinks :-)), Thomas Zander, continuous source of knowledge and discussion, Boudewijn Rempt, always willing to help, fortunately back again, Martin Pfeiffer, fellow KFormula hacker and the rest of KOffice community ( Emanuele, fellow SoCer, Cyrille, Bart, Isaac...) I have really learned a lot and enjoyed the experience most of the time.

My application's name was Full native ODF and MathML support in KFormula. OpenDocument format reuses available standards where possible and thus, it uses MathML for mathematical formulae. So supporting one or the other is mostly the same and thus when I mention one of them I'm referring to both. MathML defines two different notations, Presentation Markup and Content Markup. The first one is intended for applications more interested in visual representation of mathematical content and the second one for applications with needs for semantic meaning of mathematical content (e.g. Computer Algebra Systems). KFormula implements the first notation.

That explained, let's go and evaluate the other statements of application's title: Full and Native. Efectively, KFormula reads and writes MathML / ODF natively and its internal layout matchs pretty well MathML. The support has not reached 100% though, even if it's quite near :-). I've created a TODO file with the things that remain to be completed. Many of them are optional, and don't need to be supported. Presetation Markup has 30 elements with over 75 attributes. Of those, 4 elements are not supported, 2 elements lack support for one or more attributes and 8 elements don't render properly one or more attributes.

From MathML testsuite, KFormula passes around 70% of the tests. When Soc began, KFormula passed around 20% of tests and OpenOffice.org 2.0.3 passes around 22% of them. Causes of test failure are:

What does this all mean ? That we are in the right track, but there's still work to do. And indeed my intention is to continue working, not only to get as near to 100% support as possible but also to do a bunch of related tasks: forwarporting to trunk, UI changes... yep, there's still work to do :-)

Finally, I've gathered some raw svn statistics about my project:

You can get and see all the patches from my darcs repository.

Updates on KFormula

This blog entry has been delayed more than expected, but I have been really busy lately, and as a result, there is a lot to tell ;-)

KOffice 1.5.2 has been released !

Yes, yes, I know. It was released a week ago, but there may be someone that didn't notice yet for whatever strange reason. KFormula comes with some important bugfixes. If you have experienced any of the following problems (or all of them):

Then you are lucky! Upgrade and your problem will just vanish !

Font changes in KFormula

I have removed the long and headache causing non-Unicode (TeX, ESSTIX, Symbol) font support from KFormula. In exchange, I have added support for Unicode fonts and package Arev fonts which have quite good support of mathematical symbols. Here you can see what an extract of what it provides:
spacer

OpenDocument / MathML improvements

Styles support has been rewritten in order to support deprecated MathML 1.01 attributes as well:
spacer

Basic support scripts have been added, still lot to do, but enough to pass some tests ;-)
spacer

The same applies to tables:
spacer

And to finish, I've added support for <mglyph> . So if you feel nostalgic about those TeX fonts for example, you can use this element. Or just to do useless but fun things like this:
spacer

Lurking around

I've also looking to competitors to see what they are doing and I must admit they have been very friendly.
AbiWord didn't have support to MathML yet, but sum1 (who is improving import/export plug-ins for SoC) quickly fixed that, since internally their formula editor is MathML based.
From OpenOffice.org Erich Bachard very kindly has built the latest OOo2 for GNU/Linux/PPC, so that I can do interoperability tests. And if that wasn't enough, he has provided a tone of ODF documents full of formulae I can use for testing. Many thanks !
I have also being talking with Tavmjong Bah, author of Arev fonts, which very kindly offered help to develop mathematical symbols needed for KFormula, and with Dejavu developers, which seem to already have better mathematical font support than I thought and keep improving.

Fence, roots, fractions and operators in KFormula

Work continues in native OpenDocument / MathML support under Summer of Code. I have added support for roots, rationals and fences. Fences are a bit trickier, since standard allows to define them through <mfenced> and a equivalent but different notation using operator tokens.

Basic support for non-fence operators has also been added. You can see how all this looks like:spacer

KFormula's OpenDocument / MathML progress

This my first post after being added to Planet KDE, so let me present myself first. I'm a telematics engineer from the Basque Country, currently unemployed. I'm Ph.D student at University of the Basque Country and philosophy student at Spanish public university at distance.

I'm also current KFormula maintainer, and I'm working now in full native OpenDocument / MathML support under Google's Summer of Code

The first task I accomplished was fixing two important bugs, with great help from David Faure. One prevented KWord from saving formulae in OpenDocument format. The second prevented KFormula itself from saving in OpenDocument format. The latter was trickier since I could not reproduce it myself.

Once these important problems were solved, it was time to start working in new features. I did try MathML's testsuite and KFormula only passed succesfully 117 out of 784 tests, being 666 unsuccessful. That's only a 15% of success. There are mainly two reasons for such a failure: lack of style handling and lack of Content Markup support.

Thus, I've started working to add better style support. First of all, I wrote a native ODF / MathML reader instead of the previous importer. Then I added support for token element's styles. So, now, these kind of things are supported:spacer

I've also created a Darcs repository with patches I apply, both to keep track of SoC work and to keep a list of patches I'll have to forwardport to trunk. There's still a lot of work to accomplish, but the ball is rolling :-)

Misc stuff

Basque wikipedia has more than 10000 articles

On Sunday 10000th article was written in Basque wikipedia. It is an important achieval, considering that getting the first 5000 articles took more than 5 years and the last 5000 articles exactly 4 months!. There are still quality problems: many stubs and short articles but edits per article continues growing. Lately many new people came and that is making a difference. Now we have aproximately 1 article per 100 speakers, even better than english wikipedia. Zorionak wikipedista guztiei!

Atom feed

I have implemented atom feed so you can now syndicate this blog.

KFormula

Validation of OpenDocument and MathML

I have not been able to guess a way to validate an OpenDocument file with embedded MathML. OpendDocument's Relax NG specification doesn't include MathML's one, and I haven't found any tool that validates Relax NG and DTD alltogher. If you know any, please tell me!

New ideas

Martin Pfeiffer brought new ideas for KFormula that we want to get ready for KOffice 2: code cleanup and redesign, better symbol support, UI polishing... It is great to see another interested hacker in the project!

Strange behaviour

KFormula is showing a strange behaviour while saving in OpenDocument format. It seems that some people are able to save in this format properly while others loss everything! Difficult to debug specially because I'm in the group of those that see the normal behaviour. If you have some free time, you can try luck yourself: open kformula, write whatever, save in ODF, close and reopen the file. If you see something, you are lucky, otherwise, you are not. Please let me know whether you have been lucky, providing as much info of your system as you can.

Many things going on for 24h a day. Best of all is that I do have an exam tomorrow which I have been unable to prepare, so wish me best luck!

Summer of Code begins

Google's Summer of Code has already begun. I submitted three applications, two for the Hurd project and another one for KOffice project.
The Hurd project only got one slot, and I was not selected, but fortunately I was selected for the KOffice one! Overall KOffice got 4 projects inside KDE's 24 projects.
So, this summer I will work adding full native ODF/MathML support in KFormula, under David Faure's umbrella. I'm quite excited about it, and the same seems to happen to other SoC students aswell. We got subscribed to a students mailing list yesterday and in less than a day the list got more than 350 emails!
Finally, I would like to thank mentors for making this possible, specially my own one :)

Blog up and running

So I finally decided to start my own blog. In two senses since I both intend to write in my blog and to write my own blog. As you can see, it can hardly get that name so far: no comments, no RSS feed, it seems a static page. So why start another blog system instead of using and existing full-featured one? Well, for two reasons:

So, yes, this is written in Common Lisp Even with all its lacks (you should blame the programmer, not the language), it nearly fullfils my first requirement.It has a kind of homemade Lisp Markup Language, easier than (X)HTML, and I can manage it easily with darcs I intend to add features as soon as I have time and go learning the language. For now, if you want to make a comment, just mail me. Can you imagine a better spam filter? :D

gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.