Software Development with Linux

Meet the Linux Family Peter Groen

SUN, 01 AUG 2010

Meet the Linux Family is a series of interviews with various software developers, managers, and users, who all have a point in common : they use Linux.  They will bring different point of views on various Linux related topics and share their Linux experience with you.

Well, it's now the last interview in the series (for now!).  I hope you've enjoyed this as much as myself.  For this time, I've discussed with Peter Groen, which is a linux expert and kernel developer.

Laurent : For how long have you been using Linux?

Peter : Since 1992, so that makes approx. 18 years.

Laurent : Why did you started to use Linux?

Peter : At that time, I worked as an electronics engineer for a company doing oceanic research and we needed cheap hardware during the voyages.  All the software was Unix based so we found a strange, Intel based unix-like operating system called "Laainuks" or something.  It worked, but not on *every* hardware so I started writing drivers for our hardware.  From that moment I kissed the DOS/Windows 3.11 combination goodbye and stayed on Linux.

Laurent : What are your day-to-day use of Linux?

Peter : Everything except music recording.  My entire company (Open Systems Development) is based on Linux and doing development on that platform, and I'm a strong believer in "eat your own dogfood".  By working with a product, you'll see what's faulty, flawed or plainly stupid.

Laurent : Why do you prefer using Linux?

Peter : Basically for its open character.  If you encounter a problem during daily use or development, it is quite easy to track down the problem, using the extensive logging or by looking at the sources of the supporting libraries.  And instead of bitching about it on the internet, you can fix it.

Laurent : What do you think are the advantages of developing for/with Linux?

Peter : In my opinion, it's the fact that *everything* is possible.  Computers are made to do *our* bidding and Linux provides the means to that.  Literally *everything* is at your fingertips and your only limitation is your own imagination.  There is no vendor dictating what you can do or can't do.  Without Linux, a lot of todays technologies wouldn't be possible.  Like VMWare/ESX, true GRID computing, and don't forget the salvation of the Kursk submarine.

Laurent : What do you think are the disadvantages of developing for/with Linux?

Peter : It is a lot better these days, since a number of large companies pay developers to work on Linux distributions, so documentation gets better every day.  In my opinion (maybe I'm biased) there are no disadvantages of development for - or with Linux.  As a developer you want to have total control and Linux gives you that.

Laurent : Which software development tools do you used the most?

Peter : At first it was just vi and gcc.  Later on I also tried KDevelop and CRiSP, and nowadays I use SlickEdit on both Linux and MacOSX.  I liked the in-IDE debugging facilities with KDevelop, but then I forced myself to work with gdb, and I'm completely happy with it!  If I want graphics, I'll just start ddd instead. :)

Laurent : Do you think that there are differences between managing Linux projects versus other platforms?

Peter : Not really.  Managing a project is more about the *process* and not so much about the technique.  And to be honest : It doesn't matter what colour your hammer is.  As long as it is able to drive the spike into the wood...  Your developers might have preferences, but that is not an issue in project-management.

Laurent : Any recommendations/hints/wisdom for people new to Linux software development?

Peter : The best advice I can give is "Don't give up".  Try Linux for lets say a year., then switch back to your old platform, just for kicks.  I'll make a bet that you will be amazed about the logic of Linux.  And that is just in daily usage.  If you start developing software on Linux, just use the plain language.  No frameworks like GTK+, Qt, Motif, or Mono, just the language itself.  Then you'll learn a lot about the toolchain which is useful if something goes wrong.  And something *will* go wrong.  Murphy will see to that. :)

Laurent : Anything to add?

Peter : Not really.  Just a big thank you for this opportunity.

Laurent : Well, thank your for your time.