Yes, there have been a number of changes to the ABI, which is where I'm sure this break comes from. I'm sure Apple wouldn't bother doing this to stop pirates (they'll just repirate it) and breaking the ABI is sure to annoy the odd developer here and there (yes it should make no difference after a complete recompile, but of course it always does). There are also a couple more changes which quite a lot of people really think should be made, so I'd expect one more break before release:)
Actually, by the time of the 16 -> 32 bit move, most applications were already using more than 16 bits (thats 64K) of memory, by a range of different nasty shifting and overlay methods, and moving to a clean flat address space was really overdue, and something lots of people were desperate to get. If you managed to avoid having to program in that time be very thankful:)
One really nice thing about the 32 -> 64 bit move is with a few exceptions, it looks like we won't have to do any paging and overlay this time, as anyone who wants the bigger address space can already get a 64-bit processor.
Actually, default deny is just as stupid as default allow, as if you have default deny, people just get sick of being asked if they want to allow something, and end up clicking "yes" on every box they see.
2) Enumerating Badness
So you want to write a virus scanner that somehow can recognise viruses without being told which programs are viruses. Modern virus checkers already mostly do this. With spyware it's very hard for a computer to tell the difference between a program you wanted installing and one you didn't. How do you expect it to tell?
3) Penetrate and Patch
So you are saying we should write code without bugs and holes? What a great idea that is? why did no-one think of saying that before?
4) Hacking is cool
You think people should learn how to stop hacking and intrusion without learning how existing hacks work? Then you are stupid. Shush.
5) Educating Users
So you are saying that we have to do security without teaching users how to do it. That just isn't going to work unless you never let users install their own applications or plug-ins. Yes teaching users is hard, but it has to be a vital part.
6) Action is better than Inaction
So, after saying the state we are in is rubbish, you now say we shouldn't actually change anything. Eh? Or are you saying "don't try something new without testing it first"? Well thats more than a little obvious.
This is just trolling, crap, and obviousness. Your average slashdot post really.
How about because there might be traces of the files on your computer, or they might find some other way of finding out. Also lying to a court isn't really looked upon very highly. It's much more serious than pirating some music.
While I'm not defending this patent, just because the patent is simple to implement should in no way effects if it should be patentable. Lots of things are very clever but easy to program once someone came up with the idea:)
I'm really starting to get annoyed with news.com trying to seem like a victim here. Two things in particular occur to me.
1) We all know you can find a lot of information on the net if you really search for it. That doesn't mean if you search around for all the information you can find about a particular person, and then slap it on the front page of a huge news site, without giving them advance notice, or asking their opinion in any way, they aren't going to get annoyed. Of course, it's still legal to do so, and Google and Eric know that. But it might have been decent to ask first.
2) Google isn't banning news.com or anyone else from talking about Google, or using Google. They are just saying that they pissed them off, so they aren't going to talk to them. Why shouldn't they be allowed to decide some reporters piss off their chief executive, and they are going to ignore them? Does the press have some right to get all their questions answered by whoever they like?
I imagine it's possible Google might have let this slip after a while, espically with a brief apology.
Actually, it jumed from version 1.0.2 to 1.0.5 to syncronise there, but 1.0.5 for a very short-lived version, because as mentioned it broke quite a lot of plug-ins. All 1.0.6 contains over 1.0.5 is a fix to the plugin breakage.
Having read about this case, the person in question was linking to the site with the intention of showing people where to get pirated materials from.
I'm not saying it should be illegal, but this is clearly different from either a) automated searching (like google) or b) linking to a site which happens to also contain pirated material.
Should it be illegal to tell people "Hey, you want some pirated stuff? He has it, that guy over there!". I'm not sure, but that is what this case rests on.
Many commuters don't have a lot of choice, as at the moment there are no trains entering London (a very few are leaving). It is expected no trains will be arriving any time this afternoon, and probably at all today.
I'm surprised it's taken Slashdot so long to get this. There have been 2 confirmed deaths, which is both terrible, but on the other hand somewhat better than many (including myself) expected from early reports.
Hey, it's my code. I could just lock it away in a box and never give it out to anyone, or use it but exert my standard rights under copyright and not let any use or extend it.
As far as I can see, the GPL is just another way of charging for use of your code, but with their code instead of money. If that cost is too high for you, go and pay with money for someone else's code instead.
Well boo hoo for you. You decided to try to use someone else's work for free without giving anything back, and then are suprised when people complain. You have three choices
A) Go and buy a licence from a commercial company B) Use a GPLed library and release your code or C) Rewrite the damn library yourself.
I'm sorry, but what you really want is free well written code while giving nothing in return. Well as a programmer who puts his code under the GPL, I don't want to give it to you unless I get something in return.
I'd be curious to know how the xbox 360 could be aiming for the ps2 when the xbox was suprior in terms of performance and graphics (thats not a stab at sony. The xbox came out quite a lot later. It would be suprising if it wasn't)
But of course remember, the playstation 3 will have REALISTIC EMOTIONS! using it's emotion engine and be able to RENDER TOY STORY IN REAL TIME! and be a SUPER COMPUTER!
Also, I've always been amused by how people are quite happy to cope with so many things in Sci-Fi, but not sound in space. how do you know that the "sound" isn't just the "camera" picking up and vocalising vibrations in sub space? (note: I realise that last thing I said is stupid, but no more stupid than most things said in star wars/trek)
The link you post to is the FSF's problem with Java's current licence. Their actual opinion on the Apache License v2.0 is below. It's incompatable due to patent related issues that the GPL doesn't (and probably should) deal with. It's a fine free software license:
Apache Software License, version 2.0
This is a free software license but it is incompatible with the GPL. The Apache Software License is incompatible with the GPL because it has a specific requirement that is not in the GPL: it has certain patent termination cases that the GPL does not require. (We don't think those patent termination cases are inherently a bad idea, but nonetheless they are incompatible with the GNU GPL.)
When you think about it, is buying virtual gold that much different to buying real gold for the purposes of money transfer? While gold does have uses in the real world, it's value is far inflated by it's use as a form of currency transfer.. and if you have a pile of gold bricks, what use actually are they to you, except for the fact you can sell them on to other people who want gold bricks?
Of course, I remember when people used to be hardcore, before all games had "save anywhere, any time you like", and these fancy 3d graphics. It's always the same, people always think that the time they started doing something with the pinicle, and it's been downhill since then.
The business with appearing to be logged on isn't quite as serious as it sounds (although it is still bad).
The problem appears to be that you will sometimes be given a page that was personalised for someone else. However if you attempt to do anything from that page (for example if you find yourself looking like admin of a web board) you'll find that it doesn't work, any more than it would if someone emailed you a copy of a page where they were logged in as admin and you clicked on links (if you are on a website where doing that would work, you already have serious security problems). It also doesn't occur with SSL as google doesn't doing anything with SSL pages (as you would hope)
This is still a problem if that page shows something private of course, and should be fixed. (a password of course being the worst case, but how often do you see your actual passwords printed on a webpage?)
Trying to write a test case for all the code you have will be very difficult, very long and to be honest not buy you a lot.
A few open source projects have found themselves in the same situation as you, and they seem to work by 3 rules:
1) If you change any code at all which doesn't have a test, add a test
2) If you find a bug, make sure you add a test that fails before, and works now
3) If you are ever wandering around trying to understand some code, then feel free to write some tests:)
One thing I will say is to try very hard to keep your tests organised. Keeping them in a very similar directory structure to the actual code is helpful. Without this it's very hard to tell what has and hasn't got a test.
There is of course another of looking at this, which is that WSJ managed from subscriptions to their site 20% of what google makes in a quarter from the biggest advertising service over the whole internet..
If you read the article, you'd find the main problem is that all their internal data structures and rendering system were only designed for boolean transparency.
libpng wouldn't have helped with either of these, and this is where most of the work was.
You have just described LISP's biggest strength, and biggest weakness.
LISP's power is that you can completely re-invent the language in whatever way you like.
LISP's biggest problem, and the reason that while I love it I will never use it for a big project, it because you can reinvent the language, and almost every LISP program and library does to some extent.. therefore each large LISP program you try to learn involves basically learning a new language.
Java's biggest strength is that while it is annoying verbose and limited, it's probably one of the hardest languages to make non-understandable (not saying it's not possible of course, particularily if you make big and nasty enough object heirachies..)
This is supposed to be coming to C++ via the keyword "auto". I'm not sure how things are in C#, but I can't wait until I can write:
auto it = v.begin();
instead of (say)
vector >::const_iterator it = v.begin();
Yes, there have been a number of changes to the ABI, which is where I'm sure this break comes from. I'm sure Apple wouldn't bother doing this to stop pirates (they'll just repirate it) and breaking the ABI is sure to annoy the odd developer here and there (yes it should make no difference after a complete recompile, but of course it always does). There are also a couple more changes which quite a lot of people really think should be made, so I'd expect one more break before release :)
Actually, by the time of the 16 -> 32 bit move, most applications were already using more than 16 bits (thats 64K) of memory, by a range of different nasty shifting and overlay methods, and moving to a clean flat address space was really overdue, and something lots of people were desperate to get. If you managed to avoid having to program in that time be very thankful :)
One really nice thing about the 32 -> 64 bit move is with a few exceptions, it looks like we won't have to do any paging and overlay this time, as anyone who wants the bigger address space can already get a 64-bit processor.
1) Default deny instead of default allow.
Actually, default deny is just as stupid as default allow, as if you have default deny, people just get sick of being asked if they want to allow something, and end up clicking "yes" on every box they see.
2) Enumerating Badness
So you want to write a virus scanner that somehow can recognise viruses without being told which programs are viruses. Modern virus checkers already mostly do this. With spyware it's very hard for a computer to tell the difference between a program you wanted installing and one you didn't. How do you expect it to tell?
3) Penetrate and Patch
So you are saying we should write code without bugs and holes? What a great idea that is? why did no-one think of saying that before?
4) Hacking is cool
You think people should learn how to stop hacking and intrusion without learning how existing hacks work? Then you are stupid. Shush.
5) Educating Users
So you are saying that we have to do security without teaching users how to do it. That just isn't going to work unless you never let users install their own applications or plug-ins. Yes teaching users is hard, but it has to be a vital part.
6) Action is better than Inaction
So, after saying the state we are in is rubbish, you now say we shouldn't actually change anything. Eh? Or are you saying "don't try something new without testing it first"? Well thats more than a little obvious.
This is just trolling, crap, and obviousness. Your average slashdot post really.
How about because there might be traces of the files on your computer, or they might find some other way of finding out. Also lying to a court isn't really looked upon very highly. It's much more serious than pirating some music.
While I'm not defending this patent, just because the patent is simple to implement should in no way effects if it should be patentable. Lots of things are very clever but easy to program once someone came up with the idea :)
I'm really starting to get annoyed with news.com trying to seem like a victim here. Two things in particular occur to me.
1) We all know you can find a lot of information on the net if you really search for it. That doesn't mean if you search around for all the information you can find about a particular person, and then slap it on the front page of a huge news site, without giving them advance notice, or asking their opinion in any way, they aren't going to get annoyed. Of course, it's still legal to do so, and Google and Eric know that. But it might have been decent to ask first.
2) Google isn't banning news.com or anyone else from talking about Google, or using Google. They are just saying that they pissed them off, so they aren't going to talk to them. Why shouldn't they be allowed to decide some reporters piss off their chief executive, and they are going to ignore them? Does the press have some right to get all their questions answered by whoever they like?
I imagine it's possible Google might have let this slip after a while, espically with a brief apology.
Actually, it jumed from version 1.0.2 to 1.0.5 to syncronise there, but 1.0.5 for a very short-lived version, because as mentioned it broke quite a lot of plug-ins. All 1.0.6 contains over 1.0.5 is a fix to the plugin breakage.
Having read about this case, the person in question was linking to the site with the intention of showing people where to get pirated materials from.
I'm not saying it should be illegal, but this is clearly different from either a) automated searching (like google) or b) linking to a site which happens to also contain pirated material.
Should it be illegal to tell people "Hey, you want some pirated stuff? He has it, that guy over there!". I'm not sure, but that is what this case rests on.
Many commuters don't have a lot of choice, as at the moment there are no trains entering London (a very few are leaving). It is expected no trains will be arriving any time this afternoon, and probably at all today.
I'm surprised it's taken Slashdot so long to get this. There have been 2 confirmed deaths, which is both terrible, but on the other hand somewhat better than many (including myself) expected from early reports.
Hey, it's my code. I could just lock it away in a box and never give it out to anyone, or use it but exert my standard rights under copyright and not let any use or extend it.
As far as I can see, the GPL is just another way of charging for use of your code, but with their code instead of money. If that cost is too high for you, go and pay with money for someone else's code instead.
Well boo hoo for you. You decided to try to use someone else's work for free without giving anything back, and then are suprised when people complain. You have three choices
A) Go and buy a licence from a commercial company
B) Use a GPLed library and release your code or
C) Rewrite the damn library yourself.
I'm sorry, but what you really want is free well written code while giving nothing in return. Well as a programmer who puts his code under the GPL, I don't want to give it to you unless I get something in return.
If you don't have a router, how do you intend to get SP2? Magic pixies?
I'd be curious to know how the xbox 360 could be aiming for the ps2 when the xbox was suprior in terms of performance and graphics (thats not a stab at sony. The xbox came out quite a lot later. It would be suprising if it wasn't)
But of course remember, the playstation 3 will have REALISTIC EMOTIONS! using it's emotion engine and be able to RENDER TOY STORY IN REAL TIME! and be a SUPER COMPUTER!
Wait.. that was the PS2 wasn't it?
Except of course kubuntu already has had a release with KDE 3.4, while Debian has 3.3.
Also, I've always been amused by how people are quite happy to cope with so many things in Sci-Fi, but not sound in space. how do you know that the "sound" isn't just the "camera" picking up and vocalising vibrations in sub space? (note: I realise that last thing I said is stupid, but no more stupid than most things said in star wars/trek)
Apache Software License, version 2.0
This is a free software license but it is incompatible with the GPL. The Apache Software License is incompatible with the GPL because it has a specific requirement that is not in the GPL: it has certain patent termination cases that the GPL does not require. (We don't think those patent termination cases are inherently a bad idea, but nonetheless they are incompatible with the GNU GPL.)
When you think about it, is buying virtual gold that much different to buying real gold for the purposes of money transfer? While gold does have uses in the real world, it's value is far inflated by it's use as a form of currency transfer.. and if you have a pile of gold bricks, what use actually are they to you, except for the fact you can sell them on to other people who want gold bricks?
Of course, I remember when people used to be hardcore, before all games had "save anywhere, any time you like", and these fancy 3d graphics. It's always the same, people always think that the time they started doing something with the pinicle, and it's been downhill since then.
The business with appearing to be logged on isn't quite as serious as it sounds (although it is still bad).
The problem appears to be that you will sometimes be given a page that was personalised for someone else. However if you attempt to do anything from that page (for example if you find yourself looking like admin of a web board) you'll find that it doesn't work, any more than it would if someone emailed you a copy of a page where they were logged in as admin and you clicked on links (if you are on a website where doing that would work, you already have serious security problems). It also doesn't occur with SSL as google doesn't doing anything with SSL pages (as you would hope)
This is still a problem if that page shows something private of course, and should be fixed. (a password of course being the worst case, but how often do you see your actual passwords printed on a webpage?)
Trying to write a test case for all the code you have will be very difficult, very long and to be honest not buy you a lot.
:)
A few open source projects have found themselves in the same situation as you, and they seem to work by 3 rules:
1) If you change any code at all which doesn't have a test, add a test
2) If you find a bug, make sure you add a test that fails before, and works now
3) If you are ever wandering around trying to understand some code, then feel free to write some tests
One thing I will say is to try very hard to keep your tests organised. Keeping them in a very similar directory structure to the actual code is helpful. Without this it's very hard to tell what has and hasn't got a test.
There is of course another of looking at this, which is that WSJ managed from subscriptions to their site 20% of what google makes in a quarter from the biggest advertising service over the whole internet..
If you read the article, you'd find the main problem is that all their internal data structures and rendering system were only designed for boolean transparency.
libpng wouldn't have helped with either of these, and this is where most of the work was.
You have just described LISP's biggest strength, and biggest weakness.
LISP's power is that you can completely re-invent the language in whatever way you like.
LISP's biggest problem, and the reason that while I love it I will never use it for a big project, it because you can reinvent the language, and almost every LISP program and library does to some extent.. therefore each large LISP program you try to learn involves basically learning a new language.
Java's biggest strength is that while it is annoying verbose and limited, it's probably one of the hardest languages to make non-understandable (not saying it's not possible of course, particularily if you make big and nasty enough object heirachies..)