Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Open Source at TiVo

michael posted more than 10 years ago | from the small-price-to-pay dept.

GNU is Not Unix 226

CowboyRobot writes "ACM Queue has an article by TiVo co-founder Jim Barton, in which he explains how the company relies on open source technologies to create a closed-source product. A good lesson in how other companies can do the same. From the article: Careful management of our sources to abide by the terms of the GNU General Public License while protecting our proprietary developments is a small price to pay for this benefit."

cancel ×

226 comments

fp (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#6768778)

There is more information on this virus at http://www.cert.org/incident_notes/IN-2003-03.html [cert.org] .

wrong reply. (-1, Offtopic)

abstrakts (610619) | more than 10 years ago | (#6768793)

yes.

Fuck TiVo (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#6768789)

Nils Parker for governer!! He's HUGE http://www.nilsparker.com [nilsparker.com]

Or... (-1, Offtopic)

LurkerXXX (667952) | more than 10 years ago | (#6768797)

Or you can just use OpenBSD and not worry about any licensing issues.

BSD vs GPL (0)

Anonymous Coward | more than 10 years ago | (#6768844)

But, in turn, BSD license does not warrant that it will not become vampirized by some other company. Thus effectively closing development for the software.

GPL protects from vamprires.

Translated (-1, Flamebait)

Anonymous Coward | more than 10 years ago | (#6768804)

"Fuck the GPL and let us work".

Nice one Jim ... (3, Insightful)

craigmarshall (679127) | more than 10 years ago | (#6768830)

>in which he explains how the company relies on open >source technologies to create a closed-source product ... but haven't Microsoft been doing this for years with the BSD source code? -- Craig

Re:Nice one Jim ... (4, Informative)

Jeff DeMaagd (2015) | more than 10 years ago | (#6768863)

There is a licence difference to consider here. GPL _requires_ the changes be made available in source form if the binary is distributed. BSD licences pretty much allows any company to take code, make proprietary changes to it and doesn't require distribution of those changes.

Copyleft is the difference (3, Insightful)

yerricde (125198) | more than 10 years ago | (#6768864)

It's true that Microsoft has been using non-copylefted open source code for years, but it's a greater accomplishment to segregate copylefted programs from proprietary programs.

Government Information Awareness: +1, Patriotic (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#6769120)


Recall [bushrecall.org] the
Moron [whitehouse.org]

Thanks and have an Ashcroft_free weekend,
W00t

To those who value their TiVos (5, Funny)

citizen6350 (699527) | more than 10 years ago | (#6768835)

Quick, someone erase this article, BEFORE SCO SEES IT! (yes, its a joke)

Re:To those who value their TiVos (1)

Thuktun (221615) | more than 10 years ago | (#6768976)

Quick, someone erase this article, BEFORE SCO SEES IT! (yes, its a joke)

Maybe I've just been reading too many of anti-SCO documents, but this article reads like an intentional jab at SCO.

YET AGAIN I HAVE TO EDUCATE THE AMERICANS.. (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#6769179)

I think I should go and leave you alone. Yeah.
Stop this game and hang up the phone. And more.
I should go into the night alone and get inside of the cyclone. It's like I wanted to break my bones to get over you. 'Cos if I stay I'm number two anyway.

Chorus:

Like a bullet you can hurt me,take me,break me.
Like fire you can burn me,convert me.
Like a bullet you can hurt me.

You say there are so many things going on in your life now. It's so very hard to find time for me. And you say. Do you believe in the destiny?
This is the way it was meant to be. I gotta leave you to make you see. I'm over you. 'Cos if I stay
I'm number two anyway.

Chorus
* I can't believe it when my friends say.Take it easy, don't you worry about the rainy days. Like fire you can burn me, convert me. Like a bullet you can hurt me.

Maybe I'm blind. Forever young. Don't get me wrong. I don't belong here. Like a fire you can burn me. Like a bullet you can hurt me.

GET THIS SONG FROM SOME P2P SYSTEM! The name of the band is "The Rasmus" and they come from Finland. The name of this song is "Bullet".

This band and this song is something I can not explain. I feel good when I hear these words... Hope you do too.

Good for Open Source? (5, Insightful)

Broadband (602443) | more than 10 years ago | (#6768838)

I applaud Tivo for showing such appreciation for open source publically. As more and more companies hail the benifits of open source we might see even more developers do so, both lowering development costs and supporting more platforms. Both which are good for consumers. I myself am wedged so far into Microsoft territory that I cannot budge and every application we use for our industry is 100% Microsoft product requirements, whether it be windows or internet explorer. Hopefully continued publicity like this will improve the knowledge of alternative solutions.

Re:Good for Open Source? (0)

Anonymous Coward | more than 10 years ago | (#6768953)

What industry? I smell a market opportunity! =P

Re:Good for Open Source? (4, Informative)

Broadband (602443) | more than 10 years ago | (#6769081)

Real Estate. The local MLS (Multiple Listing Service) is web based and for some god aweful reason they think it's a good idea to make the main navigation menu require IE 5.x or better. So if I ever want to see what is on the market or input a listing i need to do so with windows. On top of that our major contact management and scheduling program (www.topproduceronlin.com) requires Windows and Internet Explorer. Tried it on Linux and Apple platforms with no luck. I myself have developed some applications using a universal application like PHP, but I don't have the time to devote to development of solutions expecially when the most important tool I use I have no control over development besides bitching and complaining. I'd say 98% of people in the Real Estate industry know nothing aside from Windows, and those whom do are stuck because of that market share :(

Re:Good for Open Source? (0)

Anonymous Coward | more than 10 years ago | (#6769334)

Can't feel too sorry for realtors. You're hoist by your own petard.

Realtors jealously guard access to the MLS. Most people have to pony up tens of thousands of dollars in sales fees to a realtor, mostly just to get a listing added to MLS. Because, of course, that's where most people look when buying a house. The buyer's realtor will generally sneer at FSBOs and the like, and likely not even show them. It's a cartel.

If MLS were an open database where anyone could list or view, realtors wouldn't be making all that easy money. The last thing they want is to have it widely accessible to all.

Re:Good for Open Source? (2, Funny)

gmby (205626) | more than 10 years ago | (#6769148)

I myself am wedged so far into Microsoft territory...

Got Butter?

Re:Good for Open Source? (2, Funny)

NudeZiggy (635825) | more than 10 years ago | (#6769276)

Groundskeeper Willie: "Lunchlady Doris, do ye have any grease?"
Lunchlady Doris: "yes, yes we do."
Groundskeeper Willie: "Then grease me up, woman!"
Lunchlady Doris: "ok."

finally (-1, Troll)

Boromir son of Faram (645464) | more than 10 years ago | (#6768839)

I don't know why we let them get away with it all this time. For those who don't know, TiVo runs a modified version of Linux, which is protected by the GPL. Therefore, legally they have always been required to release their source. I guess the Slashdot crowd has always let them slide because they're jizzing their tighty whities over being able to watch 20 hours of Simpson's episodes in an afternoon. If we don't look out for our rights, no one will. Let's give 'em hell.

MOD PARENT UP (-1, Flamebait)

Anonymous Coward | more than 10 years ago | (#6768879)

How much did the /. editors get paid to shill for TiVo?

Re:MOD PARENT UP (0)

Anonymous Coward | more than 10 years ago | (#6768970)

The sad part is they didn't get paid anything to shill for TiVo. As the parent said, the editors are just so turned on by TiVo they glady whore themselves for it.

Re:MOD PARENT UP (1)

SoSueMe (263478) | more than 10 years ago | (#6769040)

Even though I have mod points, I can't find the "-1 STUPID" rating.

Re:MOD PARENT UP (0)

Anonymous Coward | more than 10 years ago | (#6769205)

And even if you could, and you used them, you would have given them up by posting here.

Re:finally (4, Informative)

Anonymous Coward | more than 10 years ago | (#6768891)

I don't know why we let them get away with it all this time. For those who don't know, TiVo runs a modified version of Linux, which is protected by the GPL. Therefore, legally they have always been required to release their source. I guess the Slashdot crowd has always let them slide because they're jizzing their tighty whities over being able to watch 20 hours of Simpson's episodes in an afternoon. If we don't look out for our rights, no one will. Let's give 'em hell.

What are you talking about? [tivo.com]

Interesting quote (2, Interesting)

JohnGrahamCumming (684871) | more than 10 years ago | (#6768840)

This use is somewhat controversial. Advocates of the GPL and the Free Software Foundation interpret the GPL more stringently to disallow the use of proprietary modules. On the other hand, Linus Torvalds has stated that proprietary loadable modules are acceptable.
Wonder if they'll ultimately be forced to release this code? Anyone know if the FSF has expressed an opinion on this? John.

Re:Interesting quote (3, Insightful)

smartin (942) | more than 10 years ago | (#6768895)

Wonder if they'll ultimately be forced to release this code? Anyone know if the FSF has expressed an opinion on this?
The FSF would be fools to force such an issue. Tivo is trying to work with the system as well and maintain their advantage over their competators. Jerking them around with the GPL would simply drive them and others away, thats not what we want, (right RMS?)

Re:Interesting quote (2, Interesting)

JohnGrahamCumming (684871) | more than 10 years ago | (#6769009)

The FSF would be fools to force such an issue. Tivo is trying to work with the system as well and maintain their advantage over their competators. Jerking them around with the GPL would simply drive them and others away, thats not what we want, (right RMS?)

I do agree with you, but sense hasn't stopped the FSF from spending an awful amount of effort telling everyone that they must say GNU/Linux instead of Linux. I wonder why Linus doesn't just come up with a license of his own that makes it clear what you can and cannot do with Linux to prevent their being any conflict.

John.

Re:Interesting quote (1)

ArsonSmith (13997) | more than 10 years ago | (#6769161)

he has, it's called the GPL with use of the exceptions clause. The exceptions clause is the portion of the GPL where you can put in your own changes such as binary modules.

Re:Interesting quote (1)

Jagasian (129329) | more than 10 years ago | (#6769266)

The GPL is very clear on what you can and cannot do with Linux. Can you justify otherwise? (Please don't answer that if you work for SCO.)

Re:Interesting quote (0)

Anonymous Coward | more than 10 years ago | (#6769072)

I would assume RMS hates TiVo since they don't release their source. I'm sure he'd love to write a routine to skip commercials and insert it in the sw, but can't do it since the source is not free.

Foolish to defend one's terms for sharing? (3, Insightful)

jbn-o (555068) | more than 10 years ago | (#6769176)

The FSF would be fools to force such an issue. Tivo is trying to work with the system as well and maintain their advantage over their competators. Jerking them around with the GPL would simply drive them and others away, thats not what we want, (right RMS?)

I'm not RMS, nor do I speak for him, the FSF, or any of the Linux kernel copyright holders. However, you appear to misunderstand a significant point about the development of the GNU Project and GNU/Linux in particular. There's nothing foolish about requiring compliance with the generous GNU General Public License, particularly nothing foolish about insisting that people cooperate in the commons the GNU GPL builds for us all. Nobody is more important than anyone else in this partnership (including Tivo). It is Tivo's job, not ours, to find a way to make money with GPL-covered programs if that is their desire.

Perhaps you aren't aware that the GNU Project (and the continued development of the GNU/Linux operating system in particular) is not about achieving mere popularity at the expense of user's freedom to share and modify. From this essay [gnu.org] :

People justify adding non-free software in the name of the "popularity of Linux"--in effect, valuing popularity above freedom. Sometimes this is openly admitted. For instance, Wired Magazine says Robert McMillan, editor of Linux Magazine, "feels that the move toward open source software should be fueled by technical, rather than political, decisions." And Caldera's CEO openly urged users to drop the goal of freedom and work instead for the "popularity of Linux".

Adding non-free software to the GNU/Linux system may increase the popularity, if by popularity we mean the number of people using some of GNU/Linux in combination with non-free software. But at the same time, it implicitly encourages the community to accept non-free software as a good thing, and forget the goal of freedom. It is no use driving faster if you can't stay on the road.

And this essay [gnu.org] :

Proprietary software developers, seeking to deny the free competition an important advantage, will try to convince authors not to contribute libraries to the GPL-covered collection. For example, they may appeal to the ego, promising "more users for this library" if we let them use the code in proprietary software products. Popularity is tempting, and it is easy for a library developer to rationalize the idea that boosting the popularity of that one library is what the community needs above all.

But we should not listen to these temptations, because we can achieve much more if we stand together. We free software developers should support one another. By releasing libraries that are limited to free software only, we can help each other's free software packages outdo the proprietary alternatives. The whole free software movement will have more popularity, because free software as a whole will stack up better against the competition.

Re:Interesting quote (5, Insightful)

cperciva (102828) | more than 10 years ago | (#6768911)

Wonder if they'll ultimately be forced to release this code?

They won't. One of the major principles of contract law is that if a contract is confusing, the confusion is resolved in favour of the party which did not write or choose the contract.

Given that there's widespread disagreement about how far "GPL taint" extends, I'm pretty sure that any dispute here would be resolved in favour of the loadable modules not needing to be released.

Re:Interesting quote (3, Insightful)

vondo (303621) | more than 10 years ago | (#6768914)

I think it's more rigorous that "Linus says its OK." I think the license for the Linux kernel is officially GPL+"binary loadable modules are OK" so the kernel is not strictly under the GPL.

Re:Interesting quote (3, Informative)

JohnGrahamCumming (684871) | more than 10 years ago | (#6768956)

If you visit kernel.org you'll find the following license (the COPYING [kernel.org] file) in /pub/linux/kernel [kernel.org] .

It is the GPL v2 with the following preamble:

NOTE! This copyright does *not* cover user programs that use kernel
services by normal system calls - this is merely considered normal use
of the kernel, and does *not* fall under the heading of "derived work".
Also note that the GPL below is copyrighted by the Free Software
Foundation, but the instance of code that it refers to (the linux
kernel) is copyrighted by me and others who actually wrote it.

Linus Torvalds

Doesn't seem to be anything other than user level code mentioned here, I guess we must assume that TiVo's modifications are user level.

John.

Re:Interesting quote (1)

Merk (25521) | more than 10 years ago | (#6769226)

Actually, if you read the article, you'll see that he mentions that when he talks about how their hardware is proprietary and they want to use closed drivers. The issue is the non GPLed kernel modules, if I read things correctly.

Re:Interesting quote (5, Insightful)

OECD (639690) | more than 10 years ago | (#6768918)

Anyone know if the FSF has expressed an opinion on this?

It's implied:

This use is somewhat controversial. Advocates of the GPL and the
Free Software Foundation interpret the GPL more stringently to disallow the use of proprietary modules. On the other hand, Linus Torvalds has stated that proprietary loadable modules are acceptable.
(emphasis mine) That's from section 7 of the article, BTW.

Wonder if they'll ultimately be forced to release this code?

The GPLed source is here [tivo.com]

Re:Interesting quote (0)

Anonymous Coward | more than 10 years ago | (#6769141)

fsf does not own the copyright so their opinion does not really matter.

besides there is plenty of trickery one can do when working with modules to keep your key code out of the controversial realm. take a look at nvidias stuff for example.

Re:Interesting quote (0)

Anonymous Coward | more than 10 years ago | (#6769182)

For the kernel, it's Linus's opinion that matters, and he says it's OK.

Cool! (3, Funny)

yotto (590067) | more than 10 years ago | (#6768846)

Maybe now they'll sue the people who wrote the code they used!

I thought we already knew this? (-1, Flamebait)

stratjakt (596332) | more than 10 years ago | (#6768848)

Anyhow, I love iPods.

And Tivo. If they made a tivo+iPod I would buy three of them.

So mod me up up up if you love iPods and tivos!

Re:I thought we already knew this? (-1)

Anonymous Coward | more than 10 years ago | (#6768942)

What about a wifi tivo ipod? That product would seem to be right up your alley.

Re:I thought we already knew this? (-1, Troll)

stratjakt (596332) | more than 10 years ago | (#6769029)

WiFiPoDVo!

I like every overpriced piece of hardware that is either a) running some kind of Free as in whoopty do software (tivo), or b) made by Apple (iPod), c) works better on paper than real life (wifi)

Ideally WiFiPoDVo would record only the first 25 minutes of a half hour show (or better yet - the wrong time on the wrong channel!), be produced by Apple, and run the HURD. It will cost upwards of 600 dollars and match my purse.

Hooray!

Re:I thought we already knew this? (0)

Anonymous Coward | more than 10 years ago | (#6769154)

You are my new favorite troll. Congrats.

Re:I thought we already knew this? (1)

jared_hanson (514797) | more than 10 years ago | (#6769222)

You are my new least favorite troll. Congrats.

I actually do love my TiVo. As soon as I get an iPod, I will love that too. Companies that take the time to make a great product are wonderful.

Just how "careful" are they? (4, Interesting)

tambo (310170) | more than 10 years ago | (#6768849)

Why do they have any incentive to be "careful" about their use of open-source? Why not just paste it into your proprietary, closed-source application? It's closed-source, so the chances that anyone finds out are slim to nil. Of course, you have to maintain that as the company line...

Indeed, given the "business ethics? we've heard of 'em" nature of business these days, carefully shepherding one's source code to respect open-source rights is a losing value proposition. It takes resources - time, employees' attention, assignment of responsibility, meetings - while helping the company avoid a terrifically small chance of a lawsuit. Not the *right* thing to do, by any means, but probably the *customary* thing to do.

I've been wondering quite a lot recently just how much respect closed-source developers typically afford to open-source code. I think the answer is a dirty little secret of the software biz.

- David Stein

Re:Just how "careful" are they? (2, Insightful)

stratjakt (596332) | more than 10 years ago | (#6768874)

One disgruntled ex-employee as a whistleblower could screw with the whole company. It's easier just to let people have the source.

Espescially in TiVos case. It's not like you can realistically build your own TiVo anyways. The embedded software is an extremely minor component of the system as a whole.

Businesses arent as evil and corrupt in general as some would have you believe. They're run by people, in the end.

Re:Just how "careful" are they? (3, Insightful)

tambo (310170) | more than 10 years ago | (#6768952)

Been in the business world a long time? ;)

OK, serious response.

First, general philosophy: History has show, consistently, that trusting corporations to do the right thing is a terrifically bad idea. Especially when it's more costly/troublesome than doing the wrong thing. Especially when the chances that they'll get caught, or punished, are insignificant. I needn't remind you that both Ken Lay and Martha Stewart still walk the streets as a reminder of this.

Now, practical response: Whistleblowers? Are you kidding? There's no better way to ruin one's career, permanently and irrevocably, than turning whistleblower. It's one thing if you're Dr. Jeffrey Wigand taking on tobacco companies who are killing people. It's another thing altogether to ruin your career because your employer stole some open-source wonk's implementation of the cosine function.

- David Stein

Re:Just how "careful" are they? (0)

Anonymous Coward | more than 10 years ago | (#6768947)

Actually, I think that the original hacker ethic of the company, along with the close scrutiny that hardcore TiVo hackers subject their products to, will help the company stay honest for a while yet.

The DVR sector just hasn't seen it's big growth spurt yet. Many industry wonks agree that it will indeed occur, though. Once TiVo grows to be a larger corporation, THEN you will have to worry more about their mis-appropriation of GPLed code into their proprietary side...

Re:Just how "careful" are they? (-1, Flamebait)

Eric Ass Raymond (662593) | more than 10 years ago | (#6769011)

Huh? Hacker ethic and hardcore hackers? How do you expect a company of hackers to "stay honest"? How do you know it is honest at all and not just hacking anything you connect to their product or spreading viruses?

Re:Just how "careful" are they? (1)

uradu (10768) | more than 10 years ago | (#6769069)

> Once TiVo grows to be a larger corporation

I doubt that will happen. I don't think TiVo will survive the big onslaught of DVRs once it comes, or at the very least won't grow significantly. In order to do that they would have to be a lot more aggressive with product and feature development, and drop prices significantly. After all, I believe most DVR newcomers are developing their technology from scratch and TiVo isn't earning any licensing revenue there. So how exactly will they grow? They keep claiming that they still barely break even on unit costs and are only making money on service subscription. There will be a certain increase in sales with the growing popularity of DVRs, I'm sure, but from a cost perspective they will be considered high-end and expensive, so I doubt their sales will shoot through the roof. I'm sure that within a couple of years or so you'll see DVRs for not much more than $100, consisting of single-chip electronics plus a HD. That means lots of volume, and I don't think volume is TiVo's sport. So far I haven't seen TiVo too eager to foray into the low-end of the market. That's just not their business model or strength.

Re:Just how "careful" are they? (3, Insightful)

tambo (310170) | more than 10 years ago | (#6769198)

uradu is right on the money.

It's a well-known trend, called the "frontier effect" or something similar. Usual course of business:

1) One company creates a great product that comprises a brand-new market. Tons of R&D invested in development; research costs expected to be recouped once (their) market matures.

2) Product hits and causes a stir. Huge sales and good times for frontier company.

3) Entry of competitors, who produce similar (or better) products. They want a piece of the promising and profitable market, and they have an edge because they don't have to invest tons of R&D like the frontier corporation did.

4) Market becomes overcrowded; new entries are indistinguishable from other products. Profits grow thin. Mainstream companies (Microsoft, Dell, Sony) weigh in with their versions, which grab market share by branding otherwise bland products.

5) Frontier company is now struggling. Competitors moved in and devoured the market before the frontier company could recoup its huge R&D outlay. May fold or be acquired by a competitor.

Look at the burgeoning technology-gadget markets: MP3 players, DVD players, PDAs... this trend has hit virtually every new technology that comes out.

And this inevitable trend is why huge, bloated companies like Microsoft and Sony are so successful. Leave the risky, expensive, market-creation junk to foolhardy startups; weigh in with an entry once the market has proven itself. Fault MS for lots of things, but not this one - it's a wise strategy.

- David Stein

Re:Just how "careful" are they? (1)

ratfynk (456467) | more than 10 years ago | (#6769153)

Keeping the source closed only helps MS take over more of the communication world. "What are we doing today BILLY BRAIN.....Writing a new closed source version of our Windows O$ of course Binky!"
How the hell can companies like MS make a living if they cannot clone things like Unix code and then make all of their added IP proprietary? Just think they have had one hell of a time replacing their hotmail servers with an NT clone so the chances are that they really are trying to go it alone with NT4,5,6 just by trying to impliment cloned unix functions. You notice that they dropped the name NT in one hell of a hurry, for things like XP and 2000, 2003. This is logical as they want people to feel like everything is fresh and new. Social engineering tech speak. So the OS2 experience taught them the importance of getting rid of Unix like versioning for public consumption. i have a copy of OS2 right here really funny how it sure looks and works like an early NT crash test dummy multi-tasking OS version of Windows. Wish I could see the source to both and do a diff on that and early Unix source. It sure would explain their rush to get a license from SCO. I hope this rush to IP lawsuit crap sinks the whole monopolised closed source crooked ship! It has too many memory leaks, pirates and is starting to rot under its own weight. Time to scuttle it.

endrant

Re:Just how "careful" are they? (1)

hachete (473378) | more than 10 years ago | (#6769244)

Actually, having gone through an exercise to try and incorporate open source libs into a closed source product, "they" seem pretty bloody careful.

GPL code is a non-starter - no look, no touch.

This here closed-source developer pays quite a lot of respect to open-source code.

My manager thinks so as well.

h.

this .sig is broken? well it works for me!

Didn't manage the source well enough. (-1, Troll)

Anonymous Coward | more than 10 years ago | (#6768850)

Then why are they using System V code?

Readable version (2, Informative)

cperciva (102828) | more than 10 years ago | (#6768856)

Maybe it's just MSIE being wierd, but the story appeared in a really small font.

The "printable version" [acmqueue.org] is far easier to read.

you're obviously not a web designer (2, Funny)

SweetAndSourJesus (555410) | more than 10 years ago | (#6768912)

You see, in web design, the goal is to make your type as small as possible.

CSS provides an EM unit, which one could use to display text in the user's font size of choice, but this is considered bad design.

For an example of extremely good design, see my website, which I will reproduce here to avoide slashdotting:


.


Just look at all that information crammed into such a small area!

Re:you're obviously not a web designer (1)

gantzm (212617) | more than 10 years ago | (#6769022)

Hmmm, I find this part ".", and most certainly this part "." very offensive. Maybe you should be more sympathic in your views about ".".

Re:Readable version (0)

Anonymous Coward | more than 10 years ago | (#6768917)

Not to mention it's will help ease the Slashdot effect.

Re:Readable version (5, Funny)

Eric Ass Raymond (662593) | more than 10 years ago | (#6768950)

The fonts have been made small intentionally so that they'll save on bandwidth. Smaller fonts, less bits to move. It's been a common practise since the dotcom-bubble burst.

Re:Readable version (1)

El Cubano (631386) | more than 10 years ago | (#6769076)

Back in the day we had operators that worked on automatic morse equipment. Whenever we had a new operator that could not get the signals to sync up we would tell him that it was because the bits were moving too fast and that he could get the signals synced by tying the patch cord in a knot. It always worked like a charm (we were all on the floor dying of laughter pretty soon).

Re:Readable version (1)

ArsonSmith (13997) | more than 10 years ago | (#6769105)

Could you explain? Why did it work like a charm?

Re:Readable version (1)

Adam9 (93947) | more than 10 years ago | (#6769174)

I think the grandparent meant that telling the operator to do that would work like a charm because the operator would actually do it.

Re:Readable version (1)

Lionel Hutts (65507) | more than 10 years ago | (#6769289)

I have almost never seen a page with a "printable" version that did NOT look much better. I use Privoxy [sourceforge.net] to take me to them on every site that has them and that I visit regularly. Since then, I've been enjoying the web a lot more, and squinting less.

hmmmm... (0)

f-matic (643215) | more than 10 years ago | (#6768876)

doesn't this kind of answer the question [slashdot.org] which popped up on here yesterday?

i mean, everyone knows tivo rocks, right? so if tivo = OSS + proprietary, then OSS + proprietary must also rock. right?

(DISCLAIMER - i have no idea if tivo actually rocks or not - still trying to catch a blurry version of gilmore girls on my 1960s uhf box...)

Ummm.. yea, everyone basically does this. (4, Informative)

joeldg (518249) | more than 10 years ago | (#6768877)

Most companies, if they can, will use 100% open source to create totally closed-source solutions. The exceptions being the 100% microsoft shops, and those guy have all their profits eaten up by licenses, and "of course" they won't open source anything because the licenses restrict that they "can't". (I at one time worked as an ASP programmer and am happily a three-years now PHP programmer).

The old point was, pay for a product, you pay for support; however, this is not true anymore (just try and call MS technical support without having a license you pay $1000 for).. But something like MySQL or PHP you can easily and quickly get help in any forum..

But I digress.. the point is, most "smart" companies do this to keep costs down.

Re:Ummm.. yea, everyone basically does this. (0)

Anonymous Coward | more than 10 years ago | (#6768988)

"The exceptions being the 100% microsoft shops, and those guy have all their profits eaten up by licenses" ...um yeah..that's exactly what happens. Hence all shops that use MS show no profits.

How on earth could anyone mod such garbage as "Insightful"

Re:Ummm.. yea, everyone basically does this. (1)

joeldg (518249) | more than 10 years ago | (#6769113)

well..
I notice you didn't provide proof to refute the claim...
just calling something garbage doesn't make it garbage...

Re:Ummm.. yea, everyone basically does this. (0)

Anonymous Coward | more than 10 years ago | (#6769250)

just calling something garbage doesn't make it garbage...

You're right. What you said was already garbage. It didn't need to be made into it.

Re:Ummm.. yea, everyone basically does this. (1)

BrynM (217883) | more than 10 years ago | (#6769331)

Don't let it get you down. That's why they're Anonymous Cowards. I actually agree with what you said. Having worked for 100% MS shops, Mixed shops and even with an IBM OS390 system, the benefits of an MS solution, especially tech support, are disappearing. It would seem that MS's standard of support is now
  • Your Product Activation phone call
  • Patches if a problem becomes public
  • Windows Update
The sad part is that the zealots on the extremes (OSS and MS) refuse to even consider the other side or even a mixed solution. Ususally because they are too lazy/sick of their job to adapt and feel threatened by something outside of their skill set.

If only ... (0, Funny)

Anonymous Coward | more than 10 years ago | (#6768878)

the developers of the Linux SMP code were as respectful of other's IP as Tivo is of GPL code!!

Article text (-1, Redundant)

Anonymous Coward | more than 10 years ago | (#6768897)

In case of slashdotting, or if you're just a lazy slashbutt, here's the complete full article source (no "Click here for next page" crap!):

From Server Room to Living Room

From Open Source
Vol. 1, No. 5 - July/August 2003
by Jim Barton
The open source movement, exemplified by the growing acceptance of Linux, is finding its way not only into corporate environments but also into a home near you. For some time now, high-end applications such as software development, computer-aided design and manufacturing, and heavy computational applications have been implemented using Linux and generic PC hardware.

Now, Linux and open source software are making inroads at the other end of the computing spectrum. TiVo, the first commercially available digital video recorder (DVR), provides an example of how embedded devices are increasingly powerful enough to support Linux as an operating system--providing a great deal of leverage to system developers.
A Brief History of Open Source

To many people, the open source movement is a recent phenomenon, springing into consciousness in the late 1990s with the creation of Netscape Navigator and the rise of the Linux operating system. The true beginnings of the open source movement, however, can be traced back to the mid-1980s.

At that time, the computer industry, as well as academia, had become enchanted with the Unix operating system1 and its variants. Computer manufacturers realized that the era of each manufacturer providing a proprietary operating system for its hardware was drawing to a close; while this strategy locked customers to a particular manufacturer, it also limited the ability to acquire new customers and cost a great deal to support.

Unix was originally developed at Bell Laboratories as a reaction to the large, complex, non-portable operating systems of the early 1970s. AT&T did not see a significant opportunity in licensing or supporting an operating system; instead, it provided Unix source code for a nominal license fee and small per-unit royalties. A number of academic efforts sprang up to take advantage of this opportunity and extend the original sources with new and interesting features.

The most famous of these efforts is the Berkeley Software Distribution (BSD) of Unix, which pioneered features such as paging and the "sockets" network abstraction. BSD Unix lives on today, but its descendants are better known, among them: FreeBSD, NetBSD, OpenBSD, and BSDi. This line of Unix development began in 19742 and the BSD developers created many features of modern Unix-based operating systems. In fact, for many years BSD versions of Unix were considered far superior to AT&T Unix in features, performance, and reliability (and many would argue BSD Unix is still the best). This is largely a result of the open and collaborative nature of BSD development at a time when Unix was a little-noticed sideline within the vast halls of AT&T.

In the mid-1980s, every computer manufacturer either provided or planned to provide a Unix-based operating system for its computers. Each company had chosen a particular version of Unix to start with, and then added various proprietary features. Although all of these operating systems claimed to be Unix, software written on one version was often not portable to the other versions.

At this same time, AT&T was breaking up into separate companies in response to a U.S. government antitrust suit, spinning off the telephone operating companies and an unregulated subsidiary. The company was trying to use its wealth of internally developed technologies as a lever to create new revenue streams. Within AT&T there was growing realization that selling and supporting Unix might be a significant new source of revenue. The company began to promote its own version of Unix as the standard for the computing industry and to enforce its intellectual property rights around the Unix trademark and source code.

The prospect of AT&T "taking control" of Unix and then potentially limiting developers in what they could see or change in the software was one of the main forces behind the earliest open source initiatives.
The GNU Project and Unix Standardization

Many believed this effort by AT&T was bad news for the software community. Among them was Richard Stallman, a programmer at MIT, who in 1984 founded the GNU Project ("GNU is Not Unix") as an effort to rewrite Unix as "free" software--that is, software not controlled by any one person and available for anybody to use and modify as desired.

This led to the creation in 1985 of the Free Software Foundation (FSF), the main funding and advocacy organization for the GNU Project. The Free Software Foundation established the GNU General Public License (GPL), the most important open source license in use today.

While the GNU Project was getting started, other efforts began to at least standardize the definition of Unix to enhance software portability. One such effort was the formation of the IEEE 1003 standards committee, which would go on to produce the set of standards known as the Portable Operating System Interface (POSIX). Another effort of note was the creation of the X/Open organization, a commercial venture oriented toward application portability, testing, and branding of Unix-compatible operating systems.
THE GREAT SCHISM

Continuing its aggressive push with Unix, AT&T signed an agreement with Sun Microsystems in 1987 to work jointly on creating a version of AT&T's System V Unix, which would become the de-facto standard for Unix. This version would run first and best on Sun's Sparc microprocessor architecture, which frightened all other Unix-based manufacturers in the computer industry. They saw themselves at a disadvantage to Sun, and Sun enhanced this fear through aggressive marketing of the joint development.

These manufacturers, led by Digital Equipment Corporation (DEC) and Hewlett-Packard (HP), arranged a meeting at DEC's Western Research Lab in Palo Alto, California. The lab was on Hamilton Avenue, so the group of companies that met that first time came to be known as the Hamilton Group.3 In reaction to the Sun/AT&T alliance, many of these manufacturers came together to create the Open Software Foundation (OSF), which was given the task of creating an "alternative" version of Unix to compete with AT&T.

In response, AT&T formed Unix International, recruiting many computer vendors to back System V Unix. Thus began the "Unix wars." Meanwhile, quietly working in the background, the GNU Project began producing a number of useful tools and utilities, mostly used in academia and research.
THE ENEMY IS REALLY MICROSOFT

At the beginning of the 1990s, in the midst of the Unix wars, those in the Unix industry began to realize that Microsoft was beginning to dominate the PC segment of the computer industry, and that the company might well move from there into other parts of the industry.

This resulted in several infamous counter-efforts. One spectacular failure was the "ACE" initiative, created to go up against both Microsoft and Intel. It promoted the Open Software Foundation's Unix clone, OSF/1, running on the MIPS microprocessor.4

Another counter-effort was the creation of Unix Systems Laboratories by AT&T, with an investment from Novell, as a stand-alone Unix technology company. As this venture sputtered, AT&T sold its share to Novell, which was looking for an industrial-strength operating system to complement Novell Netware for the PC.

In 1995, Novell gave the Unix brand to X/Open and sold the software technology business to the Santa Cruz Operation (SCO). A year later, the Open Software Foundation and X/Open merged to form The Open Group, which continues the focus of both companies to develop an open standard for Unix-based systems that anyone can implement.

Meanwhile, the GNU Project continued to expand its software base and improve the quality of its offerings. Within academia, the GNU Compiler Collection (GCC) was viewed as ideal for creating cross-platform software. In many ways the compiler suite began to exceed the quality of commercial offerings.

In 1991, Linus Torvalds began developing the Linux kernel. By choosing to use GNU Project software to build and extend this work, he created a fruitful collaboration that enhanced the quality of both offerings over time.
Linux Rising

Throughout the mid-1990s, development continued apace on Linux, with a number of programmers adding vast contributions to the operating system and its infrastructure. In 1995, the first commercial Linux distributions combined the Linux kernel with the GCC tool suite and a full suite of Unix-like tools and utilities, creating the first credible Unix replacement.

In the late 1990s, GNU/Linux came into its own as a commercial-class operating system environment. Still-famous companies entered the GNU/Linux distribution business: Red Hat, VA Linux, Slackware, and others. Unfortunately, the GNU General Public License constrained the business models that were available to these companies. Although many had highly successful public stock offerings, they collapsed after being unable to generate self-funding cash flows. Red Hat remains the standard-bearer for commercial Linux distribution and seems to be making a successful business of distributing and supporting open source software.
THE UNIX LANDSCAPE TODAY

The legacy of Unix continues to cause controversy. Companies such as IBM, Hewlett-Packard, Sun, and SGI now support Linux distributions for their computers, usually alongside their own proprietary Unix offerings.

GNU/Linux is increasingly being used as a server operating system, reducing overall costs while allowing the use of generic PC-based hardware rather than more expensive proprietary hardware designs.

Many embedded applications that incorporate Linux already exist or are about to come to market. The TiVo Client Device (TCD), a set-top box that digitally records television programs, was among the earliest of these systems. Sony and a number of other Japanese consumer electronics manufacturers recently announced their support of Linux and their commitment to making it ubiquitous in consumer electronics applications.

The legacy of Unix, however, continues to cause controversy. SCO, facing declining sales of its proprietary offerings based on the original Unix derivation, sued IBM in March, claiming that IBM had "tainted" the Linux source base by incorporating patented technology derived from the IBM Unix-based proprietary offering, called AIX. This spat further heated up with Novell's announcement that it still controlled much of the intellectual property incorporated into Unix. In addition to Greg Lehey's analysis of the SCO action that appears in this issue of Queue, Eric Raymond, formerly of Netscape and now president of the Open Source Initiative, has written an extensive commentary on the action and the history of Unix in general that debunks SCO's claims.5 In June, SCO "terminated" IBM's license to the Unix software in AIX, although IBM publicly stated that SCO has no ability to do so.

Whatever the outcome of this suit, it seems to be a rear-guard--and probably hopeless--action by SCO. For some time after filing suit, SCO was publishing its own distribution of Linux, which we must assume contained its intellectual property. Because distributing software under the GNU General Public License requires the publisher to acknowledge that it has no rights in the published source, or that it is forgoing those rights, SCO would seem to have forfeited any claims it might make. At the very least, it will be entertaining to see how this drama unfolds, although it is not likely to have a significant effect on the ongoing adoption of Linux in many areas.
A Bit of TiVo History

The original TiVo product, as proposed by Mike Ramsay and me in 1997, was for a home network-based multimedia server, streaming content to thin clients throughout the home. To build such a product requires a solid software foundation. The home environment may be one of the most mission-critical applications conceivable. From a consumer's perspective, the device must operate flawlessly, be reliable and robust, and handle power failure gracefully.

At that time, I had become familiar with Linux through a number of avenues. At Silicon Graphics (SGI), I was the executive sponsor of an effort to port Linux to the SGI Indy workstation, based on the MIPS R5000. I was using several early Linux distributions for personal experimental and development work.

This experience led me to believe that Linux would serve TiVo well as the operating system foundation. It was based on well-tested APIs, included a solid disk management system, a large base of support software and tools, and virtual memory and paging. It also provided access to and control of the software source code. With my operating system development background, I felt comfortable that we could handle any minor modifications or bug fixes needed to achieve the product goals. I also had a great deal of experience at Hewlett-Packard and SGI with molding Unix-like operating systems to handle real-time computing tasks. I felt that Linux could be similarly enhanced to provide the real-time performance needed to support consumer-quality television viewing.6

At the time, however, open source software was viewed with suspicion. People often asserted that open source software could never be as reliable as proprietary software. Software released under the GPL was looked upon with particular disfavor, because many people assumed that such software contaminated everything it touched and would disallow proprietary developments. Careful reading of the GPL convinced me that these fears were unfounded and that Linux could give us a powerful development advantage while allowing the protection of our intellectual property.

Early in the existence of TiVo, we realized that the home networking bandwidth available to support a client-server multimedia environment was not going to be easily available in the foreseeable future. We decided to collapse our design into a single product, the TiVo Client Device. The TCD takes the form of a television set-top box about the size of a video tape recorder. It contains a number of off-the-shelf electronic components, including a microprocessor, memory, modem, MPEG2 real-time encoder and decoder, and most significantly, a large-capacity PC OEM disk drive. Using patented and patent-pending technologies, the TCD has the ability to encode and store a television program on the disk drive in real time, while in parallel retrieving a program from the disk drive and outputting it as a standard television signal. This early digital video recorder could thus record one program while playing back another program that had been recorded earlier. In fact, the program being played back might even be the one being recorded, only shifted in time. This provides some of the more well-known features of a DVR--the ability to "pause" live television and to skip through television commercials.

To make the TCD reliable and easy to use, we needed to provide it with information about television programs and schedules, enabling the consumer to peruse the available programming and choose programs to be saved for later viewing. This program-guide data is automatically downloaded from our central servers during a daily telephone call and provides up to a 14-day window into future programming.

Early in the design of the TCD, we realized that delivering the simplicity and ease of use we desired would require a complex, interlocking set of capabilities. Maintaining a television-like viewing experience meant that video playback must never stop, and playback had to be perfect at all times, with no glitches or audio/video synchronization problems. Capture and storage of programs had to be similarly perfect, with no dropped frames and accurate tuning and timing. Searching the television guide or scheduling recordings must not interfere with these or other operations, such as the daily phone call to the TiVo servers. This implied the use of a preemptible multitasking operating system with both realtime and background processing abilities.

Our earlier focus on Linux turned out to be prescient when applied to the TCD. Here was an operating system that was well-developed in multitasking, while optimizing hardware resource usage. In addition, the availability of virtual memory made the software far easier to debug and validate, and paging allowed us to have a great deal of functionality available in our limited memory footprint of 16 megabytes.

For cost reasons, we used the IBM PowerPC 403GCX processor in the first TCD. With an external clock of 27 megahertz (clock doubled on chip), this processor was anemic by current standards, but quite powerful by embedded-system standards of the mid-1990s. It provided a simple memory management unit (MMU), allowing us to run Linux, as well as providing a great deal of embedded-system debugging support. This processor turned out to be ideal for our needs.

Linux posed some problems, however. A PowerPC port of Linux was available, but it was not mature and did not support the IBM 400 series microprocessors. It was also based on a "development" version of the Linux kernel (an odd-numbered version 2.1) rather than on a "stable" version of Linux. But it was enough. With a few months of effort, we ported Linux to this processor and were able to boot the first prototype TCD in the lab.

There was yet more work to do. We needed to modify the kernel to allow direct I/O (bypassing the file system buffer cache) for moving audio and video data into and out of user space. We had to change the buffer cache and paging system to interoperate properly with these changes. We needed to add extensive logging of kernel operation to help track down and eliminate realtime performance and scheduling problems. This was in addition to many minor changes to enhance functionality and improve performance.

Fortunately, we were able to perform most application development on Linux-based PCs. This was a great advantage, because the full Linux development environment was available and we could perform extensive testing quickly. On the last day of March 1999, we shipped the first TiVo boxes to retailers, the first commercial DVR ever shipped in the world. We then published our Linux kernel sources with our changes, many of which have been incorporated into new versions of the Linux kernel.
Operation of the TiVo Service

To provide all of its functionality, the TiVo box requires the TiVo Service, which operates on a large number of Red Hat Linux-based PC servers. Conceptually, the service maintains a large database of information destined for download to TCDs when they contact the service.

This information is composed of many different elements:

* Fourteen days of program guide information.
* Original software releases for the various TiVo DVR devices that have been produced over time, as well as upgrade releases.
* TiVo Showcases, which are customized interactive promotions for networks, programs, or products. Because the TCD allows viewers to skip quickly through regular television advertisements, we developed the TiVo Showcase technology as another avenue for advertisers to reach consumers. Viewers may choose to enter a Showcase where they are presented with in-depth information about a product, program, or movie. These viewers are truly "qualified," because they make the choice to view the material, increasing their value to advertisers.
* Capture requests, which are instructions to the DVR to record particular programs or video segments. These may be made directly available to the viewer or integrated into Showcases or other promotions.
* Messages from TiVo concerning aspects of the service or other information.
* Security keys and related information.

The service also maintains a record of every TCD manufactured, along with its related security keys. This allows the service to authenticate a TCD and determine what level of service to provide.

Each night, this large database is processed to produce customized packages of data for each zip code in the country or perhaps other subsets of the active TCD universe. This minimizes the amount of data downloaded to each TCD, a desirable feature because in general TiVo pays the transport costs for the data. This processing is performed on a parallel array of Linux-based servers; the result is tens of thousands of customized packages.

These packages are then copied onto another parallel array of Linux servers called distribution servers. Their job is to field connections from TCDs (which may be via either broadband connections or dial-up modems) to determine if those TCDs are provided service and to download all the appropriate information for that TCD.

At the time of this connection, a TCD may also upload a file containing anonymous viewing information about what was watched, as well as when and how the various trick-play modes were used. This data is uploaded to a set of backhaul servers running Linux, where additional steps are taken to guarantee that the data is anonymous. For example, the names of the files used to store this data are chosen at random and the file creation times zeroed out. Periodically, the logs from randomly chosen subsets of the distributors are copied into a single directory on another server where the file times are zeroed again. The logs are then parsed and aggregated into a database of viewing information.7
Open Source at TiVo inc.

TiVo uses open source products and technologies in many different ways, both in operations and in the TiVo DVR itself.

GPL-based software. Fundamental to both the TiVo Client Device and TiVo Service is the Linux operating system. Within the TiVo Service, we use standard Linux distributions, typically from Red Hat.

The client software distribution is a custom configuration built by TiVo. It is important to strictly control the size and contents of the distribution, as it needs to fit into a system with limited disk space and memory. TiVo also needs to ensure that all software is verified and validated. Thus, we begin with a "bare" Linux 2.4 kernel and populate the user environment with only those commands and utilities necessary for operation.

We also rely on GNU libc (glibc) and related libraries for standard C library functionality. We use the Bourne Again Shell (bash shell) from the Free Software Foundation for many scripting functions on the client device.

Public domain soft-ware.This is software that has been made available for any use, with no restrictions. Many public domain packages are available, the most notable of which are the X Window System and BSD operating system. Such packages may have some license limitations; for example, BSD simply requires that the University of California at Berkeley be acknowledged as a copyright holder in the software. At TiVo the main public domain tool we use is the Tcl scripting language. TiVo developed a proprietary extension to Tcl for manipulating the database and media file system on the TCD.

Software development.TiVo performs all development for the TiVo Service and TiVo Client Device on Red Hat Linux-based PCs. Using a cross-compilation environment built on the GCC compiler suite and GNU make, a developer can build software for any of the currently supported microprocessor types (PowerPC, MIPS, and x86) and client devices (Series 1, Series 2, DirecTV with TiVo, etc.). Software built for a TCD may then be downloaded into a particular client device for testing. Interactive debugging is supported using gdb on the workstation and remote gdb debugging on the TCD. Generally, the TiVo application is written in C++.

We build two different flavors of the TiVo application in parallel: a debug version and a release version. We attempt to have as little source difference as possible for each version and rely on macros to turn on or off embedded debugging aids. For example, we make liberal use of assertion checking during debugging, compiling out such assertions for the release version. Because of the complexity of the application, we also embed an extensive in-line logging facility that allows developers to perform detailed analyses.

Red Hat Linux is also used for build and release management. Using an array of Linux-based PCs, TiVo performs complete software builds for each client device type continuously during the day as new changes are made. As of this writing, seven different releases are under active development, each built with separate debug and release versions for the Series 2 TCD and a Red Hat 7.x-based PC. The source trees for these releases range in size from 650,000 lines of code to nearly 1 million lines, including GPL and public domain sources. These builds are made available to developers immediately or as regular packages after daily automated regression testing. We use the GCC tool-chain as a cross-compilation environment for all software and take great advantage of its many features and enhancements.

All software under active development is maintained using the commercial Perforce version and configuration management system, a cross-platform proprietary software product. Although we began development six years ago using the GPL-based Concurrent Versioning System (CVS), the challenges of source control and configuration management in the TiVo environment soon dictated the use of a more robust and externally supported solution. The actual source trees are maintained on a Red Hat Linux-based server.

We use the Red Hat Package Manager (RPM) for packaging software builds for distribution, download, and installation. Perl and Python are used in development as scripting and macro-programming languages. Tcl is used in some cases, as is the Tk windowing package for the construction of various development support tools.

As is usual in most software development environments, many programmers rely on the GPL-based emacs text editor, whereas another large group relies on the "charityware" vim text editor.
Managing Open Source

The use of open source in combination with proprietary software requires attention to how the software is combined and maintained. In general, all open source software in use at TiVo, with the exception of public domain software, falls under the GNU Public Library License. GPL-based software is maintained under separate source directories with the COPYING file prominent in the base directory for the software. Except for the libraries, the open source software we use is in the form of utilities (e.g., the bash shell, the Linux modutils package, or syslogd) or as part of the software build chain (such as GNU make). Over time, the ratio of open source software lines in use versus proprietary software has declined. This is a result of both the increasing amount of proprietary software and replacement of open source software with proprietary software that is better tuned to our needs.

TiVo uses only those libraries released under the GNU Lesser General Public License (LGPL). This allows the direct linking of proprietary software with those libraries. For example, we rely on the glibc for standard C and C++ library routines.
HARDWARE DRIVER SUPPORT

The TiVo Client Device is of necessity a closed system. As a service provider, we must prevent theft of service, so TiVo pays a great deal of attention to security of the device and resistance to hacking. Additionally, we sell the TCD at a price that provides a net margin to retailers, but no profit to us. Our profits come from providing service to each device over time, rather than from up-front costs.

For this reason, it is important that the devices not be re-purposed and that our software not be replaced with other implementations of DVR functionality. Thus, hardware drivers are kept as proprietary sources and are built as loadable modules. Our interpretation of the GPL is that such use is permitted; we are careful to separate these modules from the Linux kernel sources to avoid any confusion. In fact, as has been demonstrated by the very active TiVo hacking community, it is possible to take our published sources, build a Linux kernel, and load it on some versions of the TCD. The kernel will run properly, loading the proprietary modules and executing the TiVo application, thus staying within the GPL spirit.

This use is somewhat controversial. Advocates of the GPL and the Free Software Foundation interpret the GPL more stringently to disallow the use of proprietary modules. On the other hand, Linus Torvalds has stated that proprietary loadable modules are acceptable. Regardless, the use of proprietary modules has contributed greatly to the explosive growth in the use of Linux and GNU software in general, and is key to the use of Linux in embedded systems. Had this ability not been available, proprietary operating systems would certainly continue to be the norm for most commercial embedded applications.

GPL software is supposed to be "free, as in free speech not free beer" (attributed to GNU Project and FSF founder Richard Stallman). When such speech is not a modification of another's speech, it should also be recognized that the freedom not to speak must be preserved as a corollary.
Making Sources Available to Subscribers

Under terms of the GPL, if we incorporate GPL-based sources into commercial products, purchasers of such products must have access to incorporated GPL sources.

TiVo complies with these terms by publishing on its Web site (http://www.tivo.com/linux) the GPL and public domain sources used in each release, along with the tools used to build those sources. The intention is that any interested party would be able to re-create the derived binary versions included in the device using those sources. No proprietary software is included in these sources.

During development, TiVo may modify these sources. These modifications are included in the sources made available on the Web site, again under provisions of the GPL. From time to time, TiVo also makes some of its proprietary developments available under the GPL or as public domain sources for the benefit of the developer community. For example, TiVo has released a software development kit as part of its Home Media Option (HMO), a software application for the TCD that enables the playback of music or digital photographs across a home network from a personal computer, allows transfer of programs among TCDs in the home, and provides the ability to schedule the recording of programs from a remote Web browser. This kit documents our network protocols and provides sample code for a server application (see http://www.tivo.com/developer).

At TiVo we believe that making our modifications and enhancements to these sources generally available is part of our contribution back to the open source community and is an acknowledgment of the value that open source has brought to our products. As we neither sell nor distribute the software used in development and in the TiVo Service itself, we do not publish the underlying GPL-based or public domain sources.
TRACKING NEW VERSIONS

Because of the closed nature of the TiVo Client Device, there is little need or desire for TiVo to keep up with new versions of the open sources incorporated into the device. In fact, once a particular component has been debugged and verified, we want to avoid any changes to that component, which would require re-verification of its operation. Indeed, many of the sources in use are those first incorporated in the first TCD software release.

There are a few notable exceptions to this philosophy. First, the Linux kernel is a rapidly evolving software project, with performance enhancements, new capabilities, and bug fixes being added continuously. A great deal of hardware driver work is also under way, and at TiVo we wish to take advantage of new hardware and better performance as appropriate. This makes it worthwhile for us to track the kernel closely. Thus, while a particular kernel version will be selected, tested, and frozen early in the software development cycle, new software releases from TiVo will typically incorporate the latest kernel changes.

Secondly, the GCC tool suite is a critical component of TiVo's software development environment. Clearly, it is important that we verify and validate the operation of the GCC tools before using them, a tremendous undertaking. This means that we carefully choose a particular version of the tool suite to work with and validate it by building all current versions and releases under development followed by extensive testing of the resulting binaries. Because of the great effort involved in this testing, we continue to use the same tools for a considerable time period. Thus, TiVo has moved to a new GCC version only once in its existence. Similarly, we rely a great deal on the operation of the glibc family of libraries, and we typically move to new libraries coincident with a move to new GCC tools.
Closing Remarks

The evolution of open source has been remarkable since Richard Stallman proposed the concept. Today, many open source projects are recognized as high-quality undertakings, often exceeding the quality of commercial offerings while providing greater performance and more features. This comes naturally from the open nature of the source code, where many developers can study the code, find and fix flaws, and validate the security and proper operation of the code for production use.

Open source has been beneficial to TiVo and will continue to be in the foreseeable future. Careful management of our sources to abide by the terms of the GNU General Public License while protecting our proprietary developments is a small price to pay for this benefit.
References and Footnotes

1. The Unix trademark is registered to and owned by The Open Group.
2. "Twenty Years of Berkeley Unix: From AT&T-Owned to Freely Redistributable," Kirk McKusick, http://www.oreilly.com/catalog/ opensources/book/kirkmck.html.
3. Yes, I was at this first meeting, representing SGI. I was also present when the Hamilton Group traveled to New York to meet with AT&T and hear how AT&T would work with the remainder of the computer industry. The arrogance shown by AT&T at that meeting toward the computer manufacturers assured the creation of an alternative effort.
4. "Endianess" of microprocessors continues to cause a great chasm in the computing world. The MIPS microprocessor architecture supports both little-endian and big-endian computing paradigms. Because DEC and Compaq led the ACE initiative, the group focus was on the little-endian paradigm. This led to the formation of an opposing effort, the Apache group (think "bigIndian"), which promoted a big-endian alternative, based on System V Unix.
5. "OSI Position Paper on the SCO-vs.-IBM Complaint," Eric Raymond and Rob Landley, http://www.opensource.org/sco-vs-ibm.html.
6. I am sometimes asked why we didn't use a BSD-based operating system. The BSD license would allow us to keep any modifications to the source proprietary. BSD was more oriented toward server applications, however, and the development community around Linux was very active and growing. This meant that we could look forward to aggressive driver support for new devices and capabilities, as well as ongoing improvements to the kernel. BSD-based operating systems were mature and on a much slower development cycle. The advantages of using Linux outweighed any loss of proprietary opportunities.
7. A full description of this process may be found in a whitepaper TiVo submitted to the Federal Trade Commission describing TiVo's privacy management process: http://www.tivo.com/pdfs/ftc_letter.pdf.

JIM BARTON is co-founder, chief technical officer, and senior vice president of research and development at TiVo Inc. He is responsible for all product development, and his area of emphasis is on software and digital video streaming technologies behind the TiVo Service. Prior to co-founding TiVo, Barton was president and CEO of Network Age Software, a company he founded to develop software products targeted at managed electronic distribution. He also held executive positions with SGI, where he worked to develop the only large-scale interactive television system to be put into operational service. He served as CTO of Interactive Digital Solutions, a joint venture of Silicon Graphics and AT&T Network Systems to develop interactive television systems. Barton held positions at Hewlett-Packard and Bell Laboratories in operating system and networking technology and product development. He has a bachelor's degree in electrical engineering and a master's degree in computer science from the University of Colorado at Boulder.

Isn't TIVO bankrupt yet? (-1, Flamebait)

Anonymous Coward | more than 10 years ago | (#6768909)

Between their broken business model (selling hardware that forces you to pay monthly fees for unnecessary service, and leaving you with a useless piece of garbage when they finally die), and cable and satellite providers coming up with PVR hardware for free plus a monthly fee that's cheaper than TIVOs, I'm surprised they still exist.

It will be nice when they do die because it will open the playing field for companies with a proper business model.

Re:Isn't TIVO bankrupt yet? (3, Interesting)

tmhsiao (47750) | more than 10 years ago | (#6769016)

selling hardware that forces you to pay monthly fees for unnecessary service, and leaving you with a useless piece of garbage when they finally die

I believe that TiVo has stated that if they do go out of business, they'll open the scheduling code so that users aren't left with useless pieces of garbage.

Re:Isn't TIVO bankrupt yet? (5, Interesting)

ncc74656 (45571) | more than 10 years ago | (#6769083)

Between their broken business model (selling hardware that forces you to pay monthly fees for unnecessary service, and leaving you with a useless piece of garbage when they finally die), and cable and satellite providers coming up with PVR hardware for free plus a monthly fee that's cheaper than TIVOs, I'm surprised they still exist.

You are aware that there's a lifetime-service option, aren't you? I figure I got my money's worth out of that a year or so ago. If TiVo does go tango-uniform at some point, there are ways to keep the machine going without having it "phone home"...it's what TiVo owners in Canada and Australia are already doing.

(Yes, IHBT. BFD.)

Re:Isn't TIVO bankrupt yet? (1, Insightful)

Anonymous Coward | more than 10 years ago | (#6769086)

You may want to go check over at fool.com.. Don't have a link handy, but it had an excellent article basically stating tivo should hit profits by the quarter after next.

Realize that to most people, once the hardware costs are paid, 13$ a month is more than fair to watch tv on their own schedule, as opposed to having to sit down at prime time ;-)

Of course, dont get me wrong, I suspect a great ## of /.'ers actually dont watch much TV, but as a tivo-loving-owner, I have to say I refuse to watch tv without it.

(Especially after finding the 30-second skip hack!)

I like being able to work in the office whenever I want, come home, watch this mornings babylon 5, the evenings StarGate, and maybe just a little scrubs...

So if nothing else, SCO keep your hands off :-) I heart my tivo!

Re:Isn't TIVO bankrupt yet? (0, Troll)

jwilloug (6402) | more than 10 years ago | (#6769100)

TiVo doesn't sell hardware. They sell a subscription service to some end users, and they sell the TiVo software to hardware manufactures that want to make a non-crappy PVR (including several cable and satalite providers, DirecTV in particular).

Re:Isn't TIVO bankrupt yet? (3, Insightful)

NanoGator (522640) | more than 10 years ago | (#6769152)

"Between their broken business model (selling hardware that forces you to pay monthly fees for unnecessary service, and leaving you with a useless piece of garbage when they finally die), and cable and satellite providers coming up with PVR hardware for free plus a monthly fee that's cheaper than TIVOs, I'm surprised they still exist."

They provide a kick ass service and you're surprised they still exist?

Pls post (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#6768916)

scat porn feat. Michael

dish PVR 721 is GPL'd (5, Interesting)

bobsalt (575905) | more than 10 years ago | (#6768973)

was jsut browsing though dishnetwork.com and saw that they offer the software(minus some prop. stuff) fro thier PVR model

http://208.45.37.181/


Re:dish PVR 721 is GPL'd (0)

Anonymous Coward | more than 10 years ago | (#6769229)

Take a look at the bottom of the Web page. It proudly proclaims that it is hosted on a PVR 721!

Re:dish PVR 721 is GPL'd (1)

seanadams.com (463190) | more than 10 years ago | (#6769293)

Minus some prop. stuff? That's a bit of an understatement, dontcha think?

It's just the kernel plus a few things standard utilities - i.e. the bare minimum they're required to make available. *None* of their own userland software is available, same as Tivo [tivo.com] .

morons heave a sigh of relief (0)

Anonymous Coward | more than 10 years ago | (#6768985)

the first relevant story since the planet/population rescue program began.

Symantec? (0, Offtopic)

HepCatA (313858) | more than 10 years ago | (#6768994)

Hasn't Symantec also been doing this with their Velociraptor products?

Nits (4, Interesting)

crumley (12964) | more than 10 years ago | (#6769034)

I love my TivO, and I thought that the article was pretty interesting, but I think I found a couple of small problems with it.
Still-famous companies entered the GNU/Linux distribution business: Red Hat, VA Linux, Slackware, and others.
As I recall, VA Linux never had their own Linux distribution. The started out selling hardware with Linux pre-installed, grew too quickly into other areas, and then crashed.
Public domain soft-ware. This is software that has been made available for any use, with no restrictions. Many public domain packages are available, the most notable of which are the X Window System and BSD operating system.
While I can see how a category such as Barton's "public domain software" could be useful, I think that he has named it very poorly. There is are crucial differences between software that is in public domain, which has no copyright, and BSD software. Public domain software can whith a few alterations be claimed by anyone as there own, while the copyright notices withing BSD software must not be removed. Of course, you can still do pretty much anything you want with BSD software, other than claim it as your own.

Re:Nits (2, Informative)

DrSmooth (22080) | more than 10 years ago | (#6769183)


As I recall, VA Linux never had their own Linux distribution. The started out selling hardware with Linux pre-installed, grew too quickly into other areas, and then crashed.

Having signed for more than my fair share of VA Linux hardware deliveries, I can confirm that they did, indeeed, have their own distribution (in the loosest sense).

The distro was based off of RedHat, carried the same revision numbers as RedHat, but came on VA-labeled media with VA-specific software for server administration.


% cat /etc/va-release
VA Linux Release 6.2.4 02/21/01

there is a revolution comming. (3, Insightful)

514x0r (691137) | more than 10 years ago | (#6769065)

rather than sending jobs to india, lowering TCO is the way to go. as more companies--ie, ernie ball and now tivo--hail the benefits of open source the movement gains momenteum. eventually there will be a[nother] tech revolution......

bring it on.

"GNU Public Library License"? (0)

Anonymous Coward | more than 10 years ago | (#6769118)

"In general, all open source software in use at TiVo, with the exception of public domain software, falls under the GNU Public Library License."

GNU PLL?

In general, I don't know what the license thingamajig is called but I will write an entire article about it.

Why the GPL? (2, Interesting)

evilviper (135110) | more than 10 years ago | (#6769127)

Can anyone tell me... If they are going to create a closed-source product, why did they go the Linux route, instead of using (Free/Net/Open)BSD?

I am at a real loss to tell what the advantage is... In a non-embedded environment, it's reasonable, because you want to support the greatest ammount of hardware as possible. But with an embedded system, they only need support for one TV-capture card, one video card, one network card, etc. They aren't using any stock Linux software, it's all custom.

In fact, the things they say were needed in the article, (performance, stability, good vm) are unarguable better in the BSDs.

So why do they use Linux? Not trying to troll, just wondering what advantage it really has in such an embedded system.

Re:Why the GPL? (1)

90XDoubleSide (522791) | more than 10 years ago | (#6769140)

WEll, TiVo actually supports a couple dozen network adaptors (it doesn't come with one). But I don't get why that would be enough reason by itself. Seems more likely that was just what more people knew when they started out, and they certainly wouldn't want to change now.

Re:Why the GPL? (1)

stratjakt (596332) | more than 10 years ago | (#6769162)

Maybe they just had more indepth knowledge of Linux, or more likely, maybe BSD wasnt such a viable alternative in the mid 90s. He says that linux had a PowerPC port already (though it needed lots of "sprucing up"), I dont think BSD had one until Apple came along.

IMO I prefer the BSD license. It has a more academic flavor to it. Learn from the code, use it, borrow it, no strings attached. GPL comes with a catch, it's kind of like your 5th grade math teacher teaching you to do division "on one condition".

But the whole movement seems to be moving towards the GPL, and whole litany of problems the license brings. It'll be interesting to watch the future legal status of the GPL, this SCO thing is just the tip of the iceberg.

Re:Why the GPL? (1)

zero-one (79216) | more than 10 years ago | (#6769249)

Perhaps "Favourite Licence" might make for an intresting poll question. I guess the options would be GPL, LGPL, BSD, MS EULA and unlicenced.

this is off topic but it just struck me (0)

Anonymous Coward | more than 10 years ago | (#6769146)

The whole SCO fiasco is what a dying dinosaur looks like.

Just wait, expect similiar bullshit from the RIAA as they reach their death bed.

Soon to be followed by the MPAA.

hmmm (3, Funny)

SomeOtherGuy (179082) | more than 10 years ago | (#6769151)

My TivO -- One more machine I better make sure I write that $699.00 check to SCO for.

Damn there goes next weeks lunch money.

Best quote in the article (1)

vslashg (209560) | more than 10 years ago | (#6769158)

GPL software is supposed to be "free, as in free speech not free beer" (attributed to GNU Project and FSF founder Richard Stallman). When such speech is not a modification of another's speech, it should also be recognized that the freedom not to speak must be preserved as a corollary.

An interesting bit (5, Interesting)

Merk (25521) | more than 10 years ago | (#6769163)

The TiVo Client Device is of necessity a closed system. As a service provider, we must prevent theft of service, so TiVo pays a great deal of attention to security of the device and resistance to hacking. Additionally, we sell the TCD at a price that provides a net margin to retailers, but no profit to us. Our profits come from providing service to each device over time, rather than from up-front costs.

I think it is interesting that TiVo says they pay a lot of attention to the security of the device. That is true now, but with the first TiVo devices, getting a BASH prompt on the device turned out to be relatively easy. On boot a menu was available on the serial port with a hardcoded password. Using that password you could make all kinds of changes to the way the machine started up.

He also metions talks about people getting around using the service. For years, the TiVo hacking community has known how to partially emulate the service by creating slice files and manually loading them onto the device. Recently hackers have figured out how to get an unmodified TiVo to use a service emulator. What's interesting about these development efforts is that they are not putting TiVo out of business.

In the article, he makes no mention of the goodwill that TiVo has fostered with their users, even their hackers. Soon after TiVo was created, Richard Bullwinkle, their former "Chief Evangelist" started talking to people on bulletin boards. He was always very helpful and forthcoming, with only minor exceptions. He wouldn't talk about bypassing the TiVo service and he wouldn't talk about extracting video from the device. If you didn't talk about those things, he was perfectly happy to help out. Although TiVo was in business to make money through their service, they didn't screw over people who didn't want to subscribe [buffalo.edu] . That's such a treat from a for-profit company. Imagine Microsoft, who also sells their set-top device at a loss, treating customers who don't want to use theirs for gaming without hostility.

When Andrew Tridgell [anu.edu.au] , (the same guy who created Samba and rsync) figured out how to create TiVo slice files so he could use the machine in Australia, it was probably this goodwill which made him choose to not release the info to the general public. Instead, it remained a closely guarded secret.

Today, years later, the people who have followed in Tridge's footsteps, have refused to destroy TiVo's revenue stream. They have been very careful to try to make sure that only people who can't get TiVo service in their area are allowed to get around it.

I think the goodwill that TiVo has is partly because of their general attitude towards their customers (and towards the hacker community) and partly the fact they used open-source software, and followed the license requirements. And, it is this, not their security measures, which have ensured that they've maintained a revenue stream -- despite using the "razor and razor blades" pricing model.

I just wish Mr. Barton hadn't used a loaded term "service theft" to describe people who are using their TiVos without subscribing to the service. That term would be appropriate if people were downloading TiVo data without having a subscription, but not people who are simply choosing not to subscribe and are finding alternatives.

Huh? (2, Insightful)

rudy_wayne (414635) | more than 10 years ago | (#6769196)

>> "13$ a month is more than fair to watch tv on their own schedule, as opposed to having to sit down at prime time"

Gee, I've been doing that with my VCR since 1984.

We use open source in our companies product (0)

kberg108 (175765) | more than 10 years ago | (#6769217)

and we are careful to give the credit to those engineers that build that code but we just don't modify any of it. I'm sure most companies benifiting from open source are using it in the same way we are. If we were in need of modifying some of the Open source packages it would most likley be a bug fix and everybody is into submitting bug fixes to the open source world. right? Besides it's so easy to just use OS packages call them or making objects that wrap OS code I can't imagine why you would want to actually cut and paste open source code into your closed source app. Maybe I'm just not malicious enough :)

Why don't people hack TiVo? (-1, Troll)

Anonymous Coward | more than 10 years ago | (#6769309)

It seems like an obvious thing to do to avoid paying $12 a month for data that is freely available anyway. People go out of their way to hack the XBox and Lexmark printer cartridges, and are outraged when the companies that make these products tell them they shouldn't do that. Why does TiVo get special treatment? They don't even release their source. They only release what they absolutely must under GPL, so I wouldn't consider them OSS friendly. They do a lot more taking than giving.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...