Actually, Star Trek should be given more due than that. They spent a lot of time considering real physics when coming up with some of their ideas.
The greatest grip I have with the Star Trek is that they populated the whole Galaxy with humans - albeit with some facial bulges and ridges or unusual jewelry. Granted, this is more about laws of evolution then laws of physics (in strict sense), but they are simply too unimaginative for my taste.
Not that other shows are much better. Look at new Galactica - they had to "humanize" Cyclons and introduce this religious mumbo-jumbo, instead of building the story about inherently different mechanical consciousness.
I would love to see life forms that are so strange and wonderful that story that is built around them is actually not a shallow variation of what was repeated countless times throughout the history of human culture.
I guess there are not that many Clarks or Simaks left.
If these things were to produce ozone (which i doubt)...
According to Wikipedia article, ozone can be produced by electromagnetism alone. So, while article only mentions ions (and not ozone), ozone production might actually be a legitimate concern.
I think people tend to have an innate knowledge to the contrary, that the universe, the natural world, is in itself inanimate -- even though life can manifest itself within it. And therefore, from the very first people capable of thought, we have always tended (correctly, I believe) to understand consciousness to be supernatural.
While it is true that great many people throughout history believed that our consciousness/spirit/soul is somehow separate from the rest of this World (and later, Universe), that fact alone says noting about correctness of this theory. For example, most people in medieval Europe believed in witches, yet you would not, in this day and age, claim that witches exist.
Actually, the very definition of the Universe prevents any "supernatural" basis of consciousness. Universe by definition is everything that exists, therefore "supernatural" must be part of the Universe to even exist.
What you might be claiming is that there are undiscovered laws of physics that influence our consciousness, or are even its very basis. So far we don't have any shred of evidence that this is the case, but even this changed, I doubt that religion or old beliefs would bring much insight into the nature of these laws.
How do math, philosophy, or metaphysics aid in survival and reproduction?
Our evolution no longer happens at the individual level only - it happens at the level of the society too, and these things make society evolve faster and be more competitive. Here are some (very limited) examples:
- Math: Too many practical uses to count. Even in ancient civilization you wouldn't be able to have money/economy, any kind of non-trivial construction, or even some weapons, without it.
- Philosophy: Thinking about our thinking will make us better at thinking, don't you think?;) Seriously, even Greeks understood importance of logic and correct reasoning. All the knowledge that we have, and routinely put into practical use, would be much harder to obtain without some kind structured approach to knowledge gathering, which philosophy, to some degree, provides. Granted, some parts of philosophy (such as metaphysics) appear to be less practical...
But getting back to the topic, by that logic, we shouldn't try to stop homicides, either, because they account for less deaths than car crashes...
I never said you should not try to stop the terrorism. Point I was trying to make was that budget should correspond to the real threat instead of the perceived threat and that American people are sadly off-balance when it comes to judging real threats.
As a consequence, it is worse for them as well as for the rest of the World.
For example, it was well known that an investment of around $14 billion would bring New Orleans to a reasonable safety level. Instead these $14b ended up in a sink-hole called "War on Terror".
Sure, you can virtually eliminate deaths from car accidents by reducing speed limits to 25 and making cars cost $50k each by adding $25k more in protection, and then they get 8MPG.
There are other ways you could do that. For example, reducing crash incompatibility, or developing public transportation (e.g. French TGV).
But that's not what we want.
Which is where a responsible govermnet comes into - to order people to do what will benefit them all in the long run, even against their immediate wishes. Sadly, Americans seem to have lost their ability to elect such a government.
The difference between terrorism and cancer, lightening strikes, cancer, car accidents, etc., is that it is the intentional will of the terrorists to kill as many innocent people as they can.
This is not about presence of intention. The rational policy should aim to minimize lost lives, irrespective of how these people died. So if large number of people can be saved at expense of relatively few terrorist victims, this can only be a good thing.
Unfortunately, large number of people dying all by themselves does not seem to be as visible to the public opinion as relatively smaller number of people dying all at once in a single terrorist attack.
the terrorists can only terrorize us if we let them
You, of course, have a point here, but it is not limited to terrorists only. For example, some natural disasters that could have been be prevented were not (Catrina). So in a sense, these natural disasters will kill us only if "we let them".
Threads are indeed more efficient at context switching than processes, but the real question is: does that really matter?
Thread switches can be less expensive than process switches, as illustrated in this table: http://www.linuxjournal.com/articles/lj/0057/2941/ 2941f1.png. I suspect the difference (when it exists) is not important in many cases, with some notable exceptions such as near-real-time systems such as games.
As to the other reason for using threads, the sharing of memory, there's this really cool new technology out these days. Maybe you've heard of it. It's called "shared memory".
You can't easily put the complex memory states there. With the shared memory, you basically need to serialize the data at the input and the de-serialize it at the output. This is not very efficient way of doing things (both from the CPU-performance an brain-performance perspective).
For example, while not being game developer myself, I suspect games have this big interconnected graph of objects and each thread of execution has a need to access numerous objects from this graph. Putting this into processes and then designing what is essentially a "communication protocol" using shared memory would complicate (not to mention slow down) things considerably.
The bottom line is this: if you need concurrency in your application, you should be using processes, not threads.
The reason for keeping your threads in separate processes might be that the communication required is simple and/or the memory protection is extremely important (such as in DBMS - Oracle is multi-process for that reason).
However, it is unjustified to make blanket statements of type: "you should always do X" and then skip the valid reasons for doing Y.
...when Aureal began selling their products based on EAX support...
I don't see where Creative was "squashing" them rather than giving them enough rope.
Well, EAX is basically an API, and patenting API is evil. Imagine Karl Benz (http://en.wikipedia.org/wiki/Karl_Benz) patenting the steering wheel (which is, in essence, an API for a car)!
Beside Aureal, another example of squishing competition is the fate of nVidia SoundStorm. Although technically capable of supporting higher EAX levels (it's a DSP driven by software), it was stuck at EAX2 (if memory serves me right), because of legal concerns over Creative's parents.
Do not assert that the actions of his grandfather are his responsibility as well.
However, his actions might be (partial) responsibility of his grandfather.
A family can bestow certain ethical values - if this was missing from his ancestors, there is a greater chance it was not passed to him while he was growing up.
So producing and servicing gasoline cars is simply much more profitable than producing and servicing electrical cars.
Hmm... so a company that has the audacity to strongly push the electric car would produce cheaper and more reliable cars and sweep the competition off the market?
The same happened with Luddites vs. looms, horses vs. railway, and the same will happen with electric vs. gasoline cars, provided technology is good enough.
And if PS2 SDK is any indication, it will be of less then ideal quality.
This is exactly why MS has a chance at beating Sony in the next-gen console war. Multi-threaded programming is hard as it is, but Microsoft is at least providing developers with tools that do not make it even harder.
I'm somewhat embarrassed to say that the reason I don't use them has nothing to do with their cost. I had one once, and the delay between the time that I switched on the light and the time the light actually turned on really annoyed me. I know it's stupid, but that's why I haven't bought any more.
On the other hand, I have a prosaic reason in favor of CFLs: I hate changing expired light-bulbs! CFLs simply require much less frequent replacement. 4 CFLs in my room were bought 5 years ago and not one has gone bust so far:)
...it didn't really last all that much longer than other regular bulbs...
You are correct about everything except the most important part. I'm not sure your wrong, but I question it. That is that it's typical to have multiple applications attached to the same db.
Good point. Al lot of "small" Web applications are actually "single application - single database". In addition to that, many are heavily read oriented with very few writes and manipulate data that is not very critical. In environment like this, having "application level" data consistency might be quick and dirty solution that actually works quite well in practice.
However, I'm under impression that many people learn these quick and dirty solutions first and never quite take the time u understand why the "slow and clean" solutions were invented in the first place.
In addition to that, I would argue that most development goes into "large" Web applications (they are fewer, but require significantly more development). Also, Web is by no means the only area where databases find their application.
Actually it shouldn't (in this context). Typically, one database will have several client applications attached to it. If data consistency is not checked at DB level, then:
Bug in single application might compromise the data consistency of the whole system.
You must keep all of your applications precisely synchronized.
You are repeating the job of implementing the same consistency logic across all applications instead of implementing it only once - in database.
Implementing these sorts of checks can be difficult to do correctly at the application level in a concurrent environment typical for a DBMS.
Data consistency at DB level is directly supported by modeling tools, so you can plan for it and visualize it early enough to spot problems and communicate it to the other team members more easily.
Well I'm sure you'd be able to run IBM System/360 software from the sixties in an appropriate emulator, but that's really not the point of my post...
The point is that Microsoft maintains old APIs and every application that does not try to circumvent the documented API has an excellent chance to run in the newer version of OS.
The greatest grip I have with the Star Trek is that they populated the whole Galaxy with humans - albeit with some facial bulges and ridges or unusual jewelry. Granted, this is more about laws of evolution then laws of physics (in strict sense), but they are simply too unimaginative for my taste.
Not that other shows are much better. Look at new Galactica - they had to "humanize" Cyclons and introduce this religious mumbo-jumbo, instead of building the story about inherently different mechanical consciousness.
I would love to see life forms that are so strange and wonderful that story that is built around them is actually not a shallow variation of what was repeated countless times throughout the history of human culture.
I guess there are not that many Clarks or Simaks left.
According to http://en.wikipedia.org/wiki/Ozone#Chemistry, the O^1 is not produced from breakdown of O^3.
Would you care to provide any references?
I suspect that O^1, even if it were produced naturally from O^3, would be damaging to biological systems, due to its high chemical reactivity.
According to Wikipedia article, ozone can be produced by electromagnetism alone. So, while article only mentions ions (and not ozone), ozone production might actually be a legitimate concern.
While it is true that great many people throughout history believed that our consciousness/spirit/soul is somehow separate from the rest of this World (and later, Universe), that fact alone says noting about correctness of this theory. For example, most people in medieval Europe believed in witches, yet you would not, in this day and age, claim that witches exist.
Actually, the very definition of the Universe prevents any "supernatural" basis of consciousness. Universe by definition is everything that exists, therefore "supernatural" must be part of the Universe to even exist.
What you might be claiming is that there are undiscovered laws of physics that influence our consciousness, or are even its very basis. So far we don't have any shred of evidence that this is the case, but even this changed, I doubt that religion or old beliefs would bring much insight into the nature of these laws.
Whether we are irrelevant is irrelevant ;)
What is relevant is that we are a life form. And as any life form we strive to survive.
If you disagree on this, you are free not to survive, which would, by the way, make you, and your point, ahem, irrelevant ;)
Our evolution no longer happens at the individual level only - it happens at the level of the society too, and these things make society evolve faster and be more competitive. Here are some (very limited) examples:
- Math: Too many practical uses to count. Even in ancient civilization you wouldn't be able to have money/economy, any kind of non-trivial construction, or even some weapons, without it.
- Philosophy: Thinking about our thinking will make us better at thinking, don't you think? ;) Seriously, even Greeks understood importance of logic and correct reasoning. All the knowledge that we have, and routinely put into practical use, would be much harder to obtain without some kind structured approach to knowledge gathering, which philosophy, to some degree, provides. Granted, some parts of philosophy (such as metaphysics) appear to be less practical...
Actually, you can. Look at Drowning New Orleans: The Original 2001 Scientific American Article or look at what Dutch did to protect themselves from the North Sea (not precisely a hurricane but close enough).
I never said you should not try to stop the terrorism. Point I was trying to make was that budget should correspond to the real threat instead of the perceived threat and that American people are sadly off-balance when it comes to judging real threats.
As a consequence, it is worse for them as well as for the rest of the World.
For example, it was well known that an investment of around $14 billion would bring New Orleans to a reasonable safety level. Instead these $14b ended up in a sink-hole called "War on Terror".
There are other ways you could do that. For example, reducing crash incompatibility, or developing public transportation (e.g. French TGV).Which is where a responsible govermnet comes into - to order people to do what will benefit them all in the long run, even against their immediate wishes. Sadly, Americans seem to have lost their ability to elect such a government.
This is not about presence of intention. The rational policy should aim to minimize lost lives, irrespective of how these people died. So if large number of people can be saved at expense of relatively few terrorist victims, this can only be a good thing.
Unfortunately, large number of people dying all by themselves does not seem to be as visible to the public opinion as relatively smaller number of people dying all at once in a single terrorist attack.
You, of course, have a point here, but it is not limited to terrorists only. For example, some natural disasters that could have been be prevented were not (Catrina). So in a sense, these natural disasters will kill us only if "we let them".
Add guns to this.
Not to mention it would remove not just excess light, but those pesky Humans as well ;)
Now that's a long-term solution!
Thread switches can be less expensive than process switches, as illustrated in this table: http://www.linuxjournal.com/articles/lj/0057/2941/ 2941f1.png. I suspect the difference (when it exists) is not important in many cases, with some notable exceptions such as near-real-time systems such as games.
You can't easily put the complex memory states there. With the shared memory, you basically need to serialize the data at the input and the de-serialize it at the output. This is not very efficient way of doing things (both from the CPU-performance an brain-performance perspective).
For example, while not being game developer myself, I suspect games have this big interconnected graph of objects and each thread of execution has a need to access numerous objects from this graph. Putting this into processes and then designing what is essentially a "communication protocol" using shared memory would complicate (not to mention slow down) things considerably.
The reason for keeping your threads in separate processes might be that the communication required is simple and/or the memory protection is extremely important (such as in DBMS - Oracle is multi-process for that reason).
However, it is unjustified to make blanket statements of type: "you should always do X" and then skip the valid reasons for doing Y.
Well, EAX is basically an API, and patenting API is evil. Imagine Karl Benz (http://en.wikipedia.org/wiki/Karl_Benz) patenting the steering wheel (which is, in essence, an API for a car)!
Beside Aureal, another example of squishing competition is the fate of nVidia SoundStorm. Although technically capable of supporting higher EAX levels (it's a DSP driven by software), it was stuck at EAX2 (if memory serves me right), because of legal concerns over Creative's parents.
Well... 640K processors ought to be enough for anybody ;)
He was using OR, not XOR ;)
However, his actions might be (partial) responsibility of his grandfather.
A family can bestow certain ethical values - if this was missing from his ancestors, there is a greater chance it was not passed to him while he was growing up.
Hmm... so a company that has the audacity to strongly push the electric car would produce cheaper and more reliable cars and sweep the competition off the market?
The same happened with Luddites vs. looms, horses vs. railway, and the same will happen with electric vs. gasoline cars, provided technology is good enough.
And if PS2 SDK is any indication, it will be of less then ideal quality.
This is exactly why MS has a chance at beating Sony in the next-gen console war. Multi-threaded programming is hard as it is, but Microsoft is at least providing developers with tools that do not make it even harder.
You can teach just about anyone to play piano. Somehow, not many people do that well...
No, no, no... you've got it all wrong. It's actually:
Greed+Evil = Profit
;)
"Revenue" does not equal "profit". I suspect profit margins on CFLs are quite a bit larger then on ordinary incandescents.
On the other hand, I have a prosaic reason in favor of CFLs: I hate changing expired light-bulbs! CFLs simply require much less frequent replacement. 4 CFLs in my room were bought 5 years ago and not one has gone bust so far :)
Try Philips or Tungsram CFLs.
My guess:
BTW, I used "quick" as a reference to implementation speed, not execution speed.
Good point. Al lot of "small" Web applications are actually "single application - single database". In addition to that, many are heavily read oriented with very few writes and manipulate data that is not very critical. In environment like this, having "application level" data consistency might be quick and dirty solution that actually works quite well in practice.
However, I'm under impression that many people learn these quick and dirty solutions first and never quite take the time u understand why the "slow and clean" solutions were invented in the first place.
In addition to that, I would argue that most development goes into "large" Web applications (they are fewer, but require significantly more development). Also, Web is by no means the only area where databases find their application.
Actually it shouldn't (in this context). Typically, one database will have several client applications attached to it. If data consistency is not checked at DB level, then:
The point is that Microsoft maintains old APIs and every application that does not try to circumvent the documented API has an excellent chance to run in the newer version of OS.