UPDATE considered harmful
chrisdew.com
chrisdew.com
The article doesn't really address where Event Sourcing is most useful, which is when it is used on the "write" side of a system with CQRS (Command-Query Responsibility Segregation) architecture.
See (among a vast volume that has been written on the combination of these techniques): http://cqrs.wordpress.com/documents/cqrs-and-event-sourcing-...
He uses mySQL, which I'm not as familiar with, but I know with a index organized table in Oracle, or a table with a clustered index in SQL Server, there might be a lot fragmentation going on and the table might need to be reorganized.
In short: an interesting idea, but impractical in most cases.
I personally like Type 2 (having everything in the working table with an attribute to mark the current and all previous versions) because of its simplicity to implement and maintain. Type 3 (having a column per version and attribute you want to store) always looked ugly to me, but it has its uses.