Friday, July 27, 2007

Going fishing

Our Thank You page hasn't been updated in a long time.

Nope, it sure hasn't.

Gettin' kind of stale. Sure would like to add some colour to it.

:-)

Europa: 1 million downloads

Last year's Callisto proved to be a huge success, as we registered 1 million downloads in only 40 days.

This year's Europa has made Callisto look like an ant among elephants. I ran some stats yesterday, and we have already registered 1.3 million downloads less than 30 days after the Europa release. The new Eclipse Packages featured on the downloads page are a huge success, accounting for more than double the number of classic SDK downloads.

Here are some more interesting numbers:

Eclipse Europa Package downloads: 870,000
Eclipse classic SDK downloads: 430,000 (Win32: 360,000; Linux: 54,000; Mac OS X: 14,000)

Peak bandwidth usage: 250 megabits/second
Total bytes transferred to the Internet in July: 22 TB.

Thursday, July 26, 2007

Subversion on the Dashboard

Bjorn and Ward built the Eclipse dashboard about a year ago to track CVS commits by project, committer, company, etc. It has been very useful and a lot of people seem to be querying it. With the addition of Subversion repositories at Eclipse.org, though, there has been no way for people running SVN to get the same handy view of their project. I spent part of this week working on getting Subversion logs parsed into the dash DB and it's close to production ready. I'll be contributing a patch next week to add this support on the live site. In the meantime, here's a snapshot of what the g-eclipse project dashboard looks like with SVN commits included.

More news next week as work progresses.

Thursday, July 19, 2007

Asterisk Improvements

The Modeling PMC had a call on our Asterisk server which did not go very well. I know a few others of you have tried it, some with luck, others not. I believe the biggest problems are all client-side, primarily poor audio quality due to a lack of headsets, and Idefisk not being well set up out of the box. I have updated the wiki page with instructions on how to configure Idefisk for best the audio quality. I recommended Idefisk initially for a few reasons:
  1. It's available on all major platforms.
  2. It's an IAX client which has major advantages for traversing firewalls.
  3. Setup out of the box is very easy
  4. It doesn't require registering an extension with the Asterisk server in order to place calls.
That may all be true, but the call quality appears not to be as good as that provided by SJphone a highly functional SIP client which is also available on all major platforms. If you're not screened by a firewall and can route traffic directly to the Internet I suggest trying that client instead. If you get no audio it's because the return RTP traffic is blocked and you're probably screened by a firewall or router. If anyone has success with other clients and would like to recommend them, please add them to the end of the wiki page.

Also, you really do need a headset. I know that's an unfortunate reality: hey I wish it were otherwise. But we've tried it in a number of configurations without a headset and the audio quality drops off massively for everyone on the call. I have an older mono headset that I got at the local computer store for about $4 and the quality is superior to a regular telephone, so we're not talking about major expenditure. So that's it for the client side.

I also have done some more testing and today with the help of Matt and Nathan from the Foundation and Martin Oberhuber was able to reproduce the jitter which some of you have mentioned. After debugging I tracked it down to a server problem where a lack of available threads for muxing/demuxing the audio and transcoding across the different codecs caused the muxer to pause. This would have been even worse for a larger conference. I have added a larger pool of threads on the server which should hopefully address this problem.

Everyone on the test call today agreed that the audio quality (without the jitter) was better than on a Skype conference. We're hoping to provide that level of quality going forward. As always please let me know if run into difficulty.

Tuesday, July 17, 2007

Getting the Most out of Asterisk

I realized from a few emails that we webmasters have gotten over the last few days that I need to update the Asterisk howto for conferencing with some better information on how to make the audio quality the best possible for your call. I will be putting some more notes there over the next few days. But I wanted to take a little space here to let everyone who is trying out the Foundation's new Asterisk server know the number one thing you can do to make sure the audio quality is good:

Everyone on the call needs to be using a headset or an external microphone!

That's not necessarily an obvious fact, after all, most laptops and many integrated desktops include a built-in microphone and a nice set of speakers. The problem seems to be that the internal microphones pick up a lot of electronic noise from the hard drive and fan, overboost noise on the mic which sounds like white noise. You can even get audio echo and at worst feedback from the mic and speakers on the laptop. If you get a bunch of people on the call and even a couple are using built-in mics the quality of the whole call suffers.

As it turns out in our testing, even if you have a bunch of people in the room, just hook up a headset microphone, use the built-in speakers on the laptop, and the audio quality is good for everyone and it can pick up all the voices in the room (at least with our Logitech headsets).

So hopefully that will help some of you get a better experience with Asterisk. As always we'd like to know how it's working for you.

Thursday, July 12, 2007

Transclusion? Is that a real word?

People have been asking for Transclusion in their project pages for some time (bug 179537 and bug 157707). The idea of keeping wiki pages up to date versus maintaining static pages is very attractive, hence the explosion of wikis all over the 'net. It seems like a simple problem to solve: just get the page from the wiki, chop it up server-side and put it in the output HTML. That's one solution. There are a lot of ways pages could be included from one source into the other--but they're all complicated by a number of issues:
  1. wiki.eclipse.org and www.eclipse.org exist on the same physical servers
  2. wiki.eclipse.org and www.eclipse.org are not the same as far as a browser is concerned
  3. wiki content needs to pass through MediaWiki's parser in order to get turned into HTML
Here's why those matter:
  1. Because the pages exist on the same physical servers, web requests from one page to the other can end up in deadlocks and similar actions in the past have nearly brought us down as Apache threads get tied up one by one waiting on each other.
  2. A simple Javascript script solution is complicated by not being able to manipulate the DOM of objects from the wiki inside of pages on www.
  3. Loading wiki pages directly from the database into the project page would bypass the wiki's parser and be useless. Alas MediaWiki's parser is not easily accessed on its own.
So it sounds like an insurmountable problem. Well there are possibilities. I spent a bit of time today and put together a solution which accomplishes some of what people want from Transclusion at Eclipse.org. It's an all client-side solution that works in Javascript (tested in Firefox and IE6 only at the moment) using an IFrame to load the content. A PHP script lives in the wiki's web root at wiki.eclipse.org and does some magic on wiki pages to display only the parsed raw content. Inside the project's IFrame a stripped wiki page is displayed. In my opinion it's a pretty good solution except for the problem of correctly sizing the IFrame. You can't do it in Javascript because the security model prevents manipulation of the DOM inside the IFrame, which means you can't see how big the IFrame needs to be.

In any case, if you want to see what I've worked up check out the demo page at:
http://www.eclipse.org/phoenix/howto_transclude.php

This isn't a final solution as I wait for feedback on bug 157707 but it's a potential solution.

Labels: ,

Wednesday, July 11, 2007

Lists for Projects

Bjorn has for some time been requesting that we create some simple PHP scripts to let projects link to their list of committers, leads, etc without having to maintain static pages. The easiest thing to do is to just query our own database where we keep this information and make it publicly available to be linked to as needed. So I just wrote a simple PHP script which will let you explore some of the relationships between committers, leads, and projects. This information is available through the MyFoundation Portal for committers, but had not been posted publicly. This simple tool provides a bit more transparency and we encourage you to link to it.

For example if you want a list of all committers on all projects you would link to this:
http://www.eclipse.org/projects/lists.php?list=allcommitters

All of those project names and committer names are hotlinked to other pages that give you a bit more information. For committers that will give you the list of all the projects on which they commit. For projects it will give you a list of all committers.

If you wanted to list the project leads on a particular project you would use something like this link:
http://www.eclipse.org/projects/lists.php?list=leads&param=technology.dash

Or if you want a list of all committers, but ordered by project rather than by committer name, you could link to:
http://www.eclipse.org/projects/lists.php?list=allbyproject

We're trying to make life easier for projects and this is just another little tool to help with that. Projects don't typically have a lot of time to keep lists like this up to date publicly and this way they don't have to since the list will always match who we have in our records. Of course, if you see something wrong in the list, please contact the EMO and let us know so we can fix it!

Tuesday, July 10, 2007

Mylyn popularity == busy Bugzilla

All morning I have been watching our servers glow a nice shade of orange, meaning they are quite busy. A quick glance at our monitors indicate CPU usage is high, and the culprit is Perl. That can only mean one thing: someone is pounding on Bugzilla.

Tailing the logfiles reveals it's not "someone", but actually "lots of people" -- and the most popular user agent is a combination of Eclipse Mylyn (HttpClient/3.0.1) and Java/1.x.x_xx, which is usually an Eclipse signature as well.

So if this Mylyn thing keeps increasing in popularity, we'll definitely have to look at some front-line caching mechanism for Bugzilla. Congrats to Myk and team for putting noticeable load on our servers! :-)

Friday, July 06, 2007

Fridays...

So if you have something important to say in your blog you should say it on Friday. Why do I say that? Well I very unscientifically have observed that people don't seem to blog much on Friday, Saturday, or Sunday. In the Planet Eclipse aggregator you tend to have a pretty long life near the top of the list if you post on Friday. And who wants to bet me on whether or not people are reading Planet Eclipse more on Fridays or not?! So I'm wasting that valuable Friday space with idle speculation about the merits of posting on Friday. The shame!

Okay I'm posting Pacific Time so a lot of you have gone home already. :)

Thursday, July 05, 2007

Europa committer celebrations

Last Friday a bunch of Ottawa committers stopped by the Foundation's offices for Pizza and Beer, to celebrate a Job Well Done with the release of Europa. More people showed up than I expected, and I eventually ran out of both Pizza and Beer. Luckily Kim brought some delicious brownies and Strongbow cider, as well as a couple of bottles of pop (which no one touched).

Throughout these pictures, I'll do my best to identify everyone I know.



Here we see Boris, surprised by the camera. In the background, Kim Moir and Sonia Dimitrov (the Platform Releng superteam) are discussing vacation plans, as Kim Horne listens in.



In this picture we see CDT Megaman Doug Schaefer, and Platform uber-dude Mike Wilson (McQ) talking with our very own Lynn Gayowski. To the center, John Arthorne (another Eclipse uber-dude) is discussing while Pascal Rapicault (an Eclipse hero in his own right) and Steve Gutz (TPTP) have two conversations at one. Tom waits patiently for the Pizza to arrive.



Plenty of Eclipse celebrities adorn this picture. Top left: Smart guys Wayne Beaton, Boris Bokowski and Jeff McAffer talk about stuff I can't even begin to understand, while Tod Creasey and Simon (I couldn't remember his name!) trade top-secret information (I think). The bottom right pictures Andrew Niefer and John talking. Not one of these people actually wore a party hat.


Alexander Keith and John Sleeman, both standing tall and proud. Some of Canada's finest, depending on who you talk to.


Pizza was a huge success, as expected. The room was even more crowded than this at one point, and I kept asking Janet to crank up the air conditioning. This picture is also packed with such superstars as Janet Campbell (the keeper of the IP par excellence), Matt Ward (our trusty webmaster), Michael Valenta (Platform Team and CVS guru) and Pascal Rapicault (fellow French-speaking person).

After the Pizza, Lynn and I hosted a trivia contest. Jeff McAffer knew the most answers, but was quickly disqualified for simply 'knowing too much'. I think we gave him a golf shirt anyway, just because. John Arthorne took top-spot, taking home a slick Eclipse Golf shirt, along with other trivia winners: Boris Bokowski, Tod Creasey, Pascal Rapicault, Jeff McAffer and Nick Edgar.




Once everyone left, Mike proceeded to our office to get the rundown on how the actual release went. He seems quite pleased that all went well. Mike doesn't always dress like that to come to work.

It was a fun afternoon.

Tuesday, July 03, 2007

Conferencing is here!

I blogged about the Asterisk conferencing solution we at the Foundation have developed for the projects. Well, it's here! Project leads and PMC members who visit the Portal will see a new component allowing them to schedule conferences. It doesn't have all the bells and whistles yet (you have to email participants yourself) but it does let you setup calls. For a really basic overview of how to use our Asterisk setup there is a wiki page describing it. Look for more updates soon. And Denis was just saying we weren't giving committers any new toys...