You are on page 1of 20

/Ucc I..Nd .fS.1 i.

r cC
Netscape Documentary /Pl.ct
Tape 33


background noise

whispered camera direction

The customer council to ask them about that you know how important is

standards and ptc they replied by saying standards very good to promote...they

dont need it
right now but the fact that Microsoft has that..

Solutions and..

What if we..

Whats the answer


The sunscreen failed

Whats that

said Matt had sun screen in his cabin and failed it was. .his dads is



Right and uh..

So was it walls of snow

They were like feet taller two weeks ago

It was so weird Ive never seen anything like that

Isnt that strange


So Frank ..and it was more than twice as high Its

Toms not here um not the other Tom

Well we can do these in whatever order we want

Netscape Documentary
Tape 33

Is Brenden coming

Shes supposed to be here

Au had like four things on the top of my head wanted to do

Jamie you want to talk about Plarney


think have decision Ive listened to everybody dont know if want to

figure out who we can just make that decision

We need to catch up on this Anything else
you guys want to

Do you have any news forks about like staffing Oh machines IS is like theyre

not calls
basically returning my So..

Do we have any..

Im doing an adjustment..


Let me go grab my to-do list..

Um dont think you need to print it out but may be wrong phone rings Hey

you havent seen Brendan have you

OK so lets skip around urn lets talk about the new release
party since oh Jodi



Um got this mail from Jarnie that said...where do you want to sit

think Ill sit here

got this mail frorn Jamie that said theyre having the party in Seattle

saw the same thing

Yeah saw that mail

Iwant to

You want to go

Netscape Documentary
Tane 33

Well thats what said ..I said feel like
going caught myself looking at my
calendar and said its Id blow
gee Tuesday out of here at 300 laughter and get


Well Im going if we dont have party but like said the has been


And want to have the party live video
broadcasftm over the internet think

thats moral imperative

Why San Francisco

Cause this
sucks becaseu Warren
place like said.uK you know one more bus ride

to and boat
Berkeley trip around the Bay and Im gonna kill myself

And people singing YMCA and all that kind of stuff

If were going to have party its gonna be cool one not corporate..

We could do it in Palo Alto

The Edge Rudys

Rudys You can fit 30 people in Rudys

Yeth but its got the Netscape we could
tradition just pack in there Take over the

place laughs

You guys are so unzip its wonder your butts dont fall off laughter

How long have you been saving that one up for

UiI have no clue how much it costs to rent night club in San
and Im little bit worried about getting motivated to
people go all the there
way up

mean Jamies obviously on it Do you want to talk to Dave


JZ But you know heres the thing Im Im gonna choose which party Im gonna go

to Right and so far Pauls sounds
pretty good

So Jamie if we have party that 100 of these people and you
go to dont thats

better than party that you go to you go to laughter you know Im sorry may

Page c5 o
Netscape Documentary
Tape 33

go Seattle with you but Im serious about that And these guys dont live in San

Francisco and they got to go to work on Wednesday well dont know maybe

they dont have to go to work on Wednesday

JZ No they dont

Maybe we shouldnt have anybody go in to work on Wednesday All right were

not going to get all the details done in here Do you want to talk to Dave Dave is

like the Mad magician of budget anyway so..

And then Ill help with logistics and stuff

Thiyou guys mUf want to talk about MSPR

Lloyd led me to believe therewee some issues

LT OK lets dive right intb that Theres just some disconnects between whats going

on and what the elief is over in client land and what uh OK so whats happened

is NSPR has delivered Tar Ball right thats not based on the repository right..

What does that mean

Well it means that you take after
you check it out you do some nudging around to

make it free Right

JZ Is that true
Yes theres things in the CVS tree that arent for public consumption

LT OK and so thats different model than anybody else is working from And thats

fine if thats the way you guys want to work Lsotw so talked to Tara

little this morning about this and what we could do is take your Tar Ball check it

into the tree and build off that OK There was some talk about the make system

beJajyou guys have different make systems than than the client does

Well but the client uses their make system

LT Excuse me

When the client builds they use 0-make aR for NSPR it invokes G-make

/00733 1-
Netscape Documentary
Tape 33

LT Right it does And sojjiir theres from the client point of view thats hard ship

and from your point of view thats good thing right

Yeah..well theres three build theres the Macintosh build theres
systems system

the Windows build system..

JZ Does this mailer

LT Well it is becaseu theres mis-statement thats being

Well yeah its

LT Or yours
...anyway think its to solve this Would be
relatively easy problem it

OK if we left you make system alone you guys use G-make if fine with that

you deliver to us we check the sta- we check in what you deliver into the tree we build client from it and thats it We just take the Tar Ball

and we check it in Or you check it in We let
you build in G-make we dont check

anything from the way it works today for now for this release Youre OK with

that or we check it in to different


That was the but
assumption thought it was going to be not


It is

Well if was wouldnt have
to change the name of the directory

Right but were not ready to we dont have

So it is Source isnt it

LT Why does this have to be so hard laughs

Netscape Documentary
Tape 33

Its just simple point Lloyd is it true or not If its not true dont have to

change the name

LT Whats true is that weve were logically separating the repository what weve

been doing all the work thats been going on is to logically separate the repository

into the free part and the non free part OK since you guys want to keep your stuff

in in non free mode and you want to do your development in non free mode

and you want to make deliveries into free space then we have then were

eventually were going take that part of the repository and make it free but.

Do you know why we want to do that

LT Why we want to make free

No why we do what we want to do that is differnet from what you want

to do

Tell us anyway

LT believe do but if
wait to elaborate on it yeah Id be glad to hear it..

Our major occupation is not delivering source 331 we have to do that kind of like

spare time What we really do is develop code for mostly the server clients right

now Were not going to stand on our head to make that harder Thats what we

want to work well Well do whatever we have to to support 331 Thats thea1

LT OK And Im OK with that Im not Im trying to find way that we can all work

But it seems to me that
every lime you find something thats diffeijt the first thing

you the first utterance out of your mouth is we fucked up Youj might consider

the fact that we are just diffeipgt and we have
LT do You gave me those documents and spent half an hour reading those

documents this afternoon And think what you

Which ones

/c CO

Netscape Documentary
Tape 33

LT The one the stuff on Hard core the binary distribution stuff OK You know

mean believe if you want to ask me question bout it believe can answer

it for you OK but think its think its smart wart way to work

You know how long its been out there

LT Quite while OK
You know how much motions been put in to it mean how much client has

adopted to any of that

LT There are cultural you guys have culture the client has culture the problems

are when cultures mix And what youve got the right thing to do is to make it so

that people can work the
way the way theyre comfortable working

Thats the elevator answer to what the document says

Its been advertised out through PD

dont even know what documents were talking abut at all

This is the stuff about binary releases

Hard Core Binary release
process stuff John Hines accompanied the..

Matt. .Harnesson

LT It wasnt didnt take in client right For whatever reason it didnt take

Thats Right

LT OK for what. .thats just not

Thats history

LT Thats history right and so what were trying to do is make this release we

wanted to figure out way that we can get that it can be released And so this is

simple plan and think we can execute on it and be done right


So Ive got question for
you Lloyd

LT Uh huh

Page7 /0 37 c3
Netscape Documentary
Tape 33

Urn youre probably going to think this is naive and this doesnt come from the

urn. .why am wrong in thinking that it would be better that we had one make

system that ran everywhere and the only one can think of right now top of
off the

my head is G-make so why wouldnt be trying to take most of our and

migrate them towards G-make or at least avoid from them
migrating away

LT There are. .one its bad theres re theres major re-work Urn 0-make is

lot slower on windows than it is on UNIX OK Inside the client jat theres two

make file systems two well thems three Theres
there actually the 0-make

part that builds the NSPR stuff there is this uh G-make style recourse the

directory um system which is the make file dot win system and um there is

third one which is the Mozilla.make system which is more of model and it

builds the client Mozilla.make systems builds the fastest
actually on windows

um the 0-make stuff is pretty slow Recursing directories on windows is pretty

expensive and also the loading of the state the state information
tendency is also

pretty slow beatet to figure out what work needs to be done is somehow sI

than it is on UNIX Im not sure why this is the case but it

So think it if can interrupt for second if you wanted to
really it
go really

fast on Windows the
way to do it is project files and do it inside the developer


LT No its not the fastest
way The fastest
Hang on so why you guys here What
are are you guys are just like
yelling at
eachother and arguing about make and
systems dont see how anything of this

LT Well product eng Im answer Toms Tom
trying to question wants to know why

there why there..

General discussion

Why becaseu its been an open issue People bump into me in the
hallways several

times day and ask me questions about this

Page /0n3 f--2
Netscape Documentary
Tape 33

LT It reafly does come up lot Jamie believe me dont want it to come up..

The reason we want to use 0-make is security and in NSPR because its simpler

Its simpler for us Its easier to maintain becaseu theres only one set of conflict

files Urn Lloyd uh has the good argument that i-make is slower and think

Brian has Brian Ostrum has done lot of work to make i-make faster but them

are are architectural issues with the way 0-make works versus the
way N-make

works that do make it somewhat slower

LT Also if you make modifications to windows programmers arent very comi

testing on UNIX and UNIX programmers arent very comfNe-tting on

Windows which is we have these things called manifest files that when you

change them then build on then if
you change the manifest file you have to build

on UNIX and on Windows to make sure that it worked If you make modifi if

you modify the Windows make system its
easy to know that it works on

windows and then you go and you modify it on UNIX If
you make one change

you change it in one place and then have to test in both places you have to be

comfortable in both places and and so it turns out..

Boy thats really that to all what you said to
interesting applies just applies all

cross platform code

Yeah thats ownership ownership problem And you have..

might as well not change source code either

LT Well no thats not true becaseu the continuous build if
you just modify source

code um

Come on Ive got to test it..

LT Its lore its theres lot more lore in make systems and lot more well more

kind of programming that youd have in regular code

Netscape Documentary
Tape 33

Heres what think. .1 think code is code make or feed but agree with you that

that people think make calls are hairier and fewer people know about them as well

as they know about..

Well certainly program..

LT And its not so theres one person whose domain it is to maintain the make system

generally and you dont want to be in there mucking with it You just want it to

work and urn..

So when the security guys pop up and say we want to use G-make what..

LT They did

Yeah whats your response Dont go there

LT Well originally it
was originally it was dont go there right becaseu..

Whats your response today mean this is essentially where we are right now

Security guy popped up this afternoon or this morning and said want to use

make and Lloyd tells me not to want to know.

LT want uni actually what think the best thing is to have uniform make system

for all of code right


LT Right if you go to the top and
you build the client my opinion is that it would be

really good if it worked very simply that youd go to the top and youd type make

and then look at
any make file and understand it and and actually throw it all

away and do it again is what would like to see happen becaseu..

What make system would allow that to occur

LT Um actually think that build that
having make system for platform is the right

way to go and so that the best thing for windows for building Windows client

Three make files

LT Well there
already are there are more than that mean

Per directory.

1016 3/17
Netscape Documentary
Tape 33

LT That way and Windows doesnt have doesnt organize it wither that

mean it the monolith it turns out the monolith in..

Its inconsistent with what you just said You just said you wanted one make

system for all for everything

LT No want one make system for platform

Thats different

LT Im sorry thats what meant to
say One make system per platform and thats

different than what these guys want They want two make systems they want

Windows make they want Mac make system and they want

So one make system for their code regardless of platform

LT right

You want one make system per platform

LT Right for the client

So the answer to that is
going to depend on whether or not you are cross platform

code guy or if youre ...guy

Not entirely becaseu Lloyd already remarked how cross platform code in the client

historically has two or three build files in each directory like Windows and


If was like
pure cross platform code guy if Im writing you know just filter

would really like to get away with writing one make file and call it

LT You dont have to anything what you..

Youre egg counting higher than one

LT What you do is
you build it you test it on your platform and then you get people

on the other platform to work with you to get it in mean thats the way its been

traditionally done and thats they way it has to be done anyway..

Well wasnt the reason manifest files got added so that we wouldnt have to to


Netscape Documentary
Tape 33

LT Well it turned out that in pract it was great idea and in practice it
really sucked

It was really everybody was really afraid of touching manifest files Becaseu


Actually in one case they werent even used by more than one platforms make

files right know of lot of UNIX systems that used them UNIX make files

but very

LT OK was the sheriff at the time we were doing it..

Im shocked that anyone would be scared to touch manifest files

LT Well know youre shocked

The fact that youre shocked doesnt change things

LI mean yeah it was problem beca they were becaseu the rules were unclear

about what you could do with them and...OK fine

Thats what Mike tried to do little while ago

Well this is problem and it
keeps cropping up and its not going to go away

JZ And still dont understand why youre to solve it here This sounds like

something that
you and you and Tara should be talking about and not all of us


One of the problems is that isnt high enough level because if it was just client

that was supporting this would be much easier of question have other

clients Other customers And they appear to me in my humble opinion to have

more consistent answer

JZ Well at the end of the day youre writing cross platform code so is
everyone else

in the and cant see how
company you would end up at different answer for

for clients its like the same problem And and answer thats good

for one is going to be good for the other

LT Its because there are different cultures differently

JZ Yeah Culture bullshit ifs technical

Netscape Documentary
Tape 33

Yeah think theres lot of weirdwiC attitude and culture on Make systems

mean as II
recollect the you guys had proposal to Matt and urn John Hines

wrote up for binary distributions and it ran in to this religious war with Java people

about like whose make file was longer and stuff like that And dont think we

need any more of that

LT Lets just make sure we have an agreement OK. The agreement is we are going

to take the Tar Ball you gave us were gonna check it in to NSPR pub OK and

theyre gonna adapt whatever stuff that they do to glue their to glue their changes

in to the G-make they do some stuff right now in the NSPR 2.0 to make it work

in client and theyre gonna do the same thing but just that right

turns you on..

LT Well
As long as it doesnt change whats on the server

Theres one way one thing they do right now to make NSPR build and the client

build that is really bad And thats they run this PERL script over the config files

the NSPR config files and think that has to go away And the reason they do that

is to to tweak the object DIR and that breaks things if
you try to build on multiple

platforms using the same tree

LT Well now were not developing new were get what we have
stuff trying to

to ship OK And Im saying well leave that in.

OK if
you want to leave that in fine but thats bad thing that needs to..

LT OK Ill acknowledge that as bad thing and then in the future when you want

to make delivers what youll do is youll check in to that that in
rep repository right

OK stop stop

LT Thats what want to make sure..

Page 13
Netscape Documentary
Tape 33

Yes you can get away with almost anything now Were all getting yelled at is

is...whats the direction of the make systems Uh what do we need to do to


who owns the make build..

LT just want to make sure that we dont just want to make sure that we dont that

we do this and can go down to Tara and explain exactly the steps that are

happening and dont want cause every time do this say were gonna do this

this need to be this explicit Tom becaseu we keep having this discussion

Fine but think youve got another calls too mean think you brought this

five or six minutes ago agree yes thats what were doing and then and

then asked and worms again
my question opened up can of so guess what

were gonna need is urn you know the theory of make and Mozilla regardless of

where we are now where we want to be Your contention is its one build

per platform OK fine so describe that And if youve got warts youve got


LT OK yes there is longer term there is an issue agree fully acknowledgei

have to address this its got to get weve make the world better
got to than it is

today will
try to get the free source OK and in that vMn Ijust want to make

sure that theres that were gonna put stuff in repository and youre
up gonna to

continue to check in to that and make deliveries
repository into that repository

thats the last thing and then Im done Nod your heads Say yes we agree to

that OK
And the fact that youre maintaining two trees or however be
youre going to

maintaining thats problem not our problem
your my problem

LT OK right

Did you guys have other stuff

iozz. 7z
Page 14
Netscape Documentary
Tape 33

Urn we just think we all need to have you and us need to have rneting

about make systems at sorne point

LT OK that can happen after 331 Ijust want to make sure we get that out


LT OK sure

So is that everything for CVS
LT Theres harbor issues with CVS

Is that this one or is that different

LT Uh well actually there are CYS theres two Theres.

All right lets do the rest of CVS now. .what else

LT OK so the theory of operation about whether or not allows owners to

create branches to do their work on


Is there that does not allow them
proposal to create branches.

JZ One that was released that only has escalations in it..

Oh god

LT That seems really naive to me that we can work that But.

t3w doesnt know what an installation is

JZ Well OK whatever mean but is gonna ship 6.0 and then go off

and start working on 7.0 and someones gonna find really serious crashing bug

6.0 and theyre
gonna make 6.01 release And theyre gonna be theyre

gonna be theyre not
gonna want to do that Theyre gonna try very hard to avoid

doing that But every now and then youre gonna make what believe
you to be

stable release and youre gonna have to tweak it

have different theory you want to hear it


/042-5 ft
Page 15
Netscape Documentary
Tape 33

tim you have stable release and what you do...youre buzzing along dont

how many
care branches there are you know time goes that
way tiuand these

guys all come back in or maybe somebodys off in this space and you smile upon

this and declare it be 5.0 or something You archive it Its not branch on tree

you just take some tar file and create you know Tarred and and Untarred directory

structure somewhere where people can just see this is what 5.0 is Thats it And

the tree continues to buzz along Stuff happens to it Uh maybe theres branches

that do or dont see but if look the now kind of on its
at tree its way to

whatevers next presumably 6.0 Big things can happen or small things can

happen but big things dont hit this tree until kind of their in

OK but what about the 5.01 problem


Suppose you have to make change to 5.0

Heres the change right here it

JZ This is the way life work OK They have theyve the development branch right

now mean the development version which is their trunk which is

and they had which came out year and
unstable the last stable version half ago

right And then the pentium bug showed up and they had to put fix into that

We ship source not binary

JZ So does Lines

LT Its OK..

Put the fix in right there

LT No you can have it
you can have little branch hanging off 5.0 and its OK the

question is whether or not Im not arguing that Im just saying whether or not

there are other branches besides the main line..

Page 16

Netscape Documentary
Tape 33

Lets make sure Tom agrees with that because dont think he does You dont

put the fix them because there are 19 other fixes besides the Pentium fix and 19

other changes that arent fixes

But when we discover this bug time is
way past that point

LT Way past that point

Your horizontal axis is time

Yes itis

Were no way past were down here

JZ Its
year later and you need one line change to what was in 5.0

LT And you can do that

Not even close

6.0 is six months out

LT And you can put you can put that in 5.0

Boy do lever not want to do that

LT Yes laughs

dont have the problem these guys have

They make their living off
doing that


They have to theyve got XYZ corp in its tree..

LT Yeah right but this is this is..

We dont have escalation..

Well what do you do with bugs that get found like serious bugs

Yeah dont understand why can check that fix in...and the delta the CYS dif

dash. .dash...C

to co
Page 17
Netscape Documentary
Tape 33

JZ Becaseu the code might have been totally restructured by then You know the patch

might not fit

Here my take is we put out this stable Tar Ball that 5.0 that people are grabbing

And weve decided its really bad and we want to but out different stable Tar Ball

to 5.0

OK gimme some gut feel here um this things goes out and lets say endures for

Im gonna make number up 12 months And uh when we ship 6.0 When we

ship 6.0 go back and look at 5.0 what how many of these beasts do youi think

existed on 5.0

At that point and time


About 1/4 1/10 this should happened like one in ten times This is rare

You mean every 10 releases this happens once


Why are we talking about this

OK But thats not quite thats not quite the model were talking about You said

we release 6.0 My model is we release 5.0 were on 6.0 but weve
working got

the 5.0 stable Tar Ball out them and.

No no no no and something occurs

And something occurs

Yeah but my point is by the time we ship 6.0 how many of those have occured

during this

How many have occured

Yeah in that 12 month period how many times did Did 50
happen it

times times once

One or two

LT It could also be...theres another reason for it too

PagelS IOZ7t37z.c/
Netscape Documentary
Tape 33

And and say when it
happens you go back to that tag you made at 5.0 and you

make branch now and you put and you
your tweak re-spin your Tar Ball

How does guy out here get the fix


LT You can always put that in two places

Youve got to make this fix twice

OK Im sorry this is
uninterestingly small

think everyones in violent agreement how to do this The only reason were all

fussing is it sounded like you didnt agree

Well Im not talking thought you were talking about things that actually occur

with some frequency What youre talking about is...a moderate cataclysm


Yeah this is fine mean you can handle that

LT OK...when people ship product soft the stable point right..

So were all in agreement on this

Yes everyone agrees and we dont have to talk about that

Page 19