The odd bit

Once is an accident, twice is a coincidence, three times is an enemy action.

The odd bit - Once is an accident, twice is a coincidence, three times is an enemy action.

IE7: False Start

Microsoft released Internet Explorer 7 today, but its start could’ve been better. To say it with Microsoft’s own words:

“Internet Explorer 7 provides security through a robust new architecture, security features that help defend against malicious software (also known as malware), and new ways to better protect against the theft of personal data from fraudulent websites, a practice known as phishing.”

That being said, the very first security issue for the final code is already a fact. Security firm Secunia has released a security advisory and a proof of concept. It’s not a severe issue, but I feel this doesn’t bode well for the future.

On a related note, IE7 will be pushed to clients as a high priority update. Another fun fact is that you need to reboot after upgrading. Let’s rephrase that: you need to reboot after installing Microsoft’s web browser! You can install Seamonkey, Firefox, Opera and others without rebooting and they all work fine. Obviously, the reboot is because of its integration in Windows. But why does it need to be integrated if others can do it without the black magic?

The fact that they’ll force it through the automated update service means there will be a quick adoption rate for IE7. The bad news is that all web developers can now start their compatibility checking (and probably IE7 CSS hacking) or they’ll be bugged about it by the clients. I can hear you thinking “but there have been betas, you should’ve checked with those”. In normal circumstances I’d agree, but Microsoft has their own idea of the alpha-beta-rc-release cycle. The IE7 betas changed so much that you couldn’t rely your testing on them. The betas should have been released as alphas which would make today’s final release a beta – that’s what Microsoft’s final releases usually are anyway.

One last point (for now): what the hell did they do the interface?!

Zend Framework (PHP)

I’m currently working on a website for myself using the Zend Framework. Actually, it’s take #3 of the project. The first attempt never had a chance of succeeding even remotely. The second attempt was much better, but the pieces of the puzzle didn’t really fit together.

The biggest problem I experienced while working on the second attempt was the data persistence implementation of the eZ components. It’s really not convenient to work with: you must implement at least two functions (even though the API doesn’t force you to implement them) to manually return the data that should go into the database and to set object properties to values from the database. You also need to create a definition file that maps properties to database fields. Hey, if there’s a mapping, why do I still need to implement manual getting/setting in the class? Another major shortcoming is that a table’s primary key must be an auto-increment integer.
Data persistence is a lot easier in the Zend Framework. All you need to do with your class is extend the Zend_Db_Table class, follow a couple of naming conventions and it works! If you really want to be a difficult guy, you can override the naming conventions.

That’s the biggest difference I’ve encountered so far. There will probably be follow-ups to this post as I continue to dig deeper in the Zend Framework.

Milk Inc: Supersized

I went to Milk Inc‘s Supersized concert in “Het Sportpaleis” Saturday. The show was completely sold out which means there were about 17000 spectators. Everyone sang along and created a great atmosphere on their hits of the past 10 years during the 3-hour performance. I think the building was jumping up and down 😉

In short: a great show, a lot of fun and good music. What else do you need?