Question: Welcome to the Undernet Public Relations Committee's Live
Events Interview Auditorium.
Question: We have a special guest tonight, Carlo
Wood. Carlo is known as Run on IRC and he is also known for directing the
Undernet enhancements to the server protocol we all use here on IRC.
Question: Carlo has been kind enough to take this time out
of his busy schedule to be with us tonight.
Question: As most of you already know, the Undernet Public
Relations Interview Staff sent out many invitations for users to send in
their questions to be asked during the interview.
Question: The best and most appealing 20 questions have
been selected carefully by the staff. We will ask one question, wait for
an answer from Carlo, and then proceed with the next.
Question: We will now begin the interview session. Sit
back, relax, and get ready for an exciting hour.
Question: Ok, let's start the interview session.
Question: 1. When did you realize you wanted to help
develop the Undernet IRC protocol? -- Sheex
Carlo: Actually, I didn't realize I wanted to help, but I
started to develop it by my self :).
Carlo: There is however quite a nice story behind the WHY
of my efforts to make IRC a safer place (this answer - to the first
question - is probably going to be the longest answer of all ;).
* Run sits fatherly in a Big Comfortable Easy-Chair next to the
open fire, to tell a long story ;)
Carlo: My chat history has started on a BBS.
Carlo: A special one though, since it was one on the
Carlo: There I did meet a group of dutch hackers called the
"Timewasters", some of which were (are) truely Linguistic Ninja's -
Carlo: the chatting level, compared to the normal chat, was
as high as Socrates' debates compared to the average
hardrock-song-content, and could be easily seen as a the verbal equivalent
of a Chess Grand Master entangled in a Catch-As-Catch-Can Wrestling Game.
Carlo: One of these guys - who turned out to be the IRC
Admin of the Dutch efnet server at the time - became my friend and talked
me into going to IRC. (He even had to install the IRC client for me
because I had no clue how to do that ;).
Carlo: This was 7 years ago. Soon I started my own
channel, called #gayteen, on efnet together with another (american) 13
y/o. And we took turns in keeping the channel open and making visiters
feel comfortable until we had a regular and friendly group of teenage
boys. Note it took us MONTHS of HARD WORK to get this channel alive!
Carlo: The motivation for this was that its hard to be a
teenager and gay, especially in todays world were it is hard to find a
role-model in the media that you can compare with - without getting
confronted with an in lether dressed, high pitch voiced, female comedian -
or a suicidal disaster :).
Carlo: So - the aim was to show that gay teenagers were
exactly like other boys; also like pop music & skating and hate school.
Carlo: We only had two rules, one of which was that people
older then 19 couldn't get ops.
Carlo: Now this collided with the ideas of some IRC-op on
efnet back then, and we started to be terrorized and attacked where even
the use of KILL wasn't eshuwed.
Carlo: This was for me the moment to learn C (in 3
weeks) and write a WarBot program (in 400 almost contiguous hours) as
Never Have Been Seen Again, to defend the channel.
Carlo: I am still proud to tell you about this time that my
Multi-Connection WarBot program (with 4 bots on the channel and 5 outside
it) became the KILL target of no less then 5 on-line IRC-opers but managed
to keep their channel ops for 300 KILL's on a row before a program bug
made them bite the dust :).
Carlo: In the meantime my efnet Admin friend had given me
CN lines (a server connection to play with) and I started to study the
server-server protocol (Later I became his successor in admining the efnet
Carlo: (To give an idea; my warbots simulated the server
internals in order to know which link would be read next - so a JOIN and
the corresponding opping MODE could be sent simultaneously, instead of
having to wait a few milliseconds for the feedback from the server :).
Carlo: After many wars on my channel I had both, become the
Ultimate IRC War Tactics Expert as well as come to the conclusion that it
was impossible to defend a channel satisfactory due to protocol flaws in
the server-server protocol itself.
Carlo: I started to improve the server-server protocol in
order to be safe myself, on my own channel - to be able to chat about any
topic, even when others dislike that.
Carlo: And ever since, I never had time to chat myself
anymore on that channel ;) :/
Question: 2. Where do you come up with the ideas for an
enhancement for IRC like the SILENCE command? -- David-R
Carlo: When you work on something dedicated, from when you
get up till you step into bed - you dream about it. And it has been
mostly when I woke up that I have gotten the most bright ideas. So I
guess the answer is: In my dreams :).
Carlo: Now the SILENCE command did strike even myself as a
pretty brilliant so lution if I may say so ;) giving the solution to a
problem that had existed for 10 years: Make the problem of being flooded
the problem of the one that is BEING flooded - give him/her the means to
do something about it.
Carlo: Afterwards it looks very trivial :).
Question: ok, let's give Carlo Wood is a break and ask a
Question: 3. Is there ever going to be a -binary- IRC
protocol? -- MadCat
Carlo: Yes. Although I am not sure if it still will be
called IRC, nor do I know what all else will be possible next to just
Question: 4. When you started coding, would it have been
easier to start IRC over from scratch instead of make mass-enhancements to
it? -- Appleton
Carlo: Yes and no. It would have been easier from the
coding point of view, and a definate no when it comes to keeping backwards
compatibility with the existing net.work - and thus your client base. A
total new design will have as largest problem to get a client base.
Carlo: My first addition - the so called TimeStamp (TS), or
channel creation time, was REFUSED by the ircd maintainers of efnet when I
offered it to them - because I was a nobody. I don't think I'd ever have
managed to get a total new design to be accepted anywhere, also not on the
Carlo: Hmmm, there is a nice story related to this... As
you know - efnet finally did adapt the idea of a channel creation time.
Carlo: Although the guy that wrote it looked at and learned
from the Undernet code - it's still not a trivial thing.
Carlo: Totally seperate from this - I once made a puzzle
that nobody ever has been able to solve - not even after publication in
the national Mensa magazine.
Carlo: After having tried it on at least 50 intelligent
people I published it in rec.puzzles ... and got ONE correct answer. I
wonder if its a coincidence that the guy that solved it was the same guy
that designed the TS protocol for efnet :)
Question: yes, I do realize most of the /info responses on
networks such as chatnet and galaxynet say your name, so apparently they
also use Undernet code.
Question: now time for a difficult question...
Question: 5. What makes the Undernet stand out when
compared to other IRC networks in terms of server software? -- Sheex
Carlo: That's a difficult question...
Carlo: I do not keep up to date anymore with efnet's code -
(and as far as I know other nets use either efnet's or Undernets code).
Carlo: I could say that the server software stands out in
anti-admin-hacking-detection-code, which means that I tried to make sure
that it is next to impossible to take over a channel EVEN when you are the
server admin with direct access to the server-server protocol.
Carlo: Of course the Opers have Uworld - and are able to
"takeover" channels, but that is always logged - and walloped - and
therefore becomes a political problem which is out of my hands.
Carlo: However, I need to say that at least as important is
the fact that Undernet has a pretty good organisation and abuse by its
Opers and Admins will be *minimal* considering its size.
Carlo: Note that since the brand new release of server
version 2.10 I think (again) that taking over channels will become
impossible - and as far as I know, it's already damn hard to do on the
current net with 2.9 anyway.
Question: 6. Do you ever connect to the EFnet or FUNET to
discuss IRC code with the "pioneers" of IRC? -- David-R
Question: very elaborate :)
Question: alrightly... with that in mind, let's move on to
the next question...
Question: 7. What are your thoughts about other
communication protocols like Conference Room compared to IRC? -- Appleton
Carlo: These are 100% commercial. The company behind it is
only interested in money and tries hard to get money out of chatting.
Carlo: I think that client incompatibility (while saying
the opposite) is their key trick:
Carlo: Add a few "features" to their clients that only work
with their commercial servers.
Carlo: Those features will however be restricted to some
colors and icons - and no attention will be paid to in depth server
protocol optimalisation like undernet is doing,
Carlo: trying to give the user real substantial comfort in
the sense of safe channels and lag free links.
Question: 8. Have you or do you think you will pursue a
career of commercial coding for software developers? -- Appleton
Carlo: I did indeed get offered a job because of the work I
did for Undernet. (I also accepted the job ;). It's not precisely what I
like though, I'd much rather stay involved with chat-applications, UNIX
Question: 9. Are there any plans to improve the layout of
the network? -- RuneStar
Carlo: I am not sure what you mean with "layout"... We are
constantly working on improvements, though its hard to keep up with the
current growth of internet and the number of IRC users.
Carlo: There is however a new mailing list that discusses a
future chat system which would basically be scalable up to over a million
on-line users. The question is if it will ever be implemented though
because such mailing-lists have existed for years already ;)
Question: yes, which is going pretty slow... :)
Question: 10. What is the motivating force behind your
continuous work on the server code? -- Cpw
Carlo: I don't have life.
Carlo: No that's very seriously, and sad. If I'd answer
this question correcly I'd have to go into personal details that I'd
Carlo: On the other hand - everyone here who is regulary on
IRC doesn't have a life :), so maybe you want to know why I am coding and
instead of chatting :).
Carlo: I think because it gives me satisfaction to have
adchieved something, because I am a perfectionist that can't help it to
fix something when it's broken.
Question: let's get a little history lesson here...
Question: 11. How far has the protocol come, in your
opinion, since Jarkko's original version? How much more work do you
envision it needing before it is perfected? -- Cpw
Carlo: There have been ENORMOUS number of changes NOT
visible to clients.
Carlo: As Jarkko said in his interview: He had in mind
about 100 simultaneous users.
Carlo: The efnet code that Undernet was based on worked
till about 4000 users before it started to oscilate due to servers
breaking off and reconnecting due to other servers connecting - the lag
Carlo: With 20000 user currently we are over the top again
however and there isn't much room left. Unfortunately you will get to see
more and more often "No more connections", when the number of users grows
- because the Undernet can't take more clients without keeping the lag
Question: away from coding now, here's a question about
Question: 12. Do you ever spend time on IRC chatting with
friends, or are you dedicated to continuous work? -- David-R
Carlo: I hardly ever chat anymore in the past years.
Question: Oh... another great donation by this guy :)
Carlo: That is caused on one hand because there is always
mail to read or coding to do;
Carlo: but on the other hand also because it started to
Carlo: The average level of chatting has degraded
enormously ("What's up", "Where r u from" and "Where do you live" make me
throw up by now).
Carlo: I think that the true fun part of IRC is making true
friends: Sticking on a channel no matter what and getting to KNOW the
Carlo: I've been through that in my early times - and
nothing will be able ever to beat the feelings of love and friendship that
I had in my first few years on #gayteen, again - But now I simply don't
have THAT much time to spend on chatting anymore...
Carlo: Besides, it makes a difference now that I am an
IRC-God (and IRC-Oper), it's hard for me to believe friendship and I have
found out more then once that what I thought was friendship was in fact
Carlo: The only true friends I can have I think are the
other IRC-Opers - and boy are they BORING (have you ever seen *wibble*
their wallops?) ;) (j/k).
Question: I wonder what this guy was thinking when he asked
this next question (j/k) [Sorry DrSprite!] :)
Question: 13. What are some big improvements from the 2.9
code to the 2.10 code? -- DrSprite
Carlo: The most important change is the introduction of the
Carlo: The result of this is that after a net.junction
occurs - the users from the other side of the net seem to join and get
opped all in an instant together with the total resynchronisation of the
channel (all modes, de-ops, bans etc), instantly thus.
Carlo: This mean that net.riders will have no time to do
ANYthing: they first get de-opped, and when they are done blinking with
their eyes the whole channel is resycned.
Carlo: Another HUGE change is the introduction of base64
numeric nicks, which do take care of 7 different known ways to desync the
net in a combination with nick changes and allowed to fix three ways to
create ghosts. As I said before, the NORMAL chat-guy/girl will never
notice the difference, except that it seems as if there as less abusers on
Carlo: I made an overview of all changes on a webpage,
which I will give at the end of this interview.
Question: 14. What improvements do you think will come
AFTER the u2.10 upgrade? -- David-R
Carlo: Personally - but I am heavily dependant on the
internal politics of the huge UnderNet organisation - I think we need a
solution for the problem of opless channels.
Carlo: It's ridiculous that people are depended on IRC
Opers now to get back ops. Taking over channels has already become mostly
social engineering and nuking already. Though both have to be dealt with.
Carlo: One thing I am thinking about is to builtin a
channel-op hierarchy, where people that joined later can't de-op people
that joined earlier. Then on an opless channel the guy that was on the
channel for the longest time would have rightfull ops.
Carlo: And a little more technical (and server-internal):
Carlo: I'd like to see "priority queues" to be implemented,
where certain messages get precedence over others and the available
bandwidth is better devided.
Carlo: Also clients would get several priority queues,
where for instance the retrieval of server queries (like the output of
/LIST) would have a low priority while private messages would have a high
Carlo: We could then reserve half of the bandwidth for
server-server communication, and half of the bandwidth for server-client
communication for instance.
Carlo: The ultimate result would be that the flood control
becomes dependend on the available bandwidth in stead of fixed, like now.
Question: now everybody (well, almost everybody) uses X or
W... let's ask a question about them...
Question: 15. What would the benefits be of changing to a
ChanServ type Channel Service and how long would it take to implement? --
Carlo: I understand you ask what would be the advantage of
X/W being outside the channel (while still being able to do mode changes
Carlo: Because X/W are umode +d, they do NOT receive public
(channel) messages, these messages aren't even routed to them, just as if
they would not BE on the channel.
Carlo: And because X/W are umode +k, they can't be kicked
or deopped either.
Carlo: So the only extra advantage of keeping them off the
channels would be that empty channels would disappear totally from memory
and net.burst, and the nick of X/W would disappear from about 4000
channels in the net.burst.
Carlo: With version 2.10 of the servers that means a
reduction of about 16 kb on the total net.burst, which is just a fraction
of the total.
Carlo: I DO think however that X/W do load our net.work
significantly, by means of the private messages they receive and sent in
total. This is not related to them being in- or outside the channel
Question: time for another history lesson...
Question: 16. What do you think will become of the Undernet
and/or the ircd code in a few years? With the recent multicast proposals,
the push technology, commercialisation everywhere and ofcourse the recent
CDA denial by the US govt. -- MadCat
Carlo: I think this will be for 100% depending on the
Admins, the people that provide the means and equipment to run the servers
on. I think that as long as the servers keep running, Undernet will have
a client base and will be functional.
Carlo: UnderNet has politically died almost a few times
already - and when you look at Europe... we are really short of servers in
some crucial points (Swiss and Paris) (Europe wouldn't surfive loosing two
servers - which is critical in my eyes).
Carlo: As for technological progress - we're at the head of
it - I see no reason for that to change unless I will stop coding for
Undernet ;) ;).
Question: Four questions left... let's see...
Question: 17. What do you think about the new proposed
Microsoft communication medium similar to IRC? -- Appleton
Carlo: I think I answered that in question 7 already: They
are telling nice stories without investing in the servers or server
protocol (at least, I wasn't approached for a well paid job there yet
Question: Okie.. for all of you watching, scroll up to
question 7 and read it again :)
Question: 18. What was it like doing the Undernet code and
being the guru for this long? -- MadCat
Carlo: It certainly feels like having wasted my life.
Question: Ok.. let's go to question 19
Question: 19. What was your most famous achivement in your
opinion? -- IslesFan
* Run waits for question 19 :)
Carlo: Heheh. Who am I to tell ? I could say the first
introduction of TS (TimeStamps) which after 5 years also made it to efnet
Carlo: But maybe it was the fact that I did silently
builtin a horrible, slow, untracable server death for when the servers
would be used on *other* nets then Undernet... We were fighting for a user
base at that time and I didn't like it that others used my code - wanted
to have that advantage for Undernet alone, for which I had made it.
Carlo: And then a server on UnderNet itself started to do
strange things, get slow, burp and died... and with sweat in my hands I
recognized the symptoms...
Carlo: So then I had to tell the UnderNet community
something they didn't know before ;).
Carlo: That did hurt my reputation of being trustworthy
enormously somehow (an over reaction of course ;). Note that I refused to
remove the trap - and that it took the other coders still three weeks to
find it while knowing it was in there *grin*.
Question: ok, last question of the day
Question: 20. Who else did you gain motivation and
inspiration from? -- Appleton
Carlo: Actually, apart from not being paid a single dime, I
did got more blames and flames then were worth the taps on my shoulder.
Carlo: I kept an archive with all mails I ever received
that thanked me somehow ;), its not big.
Carlo: But one person I want to especially name: Mandar
Mirash, known as Mmmm on IRC.
Carlo: He joined UnderNet in it's early days and later
turned out to excel in social skills and tact to bring people together and
manage to let everyone work together.
Carlo: He has more then once saved the UnderNet from a sure
death in the early years. Also motivated me to continue during hard times
(when I got lots of flames).
Carlo: Note that we have not been the only ones to devote
thousands of hours of free time the Undernet Dream; a lot of devoted
people did, each in his or her own way; and I look up to them all: From
the admin running his server since dawn till those that manage to surfive
helping hunderds of newbies each day on the help channels.
Question: ok, thank you Run.
Question: This concludes the interview portion of this
event. A log of this interview will be available via HelpBot,
http://www.pr-com.undernet.org, and ftp.undernet.org tomorrow. Please
direct all comments to email@example.com.
Question: We will now open the channel up for a 10-minute
question-and answer session from members of our audience.
Question: Run : What exactly do you do at your
current job? Me as for im sure many others that try to keep up with
coder-com@ mailinglist are pretty amazed with the work you put in
here..how do you alos have the time??
Question: i watched undernet grow from 1200 users
to its current base. will it ever be feasible to return to those
"speedy" days or is it not possible with current protocols?
Carlo: PiCkLeS: I sometime join #Linux, #C++ and #mensa
Carlo: magician: Nobody is loosing his op cause of a
Carlo: Karma: I think that we can live with it. Porn
doesn't harm even because no money is involved.
Question: Carlo: spekter wants to know what type of
education you have in coding.
Carlo: David-R: I have no education, I learned everything
Carlo: In coding that is :)
Question: this is my question , does Run have
any experience at coding in perl ?
Question: last question.. Q: how did Carlo turn to
the nick Run? <-- I wondered the same.. is it from the BASIC language to
execute a program?
Carlo: NightWolf: No, hardly - but from what I saw is perl
only a handy unix tool for fast and powerfull scripting, not for
programming irc servers :)
Carlo: cOS: When I was still a 13 y/o on #gayteen, I used
the nick Runaway (from home). People kept on replying
Carlo: blah blah", so finally I changed it to 'Run'
Question: Thank you for participating in our interview
session. This concludes the interview with Carlo Wood.
Question: We thank him deeply for the time he has taken out
of his busy schedule to be with us here this evening for this very special
Question: We'd like to thank the following people for
making this possible: Bethie, Cpw, David-R, ExtraRed, Ferrago and
Question: The Undernet Public Relations Committee continues
in a striving effort to familiarize and educate the users of the Undernet
Internet Relay Chat Network.
Question: The following people have made great
contributions to the Undernet server protocol: CapVideo, Cym, Ensor,
Ghostwolf, Kev, Nemesi, Niels, record, Restor, SeKs, Starfox, and Xorath.
Question: We hope you had a very entertaining and
educational experience tonight. We will now unmoderate the channel for
general comments and chat. Remember, all comments should be directed to
firstname.lastname@example.org. Thank you.
Question: Thanks to everyone, and have a good evening.
Click here to return to the top