TimTim 1.3

Remember TimTim? I haven’t worked on it for a while but I noticed some issues on the Galaxy Nexus I got earlier this month.

While I was at it, I ended up fixing a couple of other issues, here’s the change log:

  • Improved rotation algorithm.
  • Fixed alarm/vibration issues on Android 4.0 and 4.1.
  • Added xhdpi assets to support WXGA.
  • The dial now moves continuously during countdown.
  • Selecting a preset now works when the timer is already active.
  • The soft keyboard is shown when adding/editing a preset.

I’m especially happy with the new rotation algorithm. It finally feels just right: smooth and usable.

I still haven’t added an indication that the timer is ticking. That’s probably the number one complain I get, but I’m not happy with the solutions I’ve come up with so far, so I’ll brood some more on that one.

The next thing I’ll do with TimTim is port it to iOS, now that my wife has an iPhone.

If you’ve got an Android, check out TimTim and TimTim Free on Google Play. Otherwise, stay tuned.

New job

So this is it, my last week at Viaboxx.

I’ll really miss them, more than any other company I’ve worked for. I had a great time, a great team and learned a whole lot.

If you’re looking for a fine company to work for in the Cologne/Bonn area: they’re hiring to replace me. You can drop me a line if you have any questions.

But all good things must come to an end, and I got an interesting offer from Eyeo, where I’ll mostly be working on Adblock Plus, its various ports and the infrastructure supporting it.

I don’t hate ads – I’m earning some money with ads myself. What I don’t like are overly obtrusive ads, so I’m finding Eyeo’s new acceptable ads concept very promising. I’m excited to work on something that helps millions of people experience a better web and enables website owners to avoid ad-blocking by using non-obtrusive ads at the same time.

Another exciting aspect is that I’ll be working from home full-time, something I’ve been longing to do for a while now. Viaboxx was awesome and allowed me to work from home one day per week, but more than that wouldn’t have worked out. Their core product is software for large, expensive machines – not something you can reasonably work with from home. Anyway, I’m very happy to spend more time with my lovely kids soon – they’ll only grow up this once.

Eclipse Color Theme 0.12

We’ve just released version 0.12 of the Eclipse Color Theme plugin. It’s been a year since the last release, so there are a couple of changes. Most notably, the following new editors are now supported:

  • Erlang (ErlIDE)
  • haXe (eclihx)
  • Clojure (Counterclockwise)
  • Go (GoClipse)

Check out the full change log to see what else changed.

Roger and I haven’t done much work on the plugin or the site in the past year, but we’re both eager to move it forward and are working on some interesting ideas right now, stay tuned.

On a related note, since people ask for this a lot: If you’re using Eclipse Juno and have been desperate to get a nice dark UI theme to go along with our dark editor themes, check out Roger’s Dark Juno.

On a new road

That’s it, today was my last day at update, I’ll be working for Viaboxx starting next week.

I’ll really miss my coworkers and, considering that I’ve been here for four years, switching jobs is making me a bit nervous and a bit sad.

On the other hand, I’m really looking forward to my new job. From what I’ve seen, the development team is agile, highly effective, open-minded and each developer managed to impress me. They have several interesting projects, including parcel machines, mobile applications and web applications. Furthermore, they have 20 percent time, an awesome office, ergonomic chairs and iMacs with ridiculously large screens.

Consider me excited.

TimTim hits the Android Market

In the past few weeks, I’ve been working on my first Android app: A kitchen timer named TimTim. It’s not exactly rocket science, but I was looking for something simple to explore the Android platform and see how the Market works. I also wanted to push this all the way through to the polish phase quickly, a state my more ambitious projects hardly ever reach.

So what I’ve uploaded a few days ago is a pretty polished kitchen timer, with a lovely fruits design done by my wife. Here’s a screenshot:

Most of the polish work went into the algorithm for rotating the dial based on finger movement. This was significantly more difficult than expected, but I think it works really well now. I also made it possible to rotate the dial with the D-Pad, in case the finger rotation doesn’t work for anyone.

Apart from that, I’ve also added the possibility to manage presets for common kitchen tasks:

Naturally, the alarm is configurable, too:

Because my wife prepared a few designs and we liked them all, I added the possibility to switch skins. Here’s the lemon skin:

And this is my personal favourite, citron:

You can get TimTim for 50 cents on the Android Market. I’m also planning to add it to a few other stores, like SlideME. We’ve already started to work on our next app, a game. Stay tuned.


TimTim is now also available on SlideME and AndroidPIT.

Update 2

I’ve created a free version of TimTim, it’s on the Android Market.

Java Unit Evolution

As my Bachelor thesis at The Open University, I investigated the possibility of using unit test cases to define fitness functions in genetic programming. More precisely, I wanted to see whether GP could benefit from the practices of test-driven development.

So I bought a huge book and a small book and began. My plan was to create a framework that would automatically evolve a program that would pass a set of user-defined test cases.

I made some promising progress at first, but I soon realised that GP and TDD are not as good a match as I thought. Furthermore, I had some technical difficulties, making it impossible to evolve anything but the most trivial programs. I discussed the issues with Klaus Meffert and he gave me some ideas on how to solve them. But I’ve been working on this for the last nine months, and I prefer to work on other projects right now.

Anyway, I’m still happy with the results. I didn’t get the grade yet, but I have quite a good feeling. Furthermore, I was able to investigate both TDD and GP thoroughly. I’m pretty psyched about TDD, as evident from my recent blog post about it. Working with GP has taught me a fair deal about machine learning, which is in my opinion the most interesting topic in artificial intelligence.

If you’re interested, feel free to read the paper and get the code, it’s open source.