Stealing Mona Lisa

Stealing Mona Lisa

mona lisa gone

As he entered the Salon Carré, the thief headed straight for the Mona Lisa. Lifting down the painting and carrying it into an enclosed stairwell nearby was no easy job. The painting itself weighs approximately 18 pounds, since Leonardo painted it not on canvas but on three slabs of wood, a fairly common practice during the Renaissance. A few months earlier, the museum’s directors had taken steps to physically protect the Mona Lisa by reinforcing it with a massive wooden brace and placing it inside a glass-fronted box, adding 150 pounds to its weight. The decorative Renaissance frame brought the total to nearly 200 pounds. However, only four sturdy hooks held it there, no more securely than if it had been hung in the house of a bourgeois Parisian. Museum officials would later explain that the paintings were fastened to the wall in this way to make it easy for guards to remove them in case of fire.

The history of WordPress user interface

inMotion Hosting runs the article “WordPress through the ages“, which shows in a number of screenshots how WordPress user interface has changed from version to version.  It is a long run indeed, and the one that brings a nostalgic tear to those of us who have been using the system for a while.  Just look at how much it has changed, how much it has matured.  From this in WordPress 1.0.1:

wordpress-1.0.1

to this in the latest and the greatest WordPress 3.8:

Wordpress-3.8

I don’t think that there is a single item that was left untouched.  Main menu has been reorganized a number of times, moved from top to the left, given sub-menu items, icons, and a variety of different fonts and colors.  The editor has been through a tonne of transformations, adding the What You See Is What You Get (WYSIWYG) feature, icons, HTML preview, media uploader, which is a story of itself, and more.  Custom post types are a fresh addition, but even they went through a bit.  So did all the other elements – social networks integration, publishing options, categories, SEO, and more.  And that’s just the post editing screen.   As much or more has happened to the rest of the screens.  Being redone in responsive layout, ready for smartphone and tablet screens comes to mind.

All these changes happened for a variety of reasons.  Of course, people building WordPress learned better ways, got more feedback, and spent more time on it.  But also the Web itself has changed.  We are seeing faster networks, more powerful browsers, and richer interfaces.

Which brings me to another point.  Pretty much every single time I was involved in building a website or an application, a non-technical client would raise the question of deadlines and phrase it like “When is this going to be finished?”.  And every single time I have to explain that applications and websites they are not finite.  They are more like kids – once you start, you never stop.  It’s an ongoing project, with more and more features, fixes, and improvements.  (There are exceptions, of course, but they are just that – exceptions).  Most times, it’ll never be done.  And one can’t just put everything into a single version, release it and forget about it.  Instead, one should make a plan, a roadmap and decide what goes into each version, leaving some space and time for things that were unthoughtful at the time.

WordPress, like may other awesome applications, illustrates this nicely.  WordPress 1.0 has been released and has been used by a lot of people.  Was it done?  No.  More changes came in during 1.x, 2.x, and now 3.x version series.  Is it done now?  No, not by a mile.  It is a much better system than it used to be.  But there are still gazillion things to be done.  And that’s a good thing!  I wish such a lengthy (and successful) roadmap to every project.

And now, if you’ll excuse me, I’ll go back and drop that nostalgic tear of days gone by…

How many lines of code have survived to the current day from the original Linux kernel

Here is a excellent Quora question: how many lines of code, if any, from Linux 1.0 are still in the modern Linux kernel, and what is it?  And an evenly excellent answer:

According to git diff, 21228 of the 176250 lines from Linux 1.0 (1994-03-14) are still present in Linux 3.12 (2013-11-03):

$ empty_tree="$(git mktree < /dev/null)"
$ git diff --shortstat "$empty_tree" 1.0
561 files changed, 176250 insertions(+)
$ git diff --shortstat -M -l99999 1.0 v3.12
44905 files changed, 17702349 insertions(+), 155022 deletions(-)

Over half of these lines are blank or consist entirely of punctuation; only 10419 of them have at least one letter or number.

We can go back even farther to the very first public release, Linux 0.01 (1991-09-17). Of the 10239 lines in Linux 0.01, 954 survive in Linux 3.12, of which just 242 have at least one letter or number. 123 of them were structs and constants in include/a.out.h (now include/uapi/linux/a.out.h), and 26 of them were the S_* macros in include/sys/stat.h (now include/uapi/linux/stat.h). The rest were scattered through 24 other files with at most 9 lines each.

It might appear that not much.   But it is in fact impressive.  How much code have you written that survived for over 20 years in a project that has changed so much – from a hobby experiment to a dominant operating system across servers, mobiles, and embedded devices?

The average web page has grown 151% in just three years

The average web page has grown 151% in just three years

  1. The average top 1,000 web page is 1575 KB.
  2. More than half of this page size is due to images.
  3. Flash is on the decrease. Custom fonts are on the increase.