TFA suggests the decision was to save a byte, but I don't believe that's the main reason it happened.
If you're traversing a string anyway, what happens is that when you load the data into your register (which you'll be doing anyway, for whatever reason you're traversing the string), you get a status flag set "for free" if it's zero, so that's your loop test right there. Branch if zero. If you have to compare an offset to a length on every iteration, then now you're having to store this offset in another register (great, like I have lots of registers to spare on 1970s CPUs?) and compare (i.e. subtract) to the length which is stored in memory (great, a memory access) or another register (oh great, I need to use another register in the 1970s?!) and the code is bigger and slower.
It's easy to laugh these days about anyone caring about how many clock cycles a loop takes and whether it uses 2 registers or 4 registers, but this stuff used to be pretty important (and more recently than the 1970s). Kids these days: if you weren't there, you just don't know what it was like.
BTW, I have a hunch K & R didn't know they were building such an eternal legacy. It's reasonable to speculate that this is still going to be part of systems a hundred years from now, but in 1970 you would have been a mad man to suggest such a thing. (Not that this invalidates TFA's point at all; I'm just making excuses for K&R I guess.)
Length: What's the size? What byte order? What bit size? How will this affect communications between platforms?
These aren't hard questions, IMHO. Just say the length is an int (or an unsigned int), and then assuming you didn't freak out when someone asked all those very same questions about ints, then you should be fairly happy with the result.
I can lose access to my email, photos,.. calendars, documents,..blog pages
Surely you see this situation as insane, all Google+ issues aside. If people are really relying on a third party to store the one and only copy they have of these kinds of things, perhaps it is a good thing that people are getting banned on Google+. You had a problem brewing anyway, and now here's the wakeup call to deal with it.
If you lose all that data later today, then perhaps shame on Google. If a week from now, or later you ever lose that data, shame on you.
It sounds reasonable on the surface, since people think of drive theft as very exceptional and something you can physically defend against. But then.. these people never had a drive fail and then RMAed it? Am I supposed to believe that when there's a mechanical failure and they're unable to erase the drive, they destroy it rather than mailing it back to a vendor or manufacturer?
there is an amendment process that will allow for whatever expanded powers the federal government needs
Passing amendments isn't fashionable, because doing it only gives legitimacy to the idea that government is limited by a constitution. Who wants that?
The constitution has no more ability to bestow or limit power than the people want it to. If the constitution says the federal government isn't allowed to do X, but the people vote for federal representatives who then do X, then the federal government is going to do X. Who's gonna stop 'em? Not the people; they decided they want federal Xing even if they never bothered to update the old document.
Ink on a page has no teeth. We were the teeth. But who bites us?
People like you will always deride anything MS does because if you didn't have MS as your enemy you wouldn't have anyone to hate on.
As long as there is unmaintainable software, users (and any programmer who empathizes with them, or who values economic efficiency) will have enemies. You don't need Microsoft for that, but they sure help.:-)
Documented APIs are a fine start, and as long as the size/complexity of the components that provide these APIs is small/simple enough, the resulting systems can approach the maintainability of Free Software. Just as a high-level language programmer doesn't worry about the object code that one of his lines of code compiles to, a bash scripter might not worry about using a proprietary awk or sed alternative, as long as it behaves in a known way. If there were a problem with MS sed, you could replace it with GNU sed, so MS sed's unmaintainability wouldn't matter. (And therefore, if MS sed had any advantages, such as speed, using it might indeed be tempting and relatively low-risk.)
But somehow I doubt anyone thinks Microsoft has systems this small in mind, or that they are considering using APIs that have already been implemented by other tools. And of course as others have mentioned, there's always the threat that a documented API might be specified in such a way that implementing it at all, could require getting a patent holder's permission before you're legally allowed to do it. If you can't easily replace an API-well-documented component, then all the maintenance headaches of proprietary software are in full force, and the "Open" aspect of its "Surface" is useless to you.
"we don't want to lose that customer as they shift to digital.."
For many years the movie selection at Wal-Mart has been all DVDs though I think they might have Blu-Rays too, now. I can't even remember when I last saw VHS tapes or anything like that. If Wal-Mart wants to follow customers "shifting to digital," the year 2000 is about the right time to announce it.
So.. two predictions: 1) In the year 2000 we'll have digital movies and high-performance efficient analog delivery systems. 2) 11 years later we won't have good video delivery systems anymore, but big retailers will finally start to talk about those movies as a soon-to-come product.
I don't know what's going to happen in the early 21st Century, but it sounds like there's going to be another world war or something, throwing infrastructure into chaos and freezing brick'n'mortar markets for something like a decade. Should be interesting times.
Bandwidth caps should be taken away during those times when usage is low, similar to cell phone plans with free unlimited nights and weekends. Then you could schedule your movie downloads for the wee hours and watch them the next day.
That is just too fucking awesome: people want to time-shift streaming to make it cheaper, more efficient, and less painfully laggy. Don't get me wrong: it is a good idea. I sincerely like it. Who wants to stream when the network is at its busiest?
Then, next, all you need to do is have multiple recipients for each stream (no problem getting people to synchronous their receipt, since they're time-shifting anyway; this is a job for a computer!), so that you can reap the advantages of broadcast or multicast. For a popular TV show with n viewers, this would lead an an up-to-n-fold increase in efficiency on some segments of the network. For large values of n that is truly a no-brainer.
And then you will have invented something new and patent worthy. Call it "cable television combined with DVR." It would be awesome tech, similar to what people will be using in the year 2000.
Google is in the software industry. If you are involved in the software industry or you're a customer of the software industry, then software patents are a parasitic drag on your business. This shit is a threat to everyone.
Even Oracle programmers themselves could be unwittingly violating a hundred patents every day, and all it takes is for someone to notice, and decide to not settle for cross-licensing. Pretending this isn't a complete scourge on society seems short-sighted, but maybe Oracle doesn't see a future in their software and intends to transition to fulltime patent troll.
Google wants to continue making software, though, so like any rational being who actually has the resources to fight, they're going to fight.
Photons are also in the most expensive age bracket too. When you look up in the sky and see a photon that has been traveling for millions of years, remember that ever since it was emitted, it has traveled at the speed of light, so no time has ever passed for it. From the photon's PoV, it was "born" in some star and then crashed (at high speed) into your retina less than an instant later.
We see them; they don't see us. Who wants to insure that?
You just described pretty much every superhero movie.
Pretty much; you're right. But there are exceptions. I still remember rolling my eyes on the way to the theater, telling a friend, "I can't believe we're going to go see a movie called Robocop."
How can anyone look at this and call it anti-aliasing?
The point of anti-aliasing isn't to just remove contrast at edges, even if that's what it often does. It's to give more information to the viewer about where that edge really is. And to do that, you've got to add samples. The information that you're trying to send, needs to exist.
What we have here, instead, is a clever algorithm that tries to approximate the blurred-edge "look" of anti-aliasing without really containing the information; the information that it implies to the viewer is fake. WTF is the point of that? My own brain can look at a jaggy line and fake things and deceive my own perceptions, way better than your damn computer. And let's remember brains are the target, here.
This is just blurring. If you want to call it some kind of cool fancy blur, go ahead. But please don't call it anti-aliasing.
should programmers play the role of doctor even in seemingly harmless areas?
As a programmer, not only am I not interested in doing that, but I'm not qualified either, and no user would have reason to trust me even if I did it. So the answer (in my case) is obviously no.
But that's irrelevant anyway, because someone already mentioned the FDA. The question is now, "Should government use force to prevent people from using programs written by people who play doctor?"
You might think that answer is just as clear cut, since no programmer has the ability to learn about medicine and no doctor has the ability to learn to program, and on top of that, it's impossible for people with these two skills to ever communicate and collaborate. And furthermore, it's impossible for a user to avoid completely trusting a program with their life, or evaluating the expertise of those who created it. I understand that viewpoint. But then, I understand lots of stupid things...
screwing over people such as activists who need to be able to use services like this anonymously.
Google's services are very neat and I really like some of them (a lot!) but you are using the word "need" in way that just doesn't make sense.
Anyone who needs Google's services or thinks they need them, needs to take a step back and think about what they're doing.
Using or working with third parties is just fine and part of how people turn into civilizations. Depending on third parties is a totally different thing, and a path to subjugation.
However I would be rather angry if my G-mail account was shut down. I have a lot of important things directed to it and it would be rather inconvenient if shut down.
Sorry, but that is fucked up, and you have a problem right now. Deal with it before you lose the service.
Depending on gmail is a bad idea. If people didn't already know this before (which amazes me) surely they get it now, right?
I'll have to think if I want to stay signed up as G+ is just something silly to keep my friends happy, G-mail is something I use a lot and I don't want one to risk the other.
Your gmail account is always at risk, due to circumstances under your control (signups to other google services) and circumstances beyond your control (any google whim). If Google+ is what it takes for people to see the precariousness of the situation, then maybe we should all be happy about Google+.
The UI desperately needs improvement, but whether it's graphic or not, I don't give a fuck. When you have 200 dwarves it is a total bitch to find the ones you're looking for. Quick: where is my dwarf who knows how to suture? Which is that immigrant dwarf I got a little while back, who already has just a little bit of skill in using a sword (I want to recruit him into the military). Beats the hell out of me. Seriously, I can sometimes spend 10 minutes on the Units screen (alas, leaving and then trying to go back to the 'next' unit) just trying to find a particular dwarf.
I love the game early on, but at some point it switches from game to chore. And (IMHO) it's all about the size of the population. If you have less than one screenful on the Units screen, things are very nice.
All fine and good, but why should I HAVE to opt out of something like this just to protect my privacy? What makes these marketing troglodytes think they have a right to track my browsing habits by default?
Lots of reasons:
1. We speak of "do not track" instead of "ok to track." The debate is already framed to their advantage.
2. You're ok with it. Almost everyone is ok with it. Otherwise, they wouldn't send the requests (complete with the cookies they asked you to send, the last time you communicated with them) to the ad servers, and especially wouldn't download and execute javascript which sends extra "histort stealing" information to them. Some people say they're not ok with it, but their behavior reveals how weak their conviction is. If you're really not ok with them tracking you, then they're not tracking you (because in the end, you're always in control).
3. Like lots of mass-surveillance techs, it was so impossible to do back when the basic parameters of who-has-the-right-to-what were spelled out in constitutions and philosophies. So there aren't any serious prohibitions (legal or cultural). Some places like Europe try to have privacy laws, but they are incomplete (though may work to varying degrees) and unenforceable. (read on, about enforceability)
4. They can get away with it, and could get away with it even if it were prohibited. The act of learning things about you, especially when they passively gather it from information that you send to them, is totally internal. Laws that essentially say "you're not allowed to pay attention to things people tell you" are unforceable. It's like violating DMCA in your home to watch a DVD: it might be against the law, but nobody is ever going to know that you did it, unless they're already after you. (Not that this stops there being a prohibition against watching DVDs, but everyone knows it's a stupid law so it's a harder sell to do things like that.) The only externally visible symptom is that they'll tend to show you better-targeted ads, and how do you prove anything from that?
5. They can outspend you. Should the opt-in-vs-opt-out question come up in a legislative body, they have a voice and you do not. This is how things will be until people start really voting.
they should look at their LOCAL database of do-not-track ip addrs
IP addresses don't opt out of things; people do. There has to be some way of associating a request that they want to track, with an earlier opt-out request. Cookies are the implementation that people have come up with so far, at least until you start sending some kind of global user id in all http headers (an idea that people would hate even more).
But if you're using PGP for Internet email, then you're also "cooperating" with other PGP users when you rely DNS' central authority to establish the domain name part of your email address, to build your overall PGP identity. That's the "key" (in the database sense) to the "key" (in the crypto sense).
The author's unstated premise is that the goal is 'a definitive, trusted, answer' and not some variable level of trust (or confidence) in the answer.
Vixie didn't phrase it that way, but he didn't exactly gloss over it either. One of the things I like about the article is that he's quite explicit that he's working under the constraint that whois and DNS must be universal -- that a query must return the same result no matter where or who you are.
Universal must always imply a single definitive answer, based on completely trusting one single authority. And that one authority.. heh heh.. "arrogantly" (your word, not mine, Mr. Vixie) tolerates no competition. If alternatives to DNS or Whois are being arrogant, I wonder what that says about the system they seek to replace.:-) The very flaw shared by the rebels is the reason they're rebelling.
Sacrificing universality is a price that many people don't want to pay, and I certainly sympathise with a professional network administrator who doesn't want to give it up, even if as a user I see it as a sacrifice that otherwise solves a shitload of problems. If we keep it, though, people should indeed keep in mind the cost as well as the advantages. And an unrealistic trust model, and all the conflict that flows from that, is certainly part of that cost.
TFA suggests the decision was to save a byte, but I don't believe that's the main reason it happened.
If you're traversing a string anyway, what happens is that when you load the data into your register (which you'll be doing anyway, for whatever reason you're traversing the string), you get a status flag set "for free" if it's zero, so that's your loop test right there. Branch if zero. If you have to compare an offset to a length on every iteration, then now you're having to store this offset in another register (great, like I have lots of registers to spare on 1970s CPUs?) and compare (i.e. subtract) to the length which is stored in memory (great, a memory access) or another register (oh great, I need to use another register in the 1970s?!) and the code is bigger and slower.
It's easy to laugh these days about anyone caring about how many clock cycles a loop takes and whether it uses 2 registers or 4 registers, but this stuff used to be pretty important (and more recently than the 1970s). Kids these days: if you weren't there, you just don't know what it was like.
BTW, I have a hunch K & R didn't know they were building such an eternal legacy. It's reasonable to speculate that this is still going to be part of systems a hundred years from now, but in 1970 you would have been a mad man to suggest such a thing. (Not that this invalidates TFA's point at all; I'm just making excuses for K&R I guess.)
These aren't hard questions, IMHO. Just say the length is an int (or an unsigned int), and then assuming you didn't freak out when someone asked all those very same questions about ints, then you should be fairly happy with the result.
Surely you see this situation as insane, all Google+ issues aside. If people are really relying on a third party to store the one and only copy they have of these kinds of things, perhaps it is a good thing that people are getting banned on Google+. You had a problem brewing anyway, and now here's the wakeup call to deal with it.
If you lose all that data later today, then perhaps shame on Google. If a week from now, or later you ever lose that data, shame on you.
It sounds reasonable on the surface, since people think of drive theft as very exceptional and something you can physically defend against. But then .. these people never had a drive fail and then RMAed it? Am I supposed to believe that when there's a mechanical failure and they're unable to erase the drive, they destroy it rather than mailing it back to a vendor or manufacturer?
Passing amendments isn't fashionable, because doing it only gives legitimacy to the idea that government is limited by a constitution. Who wants that?
The constitution has no more ability to bestow or limit power than the people want it to. If the constitution says the federal government isn't allowed to do X, but the people vote for federal representatives who then do X, then the federal government is going to do X. Who's gonna stop 'em? Not the people; they decided they want federal Xing even if they never bothered to update the old document.
Ink on a page has no teeth. We were the teeth. But who bites us?
As long as there is unmaintainable software, users (and any programmer who empathizes with them, or who values economic efficiency) will have enemies. You don't need Microsoft for that, but they sure help. :-)
Documented APIs are a fine start, and as long as the size/complexity of the components that provide these APIs is small/simple enough, the resulting systems can approach the maintainability of Free Software. Just as a high-level language programmer doesn't worry about the object code that one of his lines of code compiles to, a bash scripter might not worry about using a proprietary awk or sed alternative, as long as it behaves in a known way. If there were a problem with MS sed, you could replace it with GNU sed, so MS sed's unmaintainability wouldn't matter. (And therefore, if MS sed had any advantages, such as speed, using it might indeed be tempting and relatively low-risk.)
But somehow I doubt anyone thinks Microsoft has systems this small in mind, or that they are considering using APIs that have already been implemented by other tools. And of course as others have mentioned, there's always the threat that a documented API might be specified in such a way that implementing it at all, could require getting a patent holder's permission before you're legally allowed to do it. If you can't easily replace an API-well-documented component, then all the maintenance headaches of proprietary software are in full force, and the "Open" aspect of its "Surface" is useless to you.
So you're calling him an elf?
Why would we think this?
I would think that nobody who "wants control" over their privacy is going to use any third-party service; they're going to run their own apache. No?
For many years the movie selection at Wal-Mart has been all DVDs though I think they might have Blu-Rays too, now. I can't even remember when I last saw VHS tapes or anything like that. If Wal-Mart wants to follow customers "shifting to digital," the year 2000 is about the right time to announce it.
So.. two predictions: 1) In the year 2000 we'll have digital movies and high-performance efficient analog delivery systems. 2) 11 years later we won't have good video delivery systems anymore, but big retailers will finally start to talk about those movies as a soon-to-come product.
I don't know what's going to happen in the early 21st Century, but it sounds like there's going to be another world war or something, throwing infrastructure into chaos and freezing brick'n'mortar markets for something like a decade. Should be interesting times.
That is just too fucking awesome: people want to time-shift streaming to make it cheaper, more efficient, and less painfully laggy. Don't get me wrong: it is a good idea. I sincerely like it. Who wants to stream when the network is at its busiest?
Then, next, all you need to do is have multiple recipients for each stream (no problem getting people to synchronous their receipt, since they're time-shifting anyway; this is a job for a computer!), so that you can reap the advantages of broadcast or multicast. For a popular TV show with n viewers, this would lead an an up-to-n-fold increase in efficiency on some segments of the network. For large values of n that is truly a no-brainer.
And then you will have invented something new and patent worthy. Call it "cable television combined with DVR." It would be awesome tech, similar to what people will be using in the year 2000.
Google is in the software industry. If you are involved in the software industry or you're a customer of the software industry, then software patents are a parasitic drag on your business. This shit is a threat to everyone.
Even Oracle programmers themselves could be unwittingly violating a hundred patents every day, and all it takes is for someone to notice, and decide to not settle for cross-licensing. Pretending this isn't a complete scourge on society seems short-sighted, but maybe Oracle doesn't see a future in their software and intends to transition to fulltime patent troll.
Google wants to continue making software, though, so like any rational being who actually has the resources to fight, they're going to fight.
Photons are also in the most expensive age bracket too. When you look up in the sky and see a photon that has been traveling for millions of years, remember that ever since it was emitted, it has traveled at the speed of light, so no time has ever passed for it. From the photon's PoV, it was "born" in some star and then crashed (at high speed) into your retina less than an instant later.
We see them; they don't see us. Who wants to insure that?
Pretty much; you're right. But there are exceptions. I still remember rolling my eyes on the way to the theater, telling a friend, "I can't believe we're going to go see a movie called Robocop."
Good movies are where you find them.
How can anyone look at this and call it anti-aliasing?
The point of anti-aliasing isn't to just remove contrast at edges, even if that's what it often does. It's to give more information to the viewer about where that edge really is. And to do that, you've got to add samples. The information that you're trying to send, needs to exist.
What we have here, instead, is a clever algorithm that tries to approximate the blurred-edge "look" of anti-aliasing without really containing the information; the information that it implies to the viewer is fake. WTF is the point of that? My own brain can look at a jaggy line and fake things and deceive my own perceptions, way better than your damn computer. And let's remember brains are the target, here.
This is just blurring. If you want to call it some kind of cool fancy blur, go ahead. But please don't call it anti-aliasing.
As a programmer, not only am I not interested in doing that, but I'm not qualified either, and no user would have reason to trust me even if I did it. So the answer (in my case) is obviously no.
But that's irrelevant anyway, because someone already mentioned the FDA. The question is now, "Should government use force to prevent people from using programs written by people who play doctor?"
You might think that answer is just as clear cut, since no programmer has the ability to learn about medicine and no doctor has the ability to learn to program, and on top of that, it's impossible for people with these two skills to ever communicate and collaborate. And furthermore, it's impossible for a user to avoid completely trusting a program with their life, or evaluating the expertise of those who created it. I understand that viewpoint. But then, I understand lots of stupid things...
Google's services are very neat and I really like some of them (a lot!) but you are using the word "need" in way that just doesn't make sense.
Anyone who needs Google's services or thinks they need them, needs to take a step back and think about what they're doing.
Using or working with third parties is just fine and part of how people turn into civilizations. Depending on third parties is a totally different thing, and a path to subjugation.
Sorry, but that is fucked up, and you have a problem right now. Deal with it before you lose the service.
Depending on gmail is a bad idea. If people didn't already know this before (which amazes me) surely they get it now, right?
Your gmail account is always at risk, due to circumstances under your control (signups to other google services) and circumstances beyond your control (any google whim). If Google+ is what it takes for people to see the precariousness of the situation, then maybe we should all be happy about Google+.
Might be talking about all the parts that go sailing off in arcs, whenever your dwarves' axes or traps' serrated saw blades meet goblinflesh.
The UI desperately needs improvement, but whether it's graphic or not, I don't give a fuck. When you have 200 dwarves it is a total bitch to find the ones you're looking for. Quick: where is my dwarf who knows how to suture? Which is that immigrant dwarf I got a little while back, who already has just a little bit of skill in using a sword (I want to recruit him into the military). Beats the hell out of me. Seriously, I can sometimes spend 10 minutes on the Units screen (alas, leaving and then trying to go back to the 'next' unit) just trying to find a particular dwarf.
I love the game early on, but at some point it switches from game to chore. And (IMHO) it's all about the size of the population. If you have less than one screenful on the Units screen, things are very nice.
Lots of reasons:
1. We speak of "do not track" instead of "ok to track." The debate is already framed to their advantage.
2. You're ok with it. Almost everyone is ok with it. Otherwise, they wouldn't send the requests (complete with the cookies they asked you to send, the last time you communicated with them) to the ad servers, and especially wouldn't download and execute javascript which sends extra "histort stealing" information to them. Some people say they're not ok with it, but their behavior reveals how weak their conviction is. If you're really not ok with them tracking you, then they're not tracking you (because in the end, you're always in control).
3. Like lots of mass-surveillance techs, it was so impossible to do back when the basic parameters of who-has-the-right-to-what were spelled out in constitutions and philosophies. So there aren't any serious prohibitions (legal or cultural). Some places like Europe try to have privacy laws, but they are incomplete (though may work to varying degrees) and unenforceable. (read on, about enforceability)
4. They can get away with it, and could get away with it even if it were prohibited. The act of learning things about you, especially when they passively gather it from information that you send to them, is totally internal. Laws that essentially say "you're not allowed to pay attention to things people tell you" are unforceable. It's like violating DMCA in your home to watch a DVD: it might be against the law, but nobody is ever going to know that you did it, unless they're already after you. (Not that this stops there being a prohibition against watching DVDs, but everyone knows it's a stupid law so it's a harder sell to do things like that.) The only externally visible symptom is that they'll tend to show you better-targeted ads, and how do you prove anything from that?
5. They can outspend you. Should the opt-in-vs-opt-out question come up in a legislative body, they have a voice and you do not. This is how things will be until people start really voting.
HTH.
The ethics committee says, "Do not burn ethics committee." Perhaps you should try taunting them instead.
Great, now all you have to do is define what "human DNA" is.
IP addresses don't opt out of things; people do. There has to be some way of associating a request that they want to track, with an earlier opt-out request. Cookies are the implementation that people have come up with so far, at least until you start sending some kind of global user id in all http headers (an idea that people would hate even more).
PGP keys are ridiculously unlikely to collide.
But if you're using PGP for Internet email, then you're also "cooperating" with other PGP users when you rely DNS' central authority to establish the domain name part of your email address, to build your overall PGP identity. That's the "key" (in the database sense) to the "key" (in the crypto sense).
Vixie didn't phrase it that way, but he didn't exactly gloss over it either. One of the things I like about the article is that he's quite explicit that he's working under the constraint that whois and DNS must be universal -- that a query must return the same result no matter where or who you are.
Universal must always imply a single definitive answer, based on completely trusting one single authority. And that one authority .. heh heh .. "arrogantly" (your word, not mine, Mr. Vixie) tolerates no competition. If alternatives to DNS or Whois are being arrogant, I wonder what that says about the system they seek to replace. :-) The very flaw shared by the rebels is the reason they're rebelling.
Sacrificing universality is a price that many people don't want to pay, and I certainly sympathise with a professional network administrator who doesn't want to give it up, even if as a user I see it as a sacrifice that otherwise solves a shitload of problems. If we keep it, though, people should indeed keep in mind the cost as well as the advantages. And an unrealistic trust model, and all the conflict that flows from that, is certainly part of that cost.