Throughout my career, I have contributed to some open source software projects, mainly for the GNU Toolchain components and the Go Programming Language. Here you can find a list of all my contributions and articles I have written about open source. For more details, please visit my GitHub profile.
Open Source code contributions
binutils and gdb
I started my career at IBM working on the GNU Debugger and Binary Utilities projects. My contributions at the time were mostly POWER architecture enablement and bug fixes. The Sourceware.org repository logs has a list of all my commits to both binutils and gdb.
glibc
I worked on the GNU C Library for a few years. Mostly of my contributions are new processor enablement and performance optimizations for POWER architecture, although I did some more complex work, like changing the TLS ABI for POWER. The Sourceware.org repository logs has a list of all my commits to glibc.
Go
I started working on the Go Programming Language compiler in 2015 and I am still a contributor and committer, helping to maintain the ppc64le port. I have contributions in many different areas: SSA compiler backend, assembler, threading and atomics model, runtime, crypto and maths. The scope of my contributions is mostly restricted to the POWER architecture. The Googlesource Gerrit code review system has a list of all of my changes accepted into the project.
LLVM
I briefly worked on LLVM to enable the thread sanitizer for Go on POWER architecture. The LLVM Phabricator code review system has more details about that.
Other contributions
Other minor code contributions were done to the following projects:
Most of these are IBM open source software projects hosted at GitHub. I used to be the PAFLib project maintainer.
Documentation Contributions
- Creating a Versioned Struct Wrapper For a GLIBC Function
A tutorial about how to create a versioned struct wrapper for GLIBC functions. Versioning symbols properly is important so we don’t break the ABI.
Open Source Articles
- Support Ubuntu Edge
A great concept idea for an open mobile phone from Canonical. - Ubuntu 11.10 Impressions
My short review of this Ubuntu Desktop Linux release. - Ubuntu 9.10 Impressions
Quick impressions about the new Ubuntu Desktop Linux release. - Firefox 4 Beta Hands-on
My impressions on the next release of the Firefox browser.