by hjanssen on May 02, 2007 07:11pm

So here I am, Amsterdam May 2nd 2007. At the Apache Conference. (A Microsoft person at an Apache Conference, what is this world coming to??)

I am going to blog from the Conference until it is over.

So, today the conference started in earnest with all the tracks kicking off. The first day was one of technical training. But this second day is where all the sessions started.

It started all with Sander Striker President of the Apache Foundation.  He described very high level what was to be expected in the next few days, and he talked about the following.

He describes describes ASF, Est. June 1999. Non profit 501(R )(3) charity

He talked about how ASF is much more about community than about code, ASF manages communities, not code.    

As with most projects, Open Source or otherwise, there is a tendency of burnout. He wants to make sure people stick around at the ASF by making sure there is an environment of Healthy community through:  respect, open discussion, shared views and direction.

Today there are 43 Top level Projects  (6 more than last Apachecon, October Austin - 2006.). There are also 31 projects in the Incubator (compared to 38 at last Apachecon).  Overall he expressed his belief in that the future is looking bright and ASF being very healthy.

Also, today there are 1500 Committers worldwide, 220 Members.   Membership is about the individual. Not corporations.

He closed by saying that People have a tendency to burn out in the infrastructure portion. It is a tough job to keep doing.

 

Picture 1: Here is a shot of the attendance during the keynote and introductions

Being notoriously bad at guesstimating the total number of attendants at any event, I am guessing that there are about 250 to 300 people here.

A question from the audience resulted in a very interesting answer. The question was how do you become a member. The response from Sander was:

Become a Committer first, and provide good quality work. If you keep contributing you might be proposed as a member. This will be subject to a vote.

But the description of a clear path to become a member is somewhat unclear from my point of view. I would think this path is more defined for those people wanting to become way more involved.

Next up was the key note delivered by Steven Pemberton, Researcher at the Center of Math and Computer Science. His keynote was called:

Abstraction and extraction: in praise of

He talked about abstractions of programming languages. And then went into how complicated these abstractions still are today. Yet daily interaction with objects can lead us to confuse the concrete with the abstract.

One of the nice things about programming languages is that they abstract away detail, like how data structures are implemented, how procedures are called. Etc.

He described a talk by Kernigan and Ritchie that he went to in the 70s where they were talking about Unix and C. This gave me a nice flashback and I am starting to feel pretty old!  Thanks!

Some of the things we are struggling with today where the result of mistakes that were made when UNIX/C came to be. He talked that in his view that UTF-8 today is the result of the way they conflated characters worth units of store.

The intention of his talk was to speak more about usability, and designing for usability.

I have taken many notes when he spoke and I am trying to compose them back into his keynote. Bear with me while I try to reconstruct my notes. :)

He stated that you shouldn't confuse usability with Learnability. They are distinct and different. What he means with that is that if you want your software to be used by a large audience, you need to make is usable. Emacs (Still my personal favorite) is a powertool, you can do great things with it. But it is not what I would call usable. (powerful? Yes, Easy to learn? Not so much.)

What are the features of websites that you go back to regularly. The thing that differentiate them from other websites with the same purpose that you don't go back to.

Forrester research found 4 reasons for this.

  1. Good content 75%
  2. Usability 66%
  3. Speed   58%
  4. Frequency of updating 54%
  5. The rest was noise: 14% and lower.

Yet Usability is usually the first thing scrapped when web sites are built. This seems to be applied to the design of software as well.

Eric Raymond, stated that making good software requires a lot of money to make sure it is usability tested and designed. This takes a large company with a large amount of money. OSS has not solved this problem yet.

Programmers like the command line, they are much more intuitive. ("Sensories" like much more graphical design).   OSS programmers are intent with their use of the interface, yet the rest of the world is not. The rest of the world is much more Sensory.

A Dutch Magazine places GIMP last in it's review because of it's poor interface.

US Department of Defense discovered 90% of cost of SW production is debugging.

For example AJAX empowered page is a lot of work, Google maps, poster child of Ajax generation is more than 200k of code. He asks if it truly have to be this hard?

He made a really funny comment, while preparing his presentation he checked to see how much processor usage was going on on his machine. Then realized that his machine had dual core. And discovered that his computer is now twice as idle as it used to be. :)

Centre of his talk was really about usability. Much more so as it relates to languages. And I will give a plug here, it is basically the same argument he made as I did in my blog a few months ago.  (He probably was more elegant in describing it)   A link to the blog I wrote can be found here; Languages are becoming way too easy. In there I make the argument that languages are becoming easier yet they and the operating systems they run on have not kept up. (Meaning both have a really hard time protecting the programmer from the outside world :))

Some more data he gave that I found interesting: Computers have become 40 times faster in 25 years, Programmers managed to become 2 to 3 times faster maybe over that same time period. Which is because you still need to do to many things in languages. The example he gave was source code he found to display a clock. The clock part was only a few lines of code. But the rest of the 1000+ lines were taken up by setting up the framework. Making sure redraws and sizing are handled etc etc.

I will leave it at this for now. There is a lot more to write in the next few days, and I need to start reducing my blogs, they are becoming way to long!

Stay tuned, more to come in the next few days.