l4-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Hurd/L4 as a class project


From: Bas Wijnen
Subject: Re: Hurd/L4 as a class project
Date: Wed, 09 Feb 2005 11:11:55 +0100
User-agent: Debian Thunderbird 1.0 (X11/20050116)

Doug Jones wrote:

I would infact want to continue this thread so that it can die the
painful death it deserves.  You didn't answer the question that I
considered the most important:

,----
|    The Hurd is simply not the most accessible of projects.
| | The Hurd is accessible just like any other Free Software project
| IMHO.  You find something that you dislike, fix it, send a patch.
| Could you explain why you consider this different for the Hurd?
`----

I have a different answer for this, which isn't valid for me anymore,
but it probably still is for some others.

Other projects actually run.  You can just apt-get source project,
configure, make, make install and it will work.  You notice things that
need fixing because you notice that they are not working while the rest
of the program is.

This method doesn't really work for the Hurd on Mach, because you never
know if the thing you see is in the Hurd, in Mach, or in something else.
 Just to find that out you need some skills.  Anyone hacking on the
Hurd will have those skills, but people just passing by and checking out
the project will often not have them, I think.

It works even less for the Hurd on L4.  You need a HOWTO to even compile
and run the thing, and when it runs, you're not going to see much being
wrong.  That's not because we've done such a great job at writing
bug-free software (although that helps ;-) ), but because there isn't
really that much code there, and I'm sure a lot of parts aren't tested
when you run it according to the HOWTO.

Most of the work is in actually extending it: designing and writing a
device driver framework, porting libc, that sort of things.  It's very
hard to start with such things after just "looking around".  With other
projects you can do many things, for example when I found a bug in
blobwars I got the source, took a few minutes to understand the
structure, knew where I had to look, and fixed it.  That gives a total
of at most half an hour, for a program I didn't know anything about
beforehand.  (Of course it wasn't a particularly nasty bug, another one
took me days, but at least I knew what I was doing.)  I think the
problem is that people cannot just start doing "anything", as you
recommend, because they need to understand how the internals work first.

Okay, I'll answer it.

It's relatively inaccessible _to me_.  I do understand enough about the
Hurd to see the value of the thing, but gazing at its internals makes my
head hurt.  There are lots of projects that interest me, but most of the
others don't do that to my head.  I am not in your league at all!

If this is the problem, then 10 minutes of time is not going to help.
Every time you put 10 minutes in, you reach the same level of
understanding, and haven't actually contributed anything yet.  So
Alfred, the fact that he has time to write an e-mail doesn't mean he has
time to contribute.  It just means that he has time to read
documentation again, which he will have to do again the next time he has
10 minutes.  Probably some of it will stay, so after 50 times he could
perhaps start with the next bit of documentation, but it's really much
more productive to invest a few hours at once, at least when you're
starting.

That's why I would prefer not to continue this branch of the thread;
this is a primary channel used by core developers, and I'm not sure that
discussing things like this with people like me is a particularly
constructive activity.  I only de-lurked briefly to inject a few
(possibly useless) opinions into the mix, intending to return to the
vast silent herd of gawkers, for a while at least.

I think this is a very useful discussion, especially because it comes
back every now and then.  That means there is a real problem, which
should be solved.  It will be mostly solved when there is actually some
real system to boot (which doesn't seem to be that far away :-) ).
However, after that it still has the same problem as the Hurd on Mach,
which is that a kernel substituting set of servers is a very complex
system, which isn't easy to just look at and understand.  So perhaps
there should be more documentation for starters about this.  It should
of course be written by someone who is starting, so it is understandable
for starters.

If there were another channel where "users" could hang out, I would be
there instead of here.  That's part of the reason for bringing this up
in the first place.

I think it isn't time for that just yet, we should probably set up such
a list when we notice that we are drowning in the users.

Thanks,
Bas

--
I encourage people to send encrypted e-mail (see http://www.gnupg.org).
If you have problems reading my e-mail, use a better reader.
Please send the central message of e-mails as plain text
   in the message body, not as HTML and definitely not as MS Word.
Please do not use the MS Word format for attachments either.
For more information, see http://129.125.47.90/e-mail.html

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]