but I look at this and have to ask 'what science is behind this?'
Nobody knows either way whether cell phone radiation is harmful to humans. But it has been shown experimentally that it has biological effects: http://bit.ly/bTSVvj That makes it plausible that it might have harmful effects in humans.
So, until there is clear and convincing evidence that cell phone radiation is harmless, why not give people a choice?
It's not a question of "comparison", it's a question of basic programming language design. Java and C++ have unsound type systems and numerous avoidable sources of inefficiencies.
but ignore the fact that cement works quite well for the past couple thousands years in building construction.
But Java and C++ do not "work quite well". They are unproductive compared to available alternatives. The software people write in them is bug-ridden, unportable, slow, and full of security holes. Software projects in industry are perpetually behind. When tested, most programmers have basic deficiencies in their understanding of those languages.
The point being, why should I pay attention to someone with a poor track record for creating anything interesting?
You shouldn't "pay attention" to anybody, Pike or B.S. You should pick technologies based on understanding them and the trade-offs involved. Obviously, you do not.
Where the actions of the community at large aren't a major factor in the success or failure of a technology.
The actions of the community clearly are a factor: people with little or no knowledge (e.g., you) pick bad languages and tools for projects, and that's why software is in such a sorry state.
People act as if personality doesn't matter
As I was saying: "And, as you noticed, Pike isn't a particularly good advocate; he comes across as a blow-hard. Pike is never going to create a successful programming language, even though he is a lot more capable than B.S. or Gosling." Apparently, you can't even read.
And, no, I don't think Go is a particularly good language. But Pike's criticism of Java and C++ is valid, and there are plenty of other, good languages around. I'm using them when getting a job done quickly and correctly matters. If you pay me by the hour, I'll even program in COBOL or assembly.
The researchers formulated a hypothesis based on first principles ("training data"), then tested that hypothesis by applying it to earth ("test data"). So, they didn't mix training and test data.
For proof, just look at a map of the economic productivity, subtract out the 100 mile areas around big cities and look at what's left. Or look at the contributions of rural vs urban states to the GNP.
Much is currently done in cities because that's where lots of people happen to be
Congratulations, you're getting it! Big cities house large numbers of people efficiently, they reduce infrastructure costs, and they serve as central distribution points.
Utter nonsense. That's undeniably not the case here, and I'm sure there are innumerable other small cities (not suburbs) which are completely self-contained, with both people and industry, all completely indifferent to any large cities around them.
Almost all the goods you get come from your nearest large city. That's where the highways go. That's where your money is managed. That's where the big airport is. Really, get a clue.
With globalization, your products are just as likely to go to the other side of the planet as the next big city over.
And how do they get there? By pack mule? No, they go through the port in the next big city, and they come from another big city.
You're still doing nothing but spouting laughable assertions.
No, I'm simply pointing out the obvious, based on pretty much universally known economic facts. You're, however, spouting nonsense like the notion that your town is self-sufficient.
So the only people that can be critical of anyone are people that have some big publicly recognized accomplishments? That's a pretty small list.
You went beyond critical and went to ad hominems; that makes the question legitimate.
But merely "This guy thinks he's better and smarter than everyone else...
He's smarter than the vast majority of programmers; his publications and resume tell you at least that much.
but his actual accomplishments in what HE'S developed to replace those technologies in no way measure up the his fanatical criticism of them"
He was part of the development of the technologies he criticizes. Second, his criticism really is valid: C++ and Java are objectively bad designs, and I say that as someone whose main programming languages over the last 30 years have been C, C++, and Java. Third, technically, what he has developed to replace them does measure up; it is certainly quite a bit better.
So, if he developed better technologies, why didn't they catch on? Because better technologies frequently don't catch on. Replacing a technology with something better doesn't just require developing something better, it requires convincing the users of the old technologies that switching is worthwhile, a process complicated by the fact that most users of those old technologies know little about software or programming languages.
And, as you noticed, Pike isn't a particularly good advocate; he comes across as a blow-hard. Pike is never going to create a successful programming language, even though he is a lot more capable than B.S. or Gosling.
To build things like the desktop PC you're using, or the Internet you're communicating over, to develop the medical advances you're enjoying, etc. requires big population centers. They simply wouldn't exist if the entire US was covered in widely separated cities of 100000 inhabitants or less.
And you may think that you're "sinking money into nearby cities", but your modest-size city (aka suburb) wouldn't have much manufacturing or places to go if it wasn't near a big city.
You are right that cities need to "import" raw materials from less densely populated areas, but those can be (and increasingly are) industrial farming and resource extraction operations, not idyllic small towns.
"Programming languages or hard to learn!" has been a complaint since they were invented.
Yes, but in the case of C++, it is justified. I think anybody who thinks they have mastered C++ is so ignorant of the language that they don't even know how little they know. And I'm saying that as someone who has been programming in C++ for 25 years.
I think UTF-8 and his two books were pretty influential. BLIT and Plan 9 were pretty significant research systems. And as a member of the original UNIX group, I think his opinion on UNIX and C carries some weight (and is probably shared by many of the original UNIX developers).
As a language, Go actually looks pretty nice to me. The trouble with Go is the same trouble nice new languages have always had: lack of critical mass. If Google starts using Go for Appspot, Android, and internal development, it may have a chance.
Just out of curiosity: what have you accomplished?
Objective C, everytime I look at it, I become convinced is what C++ should have been.
Objective C inherits all of the problems of C (lack of runtime safety, poor pointer semantics, tons of undefined and implementation defined behavior, bad syntax, bad memory management) and creates some of its own (unsound type system, badly designed reflection system, among others).
The only thing off-putting about it, is the method syntax. And even that, when you look carefully, is actually a really clever way to make things poly morphic.
The method syntax came, like most of Objective C that didn't come from C, came from Smalltalk.
And what do you tthink would the difference between "an ad hoc informally-specified bug-ridden slow implementation of half of Common Lisp" and an actual CommonLisp implementation be?
One of C's great advantages is not only that it is simple and very fast,
What you say was true in the 1980's on the PDP-11. Today, C is a complex language; if you think it's simple, you don't understand it. It's complex because its semantics are so subtle: a lot of things are implementation dependent; they seem to work until you port your code. Furthermore, C is not an "efficient" language. On modern hardware, you need excellent optimization, but C's semantics make good optimization quite difficult.
It is possible to have a powerful, low-level, simple language; C isn't that language, not even close.
That whole too complex thing... what, was he hired by Google as a janitor?
Here's the Wikipedia entry on Rob Pike. Any experienced C/UNIX programmer should know who Pike is. He has been programming in C even longer than I have (I'm going on 30 years of C programming).
The only reason you can live there in the kind of comfort, health, and luxury that you do is because hundreds of millions of people live in concrete jungles, at the kinds of densities that support efficient manufacturing and research. The tax payers living in those concrete jungles even subsidize your lifestyle, with roads and other infrastructure.
So, before you talk about other people being "bat-shit insane", realize that you are dependent the "concrete jungle" and the people living there. In a sense, you're even one step more removed from nature than city dwellers, because cities could largely exist without people like you, but you couldn't live anything like you do without cities.
If you wrap your hands tightly around most of a phone, yes, you can produce a signal loss. You can also produce a signal loss by moving into a node or creating a standing wave pattern.
But the iPhone 4 doesn't require a "death grip", a touch of the gap separating the two antennas on the case suffices. No other phone behaves like that.
You can feel all the empathy you want, you can cry, you can scream, you can get angry, it's not going to stop millions of people from dying in foreign countries
Empathy isn't some abstract thing, it is what you feel when you see another human being suffering.
The emotions don't help you deal with society. You cannot feel this world without eventually being driven insane.
Empathy is not supposed to help you; empathy makes you help other people and it keeps you from hurting other people. If you don't have empathy (or can "control" it), you're a potential threat.
The real world is not "cold, brutal and cruel", and beheading people is not "the true nature of mankind". Most people can't commit murder under normal circumstances and become distressed watching murder or violence. That's not a question of "perspective", it's something innate to most humans. People are generally non-violent and cooperative. Human society wouldn't work if many people operated like you think they do.
All your statements make me think that there is something wrong with you and that you have trust and empathy issues.
The iPhone 4 gets criticized because it drops more calls. It drops more calls because, in addition to the problems all phones have, it also has an exposed antenna.
It could be higher or lower than the drop rate for the fleet average.
No, it can't be. Fleet average is 1%, the iPhone 4 is 1% worse than the 3GS. Even if the 3GS never dropped calls, the iPhone 4 could at most be average. Of course, given the problems with 3GS call dropping, it's a pretty safe bet that the 3GS is at best average if not worse.
The end effect is the same: with either phone I have to hold it a certain way in low signal areas to prevent the call from dropping.
No, the end effect is not the same: the iPhone 4 has a 1% higher dropped call rate than a similar phone (3GS) with an internal antenna and worse radio (1% is a pretty big increase, and most of the usual dropped calls are from moving vehicles).
That's because in addition to the usual ways of losing signal, the iPhone 4 has a new one. CR shows you what it is.
When companies learned to achieve the same performance as rod-style antennas with internal antennas, that's when mainstream phones switched. Many companies still have phones with external antennas for those who need them.
But actually, internal antennas have one big performance advantage over rod-style antennas: you can't touch them, which is why they are probably a better choice for consumer phones. Even with external antennas, companies have tried hard to cover them up with plastic to keep people from touching them.
The videos are "true" in the sense that they show two effects that lead to loss of signal and that both can be produced by gripping. They are false and misleading in that Apple implies that the causes and consequences are the same.
The wavelength of cell phone signals is around 4-10 inches. If you are in a location with standing waves, moving the phone a few inches or turning it a little can go from no signal to a strong signal (that's particularly likely indoors). Placing your hand around your phone (or moving your body) might also cause it if you do it in a particular way, not because it's shielding the phone, but because it's shifting the pattern a little. Every phone is susceptible to that and it has nothing to do with antenna design. That's probably the effect you're seeing in Apple's videos. It's not usually a problem in practice because you move around while using your phone, so the signal is completely gone only for brief periods.
The iPhone has an additional, unrelated problem with its antenna design: it gets detuned when you grip it a certain way. That is an unrelated source of signal loss and drop that behaves very differently. Unlike the standing waves, that drop is permanent and independent of where you move.
These two effects make it easy to create videos that seemingly show the same signal drop on a Nokia and on an iPhone, but they are different effects, and on the iPhone, both effects can occur simultaneously. Apple engineers aren't stupid, they know all this. Draw your own conclusions what that means about the truthfulness of Jobs' statements.
The Consumer Reports test was the correct one: fix the phones in a vice grip, then touch the case with a finger in different places. The iPhone shows strong signal loss, none of the others do.
Yes, you can produce signal drop by holding phones in a certain way. Usually, that's not because you cover the antenna, it's because you get standing waves. That's particularly bad if you have a microcell sitting in your home. No phone can receive anything where there isn't a signal, and there are just places where there isn't a signal. At cell phone signal frequencies, moving 10-30 cm can get you from full signal strength to nothing. That has nothing to do with antenna issues. The iPhone antenna problem is a problem that exists on top of these normal effects and causes additional signal loss.
That's why all cell phone can experience signal loss depending on how you hold them, and why Apple can make those videos. But that's not a reasonable test. The CR test is what you need to do: you need to firmly fix the phone in space, and then just touch the case in different places. The iPhone signal strength drops, the signal strength on other phones remains essentially unaffected.
The only difference is that Europeans blindly trust experts, while Americans blindly trust politicians who they believe to have similar political alignment. Between the two, I think that the former is preferable.
No, Americans by and large don't trust their politicians, even those they vote for.
Indeed, if that was the case, governments wouldn't ever be voted out in Europe
That just means that there are multiple competing experts to choose from, usually based on ideology; it's not evidence of independent thought.
I know some Europeans, and I certainly didn't notice any "lining up behind their governments" about them.
I spent many years living in Europe. Believe me, there is a profound difference in attitudes towards government and politics, with Europeans being much more willing to believe "the experts". It's deeply rooted in the culture and educational system in Europe, and has been for centuries.
Among other things, the European educational system largely abandoned liberal arts education long ago; Europeans, even intellectuals, generally receive no post-secondary education in history, politics, or related areas (and little secondary education). From a classical perspective, European universities provide education fit for slaves, not for free men. And it shows in European politics and political debate.
but I look at this and have to ask 'what science is behind this?'
Nobody knows either way whether cell phone radiation is harmful to humans. But it has been shown experimentally that it has biological effects: http://bit.ly/bTSVvj That makes it plausible that it might have harmful effects in humans.
So, until there is clear and convincing evidence that cell phone radiation is harmless, why not give people a choice?
Compared to what?
It's not a question of "comparison", it's a question of basic programming language design. Java and C++ have unsound type systems and numerous avoidable sources of inefficiencies.
but ignore the fact that cement works quite well for the past couple thousands years in building construction.
But Java and C++ do not "work quite well". They are unproductive compared to available alternatives. The software people write in them is bug-ridden, unportable, slow, and full of security holes. Software projects in industry are perpetually behind. When tested, most programmers have basic deficiencies in their understanding of those languages.
The point being, why should I pay attention to someone with a poor track record for creating anything interesting?
You shouldn't "pay attention" to anybody, Pike or B.S. You should pick technologies based on understanding them and the trade-offs involved. Obviously, you do not.
Where the actions of the community at large aren't a major factor in the success or failure of a technology.
The actions of the community clearly are a factor: people with little or no knowledge (e.g., you) pick bad languages and tools for projects, and that's why software is in such a sorry state.
People act as if personality doesn't matter
As I was saying: "And, as you noticed, Pike isn't a particularly good advocate; he comes across as a blow-hard. Pike is never going to create a successful programming language, even though he is a lot more capable than B.S. or Gosling." Apparently, you can't even read.
And, no, I don't think Go is a particularly good language. But Pike's criticism of Java and C++ is valid, and there are plenty of other, good languages around. I'm using them when getting a job done quickly and correctly matters. If you pay me by the hour, I'll even program in COBOL or assembly.
The researchers formulated a hypothesis based on first principles ("training data"), then tested that hypothesis by applying it to earth ("test data"). So, they didn't mix training and test data.
For proof, just look at a map of the economic productivity, subtract out the 100 mile areas around big cities and look at what's left. Or look at the contributions of rural vs urban states to the GNP.
Much is currently done in cities because that's where lots of people happen to be
Congratulations, you're getting it! Big cities house large numbers of people efficiently, they reduce infrastructure costs, and they serve as central distribution points.
Utter nonsense. That's undeniably not the case here, and I'm sure there are innumerable other small cities (not suburbs) which are completely self-contained, with both people and industry, all completely indifferent to any large cities around them.
Almost all the goods you get come from your nearest large city. That's where the highways go. That's where your money is managed. That's where the big airport is. Really, get a clue.
With globalization, your products are just as likely to go to the other side of the planet as the next big city over.
And how do they get there? By pack mule? No, they go through the port in the next big city, and they come from another big city.
You're still doing nothing but spouting laughable assertions.
No, I'm simply pointing out the obvious, based on pretty much universally known economic facts. You're, however, spouting nonsense like the notion that your town is self-sufficient.
So the only people that can be critical of anyone are people that have some big publicly recognized accomplishments? That's a pretty small list.
You went beyond critical and went to ad hominems; that makes the question legitimate.
But merely "This guy thinks he's better and smarter than everyone else...
He's smarter than the vast majority of programmers; his publications and resume tell you at least that much.
but his actual accomplishments in what HE'S developed to replace those technologies in no way measure up the his fanatical criticism of them"
He was part of the development of the technologies he criticizes. Second, his criticism really is valid: C++ and Java are objectively bad designs, and I say that as someone whose main programming languages over the last 30 years have been C, C++, and Java. Third, technically, what he has developed to replace them does measure up; it is certainly quite a bit better.
So, if he developed better technologies, why didn't they catch on? Because better technologies frequently don't catch on. Replacing a technology with something better doesn't just require developing something better, it requires convincing the users of the old technologies that switching is worthwhile, a process complicated by the fact that most users of those old technologies know little about software or programming languages.
And, as you noticed, Pike isn't a particularly good advocate; he comes across as a blow-hard. Pike is never going to create a successful programming language, even though he is a lot more capable than B.S. or Gosling.
To build things like the desktop PC you're using, or the Internet you're communicating over, to develop the medical advances you're enjoying, etc. requires big population centers. They simply wouldn't exist if the entire US was covered in widely separated cities of 100000 inhabitants or less.
And you may think that you're "sinking money into nearby cities", but your modest-size city (aka suburb) wouldn't have much manufacturing or places to go if it wasn't near a big city.
You are right that cities need to "import" raw materials from less densely populated areas, but those can be (and increasingly are) industrial farming and resource extraction operations, not idyllic small towns.
Industrial farming requires very little rural population. When it does, it is migrant workers, not people enjoying the pleasant surroundings.
"Programming languages or hard to learn!" has been a complaint since they were invented.
Yes, but in the case of C++, it is justified. I think anybody who thinks they have mastered C++ is so ignorant of the language that they don't even know how little they know. And I'm saying that as someone who has been programming in C++ for 25 years.
I think UTF-8 and his two books were pretty influential. BLIT and Plan 9 were pretty significant research systems. And as a member of the original UNIX group, I think his opinion on UNIX and C carries some weight (and is probably shared by many of the original UNIX developers).
As a language, Go actually looks pretty nice to me. The trouble with Go is the same trouble nice new languages have always had: lack of critical mass. If Google starts using Go for Appspot, Android, and internal development, it may have a chance.
Just out of curiosity: what have you accomplished?
Given that Pike was a member of the original UNIX team, saying that he is "denigrating his competition" is silly.
I'm not saying that that would be it, but I would not mind a programming environment where the text files have gone the way of the dodo.
Smalltalk had that, including version control, real-time code changes, etc. Download a copy of Squeak and see whether you like it.
Objective C, everytime I look at it, I become convinced is what C++ should have been.
Objective C inherits all of the problems of C (lack of runtime safety, poor pointer semantics, tons of undefined and implementation defined behavior, bad syntax, bad memory management) and creates some of its own (unsound type system, badly designed reflection system, among others).
The only thing off-putting about it, is the method syntax. And even that, when you look carefully, is actually a really clever way to make things poly morphic.
The method syntax came, like most of Objective C that didn't come from C, came from Smalltalk.
And what do you tthink would the difference between "an ad hoc informally-specified bug-ridden slow implementation of half of Common Lisp" and an actual CommonLisp implementation be?
One of C's great advantages is not only that it is simple and very fast,
What you say was true in the 1980's on the PDP-11. Today, C is a complex language; if you think it's simple, you don't understand it. It's complex because its semantics are so subtle: a lot of things are implementation dependent; they seem to work until you port your code. Furthermore, C is not an "efficient" language. On modern hardware, you need excellent optimization, but C's semantics make good optimization quite difficult.
It is possible to have a powerful, low-level, simple language; C isn't that language, not even close.
That whole too complex thing... what, was he hired by Google as a janitor?
Here's the Wikipedia entry on Rob Pike. Any experienced C/UNIX programmer should know who Pike is. He has been programming in C even longer than I have (I'm going on 30 years of C programming).
The only reason you can live there in the kind of comfort, health, and luxury that you do is because hundreds of millions of people live in concrete jungles, at the kinds of densities that support efficient manufacturing and research. The tax payers living in those concrete jungles even subsidize your lifestyle, with roads and other infrastructure.
So, before you talk about other people being "bat-shit insane", realize that you are dependent the "concrete jungle" and the people living there. In a sense, you're even one step more removed from nature than city dwellers, because cities could largely exist without people like you, but you couldn't live anything like you do without cities.
If you wrap your hands tightly around most of a phone, yes, you can produce a signal loss. You can also produce a signal loss by moving into a node or creating a standing wave pattern.
But the iPhone 4 doesn't require a "death grip", a touch of the gap separating the two antennas on the case suffices. No other phone behaves like that.
You can feel all the empathy you want, you can cry, you can scream, you can get angry, it's not going to stop millions of people from dying in foreign countries
Empathy isn't some abstract thing, it is what you feel when you see another human being suffering.
The emotions don't help you deal with society. You cannot feel this world without eventually being driven insane.
Empathy is not supposed to help you; empathy makes you help other people and it keeps you from hurting other people. If you don't have empathy (or can "control" it), you're a potential threat.
The real world is not "cold, brutal and cruel", and beheading people is not "the true nature of mankind". Most people can't commit murder under normal circumstances and become distressed watching murder or violence. That's not a question of "perspective", it's something innate to most humans. People are generally non-violent and cooperative. Human society wouldn't work if many people operated like you think they do.
All your statements make me think that there is something wrong with you and that you have trust and empathy issues.
The iPhone 4 gets criticized because it drops more calls. It drops more calls because, in addition to the problems all phones have, it also has an exposed antenna.
It could be higher or lower than the drop rate for the fleet average.
No, it can't be. Fleet average is 1%, the iPhone 4 is 1% worse than the 3GS. Even if the 3GS never dropped calls, the iPhone 4 could at most be average. Of course, given the problems with 3GS call dropping, it's a pretty safe bet that the 3GS is at best average if not worse.
The end effect is the same: with either phone I have to hold it a certain way in low signal areas to prevent the call from dropping.
No, the end effect is not the same: the iPhone 4 has a 1% higher dropped call rate than a similar phone (3GS) with an internal antenna and worse radio (1% is a pretty big increase, and most of the usual dropped calls are from moving vehicles).
That's because in addition to the usual ways of losing signal, the iPhone 4 has a new one. CR shows you what it is.
When companies learned to achieve the same performance as rod-style antennas with internal antennas, that's when mainstream phones switched. Many companies still have phones with external antennas for those who need them.
But actually, internal antennas have one big performance advantage over rod-style antennas: you can't touch them, which is why they are probably a better choice for consumer phones. Even with external antennas, companies have tried hard to cover them up with plastic to keep people from touching them.
The videos are "true" in the sense that they show two effects that lead to loss of signal and that both can be produced by gripping. They are false and misleading in that Apple implies that the causes and consequences are the same.
The wavelength of cell phone signals is around 4-10 inches. If you are in a location with standing waves, moving the phone a few inches or turning it a little can go from no signal to a strong signal (that's particularly likely indoors). Placing your hand around your phone (or moving your body) might also cause it if you do it in a particular way, not because it's shielding the phone, but because it's shifting the pattern a little. Every phone is susceptible to that and it has nothing to do with antenna design. That's probably the effect you're seeing in Apple's videos. It's not usually a problem in practice because you move around while using your phone, so the signal is completely gone only for brief periods.
The iPhone has an additional, unrelated problem with its antenna design: it gets detuned when you grip it a certain way. That is an unrelated source of signal loss and drop that behaves very differently. Unlike the standing waves, that drop is permanent and independent of where you move.
These two effects make it easy to create videos that seemingly show the same signal drop on a Nokia and on an iPhone, but they are different effects, and on the iPhone, both effects can occur simultaneously. Apple engineers aren't stupid, they know all this. Draw your own conclusions what that means about the truthfulness of Jobs' statements.
The Consumer Reports test was the correct one: fix the phones in a vice grip, then touch the case with a finger in different places. The iPhone shows strong signal loss, none of the others do.
Yes, you can produce signal drop by holding phones in a certain way. Usually, that's not because you cover the antenna, it's because you get standing waves. That's particularly bad if you have a microcell sitting in your home. No phone can receive anything where there isn't a signal, and there are just places where there isn't a signal. At cell phone signal frequencies, moving 10-30 cm can get you from full signal strength to nothing. That has nothing to do with antenna issues. The iPhone antenna problem is a problem that exists on top of these normal effects and causes additional signal loss.
That's why all cell phone can experience signal loss depending on how you hold them, and why Apple can make those videos. But that's not a reasonable test. The CR test is what you need to do: you need to firmly fix the phone in space, and then just touch the case in different places. The iPhone signal strength drops, the signal strength on other phones remains essentially unaffected.
The only difference is that Europeans blindly trust experts, while Americans blindly trust politicians who they believe to have similar political alignment. Between the two, I think that the former is preferable.
No, Americans by and large don't trust their politicians, even those they vote for.
Indeed, if that was the case, governments wouldn't ever be voted out in Europe
That just means that there are multiple competing experts to choose from, usually based on ideology; it's not evidence of independent thought.
I know some Europeans, and I certainly didn't notice any "lining up behind their governments" about them.
I spent many years living in Europe. Believe me, there is a profound difference in attitudes towards government and politics, with Europeans being much more willing to believe "the experts". It's deeply rooted in the culture and educational system in Europe, and has been for centuries.
Among other things, the European educational system largely abandoned liberal arts education long ago; Europeans, even intellectuals, generally receive no post-secondary education in history, politics, or related areas (and little secondary education). From a classical perspective, European universities provide education fit for slaves, not for free men. And it shows in European politics and political debate.