Sunday, December 21, 2008

Open CFPs for USENIX, OSCon, and BSD Conferences

Just a quick note to point out that there are calls for papers for at least 3 BSD conferences, O'Reilly OSCon, and USENIX open at the moment. The first up is AsiaBSDCon. The official Call for Papers period has just ended but if you missed the deadline and need a little more time, the organizers will still consider talks. The USENIX CFP notes that submissions are due January 9 and may take the form of full papers up to 14 pages, or short papers of at most 6 pages. BSDCan and EuroBSDCon are also accepting submissions for 2009.

I'm a big fan of the BSD conferences, but I think its really important to also present work at some of the broader open-source and academic systems conferences.

Monday, December 15, 2008

End of Year Bugbusting

As often proves to be the case, I recently found an old problem report from 2005 asking for exactly the same feature I recently became interested in. While my first patch was out for review, I spent some time looking through the open problem reports to find other issues I could address while waiting for a review on the first item.

A blog post by Greg Stein today pointed out the importance of dealing with user issues better than any graphs ever could. Greg's post includes a link to this USENET post from Larry Page in 1996 asking for help for his Java based web crawler. I don't know what kind of responses he received to that query, but I can take a guess that the responses were relevant to the technical decisions made about the language of choice used for the early Google search infrastructure.

How many Fortune 500 companies make a major platform decision based on the help they receive from open source mailing lists or problem reports each year? This may be impossible to quantify, but I'm willing to bet that its more common than we might think. This is something to keep in mind before summarily closing a problem report just because it doesn't include a patch or is otherwise imperfect in some way.

Friday, December 5, 2008

6 New BSD Videos Posted, swfdec support, traffic analytics

There's been a lot of activity in the 2 days since we unveiled the new BSD Conferences channel on YouTube. Technical content from MeetBSD 2007, MeetBSD 2008, and NYCBSDCon has been uploaded, with more on the way. The newest videos now available are :



The early traffic data seems to indicate a 99% male audience and strong interest from Ukraine and Russia, probably due to the large BSD user base there and effective forwarding/announcement on Russian Forums.

It occurs to me that we don't have a good description of using YouTube on FreeBSD anywhere in the FreeBSD Handbook. Does anyone want to take a shot at adding something to the multimedia chapter? Perhaps about using the swfdec package on FreeBSD?

Thanks to Tomasz Dudzis for posting the MeetBSD 2007 videos, and Jason Dixon for posting the NYCBSDCon videos.

Update: 10 Dec 2008 2:30pm: The graph above is scaled by popularity of all YouTube videos in that country, so it just shows that relative to other YouTube videos in Russia and Ukraine, this channel is very popular. In absolute numbers, most of the views are coming from the U.S. Apologies for misinterpreting the YouTube Insight graphs.

Wednesday, December 3, 2008

New Channel on YouTube for BSD Technical Content

Thanks to help from the Open Source Program Office at Google I was able to setup a new channel for technical BSD content without the 10 minute limit for uploaded videos. This allows us to upload high quality full hour-long videos of talks and tutorials from BSD Conferences. I've added the first four videos that Julian Elisher taped from the MeetBSD 2008 conference we recently held in Mountain View. You can view these videos at www.youtube.com/bsdconferences.

Back in April I posted here about my desire to see our video content from technical conferences available on YouTube to reach a broader audience. At the time I was impressed that we had over 10,000 views for the FreeBSD vs Linux TechTV clip, but in 8 months that number of views has reached nearly 30,000. We would be hard pressed to reach that many people by hosting the videos with the FreeBSD web site. Hosting on YouTube also brings the advantage of having clips from these videos show up in the search results for related queries, which you may be able to see with a query such as [freebsd linux techtv], and which will presumably soon be visible with queries like [freebsd clustering meetbsd].

If anyone has additional video content from previous BSD conferences that they would like to upload please let me know. I'd particularly like to see some of the talks from recent BSDCan, AsiaBSDCon, and EuroBSDCon that I missed. Thanks again to Julian for video taping so much of this content.

I leave you with Brooks Davis on Isolating Cluster Jobs for Performance and Predictability :



- Murray

Tuesday, November 18, 2008

FreeBSD Developer Summit at Google


I'm happy to report that our two day FreeBSD Developer Summit following MeetBSD has been a success. We had over 30 attendees from the FreeBSD Developer Community as well as engineers from Yahoo, NetApp, Isilon, QLogic, Huawei, Google, Juniper, Cisco, Facebook, ISC, Metaweb, and other technology companies using or looking at using FreeBSD. There were formal presentations on the first day, followed by less structured hacking during the second day. The agenda of talks for the first day is available here. This concludes I think the end of a very busy summer/fall period with BSD Conferences and developer summits in Ottawa, New York, Tokyo, Strausburg, and Mountain View. Next up is Ottawa and Cambridge, UK in 2009. Thanks to Leslie Hawthorne and Xin LI for their help in organizing the summit.

Saturday, October 25, 2008

Strong BSD Showing at GSoC Mentor Summit

This weekend is the Google Summer of Code mentor summit. As in previous years, Google flew out a number of representatives from over a hundred open source projects to talk and brainstorm about making Summer of Code better.


The activities started last night with a hosted dinner at Amarin Thai restaurant, followed by a reception at the Tied House in downtown Mountain View (with open bar!). Kris Kennaway was visiting Google in Mountain View this past week and so was able to join us for drinks and meet some FreeBSD and Open Source developers before flying out Saturday morning. Among many others we met up with Cat Allman, Leslie Hawthorne, Pawel Solyga, Todd Larsen, Randi Harper, James Youngman, Eivind Eklund, and others. Todd and Pawel are working on the next generation summer of code web application, Melange, which will be open source and built on App Engine.

Saturday I arrived late as usual to the mentor summit. I met up with Rafal Jaworowski, Brooks Davis, and Tim Kientzle. I ran into Jeffrey Hsu representing the DragonFly BSD group, and Jacob Appelbaum and Roger Dingledine from the Tor project. Jacob worked with Bill Paul and others on the Cold Boot Attacks on Encryption Keys work and has built a community hacker space in San Francisco. It was also great to bump into Phil Jenvey who used to work with me at Walnut Creek CDROM and BSDi a decade ago, and is now working on Jython.


In the morning I attended a session about bringing new developers into Open Source. After lunch I attended a session on the state of open source scientific computing, and I'm typing this as I prepare for the next session on Melange. Based on the discussions so far I've started writing some more process documentation for how we can run the Summer of Code program more efficiently next summer, including a Student Checklist. Apologies for the blurry photos taken in low light on an iPhone.

There are more sessions this evening and tomorrow, when Sam Leffler is expected to join us. I'll post again after the conclusion of the summit.

Monday, October 13, 2008

MeetBSD and FreeBSD Developer Summit

MeetBSD is just over one month away! If you haven't already done so, please register. I am organizing a FreeBSD Developer Summit to follow the main conference and there are still slots for developers and invited guests to take part. If you would like to present, lead a discussion, or just sit and hack with us, then please send me a mail.

Thursday, October 9, 2008

Another Successful Summer of Code

I'm happy to report that we had another stellar success rate for Summer of Code students working on FreeBSD. 19 of our 21 students this summer successfully completed the program. I've collected a summary of all 19 individual projects and posted it here (freebsd.org). I also wrote a post for the Google Open Source Blog to showcase some student projects from our fourth successful summer of code. The summer has ended but many students are continuing to work on their projects. Several of these students are inevitably in the pipeline for full SVN src/ commit access, following the long line of successful FreeBSD SoC alumni before them.

Many of the mentors from different open source projects will be meeting to share ideas and best practices at the Summer of Code Mentor Summit October 25-26 at the Googleplex. Also on the calendar and relating to Summer of Code is the GSoC panel at OSBootCamp at UC Berkeley on October 30th.

Wednesday, September 3, 2008

meetBSD California and 15 years of FreeBSD


The meetBSD conference is coming to California! After 3 successful years in Poland, the 2008 conference will be held in Mountain View, California at the Googleplex November 15-16.

Matt Olander has arranged a private FreeBSD 15 year Anniversary Party at Zen/Buddha Lounge in Mountain View for Saturday night Nov 15th. For anyone out there who wasn't able to attend the 10 year anniversary party that Matt put together at SF's DNA Lounge, rest assured it is not to be missed. If you are feeling nostalgic, take a look at Matt Dillon's pictures from the last major FreeBSD Anniversary party (with my favorite pic attached).

Monday, July 14, 2008

Mid-term Evaluations Completed

Thanks to all of the mentors and students for submitting evaluations and program surveys for Google Summer of Code on time. I am happy to report that all evaluations and surveys have been submitted. We had one student drop-out, but the remaining 20 students received passing evaluations. Keep up the good work!

Tuesday, June 24, 2008

Review: Network Administration with FreeBSD 7

Packt Publishing contacted me a few months ago and offered to send me a copy of their new book, Network Administration with FreeBSD 7 by Babak Farrokhi. There is clearly a need for a modern book covering some of the newer networking features of FreeBSD, so I agreed to write a review.

The early chapters include some general FreeBSD system administration content, similar to what is provided in the FreeBSD Handbook. Chapters on disk layout, system configuration, tuning, package management, and jails precede the main networking chapters. The latter chapters include information on a number of networking technologies not well covered by the existing online documentation. For example, there are chapters or sections on GRE, OpenOSPFD, OpenBGPD, IPv6, TCP 1323, Delayed ACK, firewalls, network servers, and more.

The book is reasonably comprehensive, but there are some notable gaps. It would have been nice to see a section on SCTP or the improved wireless facilities in FreeBSD 7, for example. Also, there is a section on the Squid proxy, but the more modern Varnish project is not mentioned at all.

Unfortunately, the prose is a bit distracting as there are grammatical errors, typos, and missing articles on essentially every page. Overall this book serves as a practical guidebook for FreeBSD Network Administrators and it is a welcome contribution to the corpus of available FreeBSD books.

Wednesday, June 18, 2008

Firefox 3 is out with FreeBSD Technologies

I installed FireFox 3 on a couple of computers yesterday and must say I've been pleasantly surprised. The del.icio.us and Google Toolbar plugins both updated and are working great. The application itself feels a lot faster and there are a number of helpful UI improvements, particularly in the "awesome bar" in the way it searches my history, bookmarks, and del.icio.us links to present URL completions.

Most importantly for this post, however, is the number of FreeBSD technologies integrated into the browser. The most widely publicized is probably the addition of Jason Evan's memory allocator (jemalloc) written for FreeBSD 7.0 which has been included into Firefox to reduce memory fragmentation. A nice blog post by one of the Firefox developers explains the benefit of jemalloc to Firefox.

Another FreeBSD technology widely adopted by other products utilizing binary updates is Colin Percival's bspatch client-side binary patching code. Kris Kennaway also notes that the ISC is hosting its FireFox mirrors on FreeBSD 7.0 machines to handle the unprecedented download demand as the Mozilla Foundation attempts to break a world record for downloads in a day.

Thursday, June 5, 2008

FreeBSD Core Team Elections

Another 2 years has passed and it is time for FreeBSD Core Team elections. The FreeBSD Project has relied on democratic elections of the 9 member core team since 2000, when the first election results were announced at BSDCon in Monterey.

Candidates have 2 weeks in which to declare their candidacy and voting commences on June 19. Active FreeBSD committers are eligible to vote until July 16 and the results will be announced shortly thereafter.

Sunday, May 18, 2008

BSDCan Trip Report

BSDCan wrapped up yesterday and I'm back in the SF Bay Area. As usual, Dan did a great job organizing everything. A scheduling conflict prevented me from attending the developer summit before the conference, but I was mostly able to sync up with those working in areas of interest. Some of my highlights from this year's conference include :


  • Having lunch with Bosko. I hadn't seen him since USENIX 2004 and he hasn't been around the FreeBSD development community much recently but previously did a lot of work on TCP and it was great to catch up with him.

  • Discussing finstall with Ivan. I reviewed his latest alpha4 ISO image and provided additional feedback in person about what I think the priorities should be for getting this to the point of being the default installer for FreeBSD 8.0. Downloaded the code from sourceforge and discussed PyGTK interface for selecting/installing packages. I think I volunteered to implement a few menus, doh!

  • Talking with Denise (iXsystems), Leslie (Google), and others about doing a MeetBSD Conference at Google in Mountain View in November. More details to follow once facilities are confirmed. Open source gatherings at the googleplex usually work pretty well, with free food, wireless, and copious conference rooms available.

  • Dinner with Mike Silbersack, Doug Rabson, and Zach Loafman (Isilon) about Kerberized NFS, NFSv4, Microsoft, and general kvetching.

  • Recording a BSDTalk podcast with the rest of the FreeBSD Core Team in attendance (not yet posted, audio coming soon).

  • Talking with Deb from the FreeBSD Foundation about fundraising and more prominent links to the foundation website from www.freebsd.org.

  • Discussing the pending Subversion conversion of the FreeBSD CVS repository and the necessary updates to our committer guide.

  • Drinking a very nice single malt scotch with Brooks Davis and others in the hacker lounge late into the night, teasing Kip Macy, and learning all about some fine San Francisco establishments from George Neville-Neil.

  • And of course, in addition to the hallway track there were actually lots of interesting talks such as Chris Lattner on BSD Licensed C++ compiler, LLVM, John Baldwin on kernel debugging, and Leslie Hawthorne on Summer of Code.

Wednesday, May 14, 2008

finstall alpha4 review


finstall is Ivan Voras's installer project for FreeBSD. His goal is to create a more user friendly, extensible, and maintainable replacement for the venerable sysinstall program. Replacing sysinstall is something that has been near and dear to my heart since I was first granted a commit bit to work on sysinstall over 8 years ago.

In the past decade a number of projects (libh, anyone?) have been initiated with the goal of replacing sysinstall and none have succeeded. Ivan began his 2007 Summer of Code project with a survey of the existing BSD/Linux installer landscape and his finstall project aims to provide functionality not possible with the alternatives while avoiding some of the pitfalls.

Today Ivan gave a presentation about finstall at the FreeBSD Developer Summit preceding BSDCan but work is keeping me in San Francisco until Friday. Since I'm missing the in person discussions about finstall and FreeBSD 8.0 I thought I'd at least download the latest ISO and publish my findings here. The latest code for finstall is available on SourceForge but Ivan also provides ISO images on his blog.

The first thing you'll notice is that the installer is LiveCD based. Sysinstall was traditionally installed from boot floppy disks or as floppy images on El-Torrito bootable CDs. This led to the use of crunchgen(1) and other techniques for keeping the size of the installation environment within the confines of 1.44MB disks.

Freed from this anachronism, finstall boots into FreeBSD 7.0 and provides a login prompt where users can login as root to use the disk as a LiveCD / recovery CD, or as install to complete an installation onto local disk.

Immediately after logging in as install, the user is prompted to choose a keymap and timezone using the same text libdialog(3) based tools that sysinstall users are familiar with. There is no back button if you accidentally choose the wrong keymap, and no easy way to intuitively scroll through the long list of options in each menu. Thankfully, these are the only two parts of the system that still rely on libdialog(3).

After the timezone is selected, X Windows starts up and the user is dropped into an XFce desktop with a 'FreeBSD Install' icon. Selecting this icon launches the graphical installer. Only the novice (minimum interaction) menu item is available, but standard and advanced modes which allow for RAID configuration are being worked on.

The novice installation process sets up a default partition layout based on the available space on the drive selected by the user, without allowing the user to change the partitions in any way. On my 4 GB VMWare image it chose 512MB /, 409MB /var, 256MB swap, 2048MB /usr, and 865MB /home. The user is then given a choice of file systems to use (UFS+SU, UFS+GJ, ZFS, ext2). finstall refuses to install on a disk with less than 2.3GB of space. This seems excessive until you realize that the current version isn't going to give you the option of pruning down the installed package set -- everything on the ISO will be installed.

After file system selection, the installation begins with the format/partitioning of the disk, installation of the base system, and installation of all the packages on the LiveCD. During installation a number of helpful system tips are provided to the user beneath the status bar ("BSD stands for ...", pointers to the FreeBSD Handbook, etc..)

After installation is completed the user is asked to enter a root password, create a user account, setup network interfaces, and enable system daemons. These configuration menus are pretty standard but are much more user friendly than the sysinstall equivalents.

After installation, the user is left at the XFce desktop. It would probably be more useful at this point to actually reboot into the newly installed system. Perhaps the last message of the installer could say something like "Click here to reboot into your new FreeBSD 7.0 system."

This post is far longer than I expected so I'll end here, and follow up tomorrow with some specific suggestions that I'd like to see added to finstall. In the mean time, by all means check out the code on SourceForge and send Ivan your patches.

Tuesday, May 13, 2008

Summer of Code Students in Community Bonding Period


We're over halfway through the community bonding period and in less than 2 weeks it will be time for our Summer of Code students to start coding.

At this point we've created Perforce accounts for our students and over half of them have already started submitting to their project directory. Ten of our students have started wikis about their projects over on wiki.FreeBSD.org and 8 students have setup blogs which are now aggregated on Planet FreeBSD SoC 2008. Many students sent introduction emails to the freebsd-hackers list over the last 3 weeks.

We ended up getting one extra student in the final allocation for a total of 21 Summer of Code students this year. Two of our students are previous summer of code participants (Gábor Kövesdán from SoC 2006, and 2007 and Rui Paulo from SoC 2007). We also have a former student, Attilio Rao (SoC 2007), serving as a mentor this year.

The graphs in this post present a breakdown of the current country of residence/study for the FreeBSD Summer of Code students that have shared this information. The countries with the most participating students are represented by darker shades of red on the world map above. The statistics for the entire Google Summer of Code program are available here. If you haven't already, please take a moment to send a welcome mail to our students in response to one of the introductions on hackers@ or use the forums above to get in contact with any students working in areas you are particularly interested in.

Update 3/14/2008 - We have a student from Portugal who was misclassified on the original graphs.

Saturday, April 26, 2008

Technical BSD Content on YouTube

As I mentioned earlier I think we could do a much better job of presenting FreeBSD content online. One of the things I'd especially like to see is more technical talks available on YouTube.

The next time you register for a BSD related conference make sure to ask the organizer about video recordings. Many BSD conferences have cameras in the sessions, but there is a lot of additional work required to edit the videos, encode them, and upload them to popular video sharing sites. Personally, I think that conference organizers should be soliciting sponsors for this work and paying professionals to handle it as the last 9 years of BSD conferences haven't been very successful at capturing video with volunteer labor. The potential audience for these videos is huge, and some of the videos below have been watched over 10,000 times with basically no marketing or links from official sites anywhere. This could be a very effective way at spreading BSD technologies beyond the very limited set of people that attend the conferences or read the limited distribution conference proceedings.

Some of the more interesting BSD related videos I've seen available online include:

Thanks to Julian Elischer for taping and organizing some of the BAFUG tech talks in recent years (.mov files available here). It would be great if more FreeBSD user groups contributed video of interesting talks. Some other open source communities, such as Python, are really good at this. If anyone is interested in coming to Google and giving a talk about a BSD related project they are working on, please let me know.

Call for Open Source Awards 2008 Nominations

O'Reilly and Google have announced that for the fourth year running they will present a set of open source awards at the O'Reilly Open Source Conference this summer. The nomination process closes May 15, 2008 and submissions along with the name of the proposed award (Best Hacker, Best Community Builder, etc..) can be sent to osawards AT oreilly DOT com.

Itojun-san and Sam Leffler have been mentioned as potential strong candidates from the BSD community for impressive lifetime contributions. Send your thoughts to [email protected] to discuss or send your submission directly to osawards AT oreilly DOT com. Hubert Feyrer and Jeremy Reed have also been discussing contributions from the NetBSD side.

Sunday, April 20, 2008

Thoughts on www.FreeBSD.org (2 of 2)

In the last post I identified some of the strengths and weaknesses of the current www.FreeBSD.org website. As promised, I've collected some specific suggestions that I think would improve the site:

  • Better integration with CVSWeb, P4Web, ohloh, and cia.vc. A number of sites offering third party open source metrics have become available in recent years such as ohloh.net and cia.vc. We should ensure that our content is available on those sites and better utilize some of the features they provide. For example, customizable RSS feeds of code changes in specific subtrees should be made available, perhaps even only those changes that match complex search queries. Dynamic lists of the most active developers, or the parts of the source tree that are changing most rapidly could be displayed.

  • Better utilization of our own structured data. We have geographic information about usergroups and events, and so it is natural to display the information to the user as a map rather than an extremely long list on one giant HTML page. It would be even better if this could be displayed as an image map or with javascript popups or integrated to one of the large online maps services.

  • Enabling comments and feedback on items posted to the site. Readers of the site should have the opportunity to comment on newsflash entries and vote on development project ideas/priorities. Requiring updaters of the site to manually edit news.xml may not be the best way to handle this. Perhaps some kind of blogging software could be used which is then scraped into a static newsflash.html file while providing links back to the official blog to facilitate user comments.

  • Integrate with other web sites. Since we have structured data representing events and other content on the site, we could construct links to videos or photos tagged as 'freebsd' on Flickr or YouTube during the days of each conference. There is no excuse for the technical content from any recent BSD conference not ending up there. Likewise, we should automatically update public Google/Yahoo calendars, and allow anyone visiting the site to instantly add an event to the calendar software of their choice.


Some of the particular areas that I'm interested in working on include utilizing the Google Charts API to provide visual representation of our structured data in XML files (events.xml, usergroups.xml, etc..) when appropriate. I wrote some XSLT code to generate some basic maps for the events and usergroup pages this weekend, but further improvements are needed.


I've also written a prototype web application to replace the Ideas database (ideas.xml). This application allows users to add new development project ideas, to comment or vote on existing ideas, to search the database, and to subscribe to RSS feeds of a specific search or the comments and activity on a specific idea.

It's possible to implement most all of these features on our existing xml/xslt infrastructure as long as we are willing to use web services provided by others (such as external blogs/commment feeds, links to search and graphing apis, etc.) Although not strictly required, I think it's probably time to start allowing Javascript on our pages as long as it degrades gracefully and the functionality provided is compelling enough to warrant it.

Thoughts? Comments? Better ideas for improving www.FreeBSD.org? Which open source organizations have particularly useful websites?

Saturday, April 19, 2008

Thoughts on www.FreeBSD.org (1 of 2)

The FreeBSD website has been based on XML/SGML structured content since index.sgml was first checked into CVS in 1996. Since then we've realized a number of benefits of this emphasis on structured content, but there is a cost to this setup and I'm not convinced we're getting the full benefit of our infrastructure. First, consider what we gain by our current setup:


  • XSLT stylesheets and CSS to separate content from presentation, so new technical pages can be added quickly in the same look and feel as the rest of the website.

  • Dynamic generation of HTML pages from XML files of events and other structured data, so that we can always have a list of "upcoming" and "past" events that doesn't need to be manually updated once the event has occurred.

  • Text based changes can be kept in the same revision control system we use for code. This helps our developers by lowering the barrier for them to make website contributions, and it helps our translators to easily see the textual differences of the english language pages that need to be translated.

  • Complete change history allowing us to borrow content from previous revisions for cyclical activity like releases and summer of code.

  • RSS feeds automatically generated for most XML content on the site, allowing the content to be syndicated to other sites or read more conveniently through feedreaders or mobile devices.

  • Easy distribution of the source for the website allowing mirrors all over the world to host copies of the content.

Despite these advantages, there are also costs associated with this system.

  • Communication is entirely uni-directional. There is no way for users of the website to add comments or additions to newsflash stories, to attach photos to events on the events page, or to comment on the utility of feature requests on the ideas page.

  • Manual editing of XML files is tedious and error prone compared to using a web based content management system. The XML files and especially the stylesheets can be daunting to those that haven't spent significant time working with these technologies, which presents a barrier to more frequent updates and more regular improvements to the site.

I've been thinking a bit recently about these deficiencies and how we can address them while still making the most out of our existing presence on the web. I will follow up to this post with some specific ideas.

Thursday, April 17, 2008

Summer of Code Update

We've been tentatively allocated 20 students this year to work on FreeBSD as part of the Google Summer of Code. The winning students will be announced on Monday April 21, 2008. In the mean time two successful students from last year's Summer of Code, Dongmei Liu and Zhou Zhouyi have written up a report of their recent trip to AsiaBSDCon 2008. The trip report is available on Google's Open Source Blog.

Tuesday, April 8, 2008

GNU Gold Linker

Ian Lance Taylor has announced a new ELF linker available now as part of GNU binutils. It is not yet part of an official binutils release but is available from the binutils CVS repository. The main feature of the new linker is that it is much faster for linking large C++ binaries. We've been using it internally at Google with great results for large projects.

Currently there is little documentation and few platforms are supported, but if you are experienced working with GNU Autoconf it would be great to submit some patches and get Gold working on FreeBSD.

In the longer term I'd like to see a devel/binutils-devel port and support in bsd.port.mk so that any port from the ports collection can be built with Gold instead of the default binutils ld from the base system. It would be particularly interesting to see benchmarks for the total build time of KDE, OpenOffice, Gnome, Mozilla, etc. on FreeBSD-CURRENT with Gold.

Sunday, March 30, 2008

Heat Map of FreeBSD Committer Locations


I spent some time playing with the Google Charts API this weekend and wrote a simple script to take the data from the XEarth freebsd.committers.markers file and turn it into a URL to generate an image of of the world with countries colored in darker shades of red according to how many FreeBSD committers reside there.

The data is not normalized by population size of the countries or any other factors. It might be more interesting to combine these committer counts with the Gapminder / Trendalyzer tool for visualizing the correlation with economic, technological, and cultural factors.

Tuesday, March 25, 2008

Student Applications for Google Summer of Code

It's time for students to apply to participate in Google's Summer of Code. We have identified many dozens of great potential projects and mentors. The student application period is very short, so applications must be prepared by March 31, but the earlier the better. If you are considering applying then please get in contact with some potential mentors so that they may help define your project and help you prepare a better application. The benefit to students of this program far exceeds the $4500 payment, as you'll have an experienced mentor to work with you all summer. Many of our former students from previous summers have gone on to make great contributions after the official end of the program.

Monday, March 17, 2008

FreeBSD Projects for Google Summer of Code 2008

The FreeBSD Project was again accepted as a mentoring organization into the Google Summer of Code. We are now very interested in putting together potential students, mentors, and projects. If you have an idea for a potential FreeBSD related summer of code project that isn't already listed here then please let me know (or follow up in the comments). Likewise, if you are interested in mentoring a student this year then please get in touch. Students can find all the details about applying for FreeBSD related Summer of Code projects on the FreeBSD Summer of Code web pages.

Friday, February 29, 2008

Where are they now? (Summer of Code Alumni)

The Fourth Annual Google Summer of Code will begin soon and it got me wondering about the 58 students that participated in FreeBSD Projects for Summer of Code in 2005, 2006, and 2007. I sent out an email to find out what they're currently up to and was pleasantly surprised by the breadth of the responses. From pursuing grad school and even post-docs to founding start-ups or working in established industry companies (Oracle, Cisco, Google) our summer of code students have pursued a variety of paths since completing their projects.

Perhaps the largest number of summer of code alumni are currently in graduate school. Ivan Voras and Fabio Checconi continue to pursue Ph.D. studies and work with FreeBSD in areas related to their original summer of code work. Ru-Gang Xu is nearing completion of his Ph.D. in Computer Science from UCLA. Matus Harvan is pursuing a Ph.D. in Information Security at ETH Zurich. Zhouyi Zhou is a Ph.D student in Institute of Software, Chinese Academy of Sciences and has recently written a paper about static analysis on the MAC Framework with FreeBSD Core Team member Robert Watson. Alexey Tarasov is a Ph.D. student working part-time at the Computing Center at Far Eastern Branch of the Russian Academy of Sciences. Jesper Rosenkilde is studying for an M.Sc. in mathematics and computer science and working as a department system administrator. Constantine A. Murenin is pursuing an MMath at the University of Waterloo and is a full fledged OpenBSD committer that also continues to follow FreeBSD. Nanjun LI has moved to the UK for a postdoc in the University of Edinburgh and is awaiting his upcoming Ph.D. dissertation defense. His current research focuses on wireless sensor networks and a related application called "Firegrid", and he still prefers FreeBSD as a networking platform. Maxim Zhuravlev worked on the Generic Input Device Layer for Google Summer of Code 2007, but this has since moved to a more general Enhanced NewBus project.

Emily Boyd from our 2005 summer of code has co-founded an online task management service, Remember The Milk. Roman Divacky successfully graduated after participating in both 2006 and 2007 Summer of Code and he is now employed in Unix development and still involved with FreeBSD. Christoph Mathys is working at Lucerne university. Victor Cruceru is currently a Software Engineer at Oracle's European Development Center doing UNIX porting and integration. Garrett Cooper is now working for Cisco and he credits his FreeBSD and Google Summer of Code experience in helping him land that job. Chris Jones worked on GVinum for Summer of Code 2005 and then Jail Resource Limits for Summer of Code 2006. After two successful summers, he went on to join Google's Site Reliability Engineering team in Mountain View, California.

And finally, the following 8 students (I hope I didn't forget any?) were given full commit access to the FreeBSD source code repository to facilitate their continuing development work on FreeBSD after the Summer of Code ended :
Michael Bushkov, Ulf Lilleengen, Kai Wang, Rui Paulo, Attilio Rao, Gábor Kövesdán, Paolo Pisati, and Shteryana Shopova.

Sunday, February 24, 2008

Now working in San Francisco

Just an update to note that I've moved to the Google San Francisco office full-time now to work on a new team in the same general area. I will still be down in Mountain View about once a week for meetings and such, but in general I'm easier to find after work or for lunch in SF now. Incidentally, there are plenty of open job reqs both in San Francisco and down in Mountain View for those interested (to say nothing of the numerous engineering offices around the world).

Thursday, January 17, 2008

New RSS Feeds on www.FreeBSD.org

This week I added six new RSS 2.0 feeds to the FreeBSD website as I got tired of having to visit all the second level pages directly rather than being able to stay quickly apprised of the latest news from within my feed reader. For those that don't yet use a reader, I highly recommend Google Reader as it allows one to quickly read through thousands of articles on hundreds of websites as easily as scanning an email inbox. It's completely online so there is nothing to download or install, and you can use it on any web enabled device (iPhone works fine) without losing state about what you are subscribed to and what you have already read or tagged.

The new RSS 2.0 feeds are available here :

Project News : news/rss.xml
Security Advisories : security/rss.xml
Java News : java/rss.xml
GNOME News : gnome/rss.xml
Upcoming Events : events/rss.xml
FreeBSD in the Press : news/press-rss.xml

A few of these were available as older RDF 0.9 feeds previously, but that format was not integrated well with modern browsers and feed readers. Those older feeds are still available and updated automatically at the same time as the new RSS 2.0 feeds for anyone that relies on them.

I committed a bunch of XSLT code and Makefile glue to transform the source XML documents into RSS feeds. The code is checked into www/en/*rss.xsl and www/share/sgml/*.xsl in the FreeBSD CVS repository. In, particular, start by looking at this file and this diff to see how these feeds are generated.

Sunday, January 6, 2008

Tickless Scheduling

The tickless idle loop work going on in the Linux community right now looks very interesting. The tickless/dynticks infrastructure is integrated in the 2.6 kernels and allows individual CPUs to spend longer periods of time in the idle state between events when nothing is scheduled. This is accomplished by adding a new timer/event API and by ongoing work to update drivers and userland daemons to use more sensible event notification mechanisms. For large clusters of Linux machines, this has the potential to have a significant impact on operating expenses (power + cooling) as individual processors can spend more time in deeper ACPI sleep states.

What is the status of work in this area in the FreeBSD? Is this something we could work with a grad student on during the next Google Summer of Code?