Comparing text style support in Calligra, Abiword and LibreOffice
Sunday, 30 November 2014
This weekend I spent time on preparing for the ODF Plugfest again. The test software ODFAutoTests now has many more tests. Most new tests are for text styles. I've created tests for each of the possible attributes in <style:text-properties/>.
Read More
ODFAutoTests gearing up towards the 10th ODF Plugfest in London
Tuesday, 25 November 2014
In two weeks time, users and developers of OpenDocument Format software will meet up for a two day ODF plugfest in London. In preparation of the plugfest, I have spent last weekend, refreshing ODFAutoTests. ODFAutoTests is a tool for creating test documents for ODF software and running these documents through the different implementations. If you want to help out with improving OpenDocument Format, please come to the plugfest, or participate online. Writing tests with ODFAutoTests is a great way to help make the 10th ODF Plugfest a success.
Read More
Lazy declarative programming in C++11
Saturday, 30 August 2014
make does it, Haskell does it, spreadsheets do it, QML can do it and below I explain how to do it with C++11: declarative programming. And not just any declarative programming, but my favorite kind: lazy evaluation.
Read More
Easier OpenDocument coding in Calligra and lovely junior jobs
Tuesday, 30 July 2013
The office suite Calligra can save many file formats, but the main one is OpenDocument Format. With a proposed improvement, it can be easier than ever to code on Calligra.
Read More
Akademy again
Thursday, 11 July 2013
Last year I skipped Akademy and felt sorry about that. So this year I simply have to go. It will be great to immerse in the talks about and related to KDE. My interest is currently on getting things done, semantic technologies and file formats. It's holiday, so a bit less JavaScript for a week and a bit more of everything else.
Read More
Is that really the source code for this software?
Wednesday, 19 June 2013
I've been looking into how easy it is to confirm that a binary package corresponds to a source package. It turns out that it is not easy at all. So I've written down my findings in this blog entry.
Read More
Bup, the backup tool with a clever idea
Thursday, 2 June 2011
What backup tool are you using? You are using one, right? I am using one these days, namely git. My entire home directory is collection of git repositories. Using git for backups is great because it is easy to synchronize data. It is also easy to restore files without needing access to the backup server. I keep my .git directories in a separate partition and symlink them into the right position. Every few days I push all my git repositories to my backup server that has a user called 'git' with 'git-shell' as the shell setting. So sending backups to the server can happen safely over ssh.
Read More
WebODF on Android devices
Wednesday, 1 June 2011
Today the WebODF project released an Android app. You can get it from the Android Market and soon from FDroid.org. This is just the start. Viewing and editing office documents and in particular ODF files should be possible on all mobile devices. In the WebODF project we want to make this possible.
Read More
File selector in QML and PySide
Sunday, 29 May 2011
Today I wrote a file selector in QML. This was not trivial because QML has no standard element for drilling down in a tree model. So I wrote one. A bit of Python was needed to expose the file system to the QML as a data model.
Read More
WebODF on Android and beyond
Sunday, 6 March 2011
ODF support on phones and tablets is not good right now. Work is being done to improve this by the Calligra project, but WebODF can provide a solution too. To prove this, I built a small wrapper application that gives Android the ability to read ODF files. This application is available in the WebODF repository and I've also put the installable application online.
Read More
WebODF gains round-tripping support
Tuesday, 1 March 2011
In my previous blog I talked about converting ODF files to PDF files with WebODF. This is a functionality that is generally useful, but is also one that lets OfficeShots compare WebODFs ODF rendering to that of other office suites.
Read More
Converting ODF documents to PDF with WebODF
Thursday, 24 February 2011
It is quite common that one wants to send ODF files to people that lack the software to display ODF. One workaround is to convert the ODF to PDF. Most office suites that support ODF can export to PDF. To compare how different office suites do this conversion one can use the website OfficeShots. This website offers the ability to perform this conversion in many office suites at once and to compare the results.
Read More
WebODF at FOSDEM
Thursday, 17 February 2011
The yearly FOSDEM was excellent as always. I could not attend all talks; mine was on sunday afternoon and as usual I was still improving it at the conference itself. Nevertheless, I spoke with many people and saw some very good presentations. Now that the videos are online, I will mention some of them with a link to the video footage.
Read More
WebODF at FOSDEM
Saturday, 5 February 2011
Currently I am enjoying FOSDEM, the excellen Free Software conference in Brussels. Tomorrow I will give a presentation "WebODF: an office suite built on browser technology" about WebODF. If you want a preview, you can look at a screencast about it.
Read More
JavaScript: keep it working in different runtimes
Monday, 3 January 2011
The programming language JavaScript is seeing more and more use. Software written in it can run in many different environments. Not only do web browsers support it, there are quite a few programming environments that can integrate and run JavaScript code. Qt has support for it with the QtScript module. GNOME has JavaScript bindings via gjs. Node.JS is gaining popularity on the server and Java has the Rhino runtime.
Read More
OdfKit Hack Week day 2
Friday, 25 June 2010
Today was a day of style in the OdfKit Hack Week. Enjoying the sun with style. Watching a soccer game with style. Watching the chicken spagetti races with style and most importantly adding a touch of style to OdfKit cum suis.
Read More
OdfKit Hack Week day 3
Friday, 25 June 2010
It's Friday and day three of the OdfKit Hack Week. So what did we do all day besides folding balloons, talking to men in wooden shoes and eating pancakes? We actually implemented the style inheritance I blogged about yesterday. Background images are now supported too. There was some philosophizing over APIs and we published some code (recommended if are interested in (Qt)WebKit or ODF).
Read More
ODF visualization using WebKit
Thursday, 24 June 2010
Today is day 1 of of the OdfKit Hack Week. We wrote a list of things we want to achieve this week. In order to avoid embarrassment, we'll spare you the details and go straight through to an explanation of how you can use WebKit (or any modern browser) to visualize ODF documents. The general idea is to incorporate the ODF XML into a live HTML document. Step 0: load content and styles into an HTML document ODF files come in two flavors: single XML files and XML files in ZIP containers. Most people use the ZIP form exclusively. In both cases there are two XML elements of importance: <document-content/> and <document-styles/>. These are comparable to HTML and CSS respectively. We'll avoid the details of how we load these elements into the DOM tree for now and simply state that we have two javascript variables: var documentcontents; var documentstyles; Step 1: put the document contents in the web page. Let's start from a simple HTML document with a <div/> element where the ODF element <document-content/> can be imported.
Read More
OdfKit Hack Week starts
Tuesday, 22 June 2010
OdfKit is a project that reuses WebKit technology in a toolkit for working with ODF office documents. KO GmbH is sponsored by NLnet to work on OdfKit for three months. This week, Chani, who is on her way to Akademy, is working with me on OdfKit and since she's here an entire week, we're calling it OdfKit Hack Week.
Read More
Spring cleaning: Strigi becomes a meta-project
Sunday, 21 March 2010
A couple of large commits changed the organization of the Strigi project. As you probably know, Strigi provides the code to extract data from files and also allows for fast searching for files. We have reorganized the project to be a meta project. It is now split into five projects that can be compiled independently: libstreams, libstreamanalyzer, strigidaemon, strigiclient and strigiutils. This move has been done to make it easier for other projects to use the library parts of Strigi. KDE, especially Nepomuk, depends on libstreamanalyzer, which in turn depends on libstreams.
Read More
SlideCompare: improving rendering of slides in KOffice
Tuesday, 2 March 2010
Rendering slides is a complicated business. Slides can contain tons of different features just like webpages can. People expect that presentations look the same in different programs. Perhaps not pixel-perfect but very similar nevertheless.
Read More
Silent Metronome in QML
Friday, 12 February 2010
Tonight I could not attend band rehearsal so I used the time to play with the new QML language. There is a nice tutorial online and a good screencast.
Read More
Alpha version of Office Viewer for Nokia N900 available
Tuesday, 19 January 2010
Today, Nokia released the first public version of the office document viewer for the Nokia N900 phone. It was uploaded to the Maemo repositories. This version supports text files, spreadsheets and presentations in OpenDocument format (ODF) and Microsoft Office formats. The viewer requires the latest update (PR1.1) to the N900 software. You can install 'Office Viewer' by adding the maemo-devel repository to your N900 catalogues:
Read More
Strigi 0.7.1
Monday, 11 January 2010
This is just a quick note to tell the world about the newest Strigi release. It has version number 0.7.1 and is the recommended Strigi version for use with KDE 4.4 and Nepomuk.
Read More
testing document conversion
Wednesday, 6 January 2010
Being able to properly read many different file formats is important for KOffice success. By 'read', I mean 'convert to ODF' because the conversion and reading is strictly separated in KOffice. KWord will convert a .doc file to a .odt file before loading it into the internal rendering and editing structure. There is even a nice separate program called 'koconverter' that can convert files on the command-line.
Read More
Getting an energy efficient small server
Tuesday, 29 December 2009
For mirroring my backup drive, central data store for devices, music playing and a webserver for experiments, I'd like to run a small server at home. I want this server to be energy efficient, easy to modify, robust, silent and run customizable free software. It should have at least 500 GB of storage, but 1 or 1.5 TB is better. You can buy very low-energy computers such as the Fit-PC 2 (6 watt) or the Linutop 2 (8 watt). Energy costs for machines that run constantly can be roughly estimated by doubling the power draw in watt, so running a device that uses 8 watt constantly costs about 16 euro a year.
Read More
Good karma
Sunday, 25 October 2009
This weekend I visited my parents in law, because my wifes paternal grandmother celebrated her 90th birthday. I noticed that the laptop they use was still running Kubuntu Feisty with OpenOffice 2.2. On this machine, reading emails, managing photos, surfing the internet and working on office documents are most important. Digikam is used for photos. Kmail and konqueror from KDE 3.5 are installed and a mix of OpenOffice and Microsoft Office 97 on wine is in use for editing office documents. in short, a horribly outdated setup of more than two years old. IT is still moving fast. Feisty was not a long term release and no updates for it anymore.
Read More
Printing photo albums
Sunday, 25 October 2009
One important feature for photo management is missing in the FOSS world:an application for creating photo albums that can be sent away for printing at a printing service. There is however a pretty slick closed source application that works on linux. It can be fiound at for example Pixum (also in.nl and .de). It is based on Qt 4.4 and installs using a perl script which downloads the artwork and the required libraries. The application is customized for different printing companies that have these customized downloads available from their website. Not all of them offer the linux or even the macintosh version. This is a shame and probably done to limit the number of different questions users might have. A standard for these photo album ordering services would be great, but I'm not holding my breath and will recommend Pixum for now.
Read More
Strigi partial port to javascript
Wednesday, 21 October 2009
You may remember two of my recent blogs. One was about a project to parse powerpoint files and another one was about porting hexdump to the browser.
So how about a combination of those two topics: parsing powerpoint files in the browser. It is quite a feasible task. The powerpoint file format is largely described in an xml schema now. From this scheme one would need to generate a parser like there is for c++ and java already. The parsers for java and c++ are both less then 700 lines of code.
Read More
Sensors in the N900
Tuesday, 13 October 2009
Nokia has been kind enough for lending me an awesome N900. This will allow me to test KOffice on the phone. Document loading, parsing and scrolling speed could do with improvements.
Read More
hexdump in the browser
Wednesday, 23 September 2009
This morning, I thought: why is XMLHttpReq for xml and text but not for binary files? It turns out you can use it for binary files, but not in each browser and only for remote files. I've written a small implementation of hexdump. It loads a binary file like this:
Read More
Pleasantly Producing PowerPoint Parsers
Monday, 21 September 2009
KOffice has the potential to be a widely used office suite. One of the requirements for user adoption is good support for popular file formats and most presentations are available as Powerpoint presentations. KOffice uses ODF as native format. There is an import filter for PowerPoint presentations in KOffice which is currently incomplete. At KO, we are working to improve this situation.
Read More
Wine appreciation
Monday, 7 September 2009
While sipping from a Vignes de Nicole and nibbiling on some Heukäse, I am thinking about Wine. Not the liquid version, but the software project.
As a reader of Linux Weekly News, I noticed that the Wine project makes very frequent releases. I looked up its release history and saw that Wine has made a developer release every fortnight for the last four years. The 11 years before that the releases were approximately monthly. Each of these development releases comes with an announcement with a long list of the changes that happened in these two weeks. This dedication is due to Alexandre Julliard who has made all of those releases.
Read More
Bitten by singletons
Sunday, 6 September 2009
This weekend I have been bitten by some singletons. They have annoyed me so much that I am writing this blog about them. I will expose the singleton as a dangerous construct. Tempting, but dangerous.
Read More
The Desktop Summit is so much fun
Monday, 6 July 2009
The Desktop Summit in Gran Canaria is very enjoyable. The conference center is very
luxurious. It comes with uniformed assistants in every presentation room helping by changing the name signs and refreshing the water. The main conference hall has a wonderful view on the ocean. There are people from KDE, GNOME and many other projects here, so there are many interesting people that I have not met before. The conference is located near the ocean, so attendees can go swimming for lunch. The talks are all recorded with the slides as insets, so if you are not here or cannot attend two talks at the same time, you can view the talks later.
Read More
Working on KOffice
Wednesday, 1 July 2009
Today is the first day of my employment at a wonderful company called KO GmbH. KO GmbH provides services around software dealing with office documents, notably KOffice. I'm excited to have found such an inspiring job working in Free Software.
Read More
CubeTest in SVG progress
Friday, 1 May 2009
The first episode of 'programming in SVG' led to some nice bling improvements in KDE. Aaron showed how to put an SVG program in a plasmoid and Ariya taught us the incantation to make the desktop shine through such a plasmoid. And last but not least Remco Bloemen mailed me with a working demo that hows how to include arbitrary data in an SVG application with data URIs.
Read More
writing applications with SVG
Tuesday, 28 April 2009
Recently I received positive feedback on my program CubeTest. The program is being used in primary schools to help children to achieve better spatial insight. There is a teachers manual on-line.
Read More
Qt Overload: twittering birds
Wednesday, 1 April 2009
I just added some content to the new cute Qt community website.
Portable Meta-Information continued
Tuesday, 31 March 2009
In a recent blog, David Nolden talks about transferring user-generated, file associated meta-data. His post was well written and the ensuing discussion interesting. I'd like to continue his line of thought here.
Read More
Browsing archive files with libstreams
Saturday, 21 February 2009
ArchiveReader is a class in libstreams that allows you to open files embedded in zip, deb, rpm, jar, openoffice, and email files. It is used in the kio slave jstreams:/. This class works like this:
Read More
Rejoice: A fresh Strigi
Monday, 2 February 2009
Another epic owl release! Granted, not as epic as Eigen 2.0, but still very nice. Strigi 0.6.4 gives some nice index speed-ups and fixes a few annoying bugs. There is one new feature: LZMA support.
Read More
supporting LZMA streams
Sunday, 25 January 2009
LZMA is a relatively new compression algorithm. It is used in more and more places: 7-zip, the Linux kernel and deb and RPM packages. So adding LZMA to Strigi was a desirable step. The code for LZMA can be downloaded from the 7-zip website. It is in the public domain.
Read More
Buy a telephone from Nokia
Wednesday, 14 January 2009
Do you need a new telephone? A mobile one without a wire? Please consider buying a Nokia telephone.
When you buy a Nokia telephone you support free software. Do not buy an iPhone, do not buy a Palm, buy a Nokia.
Were you considering buying a Motorola or an HTC telephone? Think again. Think Free Software. Buy a Nokia.
Avoid Windows Mobile. Avoid the iPhone. Avoid WebOS. Buy a Nokia with Free Software.
Read More
Maemo Summit and Desktop Search Hackfest (part 1)
Sunday, 28 September 2008
The first Maemo Summit was held in Berlin on the 19th and 20th of September. Nokia proposed to organise a "Desktop Search Hackfest" in collaboration with the GNOME foundation. This proposal was forwarded to all the participants in the discussions on a set of common standards for desktop search called Xesam. The list of attendees was very interesting and I had the impression that it would be hard to get the same group of people together soon. So I decided to skip a family day at my employer, PANalytical, and went to the hackfest.
Read More
Hello from Maemo 2008
Friday, 19 September 2008
This message is written on a N810 at the first presentation of the first Maemo conference. To be able to show my face here I have installed KDE and Strigiclient on the N810.
Read More
Spiraling calender clock
Tuesday, 9 September 2008
After blogging about clocks a few times, let me post some code for a clock. Click on the image below to see it. Your browser must support SVG.
This clock was inspired by an entry on kde-apps which was blogged about by Cornelius Schumacher. A lot ofthe HTML, SVG and javascript was helped by the SVG+javascript clock page by Kam-Hung Soh.
Read More
SVG transitions
Tuesday, 9 September 2008
Playing with SVG is a lot of fun. I expanded the spiral clock I made yesterday with animated transitions between different panels.
The SVG above can be viewed with Firefox 3.0 or Opera 9. It is only 232 lines of SVG and Javascript.
Read More
Antikythera mechanism simulation
Sunday, 7 September 2008
Yesterday, Adriaan blogged about the Antikythera mechanism. This is a fascinating piece of early machinery. Read all about it on the wikipedia page.
Ade called for a plasmoid to be created of it and I think this is a good idea. So I looked around on the web if there is some software simulating the mechanism. I found a webpage where you can download an OpenGL implementation that is compiled for windows. You can run it with Wine on a i386 Linux machine. The source code is not available on the site. I was struck by backside of the mechanism. The inward spiraling lines look very much like the Akonadi clock Cornelius blogged about some time ago.
Read More
Stuff near you in wikipedia
Wednesday, 27 August 2008
A while back I blogged about querying dbpedia with sparql. The queries in that blog were pretty simple. Today, I present a more complicated example.
SELECT ?a, ?long, ?lat WHERE { http://dbpedia.org/resource/Borne%2C_Overijssel http://www.w3.org/2003/01/geo/wgs84_pos#long ?centerlong ; http://www.w3.org/2003/01/geo/wgs84_pos#lat ?centerlat . ?a http://www.w3.org/2003/01/geo/wgs84_pos#long ?long ; http://www.w3.org/2003/01/geo/wgs84_pos#lat ?lat . FILTER ( -(?long - ?centerlong)(?long - ?centerlong) - (?lat - ?centerlat)(?lat - ?centerlat) > -0.01 ) } This query gives you all items in the english Wikipedia near where I live.
Read More
Coolest picture from Akademy
Sunday, 17 August 2008
The coolest picture made at Akademy 2008 was made by Nepomuk developer Gunnar Aastrand Grimnes. This is the main square of Mechelen stitched together from 19 pictures. Check out the details. You will probably be able to buy it as a clock from the Mechelen tourist office soon.
Read More
JavaFX vs Plasma
Sunday, 17 August 2008
Today I came across an article explaining how to run JavaFX on Linux. I managed to install the sdk by downloading the Mac version. Next, I started the stopwatch example: cd /tmp unzip javafx_sdk-1_0-pre1-macosx-universal.zip export JAVAFX_HOME=/tmp/javafx-sdk1.0pre1 export PATH=/tmp/javafx-sdk1.0pre1/bin/:$PATH cd /tmp/javafx-sdk1.0pre1/samples/StopWatch unzip StopWatch.zip cd StopWatch ant run
Read More
I love GIT
Friday, 1 August 2008
I have many ideas and limited time. And many of the ideas I want to work on get interrupted by pressing concerns such as bug fixing and high priority features. Because of this, I tend to have many small improvements lying around in my trunk. Then when the time comes to commit a quick bug fix, I face an 'svn status' output with lots of 'A', 'M' and '?' indicators. In short: a time sink.
Read More
Almost a gnome
Thursday, 31 July 2008
While reading ESR's blog I came across a questionnaire to find out what kind of D&D character I'd be. I've only once joined in on a D&D role-playing evening and found it was not for me. This query is interesting though because of the many questions you have to answer and for which you have to make up your mind about which of the given options applies best to you.
Read More
Only Firefox 3 handles Javascript menace well
Tuesday, 29 July 2008
After visiting a really nice collection of exhibit gardens, I decided to make an application to see how different plants are related by making a phylogentic tree generating webpage.
Read More
Looking for green plants
Saturday, 26 July 2008
Do you know about DBpedia? It's a project that lets you perform complex queries on the content of wikipedia. I've been playing with it a bit and want to share some examples. Try to come up with cool queries!
Read More
Re: Strigi Loaded
Thursday, 24 July 2008
Sebastian is apologizing to me for writing code. This is a bit strange and I need to reply to his post. The discussion below is really more suited for a mailing list, but since I did not start it I have no choice in the matter.
Read More
Strange UDF DVD
Tuesday, 22 July 2008
My sister-in-law got married and the wedding photographer made a DVD with 412 pictures. Unfortunately, my parents-in-law could not read the DVD, either with Linux (which is their main OS) nor with Windows XP. So they gave the DVD to me and I had a look.
Read More
Strigi 0.5.11
Sunday, 20 July 2008
A new version of Strigi, the desktop search, is available. This is a bugfix release. It fixes some annoying issues seen in KDE 4.1. Check out the ChangeLog for the details.
Read More
W3C: Standardizing the widget landscape
Tuesday, 1 July 2008
The World Wide Web Consortium is looking into the feasibility of standardizing desktop widgets. They have done a survey on the widget frameworks available in the market. The frameworks they have surveyed are Konfabulator, Windows Sidebar, Google Desktop Gadgets, Opera Widgets, Mac OSX Dashboard, Web-Runtime by Nokia, and Joost Widgets.
Read More
Oranje scores for Microsoft, Dutch goverment says: 'Use Silverlight'
Tuesday, 17 June 2008
Today, the Dutch minister for Education and Culture, Plasterk, has defended the Dutch broadcaster NOS. NOS is broadcasting the games of the European Championship football using Microsoft malware Silverlight. This means that in order to view this broadcast you need to install this software on your computer. You can only install the software on computers with Microsoft Windows or on Apple computers.
Read More
UEFA is being cheated by NOS
Tuesday, 17 June 2008
The Dutch like it cheap. We do not like rules. That's just the way we are. The people at NOS are no different. They have a contract with UEFA (or so they say) which requires them to broadcast the games of the European Championship only in DRM format. NOS is using this as an excuse to pendel Microsoft malware.
Read More
Using the European championship to spread malware
Saturday, 7 June 2008
Microsoft is pushing their evil SilverLight platform very hard. They want to make sure that providers of cross-platform software for delivering rich applications via the web browser are thwarted. This is normal behavior for a monopolistic company and certainly for Microsoft. To accomplish this goal they are throwing around bucketloads of money and FUD to get content providers to use the Microsoft malware Silverlight exclusively.
Read More
Spot the heron
Friday, 6 June 2008
Please mail me if you see him.
Video by motion on a Logitech Sphere.
Chilling in Prague
Friday, 16 May 2008
Today is day one of FOSSCamp. FOSSCamp is an unconference, which means there is no set program. The program consists of writing entries into the empty program grid. This is refreshing approach which seems to work rather well for one particular use case: recognizing and fixing problems.
Read More
Hardy Heron Alert!
Thursday, 24 April 2008
Near where I live there's a pond. Actually it is right outside of my living room. In this pond there used to be many a goldfish. Until this week.
Read More
Running with the devel
Thursday, 27 March 2008
Google Summer of Code has started taking student proposals. This year Strigi is joining the KDE project in Google Summer of Code again. For students looking for a nice project in information technology in the true sense of the word, Strigi is the project to join.
Read More
Logging out of KDE 4 in 5 easy stops
Tuesday, 4 March 2008
Today we are helping novice KDE users to log out of KDE 4. Logging out of KDE 4 is nowhere near as hard as with some other popular programs. Here you do not need esoteric keyboard commands like '<esc>:q!' or 'ctrl-X followed by ctrl-c'. In KDE 4 you can easily log out by using your mouse.
Read More
Thinking about quitting
Thursday, 7 February 2008
When logging out of your desktop session, you want all programs to shut down quickly. Strigi is one of the programs that can linger while it is analyzing a file. I've done some work to improve this latency and have measured the current latency after some improvements to analyzers that can potentially take long on some files.
Read More
digesting the Trolltech acquisition
Monday, 28 January 2008
What a surprise we had today! A coworker came to my desk and told me 'Guess what Nokia has done.' I thought for a bit and tried to infer Nokia's move from my colleagues demeanor. 'They decided to use Windows mobile on their telephones.' was my guess. As you all know by now, the right answer was much more interesting and much less gloomy.
Read More
strigi planning and small kde4 review
Sunday, 13 January 2008
Yesterday we had an IRC meeting to plan our activities on Strigi for the near future. It was good to have an IRC meeting again after having been practically offline for over two months.
Read More
Touched by an owl
Friday, 11 January 2008
Today at work, a new building was opened. To celebrate the happy event, Hugo Rietveld came to open the building. To do this, he needed keys and these were brought to him by a barn owl (church owl in dutch). The bird flew through the cafetaria and landed in front of Mr Rietveld with the keys.
Read More
FOSS in Dutch government
Wednesday, 12 December 2007
Today Dutch parliament discussed plans of the ministry of Economic Affairs to encourage Free and Open Source Software in government. All major parties seem to understand the issues. Even news agencies are talking about 'vrije software' which is the right term ('Vrije' means 'free as in freedom').
Read More
Debugging help for dbus daemons
Tuesday, 11 December 2007
Like many KDE application, strigidaemon uses DBus to talk to other programs. Debugging inter-process communication is never very convenient and strigidaemon is no exception. So far, there are no unit tests for checking the quality of the DBus communication in Strigi. I set about to write some and found it was not so easy, so I'm documenting what I did for the benefit of all the other developers using DBus.
Read More
Disappearing facial hair explained
Thursday, 29 November 2007
The recent events in chinland are well explained by todays Dibert.
free software in dutch government
Friday, 21 September 2007
2007 has seen huge events for Free Software. The java source code was (mostly) released by SUN, ATI/AMD opened up to the Free Software community, and the Dutch government has started using the term Free Software (vrije software) in its plans.
Read More
The Semantic Desktop: Document Annotation
Friday, 10 August 2007
KDE 4 will have more semantic technologies than any KDE version before it. As an average user you may be baffled by the use of funny terms all the time. 'What are semantic technologies?', you are thinking. Many people that have seen what Nepomuk will do in KDE 4 will think that semantics is all about tagging and rating of files. This is the visible part the current state of the Nepomuk-KDE work Sebastian Trueg is doing. 'So what's the big deal?' you will think next, because to be honest, tagging and rating are not all that special. Nice, sure, but not mind blowing.
Read More
The Strigi vs Tracker debate
Friday, 10 August 2007
A few days ago Aaron Seigo blogged about the Strigi vs Tracker vs other search engines. I agree with Aaron that we are wasting a lot of efforts by duplicating code with very similar features. Not only that, but we spend time discussing with each other trying to come up with ways to get some overlap and share some code. It's not easy and can be really frustrating. As free software developers, we all put in a huge commitment by coding in our free time to make the world a better place with our code. At least that's my motivation. So let us try to maximize the effect of our efforts.
Read More
KDE4 is very attractive for software service companies
Wednesday, 1 August 2007
The next version of KDE4 will run natively on Mac OS X and Windows XP and Vista. This means that it is a very attractive platform for software development. No other cross-platform toolkit looks as good as Qt and has an equally appealing API.
Read More
Picking up slack
Saturday, 28 July 2007
Dirk pointed me to an awesome application: zzuf. This program can help you make your program more failsafe when dealing with broken data. Zzuf inserts noise in your programs input. You call it as a wrapper about the code you want to test. The amount of noise is tunable and you can exclude files and directories from being 'fuzzed'. What is really elegant, is that Zzuf adds noise on the fly. The data on you disk is not affected. Zzuf just inserts itself between your program and libc and runs 'read' and 'fread' through its own noisy versions of these calls.
Read More
Pick a plugin!
Friday, 16 March 2007
We're working on porting all the plugins to strigi analyzers to make them faster and make the results indexable. You can look at the current status here. If you feel like helping in KDE then read this tutorial or look at the code that's already available. We hope to port most of the plugins quickly.
Read More
Pit stop
Wednesday, 14 March 2007
First off, I'm not a fan of formula 1 races. Nevertheless, some sort of analogy can be gotten from it to describe the adoption of Strigi in KDE. Ever since Strigi moved to the directory kdesupport in the source repository, many people have started contributing to it. It feels like I've driven into a pit stop and found that after emerging from it, my car has a lot of mechanics on top of it. And they are not siting idly, they are working on improving the car while it is speeding along while I'm trying to keep it on track. In addition to that, they are whispering in my ears and suggesting alternate routes for driving more elegant, taking shortcuts, being nice to other drivers and for ritsen into the caravan that is KDE.
Read More
Porting a simple KFilePlugin
Tuesday, 13 March 2007
Since last monday, the class KFilePlugin has been removed and all the KFilePlugin implementations have to be ported. As an example of how to port a KFilePlugin, I will rewrite KDviPlugin (h, cpp)as a Strigi analyzer.
Read More
writing analyzers for KDE4
Friday, 9 March 2007
You may have heard that KFilePlugin will be replaced in KDE4. In KDE4, we will use analyzers to get text and metadata out of files. Since last monday, you can start porting you analyzers and now I have written a tutorial on how to actually go about this. The tutorial uses BMP as a simple example and it should be pretty simple to port the existing KFilePlugin implementations.
Read More
An additional requirement on kdelibs
Monday, 5 March 2007
I just commited a change to the main CMakeLists.txt of kdelibs to require Strigi. There is no code actually using it, this will come next monday (promise!). Adding this dependency now will allow us to iron out potential problems with compiling Strigi that might pop up when many KDE developers try to compile it.
To compile Strigi you need at least the following development packages: zlib1g-dev, libbz2-dev, libssl-dev, libmagic-dev, and libexpat1-dev. These are the names of the packages in Ubuntu Edgy. On some distros libmagic-dev is called file-dev or file-devel.
Read More
Code on the move
Tuesday, 27 February 2007
Today, the code for Strigi moved to a more prominent position in the KDE subversion repository. The code now resides under /trunk/kdesupport/strigi. This is a directory for code on which (parts of) KDE depend(s). The next step will be to make kdelibs use Strigi code for getting at file metadata. A branch in which this work is being done has existed for some weeks at branches/work/kdelibs-strigi/
Read More
Awesome FOSDEM
Monday, 26 February 2007
This weekend I was at FOSDEM and it was great. Jim Gettys was presenting the One Laptop Per Child progress (video).
Strigi saw a lot of limelight. It was prominent in no less then three talks:
Read More
Listening to entertaining biology
Sunday, 11 February 2007
Today, Midas Dekkers read the last of 1250 entertaining audio columns on man and nature. Many of his columns are available on the website of Vroege Vogels. You can download either an mp3 of the two hour show of more than 100 mb in size, or you can stream the wma version and skip to the column. That's at least the theory. Under Linux, I was so far unable to conveniently listen to the wma stream. Now I've found VLC and made a small perl script that calls VLC from the URL.
Read More
Official: Strigi fastest and smallest
Wednesday, 17 January 2007
Today two Sun employees, Michal Pryc and Steven Xusheng Hou, published a comparison of four desktop indexers: Beagle, JIndex, Tracker and of course Strigi. The work is really extensive and is meant for Sun internally as well as feedback to the developers of the software.
Read More
Browsing archives in KDE4
Sunday, 17 December 2006
Yesterday, I compiled KDE4 and ported the jstream kioslave to it. This means that now you can open email attachements or embedded files in any KDE application without writing a temporary copy. The screenshot below shows konqueror with a treeview of the testdata that comes with Strigi. You can see that the sizes and modification times of the files are displayed properly.
Read More
view archives and emails with attachments as folders
Tuesday, 12 December 2006
The screenshot below seems boring, but it is not. It means something nice and will start a useability discussion. The topic is 'files in files'. How should the gui deal with files in files? Well, so far, KDE does a sloppy job of dealing with them. Different file types have different kio_slaves and some have none.
Read More
Histograms for easy searching
Tuesday, 5 December 2006
Photo applications such as KPhotoAlbum have shown that navigation by histograms can be very convenient. Prerequisite of such navigation is that you have fast access to numerical properties of the items you want to navigate. In Strigi, many numerical properties such as modification time, size, embedding depth, width or height are indexed. This enables Strigi to quickly make histograms of these properties. By clicking on a bar in the histogram, the user can quickly and intuitively focus on a subset the items that are shown.
Read More
Bye bye Big Strigi Lock
Friday, 1 December 2006
In the CLucene backend of Strigi, I was being conservative about allowing concurrent reads and writes to the index, hence making indexing slower if you were looking at the status. So if you were monitoring the indexing speed, it would be slower.
Read More
Filename filters
Thursday, 30 November 2006
Flavio Castelli added a nice feature to Strigi: the ability to include or exclude files from the index based on their file name. This feature has been in Strigi since the last two releases. And while Flavio has been busy writing a report about it, I have smoothed out the feature a bit and made it more universal so that it now also works on names of files that are embedded in other files. Here is a screenshot that shows the dialog for configuring these filters. (input from the usability teams is welcome ;-)
Read More
Make and CMake
Tuesday, 28 November 2006
At aKademy, David Faure presented a script for calling make from emacs when you write code in a different directory from the one you build in. Since I use vim and bash, I had to adapt it to work for me. One important aspect for vim users is that if you call ':make' from vim, it calls the first 'make' it finds in the path. This call is associated with niceness like jumping to the right error lines after calling ':make'. The script I paste here should occur in your path before the real make (usually /usr/bin/make) and it should be called 'make'. When called, it will move up in the directory hierarchy until it finds a directory called 'build'. It enters there and calls the real 'make' with the arguments you passed.
Read More
No Anthem
Friday, 24 November 2006
The elections that took place in the Netherlands last Tuesday were about more than the government. In the province of Noord-Brabant, there was an additional question. This question was about a unique aspect of the province: the absence of an anthem. The Queen's Commisioner decided this should change. Three songs were proposed, all less than a hundred years old. One of them, from the same composer of the emotional song 'kadeng kadeng', is a disgrace to good taste. The other two are nice to sing along in the pub.
Read More
searching progress
Thursday, 23 November 2006
Strigi is moving along at a nice pace. To keep you all posted I'd like to report a bit on what exactly is the progress that has been achieved. Part of it is in SVN and will be in 0.3.10. Part of it has been released in 0.3.9. (0.3.10 is not too far away).
Read More
PerlNomic
Monday, 6 November 2006
Feel like upping your l33t Perl skills? PerlNomic is a very funny game that is a community effort in making a world where all laws are laid down in Perl code. The fuzzyness of natural languages is replaced by the illegibility of Perl code. Lawyers cannot help you here. You get points by having patches to the book of laws accepted by your fellow citizens. Everybody is in it for the points but without getting supporters for your patches you will get nowhere.
Read More
deepfind and deepgrep
Saturday, 21 October 2006
Do you use find? Of course you do, everybody uses it -- often. It's a nice and quick program for finding files on your disk. A downside to find is that it does not list files embedded in other files like .deb, .rpm, .tar.gz, email attachments, and other files. Now there is a version of find that does exactly this. It's called deepfind.
Read More
post aKadamy musings
Sunday, 1 October 2006
It's sunday morning, the sun is agreeably peeping through the cloud deck and I've just booked a room in a hotel in the Elsass region in northern France after having spent two days at home resting from an exhilarating aKademy.
Read More
Strigi Image Search
Thursday, 28 September 2006
Development of search technology is advancing at a mindmaming pace. The groupphoto of aKademy is now powered by Strigi. This allows you to search developers in the picture. You can search for names, projects or vaguely related ideas such as 'undulating'.
Read More
Strigi BoF
Tuesday, 26 September 2006
The Strigi BoF went well and I'm pleased with the feedback. I'm glad most of the issues requested can be handle by Strigi or will be handled by the application coming from the Nepomuk project.
Read More
Talking about search functionality in KDE4
Saturday, 23 September 2006
So Akademy started and the atmosphere is great. The talks so far are very nice and if the talks that are up next hold up to their title the next days will provide a lot if listening pleasure.
Read More
Strigi release 0.3.8
Thursday, 14 September 2006
After more than two months of frantic development, a new Strigi release is available. This release has so many desirable features that you cannot help but upgrade. The numbering (0.3.8) is leading up to 0.4.0 which will be released around the time of Akademy. There I hope to start working on KDE4 integration.
Read More
SvnLine: a small demo app for a zoomable timeline
Thursday, 7 September 2006
This evening I ported a widget I wrote with HTML and javascript to Qt 4.2. I wrote this widget last year. It can show a timeline into which you can zoom by scrolling the mousewheel. This is useful for a number of things like calendar information, browsing files by creation date or size and as shown in this application, for looking at SVN commits.
Read More
XML Data Binding for C++
Sunday, 6 August 2006
Strigi has reached the point that the configuration files for it should be more advanced than a text file with one directory per line. Because I have good experience with using XML Schema for mapping from XML to java and back using JAXB, I'd been looking for a good toolkit that does the same in C++. The requirements for such a tool are:
Read More