Sunday, November 28, 2010

iOS 4.2.1 battery drain on iPad

The Battery Life Thread

Following the iOS 4.2.1 release in the news and in forums I came across a discussion thread in Apple’s forums that is about the issue of some users having extremely poor battery life after the upgrade from iOS 3.2. I have not yet upgraded to 4.2 and I might in fact hold on to 3.2 for a little longer for other reasons, so I don’t know yet, if I will be affected the same way. There are some users claiming that this is what is to be expected now with multitasking and several apps taking up resources at the same time. Reading through these, I could not help to notice that there seems to be a fair bit of confusion and misinformation going on about how multitasking might contribute to this issue

So from a developer point of view, let me just state a few things. Please note that the general tone of this is that the “Apple/iOS version” of multitasking is by no means comparable to what you know from Mac OS or Windows, so many analogies are just not correct.

Wednesday, November 17, 2010

Collection Performance - Don't become too lazy


A few weeks ago I was performance tuning some code that ran quite regularly and took more time than it should, judging from the complexity of what is was doing. As usual, by merely looking that the code there was nothing blatantly, obviously, complete and ridiculously wrong - after all, it worked correctly.

So I fired up trusty old JProfiler and had a look, just to find out that sometimes you can become just too lazy and reliant on libraries without realizing their characteristics deeply enough.

Tuesday, October 05, 2010

No Google Apps for me

I am a huge Google fan and especially love GMail. I have been a member from very early on and gone through all their improvements. Currently there is a mail archive of about 1GB in my account, going back to February of 2005.

Recently my friend and colleague Udo made me aware of the fact that Google Apps for your domain offers a free standard edition for up to 50 users. That seemed to be the perfect solution for me, because I figured that would allow me to use a custom sender address when sending mail from my iPad or iPod Touch instead of my address. Right now, if you want push notifications for new mail, you need to set up an Exchange account for GMail on the iOS device, but this will not allow for custom sender addresses. In the end I am not even sure this would have worked, but for other reasons I decided to abort the setup half way through for a IMHO very stupid limitation.

Saturday, August 07, 2010

Code Generation with Xtext

Recently I attended a local rheinJUG meeting in Düsseldorf. While the topic of the session was Eclipse e4, the night’s sponsor itemis provided some handouts on Xtext which got me very interested. The reason is that currently at work we are developing a mobile Java application (J9, CDC/Foundation 1.1 on Windows CE6) for which we needed an easy to use and reliable way for configuring navigation through the application.
In a previous iteration we had – mostly because of time constraints – hard coded most of the navigational paths, but this time the app is more complex and doing that again was not really an option. First we thought about an XML based configuration, but this seemed to be a hassle to write (and read) and also would mean we would have to pay the price of parsing it on every application startup.
Enter Xtext: An Eclipse based framework/library for building text based DSLs. In short, you just provide a grammar description of a new DSL to suit your needs and with – literally – just a few mouse clicks you are provided with a content-assist, syntax-highlight, outline-view-enabled Eclipse editor and optionally a code generator based on that language.

Getting started: Sample Grammar

There is a nice tutorial provided as part of the Xtext documentation, but I believe it might be beneficial to provide another example of how to put a DSL to good use. I will not go into every step in great detail, because setting up Xtext is Eclipse 3.6 Helios is just a matter of putting an Update Site URL in, and the New Project wizard provided makes the initial setup a snap. I assume, you have already set up Eclipse and Xtext and created a new Xtext project including a generator project (activate the corresponding checkbox when going through the wizard). In this post I am assuming a project name of com.danielschneller.navi.dsl and a file extension of .navi.
When finished we will have the infrastructure ready for editing, parsing and generating code based on files like these:

Friday, August 06, 2010

[SCR] Found components with duplicated names inside their bundle!

Today I was briefly confused by an error message issued by the OSGi Equinox runtime’s Declarative Services runtime which I did not understand immediately. For your – and my own – reference find the solution here.
First, this was the error message I got:
1281104579615=1::[SCR] Found components with duplicated names inside their bundle!
 This component will not be processed: Component[
    name = networksimulation
    factory = null
    autoenable = true
    immediate = true
    implementation =
    properties = {devicevendor=DanielSchneller, simulation=true}
    serviceFactory = false
    serviceInterface = []
    references = {
        Reference[name = LOG, interface = org.osgi.service.log.LogService, 
        policy = static, cardinality = 0..1, target = null, bind = null, unbind = null]
    located in bundle = com.danielschneller.sim.network_1.1.0.qualifier [49]
Apparently the component name networksimulation was used by two components in the same bundle. Well, that’s why you are encouraged to use package-name like identifiers; however this was not the problem. Changing it to which was guaranteed to be unique in my case still left the error the same:
1281104579615=1::[SCR] Found components with duplicated names inside their bundle!
This component will not be processed: Component[
    name =
    factory = null
To make it short, this is what happened: I had added this component’s description to a bundle that already contained some more using the Eclipse wizard for new service components.
That very fine wizard dutifully added the new filename to the Manifest is the Service-Component: line. Unfortunately in this case it led to:
Service-Component: OSGI-INF/*.xml, networksimulation.xml
At launch time apparently the wildcard was expanded, already including the new file, and then added at the end again. Apparently there is no sanitizing done (like adding the filenames to a Set instead of a List), which results in a second attempt of registering the same component a second time. I will go and file a bug with Eclipse for this, There already is a filed, but unfixed bug for this (Eclipse Bug #278540) but till then just make sure that when you use wildcards in the Service-Component Manifest header it does not cause any duplicates.

Monday, July 19, 2010

Java Object Initialization Order - Know your JLS!

Recently I came across an interesting problem whose solution eluded me at first glance. Consider these three classes:
package com.ds.test;

public class Upper {
 String upperString;

 public Upper() {
package com.ds.test;

public class Lower extends Upper {

 String lowerString = null;

 public Lower() {
  System.out.println("Upper:  " + upperString);
  System.out.println("Lower:  " + lowerString);

 public static void main(final String[] args) {
  new Lower();
package com.ds.test;
public class Initializer {
 static void initialize(final Upper anUpper) {
  if (anUpper instanceof Lower) {
   Lower lower = (Lower) anUpper;
   lower.lowerString = "lowerInited";
  anUpper.upperString = "upperInited";
What output is to be expected from running the Lower class?

Wednesday, June 02, 2010

Set Scaled OS X Desktop Wallpaper via Automator

I regularly enjoy the pictures Romain Guy posts on his blog. Often they make for great desktop backgrounds, but at a whopping 20 megapixels they are just a little too big for my iMac's 1920x1200 screen.
When today I came across his most recent picture called False Kiva I went through my usual list of steps:
  1. Go to the "original size" version of the picture on Flickr
  2. Drag it to the desktop
  3. Open the file with a double click
  4. Scale it to 1920x1200 in
  5. Save it to the Pictures folder
  6. Set it as the wallpaper
It occurred to me, that apart from liking and downloading a picture, all the remaining steps could be automated with a little Automator service. So I recorded this sequence of steps and saved it as a service.

Sunday, May 16, 2010

On Writing a Book, Pt. 4 – The Tools (II)

This is part four of an ongoing series about my experiences while writing the MySQL Admin Cookbook for Packt Publishing. All previous parts can be found under the mysql-admin-cookbook label.

This part will be about more software used in the process of writing the book. The last episode covered writing tools, file/version management and backups. What's up now is graphics programs, virtualization and PDF handling.

Sunday, May 09, 2010

On Writing a Book, Pt. 3 – The Tools (I)

This is part three of an ongoing series about my experiences while writing the MySQL Admin Cookbook for Packt Publishing. All previous parts can be found under the mysql-admin-cookbook label.

Even though I said I would be presenting things in mostly chronological order, I think after the previous - rather dry - part, a little more technical and fun information would be nice for a change: The tools used to create the MySQL Admin Cookbook (well, at least those used by Udo and me). To give a detailed account of what software products we used during the whole experience I will split this topic up into multiple posts. Otherwise it would just become either way too long or I would have to leave out too much stuff than I am willing to.

Friday, April 30, 2010

On Writing a Book, Pt. 2 – Outline and Schedule

This is part two of an ongoing series about my experiences while writing the MySQL Admin Cookbook for Packt Publishing. All previous parts can be found under the mysql-admin-cookbook label.

While last time I focused on the initial contact with the publishing company (just referred to as "Packt" from now on), this issue is about the process of putting together an outline proposal and coming up with things to write about in the first place. As from this point on in the process Udo was involved with everything, I will be referring to "us" and write "we" most of the time from now on.

The Publisher's Expectations

The only thing we knew about the books would-be content was a chapter template for Packt's cookbook series as well as the general description provided by Sarah earlier:

As I'm sure everyone is aware, MySQL is a relational database management system. Administrators of MySQL will be tasked with things such as maintaining the database, tuning the server, managing users etc etc.
This cookbook will have all the MySQL recipes an administrator could dream of, spanning from creating tables to managing views, from improving performance to securing the database, from using monitoring tools to using storage engines. DBAs of all levels will be catered for with recipes of varying difficulty, allowing the reader to administer MySQL to their hearts' content.

Before actually beginning the outlining process there were a few more emails sent back and forth, mostly questions on our part, for example whether we should include programming related materials or tool descriptions in addition to more "real" database themes, what spectrum of experience to expect from potential readers and so on.

Friday, April 23, 2010

On Writing a Book (Pt. 1)

This is the first part of an ongoing series about my experiences while writing the MySQL Admin Cookbook for Packt Publishing. All parts can be found under the mysql-admin-cookbook label.

In a few past posts I wrote about different aspects of my book writing project already. However those posts were not very contiguous, and I was asked a few times what my general experiences were and what caveats to look out for when taking on such a project for the first time. It might be of interest to some if I write down my experiences in a little more structured form.

This will be a series of several posts, because for one I do not think it would be feasible to have a single very long one, and also because this allows me to span writing it over a longer time. I will try to keep everything roughly chronological, but will deviate when I think it makes things clearer or better to understand.

Please be aware that I do not have extensive experience with multiple publishers, their processes and so on. This is solely about my personal experiences while writing a single book, with a single publisher, over a time of roughly 15 months. So please do not take anything for granted – should you go on that route and write something yourself, you might find yourself in completely different circumstances and witness the whole matter completely differently.

As for getting in contact with the publishing company, I already wrote down my experiences with that here:

However I will go into a little more "historical detail" for starters.

Friday, April 09, 2010

Amazon + DHL delivery speed - just great!

Instead of all the bashing that's usually to be found in blogs, I think one should give credit where credit is due.

Yesterday in the late afternoon I ordered some hardware from with standard delivery options.

This is what my email inbox looked like today:

The oldest mail (the last one in the screen shot) is Amazon's confirmation of my order. Unfortunately this cannot be seen directly, but the mail arrived - seconds after I placed the order - at 17:50h (5:50pm).

The next mail - today at 09:53 (am) - informed me about the package leaving Amazon.

Only about 5 hours later I was informed that it had been delivered at my chosen destination!

With this kind of speed, I do not think I will be buying an Amazon Prime membership anytime soon, otherwise they would probably deliver the stuff, even before I ordered it ;-)

Wednesday, March 31, 2010

iTunes 9.1 to check for iPod Software Update on Apr 3rd

When I just heard about iTunes having been updated to 9.1 I went ahead and installed it via Software Update on my iMac. When connecting my iPod Touch I was immediately curious about this:
Is it just me, or do I see a very special date for the next update check of the iPod's software version? Usually this is set to be something like every two weeks. I cannot be sure if this is the same date as before the update, but I think this might be a hint of the iPhones and iPod Touches being updated along with the iPad release as well.

Even when hitting the "Check for Update" button, the date does not change...

Sunday, March 21, 2010

New blog template – and the problems entailed

Last week I was happy to see that (where this blog is hosted) introduced a new template layout editor. While marked “beta” – or “Blogger in Draft” as they call it – I had thought about updating the layout of my site for quite some time, but never managed to sit down and do it. Now with this new editor, there seemed to be no reason not to go for a redesign.

You can see the result – I did not go crazy with the layout, but I think it is a nice, refreshed variation of the previous style. I replaced the header image and went for a slightly different color scheme. Temporarily I had picked a more colorful background image, but after some feedback decided against keeping it; it was just too noisy.

In general, I have to say the new editor is very nicely done and offers a very quick way to come to a reasonable design. However, there are some problems, too. Just to be clear: Even though I did not see any big-lettered warning signs in the new editor itself, by using the “Blogger in Draft” mode, I agreed to use pre-release software. So the following is clearly at least in part my fault – don’t get me wrong. However I thought I’d write it down for others to read and decide whether they would be fine trying it out, too.

Problem 1: Custom CSS got lost

Quite regularly I post source code or script snippets. In the old template I had included google-code-prettify to make those samples look nice and not take up too much space, but be limited to maximum box size and use scrollbars when necessary. To achieve this, a reference to a JavaScript and a CSS file needed to be included in the template, which I did. This got lost when I used the new graphical template editor and needed to be restored manually.

Problem 2: Google Analytics is brokenAnalyticsBloggerDrop

When I looked at my Google Analytics stats today, I saw a sharp drop in all numbers, starting last week when I switched to the new template. Apparently I am not alone with this and there seems to be some sort of problem with the tracking code embedded in the page.

According to the instructions, the JavaScript snippet for GA must be placed right before the closing body tag of any page. However when doing to in the new template, the final page (as seen in the browser) will contain a whole bunch of additional script code, before the body gets really closed. I am not sure what the problem with this is, but I suspect some sort of race condition or something like this, because my stats still show some people getting through.AnalyticsSomeHits2

Even though I do not really rely on these numbers for anything, this might be a more serious problem for other people. I hope Google will find a way to fix this soon.

Saturday, March 20, 2010

MySQL Admin Cookbook Available

Finally, it is available for orders: The MySQL Admin Cookbook is the first book I have written and it is now ready for shipping. You can find more information about it at the publisher's website, including a free sample chapter!

I have yet to receive my sample copy, however that should not keep you from going ahead early and ordering it, e. g. from For your convenience, here is a direct link:

On Amazon you can also have a look at the index and a few pages of the first chapter.

More international points of sale can be found on the publisher's website, as well.

Sunday, March 14, 2010

15 months – And it is done

Finally: Not quite 65 million years in the making (Jurassic Park, hint, hint), but it took about 15 months to get my first book to the printer. A few days ago Udo – my co-author – and I approved the final version of the MySQL Admin Cookbook for publishing. From what I see the book has not been added consistently to the online book stores around the net, but I will most certainly put links on here, as soon as it is available.

I think, before I begin the next one, at least a few months of relaxing are in order….

Thursday, February 04, 2010

OS X’s Preview fails to display PDF annotations

Today I went through a set of changes the proof reader had made to the book’s preface. I could see his annotations in the document and was seriously wondering what the heck he wanted to tell me. I even went so far as to reply that I thought his changes would make matters worse. Turned out to be quite embarrassing, because apparently Mac OS X’s does not do a very good job of displaying annotations inside PDFs.

See this screenshot:

OS X Preview displaying a PDF with annotations

The bars on the left each signify a single annotation in the document. Unfortunately neither are they aligned vertically with where the change is (see the red one saying “Swap order” – this is related to the red squiggly line right below the “Preface” heading.

Hovering over these bars will highlight the corresponding marker on the right, but will not reveal the comment associated with it. From what I can tell there is no way to get the text to show up. Zooming in and out changes the layout somewhat and makes a subset of the text visible – as in the screenshot. But there is no way to see them all. This made me assume, that there simply was no comment for the respective changes.

Tonight I wanted to print out the document including the annotations and did not find a way to do so from Preview, either. So I opened the document in Adobe Reader – which I generally find too slow for everyday-use. You might imagine my surprise when I saw this:

Adobe Reader showing the same document

This is the exact same file! All edits are highlighted much better and you can drag around the little comment hovers. Being able to read the comments made the changes suddenly become much more sensible, especially because some of them which I had previously considered strike-throughs were actually annotated with an alternative – better – phrasing.

Guess I will have to give Adobe some credit – and file a bug against OS X if I do not find any non-obvious way of getting at the information with

Tuesday, February 02, 2010

Finishing touches

The book is in its final stages. Right now I am putting the finishing touches to the illustrations and going through the editors’ most recent comments and suggestions. Takes a lot more time than expected, though…


Friday, January 15, 2010

HP ScanJet G2410 Mac OS X 10.6 driver (Snow Leopard) download

In my previous post I promised to post follow ups regarding the missing Mac OS X 10.6 (Snow Leopard) compatible drivers for the HP ScanJet G2410. Today I got a response to my support case, including a download address which I would like to share. On the website you still cannot find the software directly.

I have not yet tried to install it, but will certainly do tonight when I get home. However anyone interested could go ahead already.

As an aside, I was not able to download the disk image using my Windows based Chrome browser - for some reason it told me the link was broken. With Firefox it works just fine and has just finished. The file name is slightly different from the one I was able to download earlier (see previous post), it now ends in ...Ph2.dmg instead of ...Ph1.dmg. We'll see tonight.

HP Mac Software Support - Ridiculous

When a few weeks ago my Canon LIDE70 scanner died, I went and looked for a Snow Leopard compatible replacement. I found the HP ScanJet G2410 which is labeled compatible with 10.6. Little did I expect what “compatible” means in HP’s terms.

So I went ahead and bought one at a local electronics store. Inside the box there was a leaflet informing me about the software on the CD only being suitable for Leopard (10.5) and that I would need to download the most recent version from HP’s homepage, which I did.

Downloading it took a long time, because apparently they are throttling the bandwidth to about 30kb/s – not so nice when you have to download 120MB for a driver. Once it was finished, I launched the installer and everything seemed to work just fine.

However I noticed that Apple’s Image Capture application did not recognize the scanner, even though their own tool “HP Scan” works flawlessly (not considering the 100% CPU load on both cores for about 30s before the first scan starts). The tool is not the fastest, but is has a reasonably tidy interface and comes with sensible presets and OCR.

When I noticed today that I could not scan a new document from my document management tool “YEP!”. So I went to the HP support site again to try and look for an updated driver. But instead I learned, that they silently removed the DMG file I had downloaded before! Their support site at tells me that software is “Available now” – apparently they did pay much attention to detail when pulling it.

So next I contact their “chat support” about the issue. This is a transcript:

[Thursday, January 14, 2010 11:30 PM] -- Automatically generated message:
Your support request has been received and has been queued. We are working on your problem and will contact you within approximately five minutes during business hours, (Monday-Friday, between 8am and 5pm local time).

[Thursday, January 14, 2010 11:31 PM] -- Automatically generated message:
For reference, your Case ID is 4609169909
[Thursday, January 14, 2010 11:31 PM] -- Automatically generated message:
A Support specialist, Jisha C has been assigned to your case.

[Thursday, January 14, 2010 11:31 PM] -- Jisha C says:
Hello Daniel, thank you for contacting Hewlett-Packard and for your interest in our Instant Support Program! My name is Jisha and I see you have a query regarding your HP Product.

I'm going to take few moments to review the information you submitted and will message you in a couple of minutes.
[Thursday, January 14, 2010 11:32 PM] -- Jisha C says:
I understand that you need the Snow Leopard compatible software for HP Scanjet G2410 Flatbed Scanner. Is that correct?
[Thursday, January 14, 2010 11:32 PM] -- Daniel Schneller says:
[Thursday, January 14, 2010 11:33 PM] -- Daniel Schneller says:
On this page it says, it should be available:
[Thursday, January 14, 2010 11:34 PM] -- Jisha C says:
Daniel, I am sorry to inform you that the Snow Leopard compatible software for the scanner is not yet released.
[Thursday, January 14, 2010 11:35 PM] -- Daniel Schneller says:
it was released. i downloaded it once, but do not have it anymore.
[Thursday, January 14, 2010 11:35 PM] -- Daniel Schneller says:
i need to install it again
[Thursday, January 14, 2010 11:35 PM] -- Daniel Schneller says:
the file was called HP_Installer_Scanjet_v2.4.0_Ph1
[Thursday, January 14, 2010 11:36 PM] -- Daniel Schneller says:
with a .dmg ending
[Thursday, January 14, 2010 11:36 PM] -- Jisha C says:
Its not available for download.
[Thursday, January 14, 2010 11:36 PM] -- Daniel Schneller says:
yes, I can see that.
[Thursday, January 14, 2010 11:38 PM] -- Daniel Schneller says:
so why does it say "Available now"? I bought this model of scanner just because the software was available for this operating system release. without it, it is just a brick taking up space.
[Thursday, January 14, 2010 11:38 PM] -- Daniel Schneller says:
HP cannot be serious about this.
[Thursday, January 14, 2010 11:39 PM] -- Daniel Schneller says:
First release it, then withdraw it, tell people on their own website to go ahead and download it, and now a support agent tells me it has not been released is not what I expect from a renowned company.
[Thursday, January 14, 2010 11:40 PM] -- Jisha C says:
I suggest you to register the HP product to receive alert for any software or driver updates.
[Thursday, January 14, 2010 11:40 PM] -- Jisha C says:
In order to subscribe your information for driver updates, please refer the web link provided below:
[Thursday, January 14, 2010 11:40 PM] -- Daniel Schneller says:
I already did. do you by any chance have an idea on how long this will take?
[Thursday, January 14, 2010 11:41 PM] -- Daniel Schneller says:
Who else could I contact for more information on this?
[Thursday, January 14, 2010 11:44 PM] -- Jisha C says:
I am sorry, we cannot provide any estimate date for the software release.
[Thursday, January 14, 2010 11:56 PM] -- Jisha C says:
Are we still connected?
[Thursday, January 14, 2010 11:58 PM] -- Daniel Schneller says:
[Thursday, January 14, 2010 11:59 PM] -- Daniel Schneller says:
we are.
[Thursday, January 14, 2010 11:59 PM] -- Daniel Schneller says:
so, do I have any chance of contacting someone "closer to the source" of the software?
[Thursday, January 14, 2010 11:59 PM] -- Daniel Schneller says:
right now I have a brand new HP scanner on my desk which is completely useless.
[Friday, January 15, 2010 12:00 AM] -- Daniel Schneller says:
HP advertises it as being compatible with 10.6, so I expect something more than just a recommendation to subscribe to a notification service to learn about when - sometime in the future - someone decides to publish an update.
[Friday, January 15, 2010 12:00 AM] -- Daniel Schneller says:
at least put the software back that was there before
[Friday, January 15, 2010 12:01 AM] -- Daniel Schneller says:
otherwise, please let me know how to contact someone at HP to arrange for them taking the scanner back and returning my money.
[Friday, January 15, 2010 12:02 AM] -- Jisha C says:
You can submit a complain or suggestion directly using the “Support Case Manager".

The "Support Case Manager - Professional Edition" is a HP website that provides a place to submit a complain or suggestion directly by the customer and this website also has an online tracking system to find the status of a particular case.

Submit & Manage a support case:
[Friday, January 15, 2010 12:03 AM] -- Daniel Schneller says:
thank you. i will look into that.
[Friday, January 15, 2010 12:03 AM] -- Jisha C says:
You are welcome.
[Friday, January 15, 2010 12:05 AM] -- Jisha C says:
Daniel, since we have completed troubleshooting your issue I am going to close this support request at this time. If you should need assistance in the future please revisit our Instant Support Program.

Thank you again for contacting Hewlett-Packard and have a great day! 

So I indeed went to the “Support Case Manager – Professional Edition” site and filed an issue. Well, I had to do it twice, because they do not seem to like Safari there – I had to re-enter everything in Firefox after the page just died on me.

So now I am waiting for their response. This is what I put into the ticket contents:

I recently bought a ScanJet G2410 - I picked this particular model, because HP advertises it as being supported on Mac OS X 10.6 (Snow Leopard).

In the box I found a note that I needed to download the drivers, because the CD was out of date. I did so and installed it on my Mac. It worked - even though not to my full satisfaction. When I needed to reinstall my machine, I wanted to download the software from HP's support website again, as per the instructions on [link as above]

There it says the software is “Available now”. However when I proceed to the downloads page, I am only offered drivers for OS9 and OS X up to version 10.5 (Leopard) which the note in the box says *not to install*. The 10.6 compatible drivers seem to have been removed without any traces.

This leaves me with a brand new scanner that is completely worthless now, because I cannot use it for my business. I contacted HP's chat support already, but was only told that they could not estimate a release date (rerelease would be a better term...) for the driver.

I would like to hear about HP's general policy in this case. After all, I effectively have a $100 brick on my desk - this is not what I expect from a company like Hewlett Packard. For me this leaves two options: Either you can provide me with the necessary drivers, or I have to ask you to take your product back, refunding my money.

I am looking forward to hearing from you.

Daniel Schneller

I will post updates as I (hopefully) progress.

Friday, January 01, 2010

Blog Statistics 2009

Others have done it, so why shouldn’t I do it, too? Well, usually that’s not my line of thought, but when today I read David Linsin's blog post about his stats I thought I might follow along.

Overall stats

The overall visits to my blog – and countless others with no doubt – display the workday/weekend jagged line one would expect. The summer months seem to be a little lower on average, but that’s ok, people deserve their vacations. Blue line is 2009, green line is 2008 for comparison.

Page views (2008 and 2009 compared)

Content Performance (2008 and 2009 compared)

Overall traffic increase in the 40% range with slightly more time per page – nice. The bounce rate is constantly high, but since almost all posts are about some particular narrow-focused topic, this is expected. Usually when looking for the solution to a problem bugging me, I do not have the time to browse around for other, unrelated stuff on the sites I come to, either.

Top Contents

The top 8 content pages in 2009 were:

  1. MySQL: Add primary key to table with duplicates (5666 page views)
  2. Migrate VM from VirtualBox to VMware Fusion (4185 page views)
  3. XP SP3: STOP 0x0000007E (0xC000001D) (solved) (4126 page views)
  4. SAXParseException: -1:-1: Premature End Of File - Misleading error (3534 page views)
  5. How to charge the iPod Touch's battery on Linux (3245 page views)
  6. ERROR 1033 (HY000) on InnoDB configuration error (2431 page views)
  7. Conditional INSERT with MySQL (2385 page views)
  8. Something to know about Toshiba external USB HDD (2311 page views)

I would never have guessed that these Toshiba drives are still around bugging people with their strange password protection voodoo. But there is a constant stream of comments on this post to this day.

The post about migrating VMs from VirtualBox to VMware had a spike in traffic right around the time VMware Fusion 3 was released – pretty sure that’s when a lot of people gave it another shot. The XP SP3 blue screen post was very strong around the time I posted it and has been gradually decreasing in popularity – probably a sign that SP3 is getting more and more prevalent.

The following PNG gives some more details and a 2008 comparison – which of course has to be taken with a grain of salt for posts written later in 2008 or at the beginning of 2009.

Top 8 Pages  (2008 and 2009 compared)


As for browsers and operating systems, Windows and Linux lost compared to 2008 while Macintosh gained 10%. Firefox lost about 3%, IE about 7%. Both Safari and Chrome took their shares:

Visitor OS  (2008 and 2009 compared)

Visitor Browsers  (2008 and 2009 compared)

Traffic Sources

Finally some data on traffic sources. Apparently the amount of traffic from other sites and direct traffic is slowly increasing, which I find flattering, especially because in 2009 I had little time for blogging and did not provide too much new contents.

Traffic Sources  (2008 and 2009 compared)