Interview with Adam Hamsik
July 15, 2009 posted by Emile Heitor
After our first interview with NetBSD-5.0 release engineer Soren Jacobsen, it is now Adam Hamsik's turn to be interviewed by NetBSDfr.
Adam is known for his work on porting LVM tools to NetBSD, and for porting ZFS as part of this year's Google Summer of Code.
NetBSDfr: First of all, thanks for taking the time to answer. haad: No problem! I think that your effort is great. NetBSDfr: For the readers who don't know you, can you shortly introduce yourself ? haad: My name is Adam Hamsik, I'm 24 years old. I have finished Computer science in Slovak Technical University last month. I'm NetBSD developer since around 2 years. My first bigger project was NetBSD LVM implementation on which I have worked during previous Google Summer of Code. NetBSDfr: Why did you choose to run NetBSD ? How long have you been using it ? haad: I've been using NetBSD for around 4 years. I started with NetBSD 2.0. I tried several linuxes and FreeBSD but any of them truly fit my needs. During one dinner with my old friend he suggested to me that I should try to use NetBSD, because it is pretty good operating system. I tried to use it and found that it is best os for what I need. It is cleanly designed and it is almost Unix. NetBSDfr: Do you have an idea of the time you spend working on the NetBSD project daily, weekly, monthly ? haad: These days during GSOC 2009, I'm working on ZFS port project for 4-8 hours per day, sometimes even more. As any other volunteer developer I'm often interrupted with real world thinks, but I'm trying to do as much as I can during this Summer. NetBSDfr: Your work for the project is mainly in maintaining your former GSoC work, or are you involved on other parts of the code ? haad: I did several smaller patches to base system, proplib, but main part of my work is my former and current GSOC work. Last year I did LVM port for NetBSD and get linux LVM tools working with our device-mapper driver. For those readers who do not know what is LVM, LVM is Logical Volume Manager which allows to manage disk space in a pretty simple way. This year Summer of Code I'm working on NetBSD ZFS port and I have to say that with great help of Andrew Doran we already did pretty good job. Yesterday - Note: the 20th of June, 2009 - I was able to mount (only mount call is supported;) ZFS dataset, create/manage zpools and zvols. NetBSDfr: How did you become a NetBSD developer ? following GSoC I assume ? haad: I became a developer after some time where I tried to find some project for me. I was asked by Bill Stouder-Studenmund if I want to become a developer. Later I started my work on LVM port which later became my GSOC project for 2008. You started LVM port before GSoC 2008 ? haad: I had some big part of device-mapper driver written before GSOC started. NetBSDfr: How long did it take to port LVM to NetBSD, overall ? haad: It is still not finished but around 1.5 year. NetBSDfr: I'm wondering how you learn about NetBSD internals ? On your own ? At school ? haad: I have to say that I'm still NetBSD internals newbie :) I know parts of kernel on which I was working e.g. device-drivers, device-mapper. During my work I met several great developers with enough patience to guide me through kernel internals and help me with my problems. I learnt the rest on my own :). I have to say that there are still places in kernel about which I do not know anything e.g. low level stuff, real device-drivers, acpi, uvm etc.. but I already learnt pretty much about locking, vfs and filesystems. NetBSDfr: Can you give more details about the Google Summer of Code ? How are students nominated ? What are the success criteria, if any ? Do all students get committer access ? haad: GSOC is program managed by Google where Google pays students to work on Open Source projects like NetBSD. Anyone who is a student can write application and submit it during application submit timeline. Applications are later reviewed by NetBSD mentors (people who guide students through whole GSoC on project side) and defined number of project applications are chosen by some criteria. Not every student get commit access but many of our successful students over past few year got them. GSoC is better described at http://code.google.com/soc/ NetBSDfr: What are the evaluation criterion ? Usability? Portability of the code ? haad: Every student should define their GSoC application must have, nice to have things. Students are evaluated by their mentors. You need to show your mentor that you are working on your project and get at least something done. If you find during Summer that your deliverables are to huge, you can scale them down, but you must work on it :) There are no exact criteria for project evaluation. NetBSDfr: How are you working with ad@, your mentor on the ZFS port project? Is he reviewing your code regurlarly ? Are you requesting the reviews ? haad: We have meetings once a week on Skype/VOIP where we discuss any big issues. During the week I can regularly talk with him on irc. When I do some bigger change, I ask Andrew for a review. NetBSDfr: I was about to ask for a status on ZFS. You gave part of the answer earlier in this interview. Do you think you'll reach the goals you've set for ZFS in NetBSD by the end of this year's GSoC ? haad: I have to say that I'm not sure :) still. ZFS is huge it will take much more than GSoC to get it working but I think that we can get basic part of ZFS working at the end of GSoC. I will do my best to reach our goals :) NetBSDfr: As a conclusion, can you tell us how you imagine the future of NetBSD? haad: I think that we did huge step with NetBSD 5.0. Andrew Doran did awesome job on 5.0. Many parts of NetBSD kernel are multi-thread safe these days. On multicore/SMP machines we have very good performance in many types of system workload. There is also another part of NetBSD and it it is portabiliy to embedded devices, there are so many small devices which are running NetBSD and nobody knows it. We need to work hard to get Flash filesystem and many other embedded device stuff done to attract new developers to work and port NetBSD to new machines. NetBSDfr: Well, I think I've run out of questions. Thanks a million for your time Adam haad: np :)
Many thanks to Guillaume Lasmayous from NetBSDfr for his hard work in preparing, conducting and translating this interview. Rendez-vous in a few weeks for the next interview. Please feel free to suggest developers you would like interviewed and/or questions.
[2 comments]
Posted by Mark Weinem on July 20, 2009 at 02:56 PM UTC #
Posted by Adam Hamsik on July 20, 2009 at 03:32 PM UTC #