The Dillo Web Browser The Dillo Web Browser
This is a revised translation of an interview I gave to tux.cl in Q4 2002. Many thanks to Stephen Lewis and Kelson Vibber for correcting my grammar. If any glitches remain, corrections are welcome.

It's interesting that even today (2009) it keeps its relevance on the different topics it covers. Both, about Dillo and FreeSW/OSS.

(Original source in Spanish here)   --Jorge



Basically, what's the Dillo project about?

The project objectives are:

  • The democratization of Internet information access.
  • Security and personal privacy.
  • High software efficiency.

and for that we're developing a web browser that is:

  • Completely written in C.
  • Less than 300KB (Yes, KILOBYTES!).
  • Free Software under the GPL license.
  • Working on a broad range of hardware platforms
  • Very fast.

In fact, with Dillo, a 486 PC and a telephone line is enough to enjoy a good Internet connection.

Dillo's efficiency allows it to work even on a personal digital assistant (pocket sized computer).

In summary: we're developing a web browser that allows the user fast, secure and efficient access to the wide information spectrum of the Internet, keeping the hardware requirements to a minimum.

What would be the main use for Dillo?

Information access!

Dillo could open the doors of a new Internet experience to tens of millions of people in the world.

It is important to know that the entry barriers to Internet are _artificial_. They were created and sustained with a view to make better business profits.

(If you purchase a computer of the current year, renew it every two or three, and in addition pay monthly for broadband service, it is much more expensive than keeping your computer and paying the phone bill)

Now you know: you don't need a modern computer and broadband for Internet access.

It is mentioned that Dillo could be used even on a 486. Is there an "ideal" distribution for this kind of equipment?

There is a large number of so-called minimalist distributions seeking to accomodate different degrees of "smallness". They range in size from a single diskette to a few tens of Megabytes.

I haven't tested them yet! - but I installed Slackware (3.5 IIRC) on a 66Mhz 486DX once and it worked flawlessly.

Now, considering that Drinou Linux is based on Slackware, and includes a packaged dillo-0.6.6, I'd recommend it, and this is the one I'd give a try to power a 486 machine.

Is an estimate of the size of Dillo's userbase known?

That's very hard to estimate, since dillo is not distributed from our site alone: there are Debian packages, rpm, ipk, *BSD, etc. scattered through cyberspace. There are also distributions including it in their base systems.

If the source package alone is considered (an option far less used than an .rpm), dillo-0.6.6 must have near 20,000 downloads from our site.

We'd have to add a larger amount to that number.

Eventually I'll come up with a way to count them all!

How has the acceptance of Dillo been in the GNU/Linux community?

Very very good!

I've noticed that from the people who take some time to write and thank us for the benefit they get from using Dillo, we've got more fans than users.

It is extraordinarily enriching to receive the thankful letters from so many people from such diverse parts of the world.

How is the development of Dillo done?

Dillo is an international project with developers of diverse nationalities collaborating from their respective countries. All of this is made possible by integrating several technologies that allow the configuration of what we may call a "virtual office" over the Internet space.

The group consists of two core developers, three steady developers and several freelance ones.

The geographic distribution of its members is mainly in Europe and South America!

Among the main technologies we use to create our working space we have: HTTP servers, CGI, log analyzer, bug tracker, web browsers, shell servers, mailing lists, ssh, CVS, FTP, IRC, scripts, python, gcc/gdb, POSIX-compliant operating systems, debuggers, release publishers, ..., and the English language!

Why GTK+ and not QT?

For several reasons. The main one is that when the Dillo project started, the QT libraries were not Free Software (that changed later). Moreover, by that time, they were developing the KHTML library for their future web browser (Konqueror).

On the other hand, gzilla was based on GTK+, and it was Free Software, and the image rendering extensions I was planning were assured because GTK+ was the basis for the GIMP!

The fact that Dillo is programmed in C makes it portable to other operating systems. Shouldn't Windows be your principal target, considering that the "democratization of Internet" would have more impact because of the larger userbase of this OS?

Definitely NOT.

Let's go by parts: the fact that Dillo is programmed in C is not a guarantee of portability. In fact, library dependence is much more important.

If the libraries are portable, or have equivalent APIs, is relatively straightforward to make a version for the supporting platform. If the function libraries do not exist in the target platform, porting becomes a titanic task.

On to the other part, the endeavour of democratizing the access to Internet is very much tied to these two facts:

  • Dillo keeps the hardware requirements low and constant.
  • You don't need to pay software licenses to use Free Software.

Micro$oft (windoze) is the exact opposite, and even more, it artificially raises the hardware requirements. If someone uses that platform, he will have to renew his computer periodically (to do the same things he was doing before), and also pay a new license every time there's an "upgrade".

If, on the other hand, a Free Software platform such as GNU/Linux (with dillo) is opted for, an old or new computer can be used for as long as the hardware lasts, without fearing that it will stop working. And, of course, there is no need to pay a license fee.

The second option allows people who are without an Internet connection because of its "high costs" to enjoy the advantages of the information era.

It is true that there's a need to educate and inform that:

  • It is FALSE that you need to renew your computer every three years.
  • It is FALSE that you need an ultra modern computer to connect to the Internet.
  • It is FALSE that you can't have good internet access with a phone line.

Those myths (when taken as true) are only the basis of a multi-million dollar business that exploits those who believe them!

What does being the project coordinator imply?

Responsibility, knowledge, consistency and leadership.

Do organization problems arise?

Yes, as in every group dynamic, but along very particular lines.

Maybe the most interesting among them is that as this is a project made of volunteers, you can't demand that someone do a certain task, in certain way, in a fixed amount of time.

When you want someone to perform or do a certain task, it must be founded very well to make an agreement, and it must coincide with the particular interest area of that developer.

Another point worthy of notice is that sometimes very valuable time is wasted explaining/coordinating/delimiting how some task should be done to someone, only to finally get (after a trial) an explanation for not being able to do it.

Has it demanded much of your time?

In the Dillo project I have two jobs:

  • Project coordinator.
  • Lead developer.

Moreover, considering the enormous complexity and dynamism of the underlying technologies for a web browser, it is easy to understand that there's much more work than time.

In fact, since the project's beginning, I've worked full time, three years, including weekends.

What platform (GNU/Linux distro) do you use for developing Dillo?

I use Slackware, but in the development group there are people using NetBSD, FreeBSD, OpenBSD, Solaris, and other GNU/Linux distros, so our software is tested on a broad spectrum of platforms before making each release.

In my opinion, Slackware is the best distribution for one who knows what he's doing, or wants to learn well the technical rationale of a GNU/Linux environment.

How and when did you start with GNU/Linux?

I should say around 1996, with Slackware 3.5 or 3.6, but I used "monkey linux" over a DOS filesystem before (kernel 2.0.30!).

Anyway, my first steps on Unix environments were by 1990.

Why do you state Dillo is Free Software and not Open Source?

Short answer:

  • Free Software is a social movement.
  • Open Source is just a development technique.

Medium sized answer:

After knowing there's a high-end operating system, developed by volunteers around the world in their free time, that's distributed as Free Software (which implies among other things that you can use it without paying licences), any intellectually inclined person starts to wonder what motivates the group to devote their time to such an endeavour.

The answer is about a shared ethic and philosophy of such force that it's able to create a social movement based on its members' convictions. Unified by a common element, Free Software (or Software Libre), under the shelter of the GPL.

It's silly to think that it's just for the joy of programming, or even worse, for a development technique.

What is Free Software?

It is a type of Software that grants four basic freedoms:

  • Freedom to use the program, for any purpose.
  • Freedom to study how the program works and to adapt it to your needs (source code access).
  • Freedom to copy and distribute (you can help your neighbour).
  • Freedom to improve the program and make the enhancements available so all the community benefits.

In simple terms, the GPL license is the legal mechanism that obliges that when the program is redistributed, those freedoms can't be restricted, denied or restrained, so they are fully preserved for the recipients.

i.e. software under the GPL will always deliver the four basic freedoms stated above.

These simple elements have been creating an enormous software base, shared by lots of people around the world. In fact, all the GNU software and the Linux kernel are under the GPL. They are Free Software.

But, what motivates this movement's members?

The answer to this question is very broad, including the generic level, and probably I'll write about it on other occasion, but it is worth a remark to note that for an abstract analytical mind, the answer may come from the analysis of competitive societies, interchange communities and cooperation societies.

Moreover, the famous "prisoner's dilemma" sheds a lot of light on this matter.

A detailed answer (in English) can be found by reading about the GNU project philosophy.

What do you think about the fact that most people don't distinguish between Free Software and Open Source?

It's not rare, as the term was coined in some respects to confuse.

The Free Software movement (Software Libre) antecedes the Open Source Software (OSS) definition by far. In fact, if I remember correctly, the GNU/Linux system existed and was already operative before the term 'OSS' was coined.

In a few words, it happened that as Free Software produced reticence inside the business world (because it was oriented towards the freedoms the end user received), a small group made a pragmatic decision: to conceal the ethical and philosophical aspects, presenting Free Software as a development methodology and not as the movement it is.

Thus, they elaborated an OSS definition broad enough to include Free Software within a larger set (and thus to be able to claim that certain software is OSS when in fact it is Free Software).

The problem is that OSS allows denying some of the freedoms granted by Free Software.

The funny thing is, they had a tremendous success, and as most of the written media makes its income from advertising (paid for by enterprises), they decide to keep on using the OSS term and not to offend their clients.

The point is, those who learned about GNU/Linux's existence from that media began thinking it was OSS.

Today, the OSS term has caused much harm to the Free Software Foundation and to the GNU project, whose achievements they declare to be those of OSS, while concealing the underlying philosophy.

In fact, it was a double-edged sword: on one hand it opened the entry door to the enterprise, and on the other, it concealed the most important part: a matter of freedoms.

That's why today it is very important to distinguish and explain the difference between Free Software and OSS.

I hope to have contributed to it.

Related information: about the FSF, and about the GNU project.

How do you think Chilean Linuxers could be motivated to participate in or begin Free Software projects?

Ouch! It's not just a matter of getting in. You have to know a lot first.

Working in a Free Software project requires people with a lot of knowledge, not just the will to participate.

I'd recommend first to get very well informed about what Free Software is, and if they share the underlying philosophy, to get involved in an area they know very well (as it could be the same as they worked on with their thesis).

How do you see Dillo's future?

That's something that's not yet defined, as it regrettably doesn't depend on us alone...

Technically, we have all the expertise, will and ideas to make "big things" with Dillo. BTW, what we have developed thus far already makes a big difference!

For instance, some may have heard about the "digital divide".

(the so-called "digital divide" is the gap that exists between those who have access to information technologies and those who don't. It is easy to see that in an interconnected world, with an ever-growing portion of human activities being encompassed by the informatics realm, this divide comes to constitute what we may call the "illiteracy of the 21st century").

Thus, it is easy to understand why the UN and most countries (developed or not) are concerned about it. Consequently they hold summits to debate how to close the divide, and assign thousands of millions of dollars to the issue.

Regrettably, as the UN's general secretary has declared:

"But bridging the digital divide is not going to be easy. Too often, state monopolies charge exorbitant prices for the use of bandwidth. Governments need to do much more to create effective institutions and supportive regulatory frameworks that will attract foreign investment; more generally, they must also review their policies and arrangements to make sure they are not denying their people the opportunities offered by the digital revolution. " (think about it)

It is easy to see that the economic interests involved are huge.

A small example:

Dillo is a tangible demonstration that the technology to build a PDA (pocket-sized computer) integrating a web browser and phone EXISTS today.

Dillo is a tangible demonstration that it is possible to make a home phone with a screen and web browser for near US $250 and bring Internet access to a huge amount of people.

Why can't those products be found in the market?

If we consider the thousands of millions of dollars in profits that the IT market generates as it is today, is easy to understand why they don't want to change it!

In brief: the technology to bring low-cost Internet access to the masses exists today. It only needs the willingness of some government to do it.

In fact, in Chile, with GNU/Linux + Dillo, today it is possible with an old computer and a phone line, to access a broad range of information available from government servers, universities, newspapers, magazines, forums, etc... (and not even according a simple standardization policy!).

Our project is seeking funds that allow for a small team of stable developers, with full-time dedication, with a view to accelerate and improve our browser and thus contribute to build a better-informed society.

All the information with regard to the Dillo project can be found in our web site.

Is there any project where Dillo is used "commercially"?

Yes. there's an interesting project implementing an information intranet for hotels over embedded devices (USA).

Moreover, I've been told that in an Australian university an electronic information system was implemented over flat screens controlled centrally from a web interface.

One time we received a thankful note from a person that completed a heterogeneous research work (information retrieval) quickly and efficiently because of using dillo.

The possibilities are many, it only takes some knowledge and the will to do it.

In what ways could the Dillo project be helped?

I think in three ways:

  1. Making direct contributions such as patches and source code (which requires a lot of knowledge and experience)
  2. Talking about it! Knowing the project objectives, and communicating them to people. Making people see that it's possible to have good Internet surfing with an old computer and a phone line.

    Reading manuals and sites, investigating with Dillo, enjoying the speed and ease with which it can be done, and then go spreading the word to other people.

  3. Helping us to find a way to fund the project.


How do you see the Chilean Linux community?

Really, I haven't had the time to get involved, but I think it is active to some degree, with national gatherings, events etc.

BTW, today Nov 29, there's a national event of GNU/Linux in Concepción.

I'd like to participate and give a speech, maybe in another opportunity.

I also believe that the UTFSM's "linux" mailing list has done a lot for the community, gathering a lot of people towards a common interest focus.

Finally, what's your opinion of tux.cl?

It is an interesting project that's just beginning.

How could it be improved?

First you must define what you want to do: that is, the publication's objective. After surfing the net a while and getting the feel of it being full of information about GNU/Linux, another news site is not interesting; the point to take advantage of is that you write in Spanish and know the Chilean grounds, so you can deliver information that can't be found anywhere else...