Yep, there was some after-the fact updates, but again, too much of it reads like a company evaluating MS software from the outside. I suspect it's a cut-n-paste job on an old, internal Hotmail document.
I'm not sure, but willing to bet that most of it was glommed from an old Hotmail document. It's just too non-MSish. It doesn't make sense for them to be thinking internally about the burden of licenses for their own installations.
Looks like this was written by someone from hotmail explaining why they chose UNIX over Windows initially. A lot of it describes trade-offs that would not matter at all to Microsoft (e.g. licensing costs of Win2k) and the impact to a "startup" is mentioned at least once.
I don't think this is a Microsoft internal memo so much as a hotmail-to-Microsoft internal memo.
You're assuming that a studio would allow that. It used to be that a *name* could get a cut of the gross, but now the way it's done is the name actors either get hard cash up front or they become producers. No one gets gross. No one. If you ask for gross, you might as well be asking for a tour of the front door.
At work, I'm 100% Linux. I used to vmware a Windows install to view some documents, but at this point, crossover gives me access to the very few things that the Linux desktop apps can't.
Evoultion was a big step. I've used VM, mutt, elm, pine, Mozilla and none of them gave me as much power and ease of use as Evolution. Good thing too, I was a hair's width from defecting to Windows to run outlook. For all that it's a piece of crap, I needed something that didn't think of mail as a pile of text that may or may not have a tarfile attached.:)
If it's done right, in an environment where you're reading from a disk controler and writing to an ethernet device buffer, you really just want to do a DMA transfer. In generic, you are right, but there are special cases where you can get insane performance improvements by never going through main memory.
I used to work for a serious site that would have to be in that domain. Why? Because they catered to high schools and of course, high schools will be required to use the "child-safe, corners-rounded-off, don't-want-to-learn-about-that-nasty-evolution" Internet.
The funny thing is that we would have had to change our entire business model around that domain because we provided an open publishing system to High School teachers. Some of the stuff those teachers let their kids put up would probably not be "acceptable", and we would have hand to police those schools from seeing themselves!
You make some good points, but you're missing my point around abstraction. Yes, there are not many web apps which are written in 100% assembler (there are some, and leave you to guess what platforms that would make sense on). However, there aren't many *operating systems* written 100% in assembly. Linux, for example, has a very tiny core of assembly for each platform.
The CPAN library for Perl has a ton of C code, but only small bits and chunks in each module, where it's needed.
But, if you program in C, will you ever have to know assembly? Probably.
If you program in Perl, will you ever have to know C? Probably.
If you program in Java... well, Java is a special case. It does tend to use libraries that are written (at least in part) in C++, but Java really tries (and fails, of course) to prove this Slasdot story wrong. The idea that abstractions must be leaky is anethema (sp?) to Java's whole world view.
My point being that most Web applications rely on SSL or sendfile(2) and the person who wrote those had to know assembly.
Did you think that the first sendfile implementation was just for grins? It was likely someone who could not get the performance out of his app that he needed.
The AI thing was another great example. Why the heck would you apply the same language selection criteria to sound management as you would to your game AI?! That would be a huge mistake.
If someone asked me what the one right language was to perform some very large task in, I would probably respond, "English... at least for the requirements specification... then re-evaluate what languages are good for each peice".
Do you REALLY believe that? Are you mad? I can be pretty sure that in my career I will never be required to develop in assembler.
Oh so!?
And if your C code starts to break in odd ways, and you find that it's a GCC code gen bug, then will you just throw up your hands, or will you write that section of code as inline asm?
And even if I do, I just have to brush up on my asm - big deal.
I don't know what you program in, but imagine someone who only knows how to program in a high-level code generation tool that writes code in the language YOU use saying "if I ever have to program in the underlying language, I'd just have to brush up on it."
To be honest, if I was asked to do that I'd probably quit anyway, it's not something I enjoy.
Do you quit jobs every time one of the duties isn't fun? You must have quite a string of jobs behind you. Either that, or you do some things that you don't enjoy in order to take on a majority of work that you do, no?
Sure it's important to understand what's going on under the hood, but you have to use the right tools for the right job. No one would cut a lawn with scissors, or someones hair with a mower.
In the real world, you usually don't run into a 2-inch square lawn or a 5-acre head of hair, but in programming such absurd problem domains are our bread and butter.
Likewise I wouldn't write a FPS game in prolog or a web application in asm.
Oh no?!
What if your FPS needed part of its AI to do something infrequently, but in a manner that really begged for a backward chaining solution? I'd throw prolog in there if I could find a decent prolog compiler.
No web applications in asm?! *snicker* Every SSL implementation I've seen uses ASM to speed the crypto. sendfile(2) was designed specifically for Web applications and is very hardware savvy, so it would be near impossible to implement in pure C.
Yes, when these needs come up you hide them behind an abstraction (e.g. an SSL library or a system call), but someone had to say "hey, I need a Web app that does X, and X needs a low-level implementation!" Then they wrote that low-level code and then built an abstraction around it.
That is the key to abstracting correctly. Not that you throw away all of your abstractions when they become cumbersome, but that you select out specific portions of your abstraction to imrpove by "denormalizing them" if you will into lower-level tools.
Re:Not just better playback
on
Film Gimp
·
· Score: 2
what exactly did yuo explain after this? how 8 bit per channel is often represented?
Correct. You were explaining bits-per-channel, but your average slashdot reader is not a graphics geek, and probably would not have understood how 8-bits got you 16-million. Perhaps, given gaming and all, I'm wrong about that distribution, but none-the-less it's good to be clear.
well then lets pretend filter A multiplies all channels by say 1/255. filter B multiplies all channels by 255
I submit to you that that is a terrible filter, and one that should not be allowed out into the wild.
On the other hand, there are many, many, many such filters.
Even the more reasonable, "multiply all channels by x/maxvalue where x is some reasonable value," is a bit problemattic. Arithmatic filters are almost always a mistake unless they work on matricies, and even then, there's some color-space modeling that they should be doing in order to get their results to come out right.
Most filter authors don't even understand how a given color space could impinge on their results, so you end up with truly crappy results. Mittigating that slightly by using more and more bits is not a solution. Building a tool like The Gimp, but with and API that forces you to adopt a color model and then apply the correct techniques for that color model would be the correct long-term solution.
Understand, I'm not flaming you. I appreciate your giving the Slashdot community information. I just want to combat the attitude that is industry-wide that there is somehow a magic number of bits-per-channel that, to quote the original post, "removes rounding errors".
Now, we can get into how my comments here are impractical for the next 10-20 years because of outstanding patents on just about every means of managing color in an image...:-(
Re:Not just better playback
on
Film Gimp
·
· Score: 3, Informative
It uses 16 bits per channel instead of only 8 like the regular gimp. That means that instead of roughly 16 million colors, you get 16 million squared colors.
And since that math doesn't work, let me explain for those in the cheap seats:
8 bits *per channel* means a total of 24 bits, which yields 16777215 color combinations. When you hear people say things like "32-bit color", they're talking about storage, not bits-per-channel (which will still be 8, and the excess 8 bits is used in various ways, including as an alpha or transparency channel that desribes the opacity of the resulting color).
This adds much less chance of rounding errors on compositing
That's quite untrue. What it does is reduce the impact of rounding errors. The errors persist all the same, and really the solution is to film digitally, composite digitally and master digitally. At which point such problems become insignificant even at 8-bits-per-channel.
so you would be happy if the cell company decided to remove the call history feature without telling you?
If I subscribed to a software update service and that's what they did, I would complain to the cell phone company. Are you trying to tell me that being able to subscribe to software updates is wrong, or that their being on by default with TiVo is wrong? Or are you simply ill informed and think tha you cannot turn off the so-called "dial home" feature on a TiVo?
I dont want them to and the only way to keep a TIVO running like it did when it was purchased is to not let it ever talk to the mother company.
Horse hockey. There are a million kits out there for networking support, and the commands required to back your OS out to the network are VERY well documented on a great many sites.
Personally, I don't bother. I vote with my customer support calls and my wallet. So far I've had to use neither, but the day may come when TiVo does something I'm unhappy with and don't want to keep. If they don't offer me an option to back out via customer service, I'll simply buy their competition's device.
so, out of the box, no clock set so you cannot tell it to record at 10 pm
This is also incorrect. You can log into the box and set the time with the "date" command just like any Linux box.
You can also let it make the call in to set the time and get schedule information once and then use it as a digital VCR from then on in. Of course, you won't have all of the most important attributes of a TiVo (like the guide information and TiVo's suggestions), but that's your call.
Let me repeat that for those in the cheap-seats: THAT'S YOUR CALL. You have a Linux-based DVR. Have fun.
and if you let it call home and not subscribe... you get nice pop-up ad's all the time and many functions that should work are disabled. just look at the tivo forums for a list of funtions that do not require any of the guide data to function that are intentionally disabled to "convince" you to subscribe.
I invite people to go have a look at these forums. You will find that the features that are disabled are basically all of the things that require a guide database.
This TiVo paranoia is just silly. Buy the device and use it like they intend. If you find you don't like it 30 days later, take it back to the shop and get your money back and buy a ReplayTV. USE YOUR WALLET TO VOTE.
I do know a union person who moves in a lot of political circles. Is there an angle that I could give him that would make him want to act on this issue?
Honestly, I can't think of one. The RIAA are being slimy as hell, but he has to choose his battles.
Don't you realize that they don't care how much you break their copy protection?
Actually, that's not true. They care a great deal. If they can demonstrate to the US congress (yes, US... no one bothers trying to convice Europe or Asia of these things, as they will generally follow US lead, which may be sad, but is true) that copy protection keeps getting defeated and therefore they are "losing" lots of sales, they will be able to get legislation passed that requires CD-RW manufacturers to build in copy-protection.
Notice that they don't give a flying crap about the largest source of illegal music in the world (mass CD copying). They care that joe average with his PC might be able to get some milage out of their old CDs or listen to music in the car that wasn't purchased specifically for car listening, instead of having to impulse-by the entire CD again. That's a threat, and regardless of how right or wrong it might be, they'll work until you can be shot for doing it.
It's our job to find ways to make our politicians understand that this is not acceptable and that a sizable fraction of their constituents want to be able to listen to the music they bought.
A great scene is a great film (and I presume a great play, but I was too young to see it at the time).
The line is, of course, from The Wiz, which starred Diana Ross (Dorothy) Michael Jackson (Scarecrow) and Nipsey Russell (Tinman). My favorite song was "You Can't Win", which was sung by MJ. It's basically the three laws of thermodymamics, turned into a song about pessimism.
The "Red is Dead" line comes from a scene were they first get to the Emerald City. Everyone's dancing around this huge city square that's all lit green. Everyone's actually wearing white, but because of the lighting it looks green. Then there's an announcement that green is no longer in and the new color is red. Lights change, everyone is in red, and the dance continues. A few minutes later, the announcement proclaims, "Red is Dead" and I think the color moves on to gold.
This film was made at the hight of the disco craze, and Diana Ross was very much a part of it. I was kind of suprised to see her poking such fun at the whirling fashion trends that came and went in weeks in the late 70s.
copyright law is a fundamental building block of the GPL, just as atoms are of biological viruses.
This is a highly flawed analogy. Atoms do not propagate. Copyright does.
Also, you've failed to address the fact that all licenses (except the ones that go even further into saying that you simply don't own your copy of the software) propagate in this way.
As for copyright... you are incorrect. By modifying a work, I create a derived work. I can claim copyright over my changes (unless there is a prior agreement to the contrary), but my changes are not the derived work. In practice, this results in either a) copyright assignment (as the gcc team requires) or shared copyright (as with the Linux kernel). Linus most certainly does not lose his copyright on your modified Linux kernel! Nor do you lose the right to control your changes.
You can GIVE UP YOUR RIGHT TO CONTROL THOSE CHANGES, in whole or in part. The GPL requires that you give them up in part if you wish to distribute changes.
I also take exception to this phrase, "element causing your punishment" There is no punishment involved. You have certain rights. You may use them. The GPL is not involved.
If you choose to apply the GPL you are granted certain other rights, but with restrictions. In nearly all contracts, the granting of rights comes with certain restrictions (there are three in the BSD license for example, one of which has been recinded). The GPL's restrictions are pretty mild as software licenses go. All they require is that you give what you got. You got the right to share, you give the right to share. You got the source, you give the source.
Every other concern about the GPL is a concern about copyright law (bundling, copying to memory, compilation, etc). These are the areas that the DMCA should have covered because they affect all software licensing, but instead it was a tool of big media to control viewing rights. Oh well.
X is just a hardware abstraction layer. This guy is talking about something radical and new. A way of abstracting the data beyond the constraints of platform and UI. Something that you could describe in a simple way that would allow you to locate data anywhere, interpret it in a way that made sense for you and render however and wherever appropriate. It could be the building blocks for a whole new way of communicating.
Oh, wait. That was the World Wide Web. Never mind.
Okay, fine. If you want to mince words then I admit it: The GPL is only viral if you try to sell or publish software. Pretty much all the people who have called it viral represent companies that sell software.
And do those people acknowledge that the MIT/X license, the MPL, the Artistic license, the BSD license, the GPL and every other license that doesn't start off with "you don't own this, we do, screw you" is exactly the same in this respect?
The point I'm making is that the license is not viral. Copyright law sets up the propagation rules.
You don't have a problem with the propagation, you have a problem withe the license. You don't like the fact that the license requires of you a set of behaviors that are incompatible with a certain business model.
That's cool. I understand. That's not in any way whatsoever viral. Restrictive, yes. The GPL is restrictive. It constrains you to either a non-business mode or a business-mode in which you do not rely on secrecy and restraint of distribution for profit.
If those two things are in your plan, you have a plan that is not compatible with the GPL. If getting source is in your plan, you have a plan that is incompatible with most proprietary software. If you have a plan that is not compatible with keeping the copyright/license notice intact in the source, your plan is incompatible with the BSD and MIT/X license.
These are incompatibilities of business plans. They happen all over every industry. A lot of the GPL-oriented businesses are banking on the idea that their business models are not only compatible with the GPL, but that they can change the way a lot of people deal with software. You don't have to be one of those businesses.
You have argued that copyright law is ubiquitous and of wide influence. It affects your magazine? Sure. That's quite different from being viral.
I never really said anything about copyright being either ubiquitous or of wide influence, though certainly it is quite influential.
The exercise was this: take a magazine. Cut it up, and make your own magazine out of it (adding and removing as you like).
This derived work is under the copyright of the original author of the magazine. In effect (and in the same way that GPLed software does) this copyright has propagated to your software!
Now, go grab the gcc sources. Hold your hand over the hard drive and speak this incantation: "I do not accept the terms of the GPL." BOOM! Your copy of the GCC source is no longer covered by the GPL. It's totaly, 100% free of it (actually, it never was under the GPL, but you just re-affirmed that you weren't going to change that)! No viral propagation, no fear of violating the GPL (you can't violate what the source isn't covered by). If you make a CD of those GCC sources and give them to all of your friends... wait for it... you're not violating the GPL one bit.
Of course, you're violating copyright law, and the original author can sue you for that, but this is just as true with a magazine. You've taken the GPL out of the loop and made GCC no more a GPLed work than your average magazine. Ooooh, spooky GPLed software. Who knows what THAT could do to your business!
BSD-licensed software, as an example, doesn't state outright that it is giving you a choice, but in reality it is too. You can accept the terms of the BSD license or not. If you do, you are granted certain rights (just like the GPL) and you are subject to certain restrictions (there are three of them, of which the copyright holders of BSD have recinded the third). If you do not, you have the rights granted to you by copyright law and fair use. Exactly the same reproductive stratagy as the GPL.
Gotta stop those suppressive anti-GPL thoughts from getting out.
Nothing of the sort. I respect alternate views, and I have some good friends whose opinions I respect that would not touch the GPL with a stick. Takes all kinds.
The problem is that there are people (like the "tripe" guy, above) who aren't thinking about the relative merits of X or Y, but just absolutely taking a stance of the GPL being evil. It doesn't matter what you produce to demonstrate that they're incorrect, it's just evil.
Fact is that RMS designed the GPL to be viral. If you go and talk to him you will discover pretty quickly that he lives on a completely different plane to other mortals.
You understand that those two statements are orthoganal, right? I used to worship the ground Stallman walked on back in the late 80s. He was just this incredibly cool figure off in some temple at MIT who cranked out amazing shit like gcc and EMACS (I didn't even like EMACS, but the code... wow).
When I actually got to know him, my opinion changed. I really think it took an asshole the caliber of Stallman to push the idea of a Free OS to the point that it actually happened.
The GPL may be Stallman's brain-child, and he may have had some very strange ideas about why it should exist, but the bottom line is that it's a lot bigger than he is now.
The GPL is an optional license, and as such, it's no more viral than you want it to be. Don't want to be bound by it's terms? Don't. Just use the software and be happy. Don't want to distribute under its terms? Don't. Write your own software and distribute it as PD, as proprietary or on the MIT/X license or the MPL, etc, etc.
You have choices. Even if you modify GPLed software (which is a right you do not have with proprietary software at all) you have the right to use the modified version without accepting the GPL. You even have the right to make use of it in other ways in accordance with fair use.
What you don't have the right to do is take someone else's work, modify it and then distribute it under a set of conditions that's more restrictive than those given to you.
Viral? No. If it were viral, it would infect your efforts as soon as you used it. As it is, what infects your program is copyright law.
Lawyers can be a pain in the ass but I have yet to find one who read the GPL and said 'hey no problemo here'.
Find a lawyer. Show them the GPL. Ask them this question word for word, "other than the part about disclaiming warantee, if I choose not to be bound by this license can I still use GPLed software and/or modify it for my own internal use in accordance with fair use provisions of copyright?"
The answer will be yes. If the answer is not yes, I suggest you get a Lawyer who can read English, since that is stated outright in very clear terms in the GPL.
The only reason why the GPL works is that most people either don't read it, don't understand it or don't care. I suspect that Red Hat and VALinux fall in the latter category since the probabiliy of RMS appearing in court to sue someone over copyright is unlikely to say the least.
Ok, now you're talking about a case where software is re-distributed by parties who have accepted the GPL.
First off, let's clear the air. You talk of "RMS", but RMS does not own the copyright on most of the things distributed by those companies.
Let's talk about gcc. That's a program that was originally written by RMS, so he has at least some call over it's fate.
Red Hat (as an example) distributes GCC. How would RMS have cause to sue them? Is there some scary provision of the GPL that says you can't put it on media and charge money for it? Nope, in fact the GPL explicitly says quite the oposite.
On what grounds do you expect Mr. Stallman to sue? That he doesn't like Fedoras? You don't just walk into civil court and say, "hey, I have this license agreement on my software and someone used it in exactly the way it says, so I want to sue them!" You kind of have to have a breach of contract first, or judges get a little twitchy with that whole frivolous lawsuit thing.
What they mean is, by using GPL software (infected?) and building off it you are required to GPL the changes as well.
This is true. However, it's not an apples-to-apples comparison. What is MS comparing that to? Building everything from scratch with MS tools? You certainly can't take Word and tweek just a bit of the code to make it do what you want and release it under whatever license you want.
You certainly could (in theory) establish a relationship with MS to OEM your own "Word" with changes, but the same goes for a GPLed program.
MS loves to call the GPL viral, but it's only viral in the sense that it lets you have some rights you don't get from them.
You made the mistake of assuming that I was not the original poster. I was. Other than that, you seem quite happy with C++, and that's cool. Most people who don't have to maintain other people's code for a living are.
Woefully, I've had to, and while C allows you to cause any number of problems, and so do high-level languages, C++ practically dares you to.
C's very simplicity is its strength, and C++ has thorwn that away in favor of being a hand-optimizable almost-high-level language.
You said "if I had to learn just one language".... I suggest that you should learn two. Learn a high level language (C++ programmers tend to be happy wiht Python, where I'm a Perl guy, but both are good) and learn to really use C to its fullest. If you do that, you will be able to program tens if not hundreds of times faster than you do in C++, because a) you will have truly high-level tools at your disposal and b) you will be able to debug your code much more reliably.
I'm getting very tired of this mistake. It's being pushed by MS, but it was started by the likes of Slashdotters who don't understand the terminology.
The GPL is not viral, copyright law is. The GPL is an optional license which you can opt out of by simply never accepting its terms. In which case, it has no sway over you at all, and you can walk away unscathed.
However, like all copyrighted works, GPLed software cannot be modified and "made your own". A modified (or "derived") work is just that.
When you use something like a compiler, there's some grey involved as to what the end product is. It has incorporated some headers and libraries that are part of the compiler suite (crt0.o, for example), so it's not just a "printing press for computers". This means that applications which incorporate parts of themselves into their ouput must make a special exception in their licensing terms in order to clarify the status of that output.
Now, here's the kicker... this is true regardless of what license you use! Yep, you can use the MIT/X license, the BSD license, the GPL, Microsoft's EULA (which is legally on much shakier ground than the GPL, BTW because it relies on this idea that you do not own the software that you purchased, which has been defeated as a tactic for books).
The only difference between using the GPL and a weaker license like the MIT/X or BSD licenses is that those licenses allow you to do nearly everything that Copyright law takes away. Not that I'm comparing those licenses to the GPL for any real reason. They're both very good licenses for what they are meant to do.
However, to say that it's the GPL that's viral is silly. Try cutting up a magazine, reassembling the articles and then publishing the result. I think you'll find that copyright law has infected your creative work without the GPL (or any other license) coming anywhere near you.
Yep, there was some after-the fact updates, but again, too much of it reads like a company evaluating MS software from the outside. I suspect it's a cut-n-paste job on an old, internal Hotmail document.
I'm not sure, but willing to bet that most of it was glommed from an old Hotmail document. It's just too non-MSish. It doesn't make sense for them to be thinking internally about the burden of licenses for their own installations.
Looks like this was written by someone from hotmail explaining why they chose UNIX over Windows initially. A lot of it describes trade-offs that would not matter at all to Microsoft (e.g. licensing costs of Win2k) and the impact to a "startup" is mentioned at least once.
I don't think this is a Microsoft internal memo so much as a hotmail-to-Microsoft internal memo.
You're assuming that a studio would allow that. It used to be that a *name* could get a cut of the gross, but now the way it's done is the name actors either get hard cash up front or they become producers. No one gets gross. No one. If you ask for gross, you might as well be asking for a tour of the front door.
At work, I'm 100% Linux. I used to vmware a Windows install to view some documents, but at this point, crossover gives me access to the very few things that the Linux desktop apps can't.
:)
Evoultion was a big step. I've used VM, mutt, elm, pine, Mozilla and none of them gave me as much power and ease of use as Evolution. Good thing too, I was a hair's width from defecting to Windows to run outlook. For all that it's a piece of crap, I needed something that didn't think of mail as a pile of text that may or may not have a tarfile attached.
If it's done right, in an environment where you're reading from a disk controler and writing to an ethernet device buffer, you really just want to do a DMA transfer. In generic, you are right, but there are special cases where you can get insane performance improvements by never going through main memory.
"no serious site..."
I used to work for a serious site that would have to be in that domain. Why? Because they catered to high schools and of course, high schools will be required to use the "child-safe, corners-rounded-off, don't-want-to-learn-about-that-nasty-evolution" Internet.
The funny thing is that we would have had to change our entire business model around that domain because we provided an open publishing system to High School teachers. Some of the stuff those teachers let their kids put up would probably not be "acceptable", and we would have hand to police those schools from seeing themselves!
You make some good points, but you're missing my point around abstraction. Yes, there are not many web apps which are written in 100% assembler (there are some, and leave you to guess what platforms that would make sense on). However, there aren't many *operating systems* written 100% in assembly. Linux, for example, has a very tiny core of assembly for each platform.
The CPAN library for Perl has a ton of C code, but only small bits and chunks in each module, where it's needed.
But, if you program in C, will you ever have to know assembly? Probably.
If you program in Perl, will you ever have to know C? Probably.
If you program in Java... well, Java is a special case. It does tend to use libraries that are written (at least in part) in C++, but Java really tries (and fails, of course) to prove this Slasdot story wrong. The idea that abstractions must be leaky is anethema (sp?) to Java's whole world view.
My point being that most Web applications rely on SSL or sendfile(2) and the person who wrote those had to know assembly.
Did you think that the first sendfile implementation was just for grins? It was likely someone who could not get the performance out of his app that he needed.
The AI thing was another great example. Why the heck would you apply the same language selection criteria to sound management as you would to your game AI?! That would be a huge mistake.
If someone asked me what the one right language was to perform some very large task in, I would probably respond, "English... at least for the requirements specification... then re-evaluate what languages are good for each peice".
Do you REALLY believe that? Are you mad? I can be pretty sure that in my career I will never be required to develop in assembler.
Oh so!?
And if your C code starts to break in odd ways, and you find that it's a GCC code gen bug, then will you just throw up your hands, or will you write that section of code as inline asm?
And even if I do, I just have to brush up on my asm - big deal.
I don't know what you program in, but imagine someone who only knows how to program in a high-level code generation tool that writes code in the language YOU use saying "if I ever have to program in the underlying language, I'd just have to brush up on it."
To be honest, if I was asked to do that I'd probably quit anyway, it's not something I enjoy.
Do you quit jobs every time one of the duties isn't fun? You must have quite a string of jobs behind you. Either that, or you do some things that you don't enjoy in order to take on a majority of work that you do, no?
Sure it's important to understand what's going on under the hood, but you have to use the right tools for the right job. No one would cut a lawn with scissors, or someones hair with a mower.
In the real world, you usually don't run into a 2-inch square lawn or a 5-acre head of hair, but in programming such absurd problem domains are our bread and butter.
Likewise I wouldn't write a FPS game in prolog or a web application in asm.
Oh no?!
What if your FPS needed part of its AI to do something infrequently, but in a manner that really begged for a backward chaining solution? I'd throw prolog in there if I could find a decent prolog compiler.
No web applications in asm?! *snicker* Every SSL implementation I've seen uses ASM to speed the crypto. sendfile(2) was designed specifically for Web applications and is very hardware savvy, so it would be near impossible to implement in pure C.
Yes, when these needs come up you hide them behind an abstraction (e.g. an SSL library or a system call), but someone had to say "hey, I need a Web app that does X, and X needs a low-level implementation!" Then they wrote that low-level code and then built an abstraction around it.
That is the key to abstracting correctly. Not that you throw away all of your abstractions when they become cumbersome, but that you select out specific portions of your abstraction to imrpove by "denormalizing them" if you will into lower-level tools.
what exactly did yuo explain after this? how 8 bit per channel is often represented?
:-(
Correct. You were explaining bits-per-channel, but your average slashdot reader is not a graphics geek, and probably would not have understood how 8-bits got you 16-million. Perhaps, given gaming and all, I'm wrong about that distribution, but none-the-less it's good to be clear.
well then lets pretend filter A multiplies all channels by say 1/255. filter B multiplies all channels by 255
I submit to you that that is a terrible filter, and one that should not be allowed out into the wild.
On the other hand, there are many, many, many such filters.
Even the more reasonable, "multiply all channels by x/maxvalue where x is some reasonable value," is a bit problemattic. Arithmatic filters are almost always a mistake unless they work on matricies, and even then, there's some color-space modeling that they should be doing in order to get their results to come out right.
Most filter authors don't even understand how a given color space could impinge on their results, so you end up with truly crappy results. Mittigating that slightly by using more and more bits is not a solution. Building a tool like The Gimp, but with and API that forces you to adopt a color model and then apply the correct techniques for that color model would be the correct long-term solution.
Understand, I'm not flaming you. I appreciate your giving the Slashdot community information. I just want to combat the attitude that is industry-wide that there is somehow a magic number of bits-per-channel that, to quote the original post, "removes rounding errors".
Now, we can get into how my comments here are impractical for the next 10-20 years because of outstanding patents on just about every means of managing color in an image...
It uses 16 bits per channel instead of only 8 like the regular gimp. That means that instead of roughly 16 million colors, you get 16 million squared colors.
And since that math doesn't work, let me explain for those in the cheap seats:
8 bits *per channel* means a total of 24 bits, which yields 16777215 color combinations. When you hear people say things like "32-bit color", they're talking about storage, not bits-per-channel (which will still be 8, and the excess 8 bits is used in various ways, including as an alpha or transparency channel that desribes the opacity of the resulting color).
This adds much less chance of rounding errors on compositing
That's quite untrue. What it does is reduce the impact of rounding errors. The errors persist all the same, and really the solution is to film digitally, composite digitally and master digitally. At which point such problems become insignificant even at 8-bits-per-channel.
"R U Stupid"
That's an unfortunate. Name. I recommend expanding the first two initials, and using the "S" as your last name, or just "NLN". Good luck with that
"the general public cant do the Tivo Hacks."
I wasn't responding to the general public. Lest ye forget, I was posting to Slashdot. You know, "News for nerds..."
If I were talking to my mother in-law, I would simply say "buy it, follow the instructions, watch TV"
so you would be happy if the cell company decided to remove the call history feature without telling you?
If I subscribed to a software update service and that's what they did, I would complain to the cell phone company. Are you trying to tell me that being able to subscribe to software updates is wrong, or that their being on by default with TiVo is wrong? Or are you simply ill informed and think tha you cannot turn off the so-called "dial home" feature on a TiVo?
I dont want them to and the only way to keep a TIVO running like it did when it was purchased is to not let it ever talk to the mother company.
Horse hockey. There are a million kits out there for networking support, and the commands required to back your OS out to the network are VERY well documented on a great many sites.
Personally, I don't bother. I vote with my customer support calls and my wallet. So far I've had to use neither, but the day may come when TiVo does something I'm unhappy with and don't want to keep. If they don't offer me an option to back out via customer service, I'll simply buy their competition's device.
so, out of the box, no clock set so you cannot tell it to record at 10 pm
This is also incorrect. You can log into the box and set the time with the "date" command just like any Linux box.
You can also let it make the call in to set the time and get schedule information once and then use it as a digital VCR from then on in. Of course, you won't have all of the most important attributes of a TiVo (like the guide information and TiVo's suggestions), but that's your call.
Let me repeat that for those in the cheap-seats: THAT'S YOUR CALL. You have a Linux-based DVR. Have fun.
and if you let it call home and not subscribe... you get nice pop-up ad's all the time and many functions that should work are disabled. just look at the tivo forums for a list of funtions that do not require any of the guide data to function that are intentionally disabled to "convince" you to subscribe.
I invite people to go have a look at these forums. You will find that the features that are disabled are basically all of the things that require a guide database.
This TiVo paranoia is just silly. Buy the device and use it like they intend. If you find you don't like it 30 days later, take it back to the shop and get your money back and buy a ReplayTV. USE YOUR WALLET TO VOTE.
I was basing the assumption on the quotes around the phrase. Who knows :)
I do know a union person who moves in a lot of political circles. Is there an angle that I could give him that would make him want to act on this issue?
Honestly, I can't think of one. The RIAA are being slimy as hell, but he has to choose his battles.
Don't you realize that they don't care how much you break their copy protection?
Actually, that's not true. They care a great deal. If they can demonstrate to the US congress (yes, US... no one bothers trying to convice Europe or Asia of these things, as they will generally follow US lead, which may be sad, but is true) that copy protection keeps getting defeated and therefore they are "losing" lots of sales, they will be able to get legislation passed that requires CD-RW manufacturers to build in copy-protection.
Notice that they don't give a flying crap about the largest source of illegal music in the world (mass CD copying). They care that joe average with his PC might be able to get some milage out of their old CDs or listen to music in the car that wasn't purchased specifically for car listening, instead of having to impulse-by the entire CD again. That's a threat, and regardless of how right or wrong it might be, they'll work until you can be shot for doing it.
It's our job to find ways to make our politicians understand that this is not acceptable and that a sizable fraction of their constituents want to be able to listen to the music they bought.
A great scene is a great film (and I presume a great play, but I was too young to see it at the time).
The line is, of course, from The Wiz, which starred Diana Ross (Dorothy) Michael Jackson (Scarecrow) and Nipsey Russell (Tinman). My favorite song was "You Can't Win", which was sung by MJ. It's basically the three laws of thermodymamics, turned into a song about pessimism.
The "Red is Dead" line comes from a scene were they first get to the Emerald City. Everyone's dancing around this huge city square that's all lit green. Everyone's actually wearing white, but because of the lighting it looks green. Then there's an announcement that green is no longer in and the new color is red. Lights change, everyone is in red, and the dance continues. A few minutes later, the announcement proclaims, "Red is Dead" and I think the color moves on to gold.
This film was made at the hight of the disco craze, and Diana Ross was very much a part of it. I was kind of suprised to see her poking such fun at the whirling fashion trends that came and went in weeks in the late 70s.
copyright law is a fundamental building block of the GPL, just as atoms are of biological viruses.
This is a highly flawed analogy. Atoms do not propagate. Copyright does.
Also, you've failed to address the fact that all licenses (except the ones that go even further into saying that you simply don't own your copy of the software) propagate in this way.
As for copyright... you are incorrect. By modifying a work, I create a derived work. I can claim copyright over my changes (unless there is a prior agreement to the contrary), but my changes are not the derived work. In practice, this results in either a) copyright assignment (as the gcc team requires) or shared copyright (as with the Linux kernel). Linus most certainly does not lose his copyright on your modified Linux kernel! Nor do you lose the right to control your changes.
You can GIVE UP YOUR RIGHT TO CONTROL THOSE CHANGES, in whole or in part. The GPL requires that you give them up in part if you wish to distribute changes.
I also take exception to this phrase, "element causing your punishment" There is no punishment involved. You have certain rights. You may use them. The GPL is not involved.
If you choose to apply the GPL you are granted certain other rights, but with restrictions. In nearly all contracts, the granting of rights comes with certain restrictions (there are three in the BSD license for example, one of which has been recinded). The GPL's restrictions are pretty mild as software licenses go. All they require is that you give what you got. You got the right to share, you give the right to share. You got the source, you give the source.
Every other concern about the GPL is a concern about copyright law (bundling, copying to memory, compilation, etc). These are the areas that the DMCA should have covered because they affect all software licensing, but instead it was a tool of big media to control viewing rights. Oh well.
X is just a hardware abstraction layer. This guy is talking about something radical and new. A way of abstracting the data beyond the constraints of platform and UI. Something that you could describe in a simple way that would allow you to locate data anywhere, interpret it in a way that made sense for you and render however and wherever appropriate. It could be the building blocks for a whole new way of communicating.
Oh, wait. That was the World Wide Web. Never mind.
Okay, fine. If you want to mince words then I admit it: The GPL is only viral if you try to sell or publish software. Pretty much all the people who have called it viral represent companies that sell software.
And do those people acknowledge that the MIT/X license, the MPL, the Artistic license, the BSD license, the GPL and every other license that doesn't start off with "you don't own this, we do, screw you" is exactly the same in this respect?
The point I'm making is that the license is not viral. Copyright law sets up the propagation rules.
You don't have a problem with the propagation, you have a problem withe the license. You don't like the fact that the license requires of you a set of behaviors that are incompatible with a certain business model.
That's cool. I understand. That's not in any way whatsoever viral. Restrictive, yes. The GPL is restrictive. It constrains you to either a non-business mode or a business-mode in which you do not rely on secrecy and restraint of distribution for profit.
If those two things are in your plan, you have a plan that is not compatible with the GPL. If getting source is in your plan, you have a plan that is incompatible with most proprietary software. If you have a plan that is not compatible with keeping the copyright/license notice intact in the source, your plan is incompatible with the BSD and MIT/X license.
These are incompatibilities of business plans. They happen all over every industry. A lot of the GPL-oriented businesses are banking on the idea that their business models are not only compatible with the GPL, but that they can change the way a lot of people deal with software. You don't have to be one of those businesses.
You have argued that copyright law is ubiquitous and of wide influence. It affects your magazine? Sure. That's quite different from being viral.
I never really said anything about copyright being either ubiquitous or of wide influence, though certainly it is quite influential.
The exercise was this: take a magazine. Cut it up, and make your own magazine out of it (adding and removing as you like).
This derived work is under the copyright of the original author of the magazine. In effect (and in the same way that GPLed software does) this copyright has propagated to your software!
Now, go grab the gcc sources. Hold your hand over the hard drive and speak this incantation: "I do not accept the terms of the GPL." BOOM! Your copy of the GCC source is no longer covered by the GPL. It's totaly, 100% free of it (actually, it never was under the GPL, but you just re-affirmed that you weren't going to change that)! No viral propagation, no fear of violating the GPL (you can't violate what the source isn't covered by). If you make a CD of those GCC sources and give them to all of your friends... wait for it... you're not violating the GPL one bit.
Of course, you're violating copyright law, and the original author can sue you for that, but this is just as true with a magazine. You've taken the GPL out of the loop and made GCC no more a GPLed work than your average magazine. Ooooh, spooky GPLed software. Who knows what THAT could do to your business!
BSD-licensed software, as an example, doesn't state outright that it is giving you a choice, but in reality it is too. You can accept the terms of the BSD license or not. If you do, you are granted certain rights (just like the GPL) and you are subject to certain restrictions (there are three of them, of which the copyright holders of BSD have recinded the third). If you do not, you have the rights granted to you by copyright law and fair use. Exactly the same reproductive stratagy as the GPL.
Gotta stop those suppressive anti-GPL thoughts from getting out.
Nothing of the sort. I respect alternate views, and I have some good friends whose opinions I respect that would not touch the GPL with a stick. Takes all kinds.
The problem is that there are people (like the "tripe" guy, above) who aren't thinking about the relative merits of X or Y, but just absolutely taking a stance of the GPL being evil. It doesn't matter what you produce to demonstrate that they're incorrect, it's just evil.
Fact is that RMS designed the GPL to be viral. If you go and talk to him you will discover pretty quickly that he lives on a completely different plane to other mortals.
You understand that those two statements are orthoganal, right? I used to worship the ground Stallman walked on back in the late 80s. He was just this incredibly cool figure off in some temple at MIT who cranked out amazing shit like gcc and EMACS (I didn't even like EMACS, but the code... wow).
When I actually got to know him, my opinion changed. I really think it took an asshole the caliber of Stallman to push the idea of a Free OS to the point that it actually happened.
The GPL may be Stallman's brain-child, and he may have had some very strange ideas about why it should exist, but the bottom line is that it's a lot bigger than he is now.
The GPL is an optional license, and as such, it's no more viral than you want it to be. Don't want to be bound by it's terms? Don't. Just use the software and be happy. Don't want to distribute under its terms? Don't. Write your own software and distribute it as PD, as proprietary or on the MIT/X license or the MPL, etc, etc.
You have choices. Even if you modify GPLed software (which is a right you do not have with proprietary software at all) you have the right to use the modified version without accepting the GPL. You even have the right to make use of it in other ways in accordance with fair use.
What you don't have the right to do is take someone else's work, modify it and then distribute it under a set of conditions that's more restrictive than those given to you.
Viral? No. If it were viral, it would infect your efforts as soon as you used it. As it is, what infects your program is copyright law.
Lawyers can be a pain in the ass but I have yet to find one who read the GPL and said 'hey no problemo here'.
Find a lawyer. Show them the GPL. Ask them this question word for word, "other than the part about disclaiming warantee, if I choose not to be bound by this license can I still use GPLed software and/or modify it for my own internal use in accordance with fair use provisions of copyright?"
The answer will be yes. If the answer is not yes, I suggest you get a Lawyer who can read English, since that is stated outright in very clear terms in the GPL.
The only reason why the GPL works is that most people either don't read it, don't understand it or don't care. I suspect that Red Hat and VALinux fall in the latter category since the probabiliy of RMS appearing in court to sue someone over copyright is unlikely to say the least.
Ok, now you're talking about a case where software is re-distributed by parties who have accepted the GPL.
First off, let's clear the air. You talk of "RMS", but RMS does not own the copyright on most of the things distributed by those companies.
Let's talk about gcc. That's a program that was originally written by RMS, so he has at least some call over it's fate.
Red Hat (as an example) distributes GCC. How would RMS have cause to sue them? Is there some scary provision of the GPL that says you can't put it on media and charge money for it? Nope, in fact the GPL explicitly says quite the oposite.
On what grounds do you expect Mr. Stallman to sue? That he doesn't like Fedoras? You don't just walk into civil court and say, "hey, I have this license agreement on my software and someone used it in exactly the way it says, so I want to sue them!" You kind of have to have a breach of contract first, or judges get a little twitchy with that whole frivolous lawsuit thing.
What they mean is, by using GPL software (infected?) and building off it you are required to GPL the changes as well.
This is true. However, it's not an apples-to-apples comparison. What is MS comparing that to? Building everything from scratch with MS tools? You certainly can't take Word and tweek just a bit of the code to make it do what you want and release it under whatever license you want.
You certainly could (in theory) establish a relationship with MS to OEM your own "Word" with changes, but the same goes for a GPLed program.
MS loves to call the GPL viral, but it's only viral in the sense that it lets you have some rights you don't get from them.
You made the mistake of assuming that I was not the original poster. I was. Other than that, you seem quite happy with C++, and that's cool. Most people who don't have to maintain other people's code for a living are.
Woefully, I've had to, and while C allows you to cause any number of problems, and so do high-level languages, C++ practically dares you to.
C's very simplicity is its strength, and C++ has thorwn that away in favor of being a hand-optimizable almost-high-level language.
You said "if I had to learn just one language".... I suggest that you should learn two. Learn a high level language (C++ programmers tend to be happy wiht Python, where I'm a Perl guy, but both are good) and learn to really use C to its fullest. If you do that, you will be able to program tens if not hundreds of times faster than you do in C++, because a) you will have truly high-level tools at your disposal and b) you will be able to debug your code much more reliably.
Good luck, and happy programming!
I'm getting very tired of this mistake. It's being pushed by MS, but it was started by the likes of Slashdotters who don't understand the terminology.
The GPL is not viral, copyright law is. The GPL is an optional license which you can opt out of by simply never accepting its terms. In which case, it has no sway over you at all, and you can walk away unscathed.
However, like all copyrighted works, GPLed software cannot be modified and "made your own". A modified (or "derived") work is just that.
When you use something like a compiler, there's some grey involved as to what the end product is. It has incorporated some headers and libraries that are part of the compiler suite (crt0.o, for example), so it's not just a "printing press for computers". This means that applications which incorporate parts of themselves into their ouput must make a special exception in their licensing terms in order to clarify the status of that output.
Now, here's the kicker... this is true regardless of what license you use! Yep, you can use the MIT/X license, the BSD license, the GPL, Microsoft's EULA (which is legally on much shakier ground than the GPL, BTW because it relies on this idea that you do not own the software that you purchased, which has been defeated as a tactic for books).
The only difference between using the GPL and a weaker license like the MIT/X or BSD licenses is that those licenses allow you to do nearly everything that Copyright law takes away. Not that I'm comparing those licenses to the GPL for any real reason. They're both very good licenses for what they are meant to do.
However, to say that it's the GPL that's viral is silly. Try cutting up a magazine, reassembling the articles and then publishing the result. I think you'll find that copyright law has infected your creative work without the GPL (or any other license) coming anywhere near you.