Sure, that's what I mean by making one observer privileged. You pick his frame of reference and extrapolate what happens in it from another reference frames.
But note this: you can not KNOW what happens in another reference frame until the signal reaches you. For instance, suppose that there are two observers and a firecracker in the middle between them. When the firecracker explodes, observer A can predict that according to his previous information observer B should see the firecracker in 1 second and observer B's reaction to the explosion should arrive to observer A in 3 seconds.
However, observer A has no way to _know_ what is going to happen (unless they have the full knowledge of the universe and can accurately predict everything). There's no way to be sure that observer B has not been wiped out by a passing black hole just before the firecracker exploded.
I'm not claiming that events happen when light cones intersect. I'm claiming that coordinates for events outside of our light cone are ill-defined. Because it requires to extrapolate position of observer into future to define them correctly.
Additional problem is, that this event has actually not happened 21 million years ago even if we gloss over ill-defined nature of objects outside of our light cone.
Earth is not stationary with respect to the Pinwheel Galaxy, so the interval will contain space-like component. And then there's the matter of General Relativity and space inflation. Both are not insignificant at these scales.
Read about light cone. Assume that the point of the light cone is 1 week ago (at the time when explosion has been registered). What is the time difference between explosion and the apex of that light cone? Answer: zero, since light travels at time-like paths.
That's the _natural_ way of defining time distances in relativity.
"You can prove that easily enough by taking a single inertial frame of reference, extending it out arbitrarily long, and watching the light speed delay"
Except you can't do this. There's such a thing called 'light cone' and events outside of our light cone are NOT well-defined from physical point of view. And if you try to define it naively by extrapolating observer's future path - you're going to be in a world of hurt because galaxies move relative to each other and the space itself expands.
For example, imagine an observer on Earth ten weeks ago watching the star that is going to become supernova. It is going to become a supernova a few weeks later, but there's no way to know this.
Another example, when I speak "I was born in 30 years ago" that means I can get my diary from ten years old which say that I was 20 years old at that time. Not so with the supernova - it has not HAPPENED few weeks ago here.
It IS different. With a firecracker we have a flash which reaches us 'instantaneously' and then a sound which takes a few moments to reach us. Moreover, different observers with clocks synchronized to a same source would see the flash at the same time (we're ignoring relativity) so they can agree on a universal frame of reference (Earth + UTC time).
With light it's different. We have NO other faster channel. Imagine that you have no way of knowing that firecracker has exploded except by listening to a sonic boom. And you have no faster way to communicate except by shouting.
Also, IDEA does have code coverage analysis, schema comparison (with quite a nifty feature - it can work with DDL only, without database connection). It can't debug/trace SQL, mostly because there's no cross-platform interface for it. But that's fine, just use a different tool for it.
It can, of course, show comments and documentation during autocompletion. Autocompletion also work in comments or even in non-source-code files.
"The features IDEA added in Dec 2010 for version 10 were available in Visual Studio 2002 (table editting, sql queries, code completion, integrated source control, detachable editor windows)."
Absolutely wrong. IDEA has _inline_ SQL completion support since IDEA9. I.e. you can type 'String sql="select * from ord..." hit tab and get autocompletion for table names. And you'll have SQL syntax highlighting _inside_ the string literal. Refactorings (table renames, for example), of course, will work correctly and inspections will also work on it just fine. Also regexps, XPath, JQuery, etc. are supported.
Nothing, absolutely nothing comes close to this.
And semantic autocompletion based on source code analysis has been in IDEA since forever (2002?). I remember buying VisualAssist for MSVS to make it behave just a little bit like IDEA at that time.
And I work with MSVS daily - it's the best IDE for C++ development. For C# development, IntelliJ produce a nice plugin (Resharper) for MSVS which makes life much easier.
I confess, I've used it a few times for a one-off test user (to check that ACLs work correctly). Well, once or twice I forgot to delete this test user.
So I totally can see that somebody might set up an easy password, especially if a system is non-Internet-facing.
Well, exponentiation is also useless - you can just use multiple multiplications. Tensors save a lot of typing, and allow one to think about problems on higher level.
How is it different from, say, Wicket or ZK, or even GWT?
I can write complete AJAX-y webapps in Wicket or ZK, including database. They both store state of pages on server side, so AJAX becomes trivial (just rerender the page and send the difference in DOM trees using JSON).
Then there's GWT which compiles static Java code into JavaScript.
Anyway, closed-source drivers are not going anywhere. OpenSource drivers are slowly (very slowly) catching up with them, and native Linux drivers have huge advantage, they JustWork(tm).
It's limited by latency-bandwidth product, so if you have a fat channel but with big latency (i.e. mobile) you'll get slow connections, even though there's plenty of bandwidth available. TCP window scaling helps, but it often fails miserably if there's a slight packet loss. Also, some older phone models have bugs in its implementation, so we had to force it off on proxy side.
As I worked at an Eastern Europe provider, we didn't have any restrictions on data use (tethering? sure, go on!). We also used real IP addresses, no NATs.
I was involved in building a mobile operator network.
It's typical for operators to run stateful TCP proxies to overcome the bandwidth-delay problem with TCP/IP. Without these proxies a lot of TCP/IP stacks have very poor performance. As far as I remember, we used 20 mins. timeout to conserve translation slots (which were limited by hardware).
Second, a lot of providers do NAT. Which should be self-explanatory.
"Hypothetical situation: a man impregnates a woman. He wants to have the baby, but she doesn't, so she gets an abortion regardless of his opinion."
To which she is totally entitled. Let's see the responsibilities: Woman: 9 months of hardship with dangerous childbirth (it's one of the most dangerous activities, in fact). Man: one fuck. Then sit and wait.
So I totally agree that a woman can decide what to do with her body. If a man wants a child, he can adopt one. There's no shortage of orphans, unfortunately.
"Now let's reverse the genders: She wants the baby, but he doesn't. She decides not to get the abortion, so she takes him to court and he has to either help raise the child or pay child support payments."
Which she won't get, most probably. And I'm totally OK with that. Also please note, that this is not a pro-choice issue, child payments, in fact, long precede abortions.
Sure, that's what I mean by making one observer privileged. You pick his frame of reference and extrapolate what happens in it from another reference frames.
But note this: you can not KNOW what happens in another reference frame until the signal reaches you. For instance, suppose that there are two observers and a firecracker in the middle between them. When the firecracker explodes, observer A can predict that according to his previous information observer B should see the firecracker in 1 second and observer B's reaction to the explosion should arrive to observer A in 3 seconds.
However, observer A has no way to _know_ what is going to happen (unless they have the full knowledge of the universe and can accurately predict everything). There's no way to be sure that observer B has not been wiped out by a passing black hole just before the firecracker exploded.
Just admit that you have no clue, ok?
I'm not claiming that events happen when light cones intersect. I'm claiming that coordinates for events outside of our light cone are ill-defined. Because it requires to extrapolate position of observer into future to define them correctly.
Additional problem is, that this event has actually not happened 21 million years ago even if we gloss over ill-defined nature of objects outside of our light cone.
Earth is not stationary with respect to the Pinwheel Galaxy, so the interval will contain space-like component. And then there's the matter of General Relativity and space inflation. Both are not insignificant at these scales.
You cannot establish 'true' simultaneity, you can just agree to make one observer 'privileged' and use their order of events.
"Yes, and you don't understand what a light cone means, obviously. Events outside of our light cone are not yet causally linked"
That's why the expression "it happened 21 millions years ago" is not well-defined. Because it has NOT happened 21 million years ago here.
Nope, you've failed your community college.
Read about light cone. Assume that the point of the light cone is 1 week ago (at the time when explosion has been registered). What is the time difference between explosion and the apex of that light cone? Answer: zero, since light travels at time-like paths.
That's the _natural_ way of defining time distances in relativity.
"You can prove that easily enough by taking a single inertial frame of reference, extending it out arbitrarily long, and watching the light speed delay"
Except you can't do this. There's such a thing called 'light cone' and events outside of our light cone are NOT well-defined from physical point of view. And if you try to define it naively by extrapolating observer's future path - you're going to be in a world of hurt because galaxies move relative to each other and the space itself expands.
For example, imagine an observer on Earth ten weeks ago watching the star that is going to become supernova. It is going to become a supernova a few weeks later, but there's no way to know this.
Another example, when I speak "I was born in 30 years ago" that means I can get my diary from ten years old which say that I was 20 years old at that time. Not so with the supernova - it has not HAPPENED few weeks ago here.
It IS different. With a firecracker we have a flash which reaches us 'instantaneously' and then a sound which takes a few moments to reach us. Moreover, different observers with clocks synchronized to a same source would see the flash at the same time (we're ignoring relativity) so they can agree on a universal frame of reference (Earth + UTC time).
With light it's different. We have NO other faster channel. Imagine that you have no way of knowing that firecracker has exploded except by listening to a sonic boom. And you have no faster way to communicate except by shouting.
Yup. And in Earth's frame of reference the explosion happened some days ago.
Speaking "it happened millions years ago" is not correct since there's no absolute reference frame.
In our reference frame it happened days ago.
Also, IDEA does have code coverage analysis, schema comparison (with quite a nifty feature - it can work with DDL only, without database connection). It can't debug/trace SQL, mostly because there's no cross-platform interface for it. But that's fine, just use a different tool for it.
It can, of course, show comments and documentation during autocompletion. Autocompletion also work in comments or even in non-source-code files.
Which consensus?
"The features IDEA added in Dec 2010 for version 10 were available in Visual Studio 2002 (table editting, sql queries, code completion, integrated source control, detachable editor windows)."
Absolutely wrong. IDEA has _inline_ SQL completion support since IDEA9. I.e. you can type 'String sql="select * from ord..." hit tab and get autocompletion for table names. And you'll have SQL syntax highlighting _inside_ the string literal. Refactorings (table renames, for example), of course, will work correctly and inspections will also work on it just fine. Also regexps, XPath, JQuery, etc. are supported.
Nothing, absolutely nothing comes close to this.
And semantic autocompletion based on source code analysis has been in IDEA since forever (2002?). I remember buying VisualAssist for MSVS to make it behave just a little bit like IDEA at that time.
And I work with MSVS daily - it's the best IDE for C++ development. For C# development, IntelliJ produce a nice plugin (Resharper) for MSVS which makes life much easier.
Ditto for your opinion.
Technically, IntelliJ tools are built on top of free IDEA Community Edition.
Uhm. You're wrong.
The best IDE is IDEA ( http://www.jetbrains.com/ ) with everything else coming in distant second.
BTW, there's PyCharm IDE for Python from IDEA creators: http://www.jetbrains.com/pycharm/ and it's really great.
Yeah, it stopped being diculous long ago. Now it's just repeats.
I wonder, how this will effect us?
I confess, I've used it a few times for a one-off test user (to check that ACLs work correctly). Well, once or twice I forgot to delete this test user.
So I totally can see that somebody might set up an easy password, especially if a system is non-Internet-facing.
Well, exponentiation is also useless - you can just use multiple multiplications. Tensors save a lot of typing, and allow one to think about problems on higher level.
How is it different from, say, Wicket or ZK, or even GWT?
I can write complete AJAX-y webapps in Wicket or ZK, including database. They both store state of pages on server side, so AJAX becomes trivial (just rerender the page and send the difference in DOM trees using JSON).
Then there's GWT which compiles static Java code into JavaScript.
Nope. NVidia themselves say that API churn in Linux is not so bad: http://www.phoronix.com/scan.php?page=article&item=nvidia_qa_linux&num=7 In fact, you can check NVidia's compatibility layer (it's distributed in source code). It's tiny, any adjustments are easy to do.
Anyway, closed-source drivers are not going anywhere. OpenSource drivers are slowly (very slowly) catching up with them, and native Linux drivers have huge advantage, they JustWork(tm).
Nah, TCP's bandwidth behavior sucks.
It's limited by latency-bandwidth product, so if you have a fat channel but with big latency (i.e. mobile) you'll get slow connections, even though there's plenty of bandwidth available. TCP window scaling helps, but it often fails miserably if there's a slight packet loss. Also, some older phone models have bugs in its implementation, so we had to force it off on proxy side.
As I worked at an Eastern Europe provider, we didn't have any restrictions on data use (tethering? sure, go on!). We also used real IP addresses, no NATs.
However, we still had to proxy TCP/IP. Here are some details:
http://en.wikipedia.org/wiki/Bandwidth-delay_product
http://en.wikipedia.org/wiki/TCP_window_scale_option
I was involved in building a mobile operator network.
It's typical for operators to run stateful TCP proxies to overcome the bandwidth-delay problem with TCP/IP. Without these proxies a lot of TCP/IP stacks have very poor performance. As far as I remember, we used 20 mins. timeout to conserve translation slots (which were limited by hardware).
Second, a lot of providers do NAT. Which should be self-explanatory.
They certainly would. Operators used toy tanks to get a sample from hot uranium lava in Chernobyl or to move cameras into inaccessible spots.
You overestimate the severity of radiation, analog circuits and simple digital circuits can take tremendous volumes of abuse.
Your argument is still wrong.
"Hypothetical situation: a man impregnates a woman. He wants to have the baby, but she doesn't, so she gets an abortion regardless of his opinion."
To which she is totally entitled. Let's see the responsibilities:
Woman: 9 months of hardship with dangerous childbirth (it's one of the most dangerous activities, in fact).
Man: one fuck. Then sit and wait.
So I totally agree that a woman can decide what to do with her body. If a man wants a child, he can adopt one. There's no shortage of orphans, unfortunately.
"Now let's reverse the genders: She wants the baby, but he doesn't. She decides not to get the abortion, so she takes him to court and he has to either help raise the child or pay child support payments."
Which she won't get, most probably. And I'm totally OK with that. Also please note, that this is not a pro-choice issue, child payments, in fact, long precede abortions.