Italian Open Source developers: Alessandro Rubini

Alessandro Rubini is one of the most famous Italian hackers, he installed is first GNU/Linux distro just after getting his degree as an electronic engineer. He received a Ph.D. in computer science at the University of Pavia, but he left the University because he didn’t want to write papers. He currently works as freelancer, he has several years of experience with writing device drivers for frame grabbers and other industrial devices, he also writes articles and books.
For years he has been the strongest Free Software Italian advocate, and while he is not anymore involved with FSF Europe activities, he is still the most representative person in the Italian free software arena. I asked Alessandro to answer few questions about his job and about free software development, today I’m reporting his first answers, quite surprising indeed.

How did you start getting working with GNU/Linux?

It was 1994. I was enjoying Unix systems and free software at the University, so I started looking for something with pipes, gawk and gcc for my home computer. So I got that strange 0.99.14 thing in a pile of floppies. After that, I went shopping for something supported by that operating system, and upgraded the ZX-Spectrum.

Having source code handy and being able to talk with the authors was great, both technically and socially. And it was a simple system back then, easily learned and hacked, although not as modularized and clean as it is now. I speak of the kernel, obviously, not about the GUI or similar things.

How did it happen to you to write a book about Linux Drivers? Was it helpful to get new customers?

I am an electronic engineer. Computers are tools that simplify moving physical things. I wanted to build my hardware and drive it. And I tend to teach others what I enjoy to do. So I began writing for Linux Journal, and then the editor put me in touch with the publishing house. They were looking for that kind of expertise. So I signed my contract and spent one full-time year on the text. No, it is not the taskI’ve been built for.

Yes, it is helpful. At first I worked as a consultant for University deparments – I have a pair of acquisition systems running since then – then new clients found me on the Net, partly because of the packages I published, partly because of the book. Unfrotunately, publishing software takes a lot of time, so now I publish less.

Do you enjoy your daily work? Do you work at home? What would you like to change about it?

Yes, I find my work quite an interesting one. I work at home and in my own office, out of reach of my babies, where they wouldn’t pull cables and push buttons. Sometimes I also work in a University lab.

The good point in self-employment is that you can manage your time. So you can take your days off when you need it. And your nights on, when the clients need it.

The good point in working with free software is that you always with people more than with computers. Not only when teaching or helping people in solving problems, but also when studying new problems or finghting for your own bugs: the authors’ ingenuity, their choices and their preferences are always apparent throughout the code. Technology is created and dominated by people: it’s a matter of ideas and intelligence, and it’s great to feel and discover it every day.

Alessandro’s attitude respect the main features of hacker ethic as described by Pekka Himanen in his Hacker Ethic: he has an passionate attitude to his job, and he likes to realize himself and his abilities. He also somehow enjoys to share his knowledge, but you need to read what he thinks about “tribes” to understand how much does he fit the Himanen model.

What are the advantages of the community when it comes to product development?

Well, I think the community doesn’t exist. There is no community as such, in my opinion, only a bunch of random hackers working on random stuff.

No, I don’t deny the importance of people, as I said above. But I don’t feel a “community” is there: there is no common view or common goal, not even a common language. There are small groups that feel they are a community, but there isn’t such a thing as “the” community.

Free software is like knowledge: it evolves and increases over time, slowly but steadily. Being involved in knowledge-production is difficult and it takes time.
So product development should happen outside of such involvment, while respecting copyright and all the relevant licenses. The technical expertise out there is a great help, but most information found on the net is wrong or subtly incorrect. For some problems you need to ask the authors, on the relevant mailing lists for the specific project, but this is not the community, is individual people.

So the advantages of distributed development is that knowledge advances over time without being controlled by a person or a company. Not unlikely what happens in other fields. It may look strange, but that’s only because software development used not to work as it should (and as everything else develops).

Alessandro couldn’t be any clearer about what he thinks about open source communities, in his opinion product development is definitely not related to community participation. In his opinion there is no such thing like the symbiotic approach, I guess because of the trade-off between efficiency and effectiveness. Corporates want to respect milestones, while communities are more interested in doing it right, when feasible.
On the other hand the states that distributed – and not coordinated – development turns in knowledge advance over time without being controlled by a single entity.

That’s the Freedom Alessandro talks about.

(To be continued tomorrow)