My experience at FreeBSD has been fantastic. It has been challenging and rewarding at the same time. I have had the chance to work on FreeBSD’s debugging tool and apply software development principles I learned in school. Having FreeBSD as the OS of my work desktop, I learned a lot about system configuration and how different tools work in FreeBSD and Unix. Now, I have a deeper understanding of operating systems, debugging tools, and service configurations. I also learned a lot about the mindset and approach to solving problems in general. I got to improve the features and performance of addr2line, which is a debugging tool. I also added brand new services to the sandbox framework Capsicum included in FreeBSD and several other operating systems.
Furthermore, I learned a lot about setting up servers by building a test system in the office. The discussions with Mark Johnston and Ed Maste, as well as, troubleshooting issues were invaluable to me as a junior programmer. I’m certain that the skills I acquired are something I will need to be successful throughout my career. I consider FreeBSD a great operating system. It offers plenty of flexibility and you can customize it however you want. Everything is open source. With thousands of eyes on the source code, it is unlikely for malicious logic to exist.
The FreeBSD community is also extremely friendly and helpful. When I was still a newbie at FreeBSD, I had some trouble with figuring things out. Experienced FreeBSD developers jumped right in for the rescue. I learned a lot from them. The FreeBSD handbook is also an incredible source for everything FreeBSD. It’s very comprehensive and relatively easy to read.
In conclusion, it has been an incredible learning experience for me, and I want to thank everyone at FreeBSD for their help and support throughout this internship.
– contributed by Zhengyuan Gao