July 22, 2016

This is my third year attending BSDCan. Thanks to the Foundation for making this trip possible. Traveling from the other side of the Earth is never an easy thing for me, but joining BSDCan is always the most joyful thing for me.

The first day of the DevSummit started with talks from Microsoft and Intel in the morning. In the afternoon, I first joined the Documentation Working Group. We discussed many areas of the doc team. The two things I am most interested in are our website and translation. We talked about the usability of our website, and the backend of it. Most items can be found on the collaborative editor.

My other thought about website is that we may need some responsive design. Currently our website does not provide best user experience on the portable devices such as a cell phone, which has became the one of the popular ways people get online. Also, I think we might put some efforts on the accessibility of our website, allowing more people to retrieve information more easily.

For translation, we now have a new experimental PO-file based translation system. The best part of this is the translators can focus on the content without bothering with the XML format and syntax. However, PO-file is designed for software translation, not for long technical articles. There are still some rough edges of this process. In the past two years, kevlo@, some volunteers, and I revived the traditional Chinese translation project. I will continue working with them, collecting feedback and providing my knowledge about the technical side.

On the second day of the DevSummit, we  began with a discussion about FreeBSD 11.0 / 12.0 and Vendor Summit. During that time, I had a short talk with will@, to thank him for his help on the VirtualBox shared folder support. A few weeks ago, gonzo@ also started to work on this project and he just made mount and some operations work (although still far from complete, but it was a big step). Our next step is to complete the VFS and vnode operations. I hope this project will be completed soon.

In the afternoon, I joined the Teaching FreeBSD working group. We discussed many versions of the course. Someone mentioned that the  “IT-style course is also very useful.” I second this idea having taught two semesters of a similar type of course in the college where I graduated. These courses are given by the system administrators of our department’s computer center. We use FreeBSD as the target platform, and during these two semesters, require students to do system administration and network management work including  OS installation, daily maintenance, dealing with security issues, setup website and other services,  and working with multiple hosts. During the course, students have the chance to interact with open source projects. As an unexpected result, we had many new FreeBSD users, contributors and ever some committers. I think this is a very good result, and I hope the related materials can be shared to be improved by the power of the crowd.

At the end of second day of DevSummit, allanjude@, bapt@, bdrewery@, emaste@, swills@, markj@ and R. Tyler Croy (from Jenkins project, who joined remotely) and I had a CI (continuous integration) discussion. It was a very productive two hours. We talked about the current system architecture, how to improve it, and the future TODO items. We also checked the configurations of other systems in the FreeBSD cluster, to confirm the best practices in setting up a FreeBSD.org service. I will arrange the discussion items and provide more information on wiki.FreeBSD.org.

The FreeBSD CI project is receiving attention from many people this year. We received a lot of help and suggestions. I hope to be able to put more time on it, and share the experience on the BSD conferences in the future. In the meantime, we always want more people to join in the discussion and implementation. Please join us on freebsd-testing@FreeBSD.org mailing list and EFNet/#freebsd-ci IRC channel.

 In the hacker lounge, I talked to peter@ and some other developers about the service authentication in the FreeBSD.org cluster. We think it would be good to have a single sign on solution for FreeBSD.org, that makes it easier and more secure for people using cluster services such as Bugzilla, Phabricator and Jenkins.  I also helped swills@ making a Jenkins Vagrant image.

The following two days were the main sessions of BSDCan 2016. Below are some of my thoughts after listening these talks:

Using competitive analysis to increase the effectiveness of operating system fuzz testing” by Kirk Russell is a very inspiring talk, I had done some similar researches while I was in graduate school, but I never applied them to FreeBSD, which I sometimes regret. I talked to Kirk at the party on the last day. I suggested using the smart-fuzzer to create a feedback loop for generating input to trigger the fault faster, and the delta-debugging algorithm[6] to find the minimal input to trigger the fault. It was a very exciting discussion, and I am very happy to recall the topics I worked on many years ago. I hope we can work together to apply these research on FreeBSD to improve the quality of it in the future.

Reproducible Builds in FreeBSD” by emaste@ gave me a whole picture of the importance of the reproducible build. A CI system is a great help to this project, I also discussed this with bapt@ in March and in the CI working group two days before. Our current plan is making our CI system stable and scalable, then we can create more CI jobs for verifying reproducibility. This is a high priority item on the TODO list of CI team.

At the closing session, HardendBSD gave away two  Raspberry Pi 3 Model B devices, one went to the person who traveled the furthest to attend BSDCan. I was lucky enough to win this prize, and it really eased the pain of 15 hours flight from TPE-YYZ-YOW (and back!). I will squeeze some time to improve the FreeBSD experience on it. By the way, adding support of this board is not a trivial work, I really hope Foundation can help on this.

During the BSDCan closing party, hrs@ and I talked about the snapshot build, he asked about if our CI system will provide daily snapshot build. I replied that is planned, we are trying to setup an artifact server for uploading the snapshot .txz or ISO files from build jobs and will open to the public for downloading. Also, he invited me and kevlo@ to join the AsiaBSDCon program committee. We also discussed about some possibilities of the next AsiaBSDCon. I am very looking forward to the AsiaBSDCon and BSDCan in 2017!

I left Ottawa on June 12th, after BSDCan, with lots of good memories and TODO items (yay!).