Faruk Kasumovic is a Product Lead/Owner on the SERVERware team at Bicom Systems. He has been with the company since 2006 and was one of the first employees hired! Upon graduating from the University of Tuzla with Electrical Engineering, Faruk started as a Software Developer.
Writing code for Faruk came long before his time at Bicom Systems. He has been in the software industry for over 15 years. Faruk and other developers from Bicom Systems have been submitting open-source code on the Bicom Systems GitHub page for a few years.
Recently, Faruk wrote a new library code that enables him to use the OpenZFS with another programming language. Staff from Ubuntu, an open-source Linux operating system, saw the code and decided to use it on their OpenZFS in the upcoming version!
For our non-coder/less technical readers, I will break it down for you.
Developers submit different code that are open source, meaning anyone can use it (for free). Since the code was up for grabs, Ubuntu liked the solution and decided to implement it on their next release.
When I say Faruk wrote a new library code, I mean he did so in a different programming language. Imagine it was written in English, and Faruk rewrote it in German. Now, it is not as simple to translate code as it is words, you can’t just put it in Google Translate.
But to better explain this achievement, I sat down with Faruk and asked him a few questions. Check it out!
How did you come up with this code/idea?
“I was working on a solution for the storage part of our product, SERVERware. During my research on existing storage technologies available that I could re-use, I found out about the OpenZFS project. I soon figured out that I will need a library for the ‘Go Programming’ language to get most of it for SERVERware.”
“That is when I got the idea to make ‘bicomsystems/go-libzfs’ and share it under a permissive open source license. I did this to get some valuable feedback on my work and collaborate with other developers around the world with similar needs!”
How does this code help users? Why do they need it?
“This code helps developers to write software in the ‘Go Programming’ language that needs to be manipulated and to use features from the Zed File System (ZFS, created by Sun Microsystems) as a part of the software they build. Specifically on GNU/Linux based platforms.”
What does it mean to YOU that UBUNTU is using this code?
“The project itself is a little contribution, in general terms, but also a big thing for me. It makes me feel proud that it is used in a big open source project like UBUNTU Linux!”
“I achieved the goal of this small project. I made something myself on behalf of Bicom Systems that others can benefit from. Also, this small library project benefits UBUNTU and other developers can contribute to perfect it with their own changes and feedback (tests and bug reports).”
“Because of this, the SERVERware project is now relying on a more stable and more useful component than it would be on my own. This would not be possible if I didn’t share my work and accept contributions from other people who found it useful for their own needs.”
Wow! Congratulations. Was this the first time a large organization used your code? Or Bicom Systems code?
“Yes and no. This is the first Open Source and/or freedom software domain that my code has been used. But, before I started working for Bicom Systems, I worked on projects used by reasonably large companies like the “Schaeffler Group – INA.” Back then, the company had at least 8000 employees!”
“During my time at Bicom Systems, I have written code to support specific last-minute requirements that deployed as part of the conferencing solution to the NASA Jet Propulsion Lab. As well as other large organizations that are customers of Bicom Systems.”
That is amazing! So when will this be live?
“Ubuntu 19.10 is due for release on October 17, 2019. The library itself is live and has been already available for a couple of years.”
How can users access it?
“Well, the end-users of this project are other software developers. So they can use it in combination with OpenZFS on a Linux project to integrate some cool storage features in the software they build.”
“Like we used it for our the SERVERware software storage manipulation. Developers can access it here.”
“In this case, UBUNTU is going to use it for setup, monitoring, and some background automation to provide UBUNTU users with a seamless experience.
They announced the features on their blog.”
What are some links that users can click to find more information about this?
- For more verbose information, look at the Ubuntu projects on github here.
- If you want to look at the go-libzfs code on the Bicom Systems page, click here.
- In regard to the package ZFS on Go Docs, click here.
If you have any more questions for Faruk or want to learn more about this code, leave a comment below!