The problem is that he did publish it. It's not just his friend, it's most of the world. And now he's refusing to do new releases of the old version. If it was just a draft it would work, but *it wasn't a draft, it was a final, released film*.
It's not unclear, which is why it hasn't been tested. It is very clear on what you can and can't do, and no company with an ounce of sense on its legal team is going to try and challenge it. The only unclear part is what constitutes a derivative work, but that's a general copyright issue not specific to the GPL, so could easily be tested in some other situation. And I can't see anyone willing to be a test case for this either, for the very reason that it's unclear.
No, nothing prevents it, but you have to make more effort. Perl lets you leave off function parameters, use some neat one liners to compress loops, and trust the defaults for lots of things, encouraging you to be lazy. Sure, you can keep writing verbosely to make things understandable, but it takes a lot of willpower to do so when there are all those shortcuts available. You can write readable code in any language. And you can write unreadable code in any language. But it's easier to write unreadable code in perl.
It's clearly a while loop, and which bit is the loop body and which is the conditional is also clear. The body is bitshifting "code" to the left and then doing something involving getting a character; a bit of thought and you can probably see it's appending characters onto the end of "code". Then it's multiplying range and low by 256. Looking at the conditional it's pretty clear something OR something else AND something more. That first something would be confusing if you didn't know that ^ is XOR in c, yes, but that's a minor thing. The last bit is someone doing assignment in a conditional, trying to be leet, and so it's hard to understand, yes. But the basic structure at least is clear. Bad people can write bad code in any language, yes, but good people seem to be able to write bad perl easily. I've seen examples in perl books that would be incomprehensible without knowing perl, just something like while(){chomp;print} which is good perl (assuming I've remembered the syntax for print right) makes no sense unless you know how perl works. It's a while loop, yes, but wtf is it whiling? And what are those words in the body doing? Print is obviously printing, but printing what?
It's just on downloads you buy. Makes sense to me. If you buy a CD or a book you pay tax on it, so why shouldn't you pay tax when you buy downloads of the songs or ebooks?
Yeah, perl modules are a way to deal with it, but there's only so much you can put into a module. As for subroutines, you still need to be able to see and understand the program as a whole. It would take a very disciplined programmer to make a program modular enough that you could maintain it by simply looking at the subroutines in isolation.
Partly a question of trying before I buy, but there are times when I want to hear even songs I hate. Not many, but some. I don't spend 3 minutes listening to a song, I listen while I'm doing something else.
No it doesn't. Emerge means the devoted guys at gentoo were the ones who had to figure out all the underdocumented build order requirements. Also, emerge's chroot-like system for your install is a very clever bit of engineering that can actually handle packaging up gnome. Packaging it up with a more basic package-making tool is a real bitch, really it is. And without having packaged it you have no way to uninstall it.
KParts lets you embed one app inside another. So you can get an embedded konqueror to display html, an embedded kword to display text documents, an embedded kaffeine to play media files, and all this needs very little effort on the part of the developer to have it running. The CORBA equivalent is DCOP, I think, which provides some very nice IPC capabilities with no effort from the developer at all. Every kde app is automatically IPC-capable, you can do things like play/pause a media player, open a file in a word processor, go to a specific web page remotely from your app even if the developer never gave any thought to this. It results in a big lib dependency, but it's very useful.
Huh? Qt is the equivalent to gtk and possibly glib as well, kde-libs is equivalent to libgnome, libgnome-ui and libgnome-canvas, at least one of which any actual gnome app will need. I'll give you kdebase, but you still end up installing more packages to get gnome apps working than you do with kde. As for building, have you ever tried building gnome manually? Because it's an absolute nightmare. There is a precise, poorly documented order you have to compile all the packages in, and there's lots of them. (The kde build process is arts, then kdelibs, then kdebase, then anything else, which is made clear in the install guide). And then to top it off, you can't do make install DESTDIR=whatever, when virtually every other major opensource app supports it. It makes lots of package-building programs break, meaning if you want to uninstall it you're pretty much SOL.
Everyone says Apple makes no money and it's wrong, plain and simple. They make on the order of $.10 every time. How do you think other, less popular sites manage to be $.10 cheaper when they're selling the same music and don't sell portable players?
What they need is something like last.fm with a prominent "buy this track" button on the player. Click it and it automatically "buy"s it, charges my account (I've set up my CC details beforehand), and then lets me click stream on it whenever I want, or download it whenever I want if I want the mp3 for my walkman or when my connection goes down. I don't want to have to actually store the tracks, my HD is full enough as it is, and I want to get songs I like and hear them before I buy. Do that and I start buying music again, at least as soon as I have some money.
But the guilt is still there. I get incredibly guilty looking at porn, not because I think it's wrong but because I was brought up by Catholics who do. It's easy to socialise people into guilt.
Torrents or something. Just distribute the key (coded to your computer, natch), and you get the encrypted file off a torrent system. Even if not, bandwidth is cheap and getting cheaper. Apple makes a *big* profit off iTMS (slashdotters always deny this somehow, but look at their statements to stockholders), and the majority of their price goes either to them or in royalties to the labels. I'm willing to bet that if the labels were happy with a $.02 royalty then Apple could make a profit selling at $.05.
CDs are not as enjoyable as doing that though. I went to see Nightwish live a few weeks ago for around the same price as a CD. (Two CDs if you count the train fare). No way was the CD worth as much as the concert. I may have listened to the CD for more hours, but the enjoyment of that is far less intense. If you enjoy listening to your CDs for the thousandth hour as much as an hour at the things you've listed then good for you, but I suspect you're in a tiny minority. Compare also to videogames, which cost around twice as much as CDs but are usually played for much longer, can be resold in the same way, and cost a lot more to produce the master for. Finally the reason people say they are too expensive is that they are more expensive than casettes and yet cheaper to produce. That smacks of racketeering - if the goods can be produced cheaper, the free market ought to ensure they are sold cheaper, and yet CDs are not.
That's because English is a fucking mess, and should be abandoned to the scrapheap of history. I'm surprised you say that's the case with Latin though. Sure learning all the vocab takes time, but that's equivalent to learning the library in a language rather than the language. Understanding how to fit subjects and objects and verbs together, how to work out what ending to put on things, what's grammatical and what isn't took you more than 6 books? I'm surprised.
It still takes more effort for me compared to python. Not compared to C, but C takes lots of instructions to do simple things - use only when necessary. And I think the problem is that the syntax is so different. You throw a c/java/python/etc. program at a programmer from another language and they'll get the basic idea. They'll be able to see where the functions are, how the control flow goes, with a little bit of effort what the variables are. You throw a perl script at someone who hasn't seen perl, and a few are alright, but most look like so much line noise. You have to relearn a lot of your programming knowledge, and if perl isn't your only language then you have to switch modes when you see it. If I could program with it all the time, it would be good, but the fact is I have to use C and Java a lot of the time, so I need a language which isn't too different from them.
Yes, but perl is a hair-trigger for you. Obfustucating C or Java takes a bit of effort. Obfustucating Python is pretty hard, your best bet is to lambda over everything and hope the reader isn't a primarily lisp programmer. Obfustucating perl can be done without thinking. Seriously, perl is a tool for quick scripts that will be rewritten rather than edited. It's designed for things which take up less than one page of code to write. It's fast to write short programs, but you should think again before writing a big one in perl, maybe try and chain some small ones together instead.
Yes, but what about an intermediate programmer? I have seen perl programs that were as clear as python tutorials, but the IOCCC is a walk in the park compared to the obfustucated perl contest. And your "typical" perl script seems far less comprehensible than your typical program in any other language. Part of this is its idiomaticy - the same control flow will look more or less the same in most languages, but can be radically different in perl because of its "shortcuts". But part of it is the perl philosophy of promoting concisness, which you can't deny exists.
Personally I've tried the lightweight window managers and found them wanting. I can do more, more easily, in KDE, or Gnome once I've rethemed it, than any of the "old-school" lightweight WMs. And I care about new releases because they usually bring very useful improvements. I haven't tried this release, but I certainly noticed important differences last time I upgraded, and they did make it more efficient for me.
Erm, just build firefox without XFT?
The problem is that he did publish it. It's not just his friend, it's most of the world. And now he's refusing to do new releases of the old version. If it was just a draft it would work, but *it wasn't a draft, it was a final, released film*.
It's not unclear, which is why it hasn't been tested. It is very clear on what you can and can't do, and no company with an ounce of sense on its legal team is going to try and challenge it. The only unclear part is what constitutes a derivative work, but that's a general copyright issue not specific to the GPL, so could easily be tested in some other situation. And I can't see anyone willing to be a test case for this either, for the very reason that it's unclear.
You're right. Including sex with linux would be a lot better thing to happen to it.
Do try Python. It's not for everybody, but you'll be a better programmer for having tried. And I love it.
No, nothing prevents it, but you have to make more effort. Perl lets you leave off function parameters, use some neat one liners to compress loops, and trust the defaults for lots of things, encouraging you to be lazy. Sure, you can keep writing verbosely to make things understandable, but it takes a lot of willpower to do so when there are all those shortcuts available. You can write readable code in any language. And you can write unreadable code in any language. But it's easier to write unreadable code in perl.
It's clearly a while loop, and which bit is the loop body and which is the conditional is also clear. The body is bitshifting "code" to the left and then doing something involving getting a character; a bit of thought and you can probably see it's appending characters onto the end of "code". Then it's multiplying range and low by 256. Looking at the conditional it's pretty clear something OR something else AND something more. That first something would be confusing if you didn't know that ^ is XOR in c, yes, but that's a minor thing. The last bit is someone doing assignment in a conditional, trying to be leet, and so it's hard to understand, yes. But the basic structure at least is clear. Bad people can write bad code in any language, yes, but good people seem to be able to write bad perl easily. I've seen examples in perl books that would be incomprehensible without knowing perl, just something like while(){chomp;print} which is good perl (assuming I've remembered the syntax for print right) makes no sense unless you know how perl works. It's a while loop, yes, but wtf is it whiling? And what are those words in the body doing? Print is obviously printing, but printing what?
It's just on downloads you buy. Makes sense to me. If you buy a CD or a book you pay tax on it, so why shouldn't you pay tax when you buy downloads of the songs or ebooks?
Yeah, perl modules are a way to deal with it, but there's only so much you can put into a module. As for subroutines, you still need to be able to see and understand the program as a whole. It would take a very disciplined programmer to make a program modular enough that you could maintain it by simply looking at the subroutines in isolation.
Partly a question of trying before I buy, but there are times when I want to hear even songs I hate. Not many, but some. I don't spend 3 minutes listening to a song, I listen while I'm doing something else.
Yeah, I really ought to get round to fixing that. But I don't really believe in the web, so I tend to let it slide.
No it doesn't. Emerge means the devoted guys at gentoo were the ones who had to figure out all the underdocumented build order requirements. Also, emerge's chroot-like system for your install is a very clever bit of engineering that can actually handle packaging up gnome. Packaging it up with a more basic package-making tool is a real bitch, really it is. And without having packaged it you have no way to uninstall it.
KParts lets you embed one app inside another. So you can get an embedded konqueror to display html, an embedded kword to display text documents, an embedded kaffeine to play media files, and all this needs very little effort on the part of the developer to have it running. The CORBA equivalent is DCOP, I think, which provides some very nice IPC capabilities with no effort from the developer at all. Every kde app is automatically IPC-capable, you can do things like play/pause a media player, open a file in a word processor, go to a specific web page remotely from your app even if the developer never gave any thought to this. It results in a big lib dependency, but it's very useful.
Huh? Qt is the equivalent to gtk and possibly glib as well, kde-libs is equivalent to libgnome, libgnome-ui and libgnome-canvas, at least one of which any actual gnome app will need. I'll give you kdebase, but you still end up installing more packages to get gnome apps working than you do with kde. As for building, have you ever tried building gnome manually? Because it's an absolute nightmare. There is a precise, poorly documented order you have to compile all the packages in, and there's lots of them. (The kde build process is arts, then kdelibs, then kdebase, then anything else, which is made clear in the install guide). And then to top it off, you can't do make install DESTDIR=whatever, when virtually every other major opensource app supports it. It makes lots of package-building programs break, meaning if you want to uninstall it you're pretty much SOL.
Computer manufacturers are already being sued in anti-trust cases...in Ja- oh, never mind
Everyone says Apple makes no money and it's wrong, plain and simple. They make on the order of $.10 every time. How do you think other, less popular sites manage to be $.10 cheaper when they're selling the same music and don't sell portable players?
What they need is something like last.fm with a prominent "buy this track" button on the player. Click it and it automatically "buy"s it, charges my account (I've set up my CC details beforehand), and then lets me click stream on it whenever I want, or download it whenever I want if I want the mp3 for my walkman or when my connection goes down. I don't want to have to actually store the tracks, my HD is full enough as it is, and I want to get songs I like and hear them before I buy. Do that and I start buying music again, at least as soon as I have some money.
But the guilt is still there. I get incredibly guilty looking at porn, not because I think it's wrong but because I was brought up by Catholics who do. It's easy to socialise people into guilt.
Torrents or something. Just distribute the key (coded to your computer, natch), and you get the encrypted file off a torrent system. Even if not, bandwidth is cheap and getting cheaper. Apple makes a *big* profit off iTMS (slashdotters always deny this somehow, but look at their statements to stockholders), and the majority of their price goes either to them or in royalties to the labels. I'm willing to bet that if the labels were happy with a $.02 royalty then Apple could make a profit selling at $.05.
CDs are not as enjoyable as doing that though. I went to see Nightwish live a few weeks ago for around the same price as a CD. (Two CDs if you count the train fare). No way was the CD worth as much as the concert. I may have listened to the CD for more hours, but the enjoyment of that is far less intense. If you enjoy listening to your CDs for the thousandth hour as much as an hour at the things you've listed then good for you, but I suspect you're in a tiny minority. Compare also to videogames, which cost around twice as much as CDs but are usually played for much longer, can be resold in the same way, and cost a lot more to produce the master for. Finally the reason people say they are too expensive is that they are more expensive than casettes and yet cheaper to produce. That smacks of racketeering - if the goods can be produced cheaper, the free market ought to ensure they are sold cheaper, and yet CDs are not.
That's because English is a fucking mess, and should be abandoned to the scrapheap of history. I'm surprised you say that's the case with Latin though. Sure learning all the vocab takes time, but that's equivalent to learning the library in a language rather than the language. Understanding how to fit subjects and objects and verbs together, how to work out what ending to put on things, what's grammatical and what isn't took you more than 6 books? I'm surprised.
It still takes more effort for me compared to python. Not compared to C, but C takes lots of instructions to do simple things - use only when necessary. And I think the problem is that the syntax is so different. You throw a c/java/python/etc. program at a programmer from another language and they'll get the basic idea. They'll be able to see where the functions are, how the control flow goes, with a little bit of effort what the variables are. You throw a perl script at someone who hasn't seen perl, and a few are alright, but most look like so much line noise. You have to relearn a lot of your programming knowledge, and if perl isn't your only language then you have to switch modes when you see it. If I could program with it all the time, it would be good, but the fact is I have to use C and Java a lot of the time, so I need a language which isn't too different from them.
Yes, but perl is a hair-trigger for you. Obfustucating C or Java takes a bit of effort. Obfustucating Python is pretty hard, your best bet is to lambda over everything and hope the reader isn't a primarily lisp programmer. Obfustucating perl can be done without thinking. Seriously, perl is a tool for quick scripts that will be rewritten rather than edited. It's designed for things which take up less than one page of code to write. It's fast to write short programs, but you should think again before writing a big one in perl, maybe try and chain some small ones together instead.
Yes, but what about an intermediate programmer? I have seen perl programs that were as clear as python tutorials, but the IOCCC is a walk in the park compared to the obfustucated perl contest. And your "typical" perl script seems far less comprehensible than your typical program in any other language. Part of this is its idiomaticy - the same control flow will look more or less the same in most languages, but can be radically different in perl because of its "shortcuts". But part of it is the perl philosophy of promoting concisness, which you can't deny exists.
Personally I've tried the lightweight window managers and found them wanting. I can do more, more easily, in KDE, or Gnome once I've rethemed it, than any of the "old-school" lightweight WMs. And I care about new releases because they usually bring very useful improvements. I haven't tried this release, but I certainly noticed important differences last time I upgraded, and they did make it more efficient for me.