Author Archives: Silvan Mühlemann

Implementing scrum at

The first sprint is done! Yes we finally started doing Scrum at*. Well, it’s not exactly how Schwaber and Sutherland would expect it. But our way fits our team. And the acceptance in both the IT team and the … Continue reading

Posted in Management, PHP, Programming, Web Development | Tagged | 5 Comments

Nine ways to obfuscate e-mail addresses compared

When displaying an e-mail address on a webpage you obviously want to obfuscate it to avoid it getting harvested by spammers. But which obfuscation method is the best one? I drove a test with 10 methods. Here are the results. Continue reading

Posted in PHP, Web Development | Tagged , | 128 Comments

Round Robin Data Storage in MySQL

If you want to store large amount of volatile data (e.g. log file entries) in a database with a constant storage memory footprint and no maintenance to purge the old entries, a round robin database is the best solution. But … Continue reading

Posted in Database, PHP | Tagged | 14 Comments

Unit testing makes coding more fun

“unit testing is a test that validates that individual units of source code are working properly”, that’s what Wikipedia says about unit testing. That’s general knowledge. But what motivates me even more than the increased software quality is that it … Continue reading

Posted in PHP, Programming, Web Development | Tagged , , | 9 Comments

CTO's Saturday Fun: Hackday!

A refreshing change from my daily routine as tilllate CTO (90% meeting, 10% coding) was my visit at the first Webtuesday Hackday yesterday (Hackday = “a day spent hacking with like minds”, as organizer Harry Fuecks defines it).

Posted in Webtuesday | Tagged , , | 1 Comment

Unit test practice at

For now over three years we are working with unit tests. I’d like to share some of those experiences. As we have two frameworks in place for our website, I can compare two different strategies for unit tests. In our … Continue reading

Posted in PHP, Programming, Web Development | Tagged , | 4 Comments

Pitfalls with MySQL and auto_increment

There’s a number of pitfalls one should be aware of when working with AUTO_INCREMENT fields in MySQL. Last week, we fell in each of them: We have the table photos which contains all 15 million pictures on This table … Continue reading

Posted in Database | Tagged | 4 Comments

Comparing queries with mk-query-profiler and diff

EXPLAIN is not the only way to analyze query perfomance im MySql because some things are not being taken into account. For example LIMIT clauses or the cost of the optimizer. There is also the mk-query-profiler. An interesting way to … Continue reading

Posted in Database | Tagged , | Comments Off on Comparing queries with mk-query-profiler and diff

My favourite keyboard moves in Firefox

I am a lazy guy. I hate moving my hand away from the keyboard to the mouse and back. So I try to use as much keyboard shortcuts as possible. Here’s 2 ways I improve my productivity by avoiding device … Continue reading

Posted in Uncategorized | Tagged | 1 Comment

Holiday season: The best time to… work

For me, the time around Christmas and New Year is the best time of the year. Of course, there’s the peaceful family reunions around the christmas tree. The cozy evenings at home on the couch. Or days where you can … Continue reading

Posted in Management | 2 Comments