Initial commit: HPR Knowledge Base MCP Server
- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
746
hpr_transcripts/hpr1451.txt
Normal file
746
hpr_transcripts/hpr1451.txt
Normal file
@@ -0,0 +1,746 @@
|
||||
Episode: 1451
|
||||
Title: HPR1451: Jeremy Allison ~ the SAMBA project
|
||||
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr1451/hpr1451.mp3
|
||||
Transcribed: 2025-10-18 03:14:38
|
||||
|
||||
---
|
||||
|
||||
Hi, everybody. This is Ken from Hacker Public Radio.
|
||||
In today's interview, I'm going to be talking to Jeremy Allison from the
|
||||
Samba project recorded at FOSTEM 2014.
|
||||
For some reason, I was unable to recover a audio track from my Zoom H2 for
|
||||
this interview. So I'm forced to use the audio from the backup device,
|
||||
which is why you'll hear some audio artifacts in this interview.
|
||||
But as we say here at HPR,
|
||||
any recording is better than no recording.
|
||||
So I beg your apologies for the poor audio and apologies to Jeremy.
|
||||
But I think you'll all agree that it is a very, very interesting interview.
|
||||
So sit back, relax and enjoy the show.
|
||||
And as I was walking past the good and summer of cold food, I heard a voice that I recognized.
|
||||
And it was Jeremy Allison.
|
||||
Jeremy, why should I have known you immediately when I walked past the booth?
|
||||
I have absolutely no idea.
|
||||
I don't even know about all of them, several projects.
|
||||
You've been your host of the podcasting just going to say.
|
||||
You've been a host of this week in tech on the Twitch network for a while.
|
||||
But you've also developed one of the developers on the Samba project.
|
||||
What else and many other equipment do you have available?
|
||||
Well, sorry, you wanted me to talk about Samba, or?
|
||||
Not just about you.
|
||||
Oh, well, I've been doing, I've been doing free software for a very long time.
|
||||
And I first started sending in hats to GCC, but the Sun 3865, if anyone remembers that.
|
||||
My very first patch was sent to Richard Stormman and got rejected.
|
||||
Very good.
|
||||
Yes, it was great.
|
||||
It was like, I have to say, it's like about onion, that wonderful onion headline,
|
||||
crippled child gets answer from God.
|
||||
No, it says God, you know, it's kind of like that.
|
||||
You know, but I got an email back from God, Richard Stormman, you know.
|
||||
Anyway, so yeah, I've been working on, I've been working on various open source projects.
|
||||
How did you start off?
|
||||
You were a kid somewhere in London, Jesse?
|
||||
Well, I'm old.
|
||||
Yeah, that makes two of them.
|
||||
Might one of the kids, there weren't any computers.
|
||||
Well, there were computers, but there was a sharp Zen something, it was Zen X80 base.
|
||||
Zen X80 base was, I love Zen X80 base machine, and it was a sharp something 80.
|
||||
That was the only computer in the school, there was one.
|
||||
Yeah.
|
||||
So I didn't really get into computing at all until my third or fourth year at university, really.
|
||||
Where did you go to university?
|
||||
I went to Sheffield, did physics and astronomy, and then I took a PhD doing geophysics,
|
||||
which I was terribly bored with, and the guy who got me into the PhD,
|
||||
what he really wanted was someone to fix his mass spectrometer control software.
|
||||
And I was good at that.
|
||||
I was terrible at the geophysics, I wasn't interested in this at all,
|
||||
but I was good at fixing the mass spectrometer control software, which was based on PDP 11.
|
||||
So had you any formal training and computer programming up until that point,
|
||||
or was this on software?
|
||||
I had an econ atom with 2K of RAM, which I took up to 12K of RAM,
|
||||
and then I started writing myself things like a word processor and a little 3D graphics stuff.
|
||||
The econ atom, if you remember, is this the English people I had?
|
||||
No, not around the world, so.
|
||||
Oh, so people, not...
|
||||
Yeah, the bytes.
|
||||
They may be a link to that in the short note, don't worry.
|
||||
But people may remember, anyone who worked on the econ atom, it had
|
||||
the most wonderful 6502 assembly language manual.
|
||||
And so everyone at the time was learning basic, which I was, and then I ran into this section
|
||||
in the middle of the manual, which was, it was like, oh, this is the weird stuff.
|
||||
And I began to realise that this was what the computer actually used,
|
||||
and so I got really, really interested in that.
|
||||
And that weird stuff was essentially?
|
||||
And that was 6502 assembly language, and so I started to learn assembly language,
|
||||
and then did a side project while I was doing my PhD, I worked with one of the university technicians,
|
||||
and he was, he was building control, mass spectrometer control boards, based on the 6800,
|
||||
with the, with the assembler that we used to learn in our paper tape.
|
||||
And so I wrote the control software for that, which, which actually taught me a great deal,
|
||||
because when you're writing control software for a board, if you, if you make any mistakes,
|
||||
whatsoever, the board hangs or, or just fails, and there's, there's nobody to debug it.
|
||||
You just have to, you know, this is an independent board,
|
||||
you just have to look at the code and work out where you screwed up, and so,
|
||||
I think that's probably the only time I wrote perfect software, because at the end of it,
|
||||
it just works, and there were, you know, we couldn't find any bugs in it.
|
||||
It was very simple.
|
||||
Yeah, that's what it did, yeah.
|
||||
Yeah, but it was, it was, it was working software.
|
||||
So that, that's how I started, and then after three years doing my PhD,
|
||||
I ran away and joined the software house.
|
||||
So, which one was that?
|
||||
That, that was something called Kuma Computing, who wrote programs for the Atari ST.
|
||||
Now, I had gotten, if you see my interview with Linus Torvals,
|
||||
he and I both had a machine called the SyncLeg, well,
|
||||
which was based on a 68.08 processor, 8-bit version of the 68,000.
|
||||
I love the interview, actually, because he and I were stuck in South Palette.
|
||||
Well, lots of stuff. We'd gone to South Palette Zoo to an Eskaper Linux event,
|
||||
and I basically said, I will accompany you to the zoo only if you do me this interview,
|
||||
and I knew I wanted to ask you about the SyncLeg QL, and it was great.
|
||||
The YouTube comments, the comments on the YouTube were kind of like,
|
||||
wow, I've never seen an interview with Linus that's so boring before.
|
||||
I was like, it was like, screw you guys, you know?
|
||||
I'm going to do an interview with Linus, and everyone asked him about how we changed
|
||||
the world and all that shit. I'm going to ask him about the SyncLeg QL, because
|
||||
that's what I like. So, I really enjoyed the interview, but I don't think anyone else did.
|
||||
I do, actually.
|
||||
So, I actually wrote, I wanted to come pilot on the SyncLeg QL,
|
||||
so I got in the Atari, the SyncLeg QL operating system, written by Tony Tabby Kudos,
|
||||
it's a beautiful, beautiful piece of work. I know we're going into old computer arcaneer here,
|
||||
but it really was a nice piece of work, and the Atari ST ran something called STDOS,
|
||||
which was a piece of shit. It was the port of MSDOS of the 68thound, and it was horrible,
|
||||
but it was simply enough that the SyncLeg QL could actually emulate that OS.
|
||||
So, what I did was I essentially wrote an Atari ST emulator, because they were like,
|
||||
five or ten system calls, you know, open a file, read, write, change the directory,
|
||||
this kind of thing. So, I actually wrote a SyncLeg QL emulator on top of QDOS
|
||||
in assembly language, and then I could run the Metacompto C compiler, which was sold for the ST,
|
||||
but not for the QL. So, at that point, I had a working compiler, and sorry, I needed a linker,
|
||||
so I wrote myself a linker. This is a long time ago. And that's kind of how I got started,
|
||||
you know, and in those days, the idea is, I mean, there was preparation software,
|
||||
but nobody paid me attention to it. I mean, everyone was pirating games and cracking them,
|
||||
and I moved onto the BBC Micro, which was a bit more robust, you know, and basically,
|
||||
I got my start pirating games, I would like cracks for various games. And the funny thing was,
|
||||
the only game I ever played was Elite, because most of the other games, I got more
|
||||
enjoyment out of cracking the copyrights, not the fact that I played in the game.
|
||||
Did you ever get into trouble for any of this? Oh god, no. And this is, you know,
|
||||
it wasn't like I was doing a mass distribution network. There was no internet or anything.
|
||||
This was something I was doing, kind of in my own home for the enjoyment of it.
|
||||
Yeah. I had an awesome 75 slash 1200 board moment, so it would have taken a long time to upload
|
||||
anything. What was that BT? I have some kind of bulletin board system, I can't remember the name
|
||||
of now, but I was a member of that, and that was, that was, you know, everything was based around
|
||||
things like CFACS, and that was a level of graphics that we had. Anyway, so that's kind of how I got
|
||||
started. And then I moved to Kuma Computers now, I was running software on the Atari ST, and I
|
||||
wrote the database called K-base, and this was, so it was a first time I'd implemented B-trees,
|
||||
and the gem interface, and then came across the gem interface, which was really nice, I know.
|
||||
If you compare that to early Windows, it was way superior, way way superior, really nice piece
|
||||
of work. It had all these objects inside it. It was my first introduction to object oriented
|
||||
programming, with, you know, with cobalt methods inside objects, and it was just a really nice
|
||||
stall in C. Was that already in place back when the gem process? That was on the Atari ST,
|
||||
and then they had a version for PC, but because the PC was on the 8086, or the 8088, they had those
|
||||
bloody 64K segments, which were just, I mean, I was familiar with them because that's how the
|
||||
PDP worked, and in fact the bug I fixed on the original mass spectrometer was the fact that
|
||||
an interrupt handler had been placed by the linker inside a segment that was swapped out when
|
||||
the interrupt fired. Which didn't help. So actually my main fix for that mass spectrometer control
|
||||
software was telling the linker to move the interrupt handler into the global segment that was
|
||||
always loaded. So yeah, there was a version of gem that ran on top of the IDNPC, and it was
|
||||
shit. I mean, I don't know whether you remember, see it at that time. You would have things like
|
||||
char, fast, char, star, far pointers, you know. So there were near and far pointers whether they
|
||||
pointed within segment or not. And having been used to the 68,000, I thought, I just can't be
|
||||
asked if this is the stupid thing I've ever run across. So I decided to stay on the Atari ST,
|
||||
and let someone else who's actually a way superior programmer to me, put my program to the PC,
|
||||
because I just didn't want to deal with the segmentation. And so I kind of stayed on the 68,000,
|
||||
which was a flat memory space. Up until I moved to a company that was writing software on
|
||||
sun machines, the early sun, I think it's on twos or threes at the time. And again, that was a 68,
|
||||
68,000, 68,000 with a memory management chip. Anyway, yeah, and so I also run into the Amiga,
|
||||
you probably have a bunch of Amiga fans on your show. Those are Amiga guys, they're weird,
|
||||
God damn it. I always came to blows with this Amiga guys. I mean, you know, you criticize there,
|
||||
it's like you're calling their child ugly, right? So why do you hit the Amiga? It was shit. I mean,
|
||||
it was this tripod-based operating system. And it was just badly written, unusable crap.
|
||||
So we had to port the CUME application suite to the Amiga. And so there was one real sort of
|
||||
hardcore Amiga guy who was saying, oh, I'm going to, you know, let's port the ugly things properly.
|
||||
And I looked at it, and I looked at the ST, and I thought, you know what? Why don't we just write
|
||||
rewrite GEM on top of the Amiga interface? And then we can port everything as is.
|
||||
So we had a race. So he did not support the applications to native. And I just rewrote GEM.
|
||||
And I won by about six points. And we had a whole suite. So K-base was done, and then the K-word
|
||||
guy and the K-spread guy said, well, we're going to use this GEM emulation because it's quick,
|
||||
and we don't have to change anything. So we ended up, yeah, we ended up having,
|
||||
did it run us faster? Sorry? Would it run us faster? Yeah, it was absolutely fine. I mean,
|
||||
I mean, the only problems it didn't look native, it looked a little weird to Amiga eyes, you know,
|
||||
but I hated that machine. This was, remember, everything was running on floppies,
|
||||
and we saw we got our first hard drives to the Amiga. And you know, we had those, you know,
|
||||
hinky, dinky doodle chips, or whatever they call it. You're going to get angry like this from
|
||||
all these Amiga fags. Screw them, I don't care. So I had always so-called flashy graphics chips.
|
||||
And I never forget running into a bug where if you dragged and dropped an icon, because, you know,
|
||||
there's this whole sort of old dragon drop, wimpy interface stuff. So if you dragged and dropped an
|
||||
icon, it was using the DMA engine to do the blitting of the graphics of the icon, which you were
|
||||
dragging across the screen. If the disk drive, if the disk drive interrupt fired at the same time,
|
||||
it would smear a copy of the blit of your icon all over the disk drive, because it was using the
|
||||
switch. Oh my god. I know. We kept the losing disk drive. We kept from trashing hard disk drives
|
||||
until we figured out, oh, well, you're doing that turn off the interrupt. Just, anyway, I hated that machine.
|
||||
So, yes. Anyway, what are we very early days now? And then, how did you move on from that?
|
||||
Oh, I went through various companies in England until I ended up at Sun. Yeah. Micro systems.
|
||||
Now, Sun was interesting because it had the first, so I'd worked on Sun machines at Manchester
|
||||
University in a bunch of other places. But I moved to Sun because you actually then had access
|
||||
to the real Unix source. It's like, okay, this is the real thing. Because remember, remember,
|
||||
kids, no open source back in those days, everything was closed up, everything was proprietary.
|
||||
You wanted to learn how a Unix worked. You had to go and work for a Unix selling company.
|
||||
It was the only way you could see the source. But this is after Richard Spellman sent the
|
||||
email to HP about the printer? Yes. So, we were using GCC back in the humour computer days.
|
||||
So, the GNU project had already been kicked off at that point. But there was no, there was no
|
||||
operating system. So, all the operating systems were proprietary. And the pick your boys,
|
||||
you know, and my boys was with Sun up. And so, you know, I worked at Sun and that's how I ended
|
||||
up in the US. Sun brought me over. They shipped a version of what they called open windows.
|
||||
So, we're moving to it next. And they had a new window system called open windows. And internally,
|
||||
I'm sure they won't mind the being bought by all of them now, no one cares. Internally,
|
||||
we used to call it broken windows three. It was so full of bugs. And I got temporarily
|
||||
assigned to Sun's corporate technical escalations. Because working on the hotline, which is
|
||||
what they call the hard-drinking, hard-party engineers who used to be at the front line.
|
||||
And when customers called in, we were at the front line of taking questions.
|
||||
So, that was the most technical job that you could do in the UK. Because there was no development
|
||||
work done. So, to help broaden my experience, my manager said, okay, spend a couple of weeks
|
||||
in the US and work for corporate technical escalations and work out how the bugs get fixed.
|
||||
So, I went there and, you know, within a day of being in California, I thought,
|
||||
I don't want to go home. It was mid-December. It was mid-December. You know, it was snow and
|
||||
hail. I was Sheffield, man. You know, just the miserable weather. And then I'm out in California. I'm
|
||||
driving up to 80 and it's 70 degrees this sun shining. You know, I see all these people on the
|
||||
sun campus and having little Carol concerts. And I'm thinking, I don't want to go home.
|
||||
So, I worked pretty hard to show. Look, I can fix these bugs.
|
||||
What do they probably call it? Well, I think so much about them. So, what happened was
|
||||
the TT manager said, oh, can we have him, please? My manager was great, because they said,
|
||||
can we have him for six months? And my manager said, no, you can either have him if you're
|
||||
high in permanently or, you know, or you can't have him at all. So, they did. They had me
|
||||
permanently and I moved over. How did you find the move? Did you have any film to bring?
|
||||
Yeah, I came over with my ex-wife. And that was rough because she couldn't work until I got a
|
||||
green card. First few years were culture shock, because the US is different. The US is a different
|
||||
place. What did you find the most difficult? I remember being shot that they kill people.
|
||||
First time they were with an execution at San Quentin. I'm like, oh my god, it's someone,
|
||||
just averages. You know, I still kind of have that opinion. I still don't think my death film
|
||||
is a great idea. And I don't know the time. It's hard to, because I've been there now for about
|
||||
20 years. It's hard to describe, but I remember being in, I was about to say parking lot,
|
||||
because my, but now our car park, I remember being in a car park and looking around and all
|
||||
of a sudden things felt foreign and there's no way to describe it. It was that the cars were
|
||||
different, the, you know, the spaces were five times as spaces that you get in the UK. And it just
|
||||
all of a sudden, for about 20 minutes, I felt completely out of place, completely foreign.
|
||||
That has so much faded now. It's home. So anyway. Yeah, I've moved a few times, I don't know exactly
|
||||
much about it. Yeah, if you haven't moved, you don't know what it's like, but all of a sudden,
|
||||
especially if you move to a foreign country, there's this in events feeling of dislocation
|
||||
that you get until you build a new home. Yeah. Okay. And you got your green card, obviously.
|
||||
Yes, that was fun or an adventure, but let's not go into that. There's lots of shenanigans in
|
||||
sun, which is a very interesting company. But yeah, we'll not go into those. Anyway, I got my green
|
||||
card, ended up moving to a startup called Mantive, who was doing customer support software,
|
||||
and I was there, I started out as their porting engineer and ended up being their network
|
||||
architect. And that was really where, well, so that was where Samba started. And in case people
|
||||
don't know what Samba is, because these days, everyone uses the web and nobody uses local
|
||||
storage. But Samba is a file print and authentication server that allows Unix and Linux machines to
|
||||
appear as storage nodes or printing nodes or whatever, or active directory now, on a local network.
|
||||
So, you know, when you're watching your movies or music or whatever, on your myth TV,
|
||||
oftentimes what it's serving off is a Samba server. You buy these little boxes from net
|
||||
gear or whatever, and they've got Samba inside, and they serve your storage out to Windows boxes.
|
||||
And so at the time I was working at Mantive, I mean, I have mentioned this many times before,
|
||||
but I was working with PCNFS, which was a sun product, which was horrible. And for my sins,
|
||||
one of the last jobs I had to do at sun was help maintain that thing. So I knew how bad it was.
|
||||
And so I started to write something in C++, which is the only true language,
|
||||
not that I believe that now, but at the time I started to write something in C++ and then
|
||||
Trig and Trig or published the very first version of Samba, and it worked. And so I immediately ditched
|
||||
my code and just started sending in patches. So, you know, so why were you supposed to be
|
||||
producing something commercially to do the same thing? Well, no, I was actually supposed to be
|
||||
porting Mantive software onto Windows, actually, Windows NT. And we did do, but the problem was all
|
||||
the client, all the client code was on Windows, all the server code was on Unix, and it shared a lot
|
||||
of code, and right now there was PCNFS, which had 8.3 filings, if you remember. And we needed
|
||||
something that worked better to share the code, and so essentially I stole time from my employer,
|
||||
like you did at the time, and probably still do people, to make Samba work. And every time I,
|
||||
I got it to the point where we could replace PCNFS with it, and at that point we were really happy
|
||||
because they stopped having to buy PCNFS licenses, they replaced all their PCNFS servers with Samba
|
||||
running on SonofBoxes, and I saved the company a bunch of money. So they really care that I was
|
||||
sending this code out because it wasn't anything that they were interested in. Yeah, and I knew the
|
||||
GP, you know, I was familiar with the GPL, from the work I'd done at Son on the 3, 8, 6, I,
|
||||
GCC work, and I'd read the GPL for the very first time when it was at Kumar back when we started
|
||||
using GCC, and you know, coming from Sheffield, I read it, and I, oh, I get this, this is socialism.
|
||||
Yes, come on. Wow, you know, I mean, it's not a dirty word, I know it's a dirty word in the US,
|
||||
but it's not really a dirty word, you know. I just recognised, it was like, okay, this is what you
|
||||
learn in these days, I say, kindergarten, but it's, you know, it's sharing, you know, you learn
|
||||
to share, and that's what the GPL is. So, and when did you first move to church? God, I don't think
|
||||
I met him till about five or six years after we'd started working together, because he's in
|
||||
Australia, he was a PhD student, and I was in California, and I actually think the first time we met
|
||||
was on the Microsoft campus. Okay, we're probably, so you were at Vantiv. Vantiv? Yeah, and
|
||||
I'm from there, this is like your just audio resume, by the way. Yeah, that's what he's turning into.
|
||||
So, what happened was I did a significant piece of engineering work at Vantiv. I added compression
|
||||
and multi-thread support into Sun's RPC library. We were using Sun's RNC RPC as a remote
|
||||
procedure call library to make Vantiv's product work, and so I put a, while my mum was actually
|
||||
a member, I took a laptop over there and I was sort of coding by the side of the hospital bed,
|
||||
and I got this working, and you know, it was a factor of 10 improvement in the network traffic
|
||||
as in less, and so I back and presented it, and I remember them saying, well that's great,
|
||||
but you know, we're already selling more of the product than we can handle right now, so we'll
|
||||
keep this in reserve for when we need a big boost, you know, for our product cycle. Of course,
|
||||
it never got released, and that code died, and at that point, I thought, you know what,
|
||||
I've had it with proprietary software, and that actually, I think, is the last proprietary software
|
||||
ever worked on. So, I went out at the time, and you know, I looked for another job, and the only
|
||||
people who were doing open source software, well, free software at the time that they came open source
|
||||
later, were sickness, my team in sickness, and so I went to work for them. They were in
|
||||
Mountiveean, landings drive, he fought a walking distance from the Google building where that
|
||||
worked, and Mozilla is probably occupying the same offices these days. I spent a lot of my life
|
||||
up and down, sure, I'm Boulevard on Mountiveean off 101. Anyway, so, on the
|
||||
Mountive building is now owned by Ignite, oh, one of the cloud vendors, who is a Samba user?
|
||||
Anyway, so, yes, I went to sickness, and this is the funny thing, after I started working on it,
|
||||
I thought what I was doing was I was, because I was very familiar with Windows,
|
||||
or one of the few people who had a lot of experience with both Unic and Windows NT,
|
||||
because I'd sidestep the lower versions of Windows until they came out with a Windows that
|
||||
had no segments. This was the first version of Windows that was like Unic, right?
|
||||
Oh, okay, I can work with this. And so, I was working at sickness on porting
|
||||
Kerberus to Windows NT, this is back before the announcement of our HLH, which had native Kerberus,
|
||||
and a little bit dirty secret at the time, is that sickness was actually experimenting,
|
||||
me doing proprietary software. My Kerberus, this is going to be the first proprietary software
|
||||
product, so I would like, oh, great. So, the way I worked on that was really interesting.
|
||||
I started to look at porting MIT Kerberus to Windows NT, and sickness had this technology
|
||||
that was written mostly by this, God, I have a program I called Steve Chamberlain, never
|
||||
met the guy. Had he wrote some of the cleverest code I've ever seen in my life, just genius stuff.
|
||||
Anyway, so he had this thing called SIGWIN32, and it was basically a
|
||||
POSIX emulation library that's on top of Windows, and so I thought, well, I've done
|
||||
Unic's to Windows ports, I know how to do that. Let's do something different. Let's
|
||||
take Kerberus and try and compile it using SIGWIN32, and when it fails, when the compile of the
|
||||
execution fails, let's fix SIGWIN32 and leave Kerberus alone. So, actually, what I ended up
|
||||
spending most of my time at SIGWIN32 was doing SIGWIN32. Because you knew Kerberus was going to work
|
||||
on it. Well, I mean, I knew that, basically, I knew that once we had gotten SIGWIN32 to the stage
|
||||
where Kerberus just natively worked, we had a technology that was much more powerful than just
|
||||
doing a native port of Kerberus. Yes. Because at that point, you can then take any other
|
||||
Unic software that you need to run, you know, and remember, we're thinking about Windows as a server
|
||||
operating system at the time. It's like, okay, then we can, like, shell-ing piece. Once we've got a
|
||||
working SIGWIN32, we can take any working Unic server code and make it work. So, yeah, and so I
|
||||
kind of took a vacation from Samba there for about a year or so. And how do you find SIGWIN
|
||||
now as a project? So, I haven't worked on it for a very, very long time. It's a lot more sophisticated
|
||||
and now it does a lot more. You know, if I have to use Windows and the dirty secret of the Samba
|
||||
team is none of us really use this Windows much anymore. If I have to use Windows, putting
|
||||
SIGWIN on it is one of the first things I do, because it gives you a working Unix environment.
|
||||
But these days, most nobody needs to use Windows. Nobody needs Windows. I mean, you know,
|
||||
if you want a nice desktop, just install Ubuntu. It works, you know, it's nice. It does whatever
|
||||
Windows you think you might want it to do. Yeah. So, where was I? You've taken some time off
|
||||
to do SIGWIN. Oh, yeah. So, then Microsoft announced Active Directory. It was going to be
|
||||
Kerbera's base and the bottom dropped out of the Kerbera's market. So, at that point, SIGWIN
|
||||
was like, well, what are you going to do? You know, what you could come work on GCC with all
|
||||
our other contracts. Oh, God, I don't want to do that again. And at that point, a little
|
||||
company called Whistle Communications in San Mateo said, how about you come work on Samba
|
||||
for us, because we have this great product, and it leaves the plus will give you a 30 percent
|
||||
pay rack. Because SIGWIN was cheap. A tradition that I think Red Hat has inherited to this day.
|
||||
Anyway, I don't want to meet me in about Red Hat. I like Red Hat a lot. But SIGWIN was cheap.
|
||||
And so, I... How did SIGWIN's involvement in Red Hat done? Red Hat bought SIGWIN.
|
||||
Oh, okay, yeah. So, they picked up an incredible number of... Before Google, SIGNESS had the most
|
||||
talented engineers I've ever worked with. I mean, it had just this... Steve Chamberlain left by
|
||||
the time I got to SIGNESS. But we had Ian Lanz Taylor. We had Mark Horowitz. We had a bunch of
|
||||
guys who had just genius-level coders. The guy who's doing... I forgot his name. Just so many of...
|
||||
So many of the real names, a real power behind what's called Open Source. SIGNESS, you know,
|
||||
nurtured and gave birth to those people. Really good. And you went to Whistle. Yes, went to Whistle.
|
||||
And that was my first paying job to work on Samba. And that was great. You know, I mean,
|
||||
that was when we first put the hot box stuff in, you know, opportunistic locking. Yeah, technical.
|
||||
No, no. Well, essentially, it's a way of lying to clients saying, you have so
|
||||
access to this file and guaranteeing that they can modify... Make modification locally and then
|
||||
push back onto the server when someone else needs it. There's a bunch of complex work done
|
||||
on that. And I actually wrote a column about that called The Startup Bicycle. I don't really
|
||||
remember I read it. What are my favorites? When I talk about my time at Whistle. And so a start...
|
||||
So it was a startup company. And a startup company is like a bicycle. And so the theory behind
|
||||
it is, you know, start-ups of bicycles. But they're not regular bicycles. They're penny-farbing.
|
||||
Okay. Yeah.
|
||||
Engineering is the back wheel. The little one. Lots of the big wheel. The big wheel is marketing.
|
||||
And most people don't understand that. I didn't understand that. I had the choice at the time of...
|
||||
Well, I had the choice of joining NetApp, which I turned down, but they want to provide
|
||||
But I also had the choice of joining Whistle or Cobalt. Now Cobalt, I looked at Cobalt and Cobalt
|
||||
was a nice company, but they were basically selling a generic Linux on MIPS. They didn't have any
|
||||
particularly special great technology. Whistle had everything. It had a great idea, a wonderful
|
||||
concept. Apple UI engineers had the best of FreeBSD engineering team. Some of the cool FreeBSD
|
||||
people. They even hired Kurt McEwsick to work on some of the soft updates that he did while I was at Whistle.
|
||||
And Cobalt annihilated us. So what was the point of Whistle then? So Whistle had sold
|
||||
this thing called the Interject, which was kind of... It was going to be like the HP laser jet or
|
||||
whatever, but for the internet. So it was a little box that did file print authentication and
|
||||
was your web server. And so you bought this thing via ISP. What a great idea that was,
|
||||
because ISPs are such great salespeople, right? But it's through your ISP and it would be your
|
||||
miniature web presence for a small company. And it was just a perfect idea. And the marketing
|
||||
just was terrible. You know, the marketing person insisted we use Windows NT for our own website,
|
||||
which of course all of the reviewers pointed out, and our competition. We've delighted.
|
||||
But Cobalt had a cool blue plastic box. Do you remember how about...
|
||||
I do, yeah. You know, they used to turn the lights on the dark and central off just to watch.
|
||||
Just to see it, yeah. No, no, I completely understand. You know, the time house,
|
||||
big plumbing mountain view. I remember going into the time house. And I knew we'd lost
|
||||
when I saw that the time house had a Cobalt cube, which they were using, you know,
|
||||
I don't know if there's something for their website or whatever. They had it mounted like a piece of art
|
||||
where customers could see it when you walked in. And I'm like, oh yeah. They really get it.
|
||||
And, you know, they had all these risqué adverts that they used to get criticized for. But the
|
||||
marketing around that thing was just some bought them for something like $2 billion. And then
|
||||
just promptly pissed it down the time and the tubes. I never heard anything about them after that.
|
||||
I thought I would take them to the whole brand and do something with them. No, it was some.
|
||||
But you have to have some bought them. That's what I mean. I expect some to continue the brand and,
|
||||
you know, you never worked at Sunday, did you?
|
||||
Ah, no, no. I mean, I would have loved to have been a Cobalt and taken the money.
|
||||
But no, once some bought them, they were doomed. Just like everything else some bought.
|
||||
Yeah, so, I don't want to become obvious that Cobalt were winning out a couple of business.
|
||||
I don't know. I wasn't at whistle that long. Probably about six, seven months later.
|
||||
It became obvious that we were just being annihilated in the market. One of these awards,
|
||||
the award used to say whistle. The whistle in jazette is the nicest box you can't buy.
|
||||
Because you have to buy it through your ISP. We wouldn't sell it directly. And of course,
|
||||
no ISP had any clue how to sell anything.
|
||||
So, in the end, I ran away and joined the STI.
|
||||
Yep. An STI at the time was exploring, doing Windows machines.
|
||||
What a wonderful idea that was.
|
||||
With, you know, I haven't mentioned any names, have I?
|
||||
Because I realize there's a bunch of stories I really shouldn't mention names.
|
||||
Oh, thank God for that. Okay. Yes. So, SGI experiment was experimenting with doing Windows
|
||||
clients and burned about $350 million on that little adventure, I think, which promptly pushed
|
||||
the company down the tubes. Anyway, so I was there to do Samba on Rx in order to provide
|
||||
the service support for the new Windows machines that SGI was selling.
|
||||
And I think we did a decent job. It was the first 64-bit port of Samba.
|
||||
It was the first time we moved some of the Samba support into the kernel. You know, it was a lot
|
||||
of really good work that got done. That was SGI. How was the Samba project managed to
|
||||
contribute to us? So, it's a boxed on the GPL-based project.
|
||||
And so, we used to only accept individual copyright, which was quite interesting.
|
||||
I don't remember when I moved to SGI. This would be before I got very careful about
|
||||
assigning copyright, etc. Before people took this stuff seriously,
|
||||
but I'm going to SGI and the standard Californian employment contract basically says,
|
||||
we own every bowel movement, you know. And so, when they gave me this, I said,
|
||||
oh, well, you're not going to own Samba. So, I sort of scribbled on an employment contract
|
||||
and said, except for Samba and cost a few things out on hand, and then it back.
|
||||
And they said, you can't do that. You know, we saw it with a much smaller company.
|
||||
See, they never had any people with this kind of thing. So, I did that, and I sent it,
|
||||
you know, I said, well, that's what I'm signing. So, I signed it and gave it back.
|
||||
So, well, the lawyers were getting too busy about this. And I can't remember three years later
|
||||
or whenever it was on left. No one would have definitely gone back to me.
|
||||
One of the advantages of a large company where no one knows what anyone is doing, as I suppose.
|
||||
So, we always had individual copyright. So, normally, all you would do to contribute to Samba
|
||||
is just send a patch into the mailing list, and someone who has commit access would commit it for you.
|
||||
These days, like most open source projects, we've actually gotten very
|
||||
serious, and this is one of the things I learned at Google, because Google, as you know,
|
||||
is a very good engineering team. And so, these days, to get things into Samba is not so easy.
|
||||
We cannot now accept corporate contributions, and that's actually part of moving to GPL version 3.
|
||||
All right. Let's go back to that. Okay.
|
||||
Because there's a whole story. You were at CGI. How did you do SGI?
|
||||
SGI, sorry. SGI.
|
||||
And then, you know, I was working quite closely with a lot of the other Linux companies in the
|
||||
valley. It was a very strong Linux. The Linux, kind of correct my name, the Linux users club
|
||||
basically, Silicon Valley. They essentially became VA Linux. And so Chris,
|
||||
Devon, who's now my boss, basically, he kind of said, leave it. Leave SGI. Come join us. Come join us.
|
||||
As he did with Google, really. And so, in the end, you know, I'm only human now.
|
||||
New VA Linux was going to go public, and I thought, okay, you know, why not? Yeah,
|
||||
if I went and joined VA Linux. And I made no money whatsoever out of it. I wrote it all the way up,
|
||||
and I wrote it all the way down. Yeah. Because I'm an idiot.
|
||||
I think some people might know that the VL Linux was one of the first Linux companies to go
|
||||
public. Yes, I think Red Hat was first. Red Hat was first, and then VA Linux was next.
|
||||
VA Linux still, I think, broke the record for the single day biggest IPO game.
|
||||
Yeah, you know. Oh, why doesn't he have so much stuff? Probably something.
|
||||
So, why did it? Why did it tank? Well, eventually, why tank was because
|
||||
what we were doing was we were selling generic boxes. And that really wasn't the value.
|
||||
VA Linux, I think, had a great deal of values. And what tank was basically, this one, the internet,
|
||||
but first internet bubble burst, you know, in the 2000s. And so all the customers went bankrupt
|
||||
to enjoy it, all the people were buying, you know, thousands of thousands of servers. And the value
|
||||
of VA Linux wasn't really the hard way. A story I heard was that VA tried to sell its hardware
|
||||
to one of the large vendors. And at that level, you know, you get 15 minutes in front of the VP
|
||||
to make your case as to why this is your value. And what they came in and basically said was,
|
||||
we have these great boxes, this great technology. And the VP said, we already have that. Next,
|
||||
what VA had was it had one of the best Linux engineering tickets. So we had Ted Cho,
|
||||
we had Andrew Churchill, we had, we had all these, you know, what they should have gone in
|
||||
and said was, yeah, we have generic boxes that you can replace, but we have your Linux
|
||||
kernel team, you know, we have your Linux, where we had a network of storage products,
|
||||
that network of storage products became readiness, which is now on by NetYear. Yeah, so I mean,
|
||||
you know, there were ways to make money out of this thing. Anyway, so I can say, I wrote it all
|
||||
the way up and down again. But VA was a guy, I'm still friends with so many people from VA,
|
||||
that was such a great ride. Everyone should do that roller coaster ride, just once, you know,
|
||||
just just just just to see it go up and come back down again. Yeah. And after VA Linux,
|
||||
so I went to HP. HP wanted to do a printing of plans based on Samba. And so that was one of
|
||||
the boatloader the printing work got done. Yeah. And yeah, I wasn't, you know, the years in the
|
||||
wilderness really working on printing. Yeah. I would say once a printing card was for Samba,
|
||||
or the Samba community. It was really cheap. You could run, so remember, HP makes money on ink.
|
||||
Yes. More printing, more money. Yes. All the way to it.
|
||||
Every little software. Yeah. He printing those flyers. So the idea, the NHP printer plans,
|
||||
which was very, very popular, was you could buy a small rack mounted server. We would run on
|
||||
a tiny box with 256 megs of memory. Yeah. You couldn't even boot Windows NT online,
|
||||
which was the only other alternative. So we implemented the Windows printing protocols. And,
|
||||
you know, you could, you could run 300 simultaneous print jobs through that thing. Yeah.
|
||||
So the value add, and before we got cancelled in HP, what we tried to push to the management
|
||||
is, we are the printing platform. You know, move to Linux for your print servers, put Samba on it.
|
||||
Yeah. And you have a platform that you can sell other people to write apps. You, you know,
|
||||
beef up the box a little bit, get people to write apps that run on it, let them work as filters
|
||||
in the print process. And you have a platform, you know, just like anything else, it's like Android
|
||||
or whatever, that other people can write apps on. And, you know, that way you will own,
|
||||
as soon as it leads to Windows box, you will own the print process. And you can make it really
|
||||
easier to print more pages, which is where the money is. And anyone in the park with Windows printing
|
||||
at the time, it was torturous. Oh, it was horrible, horrible, completely undocumented too.
|
||||
And in the end, they canned it and tried to replace it with a box running Windows.
|
||||
You know, that would actually run embedded versions of Office. And the whole project was canned
|
||||
after a year, because they couldn't make it work. Anyway. So, your, your whole resume seems to be
|
||||
disaster. Yeah. Oh, it's a litany of disasters. And until Google,
|
||||
everywhere I went, you could make money by shorting the stock everywhere. Jeremy's gone there,
|
||||
short the stock. It's going to time. Yeah. So they're talking Google. Well, not ex-except for Google,
|
||||
because I am, you know, I am such a minor car bunker on the side of Google, but, you know,
|
||||
even I can't run them down. Did you stay on the stage for your, uh, so I didn't age
|
||||
for a while, but after they cancel the project, I moved to Navelle. And so we did a lot of work,
|
||||
Navelle at the time was pushing the Susie desktop. Yeah. So we did a lot of work to make the
|
||||
Windows integration offline log-on and all that kind of stuff work. And that was a lot of fun.
|
||||
And that was, that was when you got, uh, active directory integration. Yes. Well, we,
|
||||
we hadn't before, but we were, we really made it work at that point. You could do offline log-on,
|
||||
you could do, you could take, you could do with a Susie Linux box exactly what you could with a
|
||||
Windows, um, laptop, which is still needed to control it. Yes, we still didn't have the
|
||||
domain control. Um, so yeah, I mean, that was, spent a lot of time on that. And then, you know,
|
||||
eventually I left after the deal with Microsoft, which, you know, as this, on the historical
|
||||
record, I was not too chuffed with, really. Um, you got precise for that, but if you,
|
||||
you, that you took too long to, you stayed at your level too long after, and then you moved to
|
||||
Google and people were saying that it was, uh, you know, you should have moved earlier or something,
|
||||
what do you say to yourself? Did I? Okay, I'm never going to say that before.
|
||||
I'll get you. Oh, no, I mean, I, I stayed in the valley and argued against it. I mean, I,
|
||||
I saw an original, uh, version of the agreement before it was public, and, you know, my response
|
||||
to the lawyers was, tell me why this isn't a GPL violation. And the response I got by was,
|
||||
please delete all copies of the agreement that you've got. Okay, very good. You know, uh, and so
|
||||
one, once that happened, basically, I moved straight away. So what was the, what was so
|
||||
grievous about the thing? Um, essentially, it was a way to try and get around, um, GPL V2,
|
||||
by instead of calling it a patent license, they called it a covenant not to sue. Okay. So it was,
|
||||
it was essentially re-raining the deck chairs on the, you know, um, so that it, it, it was called
|
||||
something else and what it was. It was really a patent license agreement. And the whole
|
||||
point of GPL was that, you know, that you, essentially, you, you can't do side patent agreements
|
||||
that violate the GPL. And that's very explicit in GPL V3. How do you think that those worked out
|
||||
from above? I don't, I mean, to be honest, I don't think it hurt them. I think again,
|
||||
there's a lot of credibility with companies who found that sort of thing important. I don't
|
||||
think it helped them that much. Um, you know, um, so, you know, I, I still have, there's still some
|
||||
great sympathy members at Navelle. I still, I, I still, you know, Greg Krahartner's at, was at Navelle.
|
||||
Maybe still this. And it was succumbed to the Linux foundation. But yeah, no, I, I, I get on with
|
||||
Navelle 5. I don't have any, any, you know, long standing issues. And then it was just throw your CV
|
||||
as Google on the hard drive. No, no, no, no, no, no, no, no, no, that's, that's not how Google
|
||||
works. That's me. If you've ever been for a Google interview, you'll know, yeah, okay, so you know
|
||||
that's not how Google works. No, I did a Google interview just like everybody else does. And yes,
|
||||
that's not easy. I guess not easy. How have you found it so far working for Google?
|
||||
I love it. I mean, it's, the best way to describe Google is, I once worked at Manchester
|
||||
University. And, you know, I remember one of the questions that the guy, the one of the things
|
||||
that the guy said to me when he was going to offer me the job, he said, you do realize you're going
|
||||
to have to come into work every day. I was like, yes, yes, it's called working. I was expecting that.
|
||||
And the guy said, because he said, the last guy on your job, he only came in three days a week.
|
||||
And that's not going to be acceptable. So that's not to say that you only come in three days
|
||||
and we get Google. But what I'm saying is how easy the environment was at Manchester University.
|
||||
Well, work at Google, because I enjoy what I do, I mean, it's not that I don't have any pressure,
|
||||
but I do, and so do a lot of engineers at Google, but it's hard to call it work.
|
||||
Yeah, it doesn't hit for your hobby company.
|
||||
Yeah, it's actually, it's fun. And that's, you know, you can't ask for a better job than being
|
||||
paid to do what you probably would be doing even if you weren't paying it. So even though, yes,
|
||||
you know, I put in the hours, you know, I won't say anyone at Google doesn't work hard,
|
||||
but everybody works hard. But it reminds me of being at a university, it reminds me of being
|
||||
at a campus, because people are there doing stuff that they love in an environment that is
|
||||
designed to make it fun. Okay. And it's, it's, it's great. It's, yeah, it's the best you've
|
||||
ever had, basically. Cool. One thing I think, which earned you a lot of respect, is the,
|
||||
or Microsoft versus the EU thing, and getting the whole documentation for, for Microsoft products
|
||||
released and hold lines for Microsoft. I think your team were involved in that whole,
|
||||
can you tell us that story? Well, we were the only ones that couldn't get bought out.
|
||||
Because we didn't own the code. So what was the whole deal?
|
||||
Well, so some originally bought a complaint against Microsoft, because
|
||||
long, long story, many, many years previously, I had, I had dinner with a son of VP trying to
|
||||
say, look, you guys should throw in your lot with Sander, you should work with us, you know, and he,
|
||||
he said, that's very interesting. And then he went away and he bought a product from AT&T
|
||||
called Anavancel of Units, which was basically a port of the Windows code, and said, right,
|
||||
well, that's going to be our Windows integration strategy. So as soon as son licensed that from AT&T,
|
||||
Microsoft pulled the license from AT&T and said, we will not give you any further updates to the
|
||||
AT&T directory stuff. And then AT&T sued them, because Anil, because AT&T asked me to be an
|
||||
expert witness, and then Microsoft said to AT&T, he is $250 million go away, and leaving son in
|
||||
the lot, so son complaint to the EU, and then a boatload of other competitors, Navelle was one,
|
||||
whatever, everybody joined in, and so Sander was, you know, the Sander team represented by the
|
||||
Free Software Foundation was another one of the complainers, and the end of the thing, I think
|
||||
we were the only one left, because it was like, you know, son, oh, here's $2 billion go away,
|
||||
Navelle, here's your agreement, you know, all of, you know, slowly but surely, all of the smart ones
|
||||
took the money in ran. No, no, it's true, but what would you do if someone offered you a billion
|
||||
dollars? You'd probably think about it, right? Anyway, so, is that all for money? No, we did it.
|
||||
No, well, so my, the only thing I thought of it would be hilarious, if the offer is
|
||||
funny, if we turn around and donate it to the Free Software Foundation, so having markers off
|
||||
basically paid for the FSF, a billion dollars or something, you know, when people at the
|
||||
software would be hilarious, but we never got offered money, because I think, I think they knew
|
||||
that, you know, we couldn't accept it anyway, it's not. That reminded me of the story from the
|
||||
early days when, when Tridge, when, you know, PCNFS vendors weren't doing so well, because Sander
|
||||
was doing pretty well, and, and one of them turned to Tridge and offered him $40 million,
|
||||
so can we buy Sander from you for $14 million? That was before they, people even knew what the
|
||||
GPL was, you know. So, so we don't own the code, and this, this is one of the things I'm talking
|
||||
about where we only accept it, personal copyright, so the code is owned by the individual engineers
|
||||
who put it in there, and that's great, because it means we can't be corrupted, because we don't
|
||||
earn it, you know. You own your bid plus. I own my little bit, and all the people own their little
|
||||
bits, but, you know, I can't take the money and run, so the great thing is, you know, I can't
|
||||
be tested in that way, so I could make fun of, you know, I would have taken the money and run,
|
||||
because I'll never know, because I could never do that. Yeah. Why were you even trusted?
|
||||
Well, essentially what was happening was that because of the close time together of the
|
||||
Windows plant and the Windows server, and this was, I'm not going to say that Microsoft did this
|
||||
deliberately. I don't think that they did. I think they considered a happy side effect of the way
|
||||
they were doing their engineering, that it was very difficult for anyone else to re-implement what
|
||||
they were doing. And the reason that it happens that way is because they were using a complex
|
||||
suite of remote procedure call protocols, and they had a lot of legacy code to support. So, for
|
||||
instance, you make a call and it gives back an error, then it falls back to doing something else,
|
||||
and then it makes a call, which gives a different error, and you see what I mean, you can't just
|
||||
implement the things on the wire. You have to know what the right error code is to make the
|
||||
clients do a different thing, and that's not done maliciously, that's simply because when you run
|
||||
the code that's been auto-generated from the RPC mechanism, that's what you get. And remember,
|
||||
because they have both plant and server, and they didn't use to test against anyone else,
|
||||
then what you end up with is products that are so tightly bound together that it's impossible to
|
||||
substitute one or the other. And although there was some things where it was suggested that
|
||||
you make it deliberately, you know, windows awesome finished until the sambal was broken.
|
||||
I hurt those rumours, actually from some people, I trot, I don't think that was ever an official
|
||||
policy, I don't think. I mean, you know, maybe as much as remember the windows isn't done until
|
||||
what was developed, you know, the developers broken you. Yeah, the early dots. I really don't think
|
||||
it was deliberate policy. I think it was a side effect of the complexity. But what it meant was
|
||||
that, you know, we did a decent job, but we couldn't do a good enough job in order,
|
||||
everyone else was being forced out of that market. So from from their point of view,
|
||||
if a server was connected to the client or a client would continue to, it would try the
|
||||
latest API and then fall back and fall back and fall back. So you have it's more an effect of
|
||||
backup and policy than it delivers attempts to lockout sambal. Yes, I think that's the case.
|
||||
Okay. And, you know, remember because you control both clients and server, it can be as complex
|
||||
as you like. The dance of interoperability can be, can be a, we produced a paper in the EU case
|
||||
that was called Microsoft's Web of Interconnected Protocol. When we tried to explain that it wasn't
|
||||
enough just to get one piece right, you have to get every single piece right, including the error
|
||||
mechanisms in order to make things work together. But you were here a long time, never to call that
|
||||
reverse engineering. Network analysis. So reverse engineering is something that we never had to do.
|
||||
Reverse engineering is when you take compile code and you decompile it and you look at the
|
||||
assembly language, you know, you try and turn it back into C or C++. We never did that.
|
||||
We looked at what happened on the wire. I mean, in fact, so the really funny thing is, when
|
||||
after we were cooperating with Microsoft, the Microsoft and Sam were having a really good
|
||||
relationship at the moment. So I don't want to, you know, I don't want to go too much on the
|
||||
murky and unpleasant past because it's kind of murky and unpleasant. Yeah. And it's not,
|
||||
it's not how things are these days. But one of the funny things that happened once we started
|
||||
collaborating and cooperating together. And remember, Microsoft fixed bugs in Windows now to make
|
||||
it work with Samber. They have fixed client bugs to make it work with Samber active directory
|
||||
and the main control was. You can't get greater cooperation than that. But back in the days when
|
||||
we were trying to, when we were first working with introoperability documents, what,
|
||||
what Microsoft, what we found hard to communicate to them is, look, because they kept saying,
|
||||
well, this API does this on Windows and we would say to them, you don't understand, we don't
|
||||
care about your APIs. We don't even know what your APIs are because they describe everything in terms
|
||||
of APIs that run on the client or the server. And we said, you're completely at the wrong level.
|
||||
All we know is what's on the wire. How that's layered on the server is irrelevant to us. You know,
|
||||
if we make a call and we see that error message, a certain error message coming back, we don't care
|
||||
whether it came from the anti-FS layer or the anti-curnal layer or the SMB server layer. It's an
|
||||
error code we see on the wire. We have to know where, how to respond. Yes. Because a lot of the
|
||||
time we were asking questions like, why do we get this error message back? And the SMB server
|
||||
guys would go, we don't know. We passed that amount to anti-FS and we just passed back what we get.
|
||||
You know, and the API says this and we're like, well, we don't care about you. So when we know,
|
||||
we now understand each other. That's really good. It's like, okay, no, Jake. I think a lot of the,
|
||||
a lot of the issues, you know, after they were forced to release the documentation was that.
|
||||
Well, so the interesting thing about the quote being forced to release documentation,
|
||||
Microsoft made a conscious decision to do it right. They didn't just release the documentation
|
||||
that they were quotes forced to by the EU. They released everything. They essentially
|
||||
decided, I think, as a corporate decision, that anything going on the wire that they could use,
|
||||
they would now document. So they did a 180 degree sea change. You know, in some ways,
|
||||
in some way, I can just see them laughing because they essentially said, be careful what you ask for.
|
||||
Here's three million pages.
|
||||
Oh, it's like documentation that tell you exactly what we do and how we do it. Now go and implement
|
||||
that. There's good bugs. You know, I mean, in some ways, that's kind of what happened.
|
||||
So yeah, they did the right thing. They documented everything. They documented it as well as they
|
||||
could. You know, they have teams in China that do various work to make sure that the documentation
|
||||
is correct. So they have team in China that takes the documentation and then tries to
|
||||
be used as a product, but does the same thing as Windows does with it. So yeah, they're doing the
|
||||
right thing on that. Just why is Google hiring a sambal team? Or is that the top-seeking Google
|
||||
project? I could tell you that, but then I have to kill you. So Google does use sambal
|
||||
internally in various things. So, you know, I mean, it's useful to them, otherwise they wouldn't
|
||||
hire me. That's kind of, you know, what you can say about that. So, and we were talking also about the,
|
||||
but well, plus, plus I do, you know, unsource work, I mean, the open source program office,
|
||||
you know, I do work like, I mean, I'm not here for sambal. I'm not giving a sambal
|
||||
talk at this conference. You know, I'm here to help out with the summer of co-pay.
|
||||
No, no, no, I'm Belgian beer, chocolates. Well, I'm not in the same depth to those things,
|
||||
I'll admit that, but hey, you know, I'm, I'm staffing the booth. I'm talking to attendees, you know,
|
||||
walk in the walk. I'm helping out, yes. So, is there, is there anything else in this
|
||||
interview that I have not covered? I don't think so. Do you watch the last thing about sambal before?
|
||||
Yeah, sambal before is an active directory in the main controller. This is amazingly cool.
|
||||
It's only taken 12 years to do. I mean, one of the reasons of that is there's so many moving parts,
|
||||
there's so many components. So, yeah, it came out last year. We are
|
||||
rapidly developing it, we're implementing new, the new SMB3 protocol that Microsoft released
|
||||
were also improving the active directory. The main control was to allow Windows clients to fit
|
||||
into it better. It's, it's very cool. You should check it out. And is it stable at this point?
|
||||
Yes. And it does everything in a standard Windows active.
|
||||
It doesn't do multi domain, multi forest. I can't remember. I'm more of a file server guy,
|
||||
so they doesn't do the multi domain replication, but that's something it's been worked on.
|
||||
Okay. Is there anything that you would have loved to have done in your life changed differently?
|
||||
Uh, joint robot maybe. No, I have a pretty good time. If I would, so if I could do one decision again
|
||||
with the technology that we have now, I would not use C for Samba. I wouldn't use C++ either.
|
||||
I would use Google Go. There are a bunch of talks from Google Go engineers.
|
||||
Tomorrow, actually, I think it's an entire Go track, which I very much recommend that you,
|
||||
and your listeners, uh, look up, uh, uh, learn about, uh, the website is goline.govlang.org.
|
||||
So I don't know whether you remember when Java came out. Yeah. Java was supposed to be C++
|
||||
done right. Yeah. Um, Go is C done right. Yeah. As a C programmer, I look at Go and it's like,
|
||||
oh, yeah. This, this is how it should be. So give me an example. We had a horrible security
|
||||
hold to do without DC, obviously handling. Um, it's been in the code for I think of a seven years.
|
||||
Okay. Nobody noticed it. We found it with an internal audit. So as far as we know,
|
||||
it's never been exploited, even though it was a root-level security hold. Yeah. But it's been in
|
||||
the code for seven years. It happened because of a subtraction. Simply subtracting one number
|
||||
from another. Yeah. And we got a range check wrong. Okay. That blew a hole in. Yeah.
|
||||
Yeah. Completely, completely, completely come from my machine. One subtraction. The problem
|
||||
with C and C is a wonderful language. I love it. I code it every day. You have to be perfect
|
||||
and you have to be perfect all the time. Yeah. Nobody's perfect. Go doesn't have those problems.
|
||||
I really, really encourage your listeners to check out Go. It's just a superb language. If I was
|
||||
doing something again, I would probably do it in Go. I think. Okay. Um, it's, yeah. It doesn't have
|
||||
those problems and yet it's still a systems programming language. So they're going to talk about
|
||||
it tomorrow. I'd say there's a bunch of talks. Some of which talk about how Go is being used
|
||||
at Google. Okay. In production. All for the listeners. All those, I've got links to those
|
||||
recorded talks. Oh, cool. Very nice. Very nice. Yeah. I would, I would really recommend it.
|
||||
Anyone who's, anyone who's used to doing C programming will look at it and go, yes,
|
||||
this is what C++ should have been. Yeah. This is not my family. Sanity. I don't know. I'm not
|
||||
that, I'm not a programmer. I just interviewed them for a little bit. It looked right. It looked
|
||||
right. It looked beautiful. It looked clean. It looks elegant. It's, you know, it's the right thing.
|
||||
I think it's the right thing to use. I'm what do you do for your spare time if you have a, um,
|
||||
called Sanity? I have an eight-year-old. He takes up quite a bit of time. Um, you know, I do do
|
||||
some recreational San by coding because it's still fun, you know. It's still, I just don't get as
|
||||
much time as I used to. So why is it recreational to stuff that you're talking to do stuff and work?
|
||||
Well, so I have stuff I have to do at work. And these days, Sanity is a very, very professional
|
||||
product. So no piece of code, no code change gets into Sanity without two team engineer review,
|
||||
without, you know, it's not as bad as the one. It's good. Well, you know, in terms of hostility,
|
||||
but people hammer out the code. They make sure it's right. They make sure it's beautiful. You
|
||||
know, it's done right. It's, it's professional programming work. So sometimes at the weekends,
|
||||
it's just nice to sit down and write some, you know, write something new for fun. And then,
|
||||
all right, it's still going to go through the review process when you've done it. But, you know,
|
||||
pressure isn't on. Yeah. It's like some last one I did was some stupid bug where old
|
||||
DOS clients, and I'm talking DOS-y, a pre windows, right? When we moved to 64-bit machines,
|
||||
old DOS clients stopped working. And, you know, I've known about that bug and I knew what it was.
|
||||
And I haven't, because DOS clients, who cares, right? And I, you know, one weekend,
|
||||
then I saw, oh, screw it. I'm going to fix this. It'll be fun. Yeah. I know what to do. You know,
|
||||
and it took me the weekend, but... And you know that somewhere, and some factory somewhere,
|
||||
somebody is going, yes, that's right. Oh, oh, yeah. No, I knew the poor customer. Oh, my god,
|
||||
thank you, thank you. You know, I know, you know, nobody could, nobody could make anybody do that.
|
||||
I was done purely for fun, you know. If you're ever in the line for which it's called, you know.
|
||||
Yeah. You mentioned earlier about the cloud. Nobody keeps, nobody keeps anything now anymore,
|
||||
everything's in the cloud. So, obviously, we have no need for somebody. Probably true.
|
||||
I'm not going to argue. I gave a talk at the SNES Storage Network Industry Association
|
||||
about five years ago, saying, you know, the death of SMB. And things are moving to the cloud.
|
||||
And the, essentially, application, nobody writes application protocols that depend on precise
|
||||
local semantics running remotely anymore. If they do, they've written a bad program. So, my
|
||||
argument is that if anyone, if a student, you know, Microsoft Access, you know, the way it has
|
||||
multiple accesses to the database using file locking locally, if a student came up with the
|
||||
design from Microsoft Access these days, you'd fail them because that's not how we do things now.
|
||||
And, you know, in some ways, that's true. Sandry essentially is implementing a legacy protocol.
|
||||
SMB3 has some very nice and interesting features that will extend its life. But eventually,
|
||||
people, and you see this with Amazon, you see this with Google, you see this, you know, with many of
|
||||
those apps, they're writing their own custom protocols to do exactly what they need and no more
|
||||
against cloud, you know, against the storage that they're using. They're just not using perfect
|
||||
file semantics on a LAN anymore. So, you know, in some ways, yes, Sandry's legacy, at least the
|
||||
file sharing part of it, probably not the actual directory piece. I still find it fun. I still
|
||||
think it's an interesting topic. But I'm not going to stand there and say, oh no, we're, you know,
|
||||
some type of data. Yeah, I still have fun with it. You know, maybe eventually we'll move
|
||||
under something else. But, I mean, even as a legacy technology, it's going to be around a long time.
|
||||
You know, this thing's take a long time to move. So, you're a very unspoken
|
||||
proponent of the GPL3. Yeah. I think it's a better license than V2. I actually have a talk
|
||||
that you can link to and I can't remember is that URL as to why GPL3 is a better license.
|
||||
And this is the funny thing that people don't understand. GPLV3 is actually a better license
|
||||
for working with proprietary software than GPLV2. It actually is, if you want to link
|
||||
GPL and proprietary software, GPLV3 is a license that you want your GPL code to be under.
|
||||
And there's many reasons for that. You can read them in my talk. The only thing that
|
||||
GPLV3 really stops you from doing is locking things down tight with DRM. So, if you want to use DRM,
|
||||
GPLV3 is a nightmare. It's not a license for you. But then again, you know, screw them. I don't care
|
||||
about DRM. I want DRM to go away. So, I don't really care that it's hard to use with DRM,
|
||||
but for everything else, GPLV3 is a lot easier to use and to link with proprietary software.
|
||||
We have many vendors who are selling legacy, you know, legacy fast sharing,
|
||||
sambar to cloud gateway products, right? And they're much happier with GPLV3 because
|
||||
it's actually easier to use with proprietary products. So, like I said, you need to read the,
|
||||
I'll do a whole talk on it for exactly why I put a link into that. You have an age-year-old,
|
||||
how do you or do you bother entertaining or trying to get your age-year-old into tech,
|
||||
or do you push that, or how do you hack an age-year-old? I don't really. I show him interesting things
|
||||
and let him play with what he wants. So, he loves LEGO. So, right now, we're doing a lot of LEGO.
|
||||
So, I don't think you can make an age-year-old interested in anything.
|
||||
You're certainly not computers, you know. The funny thing is, I think he will grow up in a world
|
||||
where desktop PCs are really old people. One of the funny things I remember seeing,
|
||||
and this was when he was much younger when he was about four or five, was, you know,
|
||||
we sat in front of the desktop PC to play a game or whatever, and he started touching the screen,
|
||||
because why wouldn't you? And then he was like, oh, oh, yeah, I'm like, no, you have to use it,
|
||||
you know, oh man, yeah, it really was like, just got the scene with computer, yeah, oh,
|
||||
that's quite how we used to do it. So, that's a change that's really coming.
|
||||
So, yeah, no, I don't think you can. I think, you know, as long as they're having fun,
|
||||
then they're learning. Right, I don't think we have anything else to cover in this interview.
|
||||
All right. So, thank you very much for the talk, and tune in tomorrow for another exciting episode
|
||||
of Hacker Public Radio.
|
||||
You have been listening to Hacker Public Radio, where Hacker Public Radio does our.
|
||||
We are a community podcast network that releases shows every weekday Monday through Friday.
|
||||
Today's show, like all our shows, was contributed by a HBR listener like yourself.
|
||||
If you ever consider recording a podcast, then visit our website to find out how easy it really is.
|
||||
Hacker Public Radio was founded by the Digital Dark Pound and the International Computer Club.
|
||||
HBR is funded by the Binary Revolution at binrev.com. All binrev projects are proudly sponsored
|
||||
by Lina Pages. From shared hosting to custom private clouds, go to LinaPages.com for all your hosting
|
||||
needs. Unless otherwise stasis, today's show is released under a creative comments,
|
||||
attribution, share a like, and do those own license.
|
||||
Reference in New Issue
Block a user