Several posters have cited the "halting problem" as an issue. It's not.
First, the halting problem does not apply to deterministic systems with finite memory. In a deterministic system with finite memory, eventually you must repeat a state, or halt.
So that disposes of the theoretical objection.
In practice, deciding halting isn't that hard. The general idea is that you have to find some "measure" of each loop which is an integer, gets smaller with each loop iteration, and never goes negative. If you can come up with a measure expression for which all those properties are true, you have proved termination. If you can't, the program is probably broken anyway. Yes, it's possible to write loops for which proof of termination is very hard. Few such programs are useful. I've actually encountered only one in a long career, the termination condition for the GJK algorithm for collision detection of convex polyhedra.
That took months of work and consulting with a professor at Oxford.
The real problem with program verification is the C programming language. In C, the compiler has no clue what's going on with arrays, because of the "pointer=array" mistake. You can't even talk about the size of a non-fixed array in the language. This is the cause of most of the buffer overflows in the world. Every day, millions of computers crash and millions are penetrated by hostile code from this single bad design decision.
That's why I got out of program verification when C replaced Pascal. I used to dothis stuff.
Good program verification systems have been written for Modula 3, Java, C#, and Verilog. For C, though, there just isn't enough information in the source to do it right. Commercial tools exist, but they all have holes in them.
First, here's the real paper. Actually, this is the previous paper, where they got operation at 177K, but not quite room temperature. (Don't link to Physorg; they just collect press releases, add ads, and delete the citations.)
Terahertz waves are interesting. At one time, that was an inaccessible portion of the spectrum, above radio but below infrared. Now it's understood that it's a region in which both RF and optical techniques can work. At that frequency, propagation is line of sight, although diffuse systems, as with diffuse IR, are possible. Applications are still a ways off, but there's probably something useful to do with this stuff.
Incidentally, "radio", by international agreement, ends at 3THz. Beyond that, it's "light" for regulatory purposes. In the US, FCC regulations (for RF) end at 3THz, and DHS regulations (as for lasers) begin.
The US used to have a number of really good places to work in engineering. We all knew where they were - Bell Labs, Xerox PARC, HP Labs, DEC R&D, IBM Almaden, RCA Sarnoff Labs, Lockheed's Skunk Works. At one time or another, I've visited most of those places, and been impressed with the people. All are gone, or a shadow of what they once were.
What do we have today? Google? Google is an advertising agency. All the classic good places were part of manufacturing companies, where engineering turned into working hardware. I know of little places doing good stuff, but the little places come and go; you don't have a career there.
Is something similar happening in Japan? As manufacturing moves to China, in time, the engineering follows. The outsourcing organization is hollowed out, and eventually replaced by a China-based company.
Japanese companies have been outsourcing electronics manufacturing to China for about a decade; not as enthusiastically as US companies, but outsourcing nonetheless.
Yes, there are good engineering places where people have full careers in the US. I visited one recently, a well-known visual effects movie studio. Some of their staff have been around for 15-30 years, and everybody is very good at what they do and proud of it. Their CEO is big on keeping the core team together, because they know they have an organization that can deliver good work on tough jobs on schedule. The place is advanced technically but felt very retro, in a good way, as an organization. Few such places are left.
That's why few people want to become good engineers.
Cut a deal with Icahn for the parts of Yahoo they want.
Let Icahn find buyers for the rest of the assets.
Profit!
This makes more sense than buying the whole company, which is way overpriced and overstaffed for its revenue.
All Microsoft really needs, after all, is the brand, so they can drive traffic to MSN.
A skinny person with a really high metabolism can eat far more in a day than a fat person with a slow one
Yes. On rare occasions you meet such people. I've known an ex-New York City Ballet dancer like that. She's slim, hard-muscled, radiates heat, and has to eat almost constantly to keep her weight up. I know an endurance rider who's 6' tall, all leg, runs seven miles a day, and eats twice what I do when we have dinner together. She thinks 58F is a good indoor temperature.
Such people are unusual. On the other hand, I've probably seen over fifty oinkers today, waddling around. And it's early yet.
Mod parent up. Touch-screens have been around for many years, in fast food, industrial control, kiosks, and similar casual-use push-big-buttons applications. Touch screens are a huge pain for a session long enough that you want to sit down. So they're useful for
palm-sized devices.
But for text editing, or graphical input? No way. It's too blunt a tool.
You can actually run X-windows on QNX, although nobody does. QNX has its own GUI system called Photon, which is oriented towards things one might want in an industrial control panel or an entertainment system, like meters, dials, and graphs.
QNX the OS is fine; it's QNX the company that's difficult to deal with. On the other hand, who else has gone up against Microsoft on x86 for 20 years and is still alive?
This task is not easy at all. 12 years after Linux has been converted to
an SMP OS we still have 1300+ legacy BKL using sites. There are 400+
lock_kernel() critical sections and 800+ ioctls. They are spread out
across rather difficult areas of often legacy code that few people
understand and few people dare to touch.
This is where microkernels win. When almost everything is in a user process, you don't have this problem.
Within QNX, which really is a microkernel, almost everything is preemptable. All the kernel does is pass messages, manage memory, and dispatch the CPUs. All these operations either have a hard upper bound in how long they can take (a few microseconds), or are preemptable.
Real time engineers run tests where interrupts are triggered at some huge rate from an external oscillator, and when the high priority process handling the interrupt gets control, it sends a signal to an output port. The time delay between the events is recorded with a logic analyzer. You can do this with QNX while running a background load, and you won't see unexpected delays. Preemption really works. I've seen complaints because one in a billion interrupts was delayed 12 microseconds, and that problem was quickly fixed.
As the number of CPUs increases, microkernels may win out. Locking contention becomes more of a problem for spinlock-based systems as the number of CPUs increases. You have to work really hard to fix this in monolithic kernels, and any badly coded driver can make overall system latency worse.
Every time we close off another way to hide business identity, filtering gets better. We can't actually stop the spam, but we can fix it so few humans ever see it.
We're seeing the need for some limits on web page redirection. Most of these attacks involve putting something on a trusted place which redirects to an untrusted place. Google, with incredible sloppyness, allows Blogspot accounts to do this, and as a result, they are heavily exploited by spammers. (Try, for example, "nikaluti21040.blogspot.com", which will redirect, via some iframes and other tricks, to "selissia.com", which is hosted on "secureserver.net").
Exploitation of legitimate sites to get through spam filters is a problem, but it can be dealt with if you're willing to take a hard line.
Our first step in that direction was our list of major domains being exploited by active phishing scams. Our position is that one phishing attack from within a domain blacklists the whole domain. But within three hours after the problem is fixed, they're off the list.
Major sites make the list now and then; Google, Dell, MSN, and Yahoo have all been on the list at one time or another. But they now know to take steps to get themselves off within hours. The Anti-Phishing Working Group and PhishTank have been helpful with this effort.
We're down to 47 such domains today. It was about 175 when we started last fall.
Most of the remaining entries are free web hosting services or DSL providers.
We and others have observed that there's an inverse relationship between the number of redirects and the legitimacy of a web page. We've been looking at this at SiteTruth.
For things like AdWords ads, where some sites use redirection as part of a tracking systems, it's typically the bottom-feeders who are using redirection. An advertiser promoting their own product or service doesn't need it; it's brokers, intermediaries, and made-for-Adwords sites that use redirection. Anything with more than one redirect is almost bad. We expect to use redirection as part of our legitimacy metric in the future.
It's thus time for browsers to limit their acceptance of redirection. One HTTP-level redirect, OK. Beyond that, put up a popup warning of suspicious redirection behavior. Redirects via META tags and Javascript should produce a popup. Sure, some site operators will look bad, but they will adapt.
The metrics used in this paper are lame. They're things like "number of #define statements outside header files" and such.
Modern code quality evaluation involves running code through something like Purify, which actually has some understanding of C and its bugs. There are many such tools.
This paper is way behind current analysis technology.
I've been to Bletchley Park. The problem is that they have only a few things worth exhibiting, like the rebuilt bombe, the rebuilt Colossus, and some real crypto machines from WWII. One big gallery in a major museum could house the collection. But the place is a sizable estate. The famous "huts" aren't much to look at, and some of them are only concrete pads today. The manor house is in decent shape but an architectural mishmash not really worthy of preservation.
They also have a model railroad, a model boat club, an auto collection, a lake with swans, a collection of Churchill-was-here memorabilia, and, inevitably, a gift shop, like too many other English estates open to visitors.
In 2007, as Harper's points out, most of the top 10 movies were not only sequels, but sequels where "version > 2". Since Hollywood management does fads, we have to expect a run of more such sequels. Hence Indy #4.
As I've remarked before, Hollywood has a major idea shortage. History has been mined out. Comic book resources have been drained; the big franchises are done, and productions are digging deep into obscure comics for material. Hollywood is now down to recycling 1960s TV shows. Are there any up and coming directors with new ideas? Who's the next Spielberg?
Incidentally, the trailer for "Clone Wars" looks like a video game ad for a bad video game, one with a low poly and keyframe budget.
Entertainment may be a depletable resource. When everything ever made is easily available, anything new has to be better than anything done before. Everybody has already seen the best of everything. This makes it hard to excel. Consider music. Nobody has done a major new symphony for decades. Rock music peaked decades ago. House music is stuck. Rap doesn't shock anybody any more. No wonder the RIAA is in trouble.
Film got a "midlife kicker" - computer graphics. At last, you could film anything you could imagine. After about a decade, most of the backlog of things directors always wanted to do,
but couldn't afford, have been done. Big shots of alien or historical cities, nonhuman actors, and massive war scenes, have all been competently put on the big screen.
Viewers are no longer impressed.
Desperate hacks, like playing with color saturation, have been tried. There's the under-saturated look ("Sky Captain") and the over-saturated look ("Speed Racer").
There's the high-contrast black and white look ("Sin City"). There's the high-contrast
black and white look with a bit of color ("The Shadow"). OK, been there, done that.
Finally, there's the trick the movie industry tried the last time things got really desperate, back in the 1950s - stereoscopic 3D. It didn't work last time.
Small jet engines have been an elusive goal for decades. They can be built, but the cost doesn't go down much below bizjet size. That's why general aviation is still piston-powered.
This guy is using four model aircraft jet engines. Probably ones like this. They're somewhat marginal devices, needing an overhaul every 25 hours. (For aviation jet engines, that number is usually at least 1000 hours.) Good thing he carries a parachute.
Being against censorship, I had to read the thing. It's an operating manual for an organization, and a reasonably sensible one. Far more embarrassing policy documents have emerged from Catholic abuse scandals. This manual has a child abuse section on page 157; it says to report it by calling a toll-free number.
This document doesn't appear to be much of a secret. It can be ordered through LDS Distribution Services, and the registration system doesn't seem to even ask if you're a Mormon. Sections of it are on the LDS main site.
Other than as a copyright issue, there's not much to get excited about here.
Has someone actually checked the random output for cryptographic soundness?
The proper source of cryptographic-quality random bits in Linux is "/dev/random". Reading uninitialized memory is not a good source of entropy - it might be initialized to some constant value, especially if you're compiling with a debug allocator or running under a virtual machine monitor.
OpenSSL makes substantial efforts to get a good random starter. Unless someone did something so stupid that OpenSSL didn't use/dev/random, it should still work. OpenSSL is supposed to have a check for bad random seeds. Was that bypassed, or doesn't it work, or what?
Obtaining a good source of randomness is hard. Computers are rather deterministic. Historically, there have been major failures in this area. See "Venona"
where the USSR was generating "one-time pads" by having people type random digits on
typewriters. Arlington Hall, NSA's predecessor, cracked that. Humans aren't random enough. True random number generation requires special hardware, like a noise diode or a radiation source.
"Any one who considers arithmetical methods of producing random digits is, of course, in a state of sin." -- John von Neumann
I've been trying various queries, and Google is doing better than Powerset even when I type in some actual question, like "How many Japanese died in WWII?".
Question: "What is the planet closest to the sun?". First answer from Powerset: "Pluto".
I think I see how this works. It takes the question and breaks it at noise words,
("closed class words" in linguistic terminology)
constructing a query with both words and phrases.
So "What is the planet closest to the sun" becomes "planet closest" sun.
In fact, if you rewrite a natural language question in that form and use Google, it does
better on question-answering than Powerset does.
Remember Ask Jeeves? It worked like that?
No technical breakthrough here, move along.
As many others have pointed out, this is a truly lame implementation of dome projection. He doesn't even try to transform the image properly for projection onto a sphere.
It's not a bad idea; it's just done badly. It would make a nice arcade game if done well.
You need to go into the game code to do this right, because you need a bigger field of view, and that affects the calculations of what's visible. This can create more work within the game. Not just rendering work, either; NPCs have to be active over a larger area.
I just saw "Speed Racer", the movie. As a movie, it's lame. As a game, it would be fun. As an arcade game with a steering wheel, pedals, and a wide field of view, it would be awesome.
What we need is some sexy way to get everybody on board.
If the physics is against you, that won't help.
There are options, but they're all messy or dangerous.
Orion-type nuclear launch would work, if you're willing to accept about 0.5 deaths from cancer per launch. NERVA-type nuclear rockets were seriously considered for Apollo. Antimatter propulsion looks possible but hazardous. It might be worth it if we had to deflect an asteroid.
Launch lasers need a gigawatt of laser power per metric ton launched. And some of that metric ton is water for reaction mass. (Launch laser proposals work by boiling water using external power, not by light pressure.) So that's not promising. Tethers, skyhooks, etc. all require a huge lift-to-orbit capability before you can build one, if it's even possible with real materials.
So we're stuck here, unless maybe somebody finally makes fusion work.
I'd be more impressed with Google's forays into Javascript if they could make their existing stuff work right. After several years of deployment, Google Maps still displays incorrectly in Firefox 2 if you spin the scroll wheel too fast. That's about where window refresh was at Microsoft Windows 2.x or so - broken.
Several posters have cited the "halting problem" as an issue. It's not.
First, the halting problem does not apply to deterministic systems with finite memory. In a deterministic system with finite memory, eventually you must repeat a state, or halt. So that disposes of the theoretical objection.
In practice, deciding halting isn't that hard. The general idea is that you have to find some "measure" of each loop which is an integer, gets smaller with each loop iteration, and never goes negative. If you can come up with a measure expression for which all those properties are true, you have proved termination. If you can't, the program is probably broken anyway. Yes, it's possible to write loops for which proof of termination is very hard. Few such programs are useful. I've actually encountered only one in a long career, the termination condition for the GJK algorithm for collision detection of convex polyhedra. That took months of work and consulting with a professor at Oxford.
The real problem with program verification is the C programming language. In C, the compiler has no clue what's going on with arrays, because of the "pointer=array" mistake. You can't even talk about the size of a non-fixed array in the language. This is the cause of most of the buffer overflows in the world. Every day, millions of computers crash and millions are penetrated by hostile code from this single bad design decision.
That's why I got out of program verification when C replaced Pascal. I used to do this stuff.
Good program verification systems have been written for Modula 3, Java, C#, and Verilog. For C, though, there just isn't enough information in the source to do it right. Commercial tools exist, but they all have holes in them.
First, here's the real paper. Actually, this is the previous paper, where they got operation at 177K, but not quite room temperature. (Don't link to Physorg; they just collect press releases, add ads, and delete the citations.)
Terahertz waves are interesting. At one time, that was an inaccessible portion of the spectrum, above radio but below infrared. Now it's understood that it's a region in which both RF and optical techniques can work. At that frequency, propagation is line of sight, although diffuse systems, as with diffuse IR, are possible. Applications are still a ways off, but there's probably something useful to do with this stuff.
Incidentally, "radio", by international agreement, ends at 3THz. Beyond that, it's "light" for regulatory purposes. In the US, FCC regulations (for RF) end at 3THz, and DHS regulations (as for lasers) begin.
The US used to have a number of really good places to work in engineering. We all knew where they were - Bell Labs, Xerox PARC, HP Labs, DEC R&D, IBM Almaden, RCA Sarnoff Labs, Lockheed's Skunk Works. At one time or another, I've visited most of those places, and been impressed with the people. All are gone, or a shadow of what they once were.
What do we have today? Google? Google is an advertising agency. All the classic good places were part of manufacturing companies, where engineering turned into working hardware. I know of little places doing good stuff, but the little places come and go; you don't have a career there.
Is something similar happening in Japan? As manufacturing moves to China, in time, the engineering follows. The outsourcing organization is hollowed out, and eventually replaced by a China-based company. Japanese companies have been outsourcing electronics manufacturing to China for about a decade; not as enthusiastically as US companies, but outsourcing nonetheless.
Yes, there are good engineering places where people have full careers in the US. I visited one recently, a well-known visual effects movie studio. Some of their staff have been around for 15-30 years, and everybody is very good at what they do and proud of it. Their CEO is big on keeping the core team together, because they know they have an organization that can deliver good work on tough jobs on schedule. The place is advanced technically but felt very retro, in a good way, as an organization. Few such places are left.
That's why few people want to become good engineers.
This makes more sense than buying the whole company, which is way overpriced and overstaffed for its revenue. All Microsoft really needs, after all, is the brand, so they can drive traffic to MSN.
27% of the US population doesn't read books. The Internet already has more penetration in the US than the printing press.
And do you know the current eating habits of any of those oinkers?
I get a good idea when I'm stuck behind one at the supermarket checkout.
A skinny person with a really high metabolism can eat far more in a day than a fat person with a slow one
Yes. On rare occasions you meet such people. I've known an ex-New York City Ballet dancer like that. She's slim, hard-muscled, radiates heat, and has to eat almost constantly to keep her weight up. I know an endurance rider who's 6' tall, all leg, runs seven miles a day, and eats twice what I do when we have dinner together. She thinks 58F is a good indoor temperature.
Such people are unusual. On the other hand, I've probably seen over fifty oinkers today, waddling around. And it's early yet.
Mod parent up. Touch-screens have been around for many years, in fast food, industrial control, kiosks, and similar casual-use push-big-buttons applications. Touch screens are a huge pain for a session long enough that you want to sit down. So they're useful for palm-sized devices.
But for text editing, or graphical input? No way. It's too blunt a tool.
You can actually run X-windows on QNX, although nobody does. QNX has its own GUI system called Photon, which is oriented towards things one might want in an industrial control panel or an entertainment system, like meters, dials, and graphs.
QNX the OS is fine; it's QNX the company that's difficult to deal with. On the other hand, who else has gone up against Microsoft on x86 for 20 years and is still alive?
This task is not easy at all. 12 years after Linux has been converted to an SMP OS we still have 1300+ legacy BKL using sites. There are 400+ lock_kernel() critical sections and 800+ ioctls. They are spread out across rather difficult areas of often legacy code that few people understand and few people dare to touch.
This is where microkernels win. When almost everything is in a user process, you don't have this problem.
Within QNX, which really is a microkernel, almost everything is preemptable. All the kernel does is pass messages, manage memory, and dispatch the CPUs. All these operations either have a hard upper bound in how long they can take (a few microseconds), or are preemptable. Real time engineers run tests where interrupts are triggered at some huge rate from an external oscillator, and when the high priority process handling the interrupt gets control, it sends a signal to an output port. The time delay between the events is recorded with a logic analyzer. You can do this with QNX while running a background load, and you won't see unexpected delays. Preemption really works. I've seen complaints because one in a billion interrupts was delayed 12 microseconds, and that problem was quickly fixed.
As the number of CPUs increases, microkernels may win out. Locking contention becomes more of a problem for spinlock-based systems as the number of CPUs increases. You have to work really hard to fix this in monolithic kernels, and any badly coded driver can make overall system latency worse.
Unfortunately, so will the spammers.
Every time we close off another way to hide business identity, filtering gets better. We can't actually stop the spam, but we can fix it so few humans ever see it.
Ars Technica had this story weeks ago. EFF has filed a motion to quash (EFF site currently overloaded), and they'll probably win.
As Ars Technica points out, the effect of this lawsuit is to widely disseminate the information that this little-known literary agency is a dud.
We're seeing the need for some limits on web page redirection. Most of these attacks involve putting something on a trusted place which redirects to an untrusted place. Google, with incredible sloppyness, allows Blogspot accounts to do this, and as a result, they are heavily exploited by spammers. (Try, for example, "nikaluti21040.blogspot.com", which will redirect, via some iframes and other tricks, to "selissia.com", which is hosted on "secureserver.net").
Exploitation of legitimate sites to get through spam filters is a problem, but it can be dealt with if you're willing to take a hard line. Our first step in that direction was our list of major domains being exploited by active phishing scams. Our position is that one phishing attack from within a domain blacklists the whole domain. But within three hours after the problem is fixed, they're off the list. Major sites make the list now and then; Google, Dell, MSN, and Yahoo have all been on the list at one time or another. But they now know to take steps to get themselves off within hours. The Anti-Phishing Working Group and PhishTank have been helpful with this effort. We're down to 47 such domains today. It was about 175 when we started last fall. Most of the remaining entries are free web hosting services or DSL providers.
We and others have observed that there's an inverse relationship between the number of redirects and the legitimacy of a web page. We've been looking at this at SiteTruth. For things like AdWords ads, where some sites use redirection as part of a tracking systems, it's typically the bottom-feeders who are using redirection. An advertiser promoting their own product or service doesn't need it; it's brokers, intermediaries, and made-for-Adwords sites that use redirection. Anything with more than one redirect is almost bad. We expect to use redirection as part of our legitimacy metric in the future.
It's thus time for browsers to limit their acceptance of redirection. One HTTP-level redirect, OK. Beyond that, put up a popup warning of suspicious redirection behavior. Redirects via META tags and Javascript should produce a popup. Sure, some site operators will look bad, but they will adapt.
The metrics used in this paper are lame. They're things like "number of #define statements outside header files" and such.
Modern code quality evaluation involves running code through something like Purify, which actually has some understanding of C and its bugs. There are many such tools. This paper is way behind current analysis technology.
I've been to Bletchley Park. The problem is that they have only a few things worth exhibiting, like the rebuilt bombe, the rebuilt Colossus, and some real crypto machines from WWII. One big gallery in a major museum could house the collection. But the place is a sizable estate. The famous "huts" aren't much to look at, and some of them are only concrete pads today. The manor house is in decent shape but an architectural mishmash not really worthy of preservation.
They also have a model railroad, a model boat club, an auto collection, a lake with swans, a collection of Churchill-was-here memorabilia, and, inevitably, a gift shop, like too many other English estates open to visitors.
In 2007, as Harper's points out, most of the top 10 movies were not only sequels, but sequels where "version > 2". Since Hollywood management does fads, we have to expect a run of more such sequels. Hence Indy #4.
As I've remarked before, Hollywood has a major idea shortage. History has been mined out. Comic book resources have been drained; the big franchises are done, and productions are digging deep into obscure comics for material. Hollywood is now down to recycling 1960s TV shows. Are there any up and coming directors with new ideas? Who's the next Spielberg?
Incidentally, the trailer for "Clone Wars" looks like a video game ad for a bad video game, one with a low poly and keyframe budget.
Entertainment may be a depletable resource. When everything ever made is easily available, anything new has to be better than anything done before. Everybody has already seen the best of everything. This makes it hard to excel. Consider music. Nobody has done a major new symphony for decades. Rock music peaked decades ago. House music is stuck. Rap doesn't shock anybody any more. No wonder the RIAA is in trouble.
Film got a "midlife kicker" - computer graphics. At last, you could film anything you could imagine. After about a decade, most of the backlog of things directors always wanted to do, but couldn't afford, have been done. Big shots of alien or historical cities, nonhuman actors, and massive war scenes, have all been competently put on the big screen. Viewers are no longer impressed.
Desperate hacks, like playing with color saturation, have been tried. There's the under-saturated look ("Sky Captain") and the over-saturated look ("Speed Racer"). There's the high-contrast black and white look ("Sin City"). There's the high-contrast black and white look with a bit of color ("The Shadow"). OK, been there, done that.
Finally, there's the trick the movie industry tried the last time things got really desperate, back in the 1950s - stereoscopic 3D. It didn't work last time.
Lots of young people don't even have a TV anymore. ... Why do you decide to get a TV in an age where half of the program is ads?
Right. The TV industry, having crapped on their own medium, now complains that viewing is declining.
Small jet engines have been an elusive goal for decades. They can be built, but the cost doesn't go down much below bizjet size. That's why general aviation is still piston-powered.
This guy is using four model aircraft jet engines. Probably ones like this. They're somewhat marginal devices, needing an overhaul every 25 hours. (For aviation jet engines, that number is usually at least 1000 hours.) Good thing he carries a parachute.
Being against censorship, I had to read the thing. It's an operating manual for an organization, and a reasonably sensible one. Far more embarrassing policy documents have emerged from Catholic abuse scandals. This manual has a child abuse section on page 157; it says to report it by calling a toll-free number.
This document doesn't appear to be much of a secret. It can be ordered through LDS Distribution Services, and the registration system doesn't seem to even ask if you're a Mormon. Sections of it are on the LDS main site.
Other than as a copyright issue, there's not much to get excited about here.
So where's the diff and check-in info of the idiot who took the checks out? Do we have a background check on them?
Has someone actually checked the random output for cryptographic soundness?
The proper source of cryptographic-quality random bits in Linux is "/dev/random". Reading uninitialized memory is not a good source of entropy - it might be initialized to some constant value, especially if you're compiling with a debug allocator or running under a virtual machine monitor.
OpenSSL makes substantial efforts to get a good random starter. Unless someone did something so stupid that OpenSSL didn't use /dev/random, it should still work. OpenSSL is supposed to have a check for bad random seeds. Was that bypassed, or doesn't it work, or what?
Obtaining a good source of randomness is hard. Computers are rather deterministic. Historically, there have been major failures in this area. See "Venona" where the USSR was generating "one-time pads" by having people type random digits on typewriters. Arlington Hall, NSA's predecessor, cracked that. Humans aren't random enough. True random number generation requires special hardware, like a noise diode or a radiation source.
"Any one who considers arithmetical methods of producing random digits is, of course, in a state of sin." -- John von Neumann
I've been trying various queries, and Google is doing better than Powerset even when I type in some actual question, like "How many Japanese died in WWII?".
Question: "What is the planet closest to the sun?". First answer from Powerset: "Pluto".
I think I see how this works. It takes the question and breaks it at noise words, ("closed class words" in linguistic terminology) constructing a query with both words and phrases. So "What is the planet closest to the sun" becomes "planet closest" sun. In fact, if you rewrite a natural language question in that form and use Google, it does better on question-answering than Powerset does.
Remember Ask Jeeves? It worked like that? No technical breakthrough here, move along.
As many others have pointed out, this is a truly lame implementation of dome projection. He doesn't even try to transform the image properly for projection onto a sphere.
It's not a bad idea; it's just done badly. It would make a nice arcade game if done well.
You need to go into the game code to do this right, because you need a bigger field of view, and that affects the calculations of what's visible. This can create more work within the game. Not just rendering work, either; NPCs have to be active over a larger area.
I just saw "Speed Racer", the movie. As a movie, it's lame. As a game, it would be fun. As an arcade game with a steering wheel, pedals, and a wide field of view, it would be awesome.
What we need is some sexy way to get everybody on board.
If the physics is against you, that won't help.
There are options, but they're all messy or dangerous. Orion-type nuclear launch would work, if you're willing to accept about 0.5 deaths from cancer per launch. NERVA-type nuclear rockets were seriously considered for Apollo. Antimatter propulsion looks possible but hazardous. It might be worth it if we had to deflect an asteroid.
Launch lasers need a gigawatt of laser power per metric ton launched. And some of that metric ton is water for reaction mass. (Launch laser proposals work by boiling water using external power, not by light pressure.) So that's not promising. Tethers, skyhooks, etc. all require a huge lift-to-orbit capability before you can build one, if it's even possible with real materials.
So we're stuck here, unless maybe somebody finally makes fusion work.
I'd be more impressed with Google's forays into Javascript if they could make their existing stuff work right. After several years of deployment, Google Maps still displays incorrectly in Firefox 2 if you spin the scroll wheel too fast. That's about where window refresh was at Microsoft Windows 2.x or so - broken.