Welcome to the open source website of Tobias Schlitt and especially to the blog. I'm publishing news and articles about the open source projects I'm involved in and information about other open source projects here. A main focus of this blog are projects around and implemented with the PHP programming language, as well as the language itself. But I'm also talking about other OS software.
The content of this website does only reflect my personal opinion and does not necessarily reflect the opinion of any of my customers or companies I work for. All content is provided under the stated license and you may use it under the terms provided by it. If you need further permissions or are unsure about a certain use case, do not hesitate to ask me via email.
I recently had the problem that I wanted to retrieve the smallest items from a stream of data. When talking about a stream here, I refer to a data set that I do not want to load into memory completely, since it has quite a few elements. The best way to process such data is a stream approach, where you work always on a single item at a time, iteratively, without loading the full data set.In my special case, I had a database with 140,000 records. The processing of these records could not happen in the DB, since I needed to create vectors from text and perform calculation on these. Basically, I needed to check each vectors distance to a reference vector and keep only the k closest ones.So, what is a good approach to solve such a task? I decided to implement a custom data structure based on a max heap to solve the problem. In this article, I present the solution and compare it to two different other approaches in terms of a small benchmark. [Read full post…]
Since last November I'm the happy owner of an Android smart phone. Actually, I already have my second one: After the HTC Hero, which was already amazing, I now have the Motorola Milestone (aka Droid). This blog post lists and reviews the apps that I think every Android phone should have installed. [Read full post…]
Yesterday the latest stable release of the eZ Components project, number 2009.2, was rolled. For this release I worked on support for OpenDocumentText (ODT) in the Document component. In this article I show you how you can import OpenDocumentText documents and convert them into any of the supported formats of the component, how to export data into ODT and how to apply styles to the generated documents. You will also see how ODT and PDF can be exported with the very same styling information to make them look almost identical. [Read full post…]
So, it's exactly one year ago that I started using Twitter. I remember that I was always of the opinion that Twitter is one of the most stupid hypes nowadays and that it's so useless to know when other people have a cup of coffee or go to the toilette. Using Twitter actively for exactly one year now proofed this attitude wrong. I'm providing some stats on my live with Twitter in this article and try to explain my personal value of using Twitter in. [Read full post…]
The IPC 2009 was amazing, even if it's still running while I write this blurb. Find my slides in this article, as well as a small resume of the conf. Thanks for the great event! [Read full post…]
Attention: This blog post is in German, due to the fact, that the book is also in German. In short: Kores and my book about eZ Components can now completely be found online, for free. Das von Kore und mir verfasste eZ Components Buch, gibt es jetzt als Open Book komplett online zu lesen. [Read full post…]
Ilia recently brought up the topic of scalar type hints again. I would love scalar type hints, but a sensible implementation is not easy. I summarize some approaches in this post and talk about the problems they raise. [Read full post…]
On Friday, June 19th 2009, the PHP Barbecue Tour 2009 will visit Dortmund. The idea behind PHP BBQ is to bring PHP usergroups from the seminar room to the grill. We'll have special guests from the PHP/MySQL community attending and will have a great evening with lots of dead animals. If you want to join, don't hesitate, it's free! Just bring your own food and drinks. [Read full post…]
Derick was always bitching at me when doing releases for the huge amount of time needed to process the Webdav components sub directory. We always supposed, that the Subversion performance issues here resulted from the Webdav test suite, which consists of an awful lot of small test files and some sub-directories. I finally found the time to refactor the tests and the performance improvement is astonishing. [Read full post…]
At this weeks IPC, I attended the talk "Framework? No thank you, I will use my own!". In this article I take up my controversal thesis, that it might be wise to create your own framework, and explain my view in detail. In addition, I analyze, what a framework actually is and how it is typically seen in the PHP world. Do you use an OSS framework? Or did you build your own? [Read full post…]