To all of those who keep saying this project is useless because it will never compete with NVIDIA/ATI:
Although I agree with those who cite "because we can" as a perfectly valid reason, it is not the only reason. The lack of high quality open source 3D graphics drivers has long been an issue with desktop applications of Linux/*BSD, and while NVIDIA's closed drivers do fairly well they still limit the options of the open source community. If a bug in those drivers is responsible for a crash, it's up to NVIDIA to do something about it. The open source community is prohibited from fixing it. Remember the story about how Stallman reacted when he couldn't fix the code for a printer?
Plus, who knows what optimizations might be possible if the major open source toolkit devs could sit down with the X.org guys and the OpenGraphics folk and really start to optimize the whole stack on top of an open graphics card? It wouldn't be up to the standards of NVIDIA or ATI for 3D games, but in this day and age you need decent 3D graphics for a LOT more than that! Scientific apps, Graphics applications, CAD applications... even advanced desktop widget features can take advantage of those abilities if they are present. What if ALL the open source apps that need "good but not necessarily top of the line" graphics card support could suddenly get rock solid, flexible support on an open card?
The paradigm for graphics cards has been "whoever can give the most features for the newest game wins" for a long time now. But there is another scenario - what if maturity starts becoming more important for a lot of applications? For many years, people were willing to toss out their desktop computer and replace it with one that was "faster" because usability improved. Then the hardware reached a "fast enough" point and the insane replacement pace slowed. For some specialized applications, there is no such thing as a computer that is "fast enough" but for a LOT (perhaps the grand majority) of users that point is dictated by what is needed to run their preferred software well. If the open source world can get their applications running very well atop OpenGraphics, who cares what the benchmark performance is? If the user experience is top notch for everything except the "latest and greatest games" (which usually aren't open source games, bty - most of the most advanced open source games are using variations on the quake engines, which being open source could certainly be tuned for the new card) and that experience is better BECAUSE THE CARD IS OPEN AND OPEN SOURCE IS SUPPORTING IT WELL it will have a market that NVIDIA and ATI can't hope to touch. Perhaps not a huge market, but niche products do well all the time.
There is one final scenario, which is the open nature of this board's design allowing virtually all motherboard manufactures to include it as a default graphics option on their boards at very low cost. That might allow for logic that uses that card for most things and fires up the newest cards specifically for games or other "high demand" applications if someone has one installed (presumably installed because they do have a specific need for the raw power). This would mean broader GOOD support for Linux graphical capabilities across a wide span of hardware as part of the cost of the motherboard, which is a Very Good Thing.
I had no expectation that either party would act to lessen the power of copyright. I rather expect, if the question comes up at all, they are rationalizing that strong copyright encourages more creativity by allowing people to live on enjoy the fruits of their labor. The fact that the "stronger copyright" stance enjoys such wide support is probably a reflection of this. Free access to and use of information appeals primarily to "intellectuals" and "academics" not acting directly in the commercial markets (although even academia seems to be getting into the IP business these days) and neither of those groups under most reasonable definitions is a major voting block or large percentage of the population.
It might be argued that open source movements are a backlash against over-application or poor definition of copyright, but despite the movement's successes it still remains a niche in terms of overall impact and support. There are even people who consider the very existence of the movement a Bad Thing, and they get to vote too.
It's not a rosy picture, and probably won't be for a loooong time. However, there is one ray of hope that someone up there has a clue - look at http://www.whitehouse.gov/copyright/ The presence of a Creative Commons license for whitehouse.gov content that has had copyright assigned to the government by 3rd parties must be taken as a hopeful sign.
I think a proper system would need dedicated rail lines anyway, so if they must be built perhaps the new rails could be put to use. I don't know if this sort of system is really technically viable, but this seems like a good time to find out.
Can someone make these datasets available to download as aggregate torrents, or are they available only once someone writes an application and gets it working on AWS?
With hard drives getting bigger and bigger, to me it makes sense to have lots and lots of local mirrors of this sort of data.
At some point human beings will prove something - that is the "core" of the system in a proof sense. All that we can hope for is "if this checker is correct, everything that follows is correct." The checker will probably be the subject of ongoing human study, due to its importance.
There are still two advantages - one is that with intense focus on a small code base, the odds the checker is correct go up. Two, if a flaw is found the re-checking of the entire body of knowledge that depends on it being right can be automated. Both of these situations represent an improvement over simple human proof checking, which also requires "trust" of the human brains doing the checking. Humans are known to mess up on occasion, so massively redundant checking of a simple proof checker has the potential to greatly increase rigor.
This situation is a bit like some reactions to Godel's incompleteness statements - Godel's work does not preclude the immense usefulness of mathematical systems and proofs within them. Just as the ultimate requirement for human verification at some stage does not mean that automated proof checking is useless.
CAS, or Computer Algebra Systems, represent one of the most useful tools for handling practical application of complex mathematics. The package Feyncalc, built on Mathematica and used for High Energy Physics, is one such example. The problem with using these systems is that they can't be trusted by the people using them. There is always that risk of "did the programmer do something that buggered this case" or "did they get that formula wrong when they translated it to code?" The traditional answer is a combination of by-hand verification and learning to "trust" certain abilities of some systems over time - lots and lots of use creates a certain confidence that the bugs have been shaken out of well-used functionality. But that lingering doubt remains - "is it REALLY right?"
There are philosophical questions at the root of this issue. On the most abstract level is the question of whether knowing something is true is important compared to knowing WHY it is true - purists might argue if we don't know the latter the problem isn't answered. I'll state up front that for the problem I'm interested in solving - KNOWING my answer to a problem is correct - I'm willing to trust a machine that is proven by humans to be able to verify proofs as correct to verify MY solution to a particular problem. Or, put another way, that once the correctness of the checker is proven all statements of correctness from that checker are also proven. This is not a universal assumption, but if one is willing to make it things get interesting.
Most proofs mathematicians attempt are not the types of problems posed by high energy physics - proving the solution to a specific integral is the correct solution would be of minimal value as a mathematical revelation. For the practical focus of scientific use of CAS however, the question of whether the system just gave the correct solution to that integral is all important. Moreover, the mathematical axioms behind the statement of correctness are not of immediate concern - they interest mathematicians, but the physicists want to USE that result. There's a contradiction here, because to be trustworthy in a mathematical sense the foundational system within which that integral was evaluated and what assumptions were made in the process MUST be considered. What to do?
Trustworthy computer verification of proofs offers an answer to this dilemma. A CAS designed to incorporate proof logic awareness into its core system and algorithms could be asked to produce a "proof" of its answer based on the steps it used to create that answer. This proof can then be subjected, just like any human written proof, to the rigors of verification. A human COULD (in theory) do the checking if they wanted to. In practice, an incorporated proof verifier could examine the CAS's proof for flaws. If none were found, for the specific problem in question, the user could then know that the answer they have IS correct, regardless of any potential flaws in the CAS (which will hopefully be reduced dramatically by the design rigors needed to implement routines that can support supplying the proof logic in the first place). The trust tree has been reduced to the proof verification routine and the software and hardware needed to run it, which is a MUCH smaller trust tree than the whole of the CAS.
The practical realization of such a system is probably decades in the future. It could be done only as an open source system, where the entire mathematical and scientific community contributed to an ever expanding body of trusted knowledge which could be built upon. Many extremely difficult problems would need to be solved - an immediate problem is how to organize mathematics into a coherent framework in a scalable way via computer. Category theory is probably the answer, but what does that mean in terms of system implementation? What about the programming language that must be put behind the mathematical definitions, even if the conceptual framework of Category Theory in Computer is addressed?
Has anyone ever considered putting the available pieces out there together and seeing what we still need to achieve a fully open computer? It's expected it will be slow by modern standards but a completely open PC would be nice.
I was thinking the same thing. Perhaps a more accurate statement would be that this is the highest elevation ever observed on a damage path known to have resulted from a wave?
From a strict wave height standpoint it would be interesting to try and deduce wave heights for some of the largest recorded meteorite impacts at least partially in water - i.e. impacts that would generate a wave near the impact zone. I'm guessing those would be even more impressive than a mountain side falling off.
Considering the massive economic resources that have been invested by big players filing software patents, is there any politically workable way to change the law and make software unpatentable again? It would be (in the eyes of patent holders at least) the same as throwing all the money invested straight out the window. Although this may be (practically speaking) what happens anyway as far as the economy (us) are concerned via paying lawyers to fight, those benefiting from the fighting and having committed the $$ may be a hard sell. Not to mention the difficulties involved in crushing those annoying upstart competitors without having patents to wave around.
The ray of hope for real change may be (oddly enough) the patent trolls and their parasitic activities hurting EVERYONE else, but will they be enough to turn the tide?
Businesses spend MASSIVE amounts of money either filing patents for offensive/defensive activities or trying to work around them. I would be very interested to see an accounting of a) what percentage of patents actually result in a license b) what the cost in terms of employee and lawyer time was to create the current body of patent work (plus the fees of course), c) the number of decisions to NOT make a competing product due to patent issues, d) the number of patent cases resulting in a patent being invalidated e) the number of patent cases settled out of court for less than the legal fees to challenge the patent f) (this is complex) the number of patents with BOTH cases settled out of court for less than potential legal fees and with existing patent licenses before the litigation and finally g) the ratio of licenses taken out on a patent to the number of observed workarounds (and patents on the workarounds) done by companies to avoid said patent.
If the ratio of a to b is very small, it would mean that there would have to be MASSIVE returns on license fees to justify the money paid to create patents. Otherwise we the customer are footing the bill for the horse and pony show.
c is hard to document, but every instance where it happens is one less competitor and in a capitalistic system that means less pressure to drive down prices on a product. The idea is of course to offer the patent holder a limited monopoly in exchange for publishing the idea, but the fact remains the customer loses on this deal UNLESS the invention would not have been published/implemented WITHOUT the patent system. Impossible to know I suppose, but food for thought.
Every instance of d is a waste of money in terms of all the effort to get the patent, the time of the patent office working on it, and whoever is forced to fight it. Ouch.
e needs to trigger a close examination of the patent - if the settlement is just to avoid going to court, it must mean that either the company doesn't think they'll make more in a lawsuit even if the patent is valid, the patent holder can't afford a battle either, or the defendant is not going to pay out of pocket just to invalidate a bad patent when its cheaper to settle. In the latter case, it is a waste of economic resources.
f is a possible way to get a handle on how often the first possibility for e happens - if they have successfully licensed it (not cross-licensed as part of a stand-down agreement between big players but actually had someone pay for the right to use it) and still took the lesser fees it might be at least a suggestion there could be validity in the patent.
g is simply a waste. Bright, talented minds try to work out a way around some idea, when they might be working on new features, products or inventions. Sometimes you get new ideas working around patents, but a lot of it is just monumental silliness. The consideration is avoiding the patent, not the best engineering solution.
If somehow all of these costs could be totaled up, I would be very interested to see what the end number would be.
I have no problem with making an artsy movie that has hidden meanings, and clearly the Elephant's Dream guys knew what they were doing. It would be interesting if some folks with a bit more mainstream focus would pick up the ball and try it - it might really help Blender too.
Any movie is going to be judged by a combination of its technical achievements and its storytelling. A lot of the reviews I have read of Elephant's Dream are sort of "what was THAT about" and clearly that was an expected response. Fair enough. Now I'm curious to see if the ground breaking work can be used to create something with a bit more mainstream appeal, that the wider press could pick up and promote with the expectation that most viewers would be entertained. Are there free movie scripts being written anywhere? Maybe if there's a central forum with scripts being reviewed by a community a team could take one of the highly ranked ones and see what they can do with it.
Maybe we can make some "stars" in the Open Movie world - script writers, voice actors, what have you.
Oddities of writing style aside (and possible DRM agenda nonwithstanding) I actually thought the idea suggested in the original Nokia paper to use older techniques that are or will very soon be based on expired patents was a pretty good one.
Whatever we may want to think, it is true that someone COULD challenge Ogg Vorbis on patent grounds, valid or not. A technique 20 years old and based on expired patents is absolutely unambiguous - the patent office itself is the documentation that the technique is now unrestricted.
For most of what is done on the web the older technologies would work just fine. They are also mainstream, which means they stand a better chance of being used. The HTML standards process is not strong enough to push forward Ogg Vorbis, IMO.
Remember, this is big corporate lawyer turf here. Ogg Vorbis is thought to be free of patent claims but there is no way to prove that. Expired patents are the safest possible way to proceed.
Hunger relief is only one part of the problem - it's the old "give a man a fish, he eats for a day; teach a man to fish, he eats for a lifetime" thing.
Survival is ultimately a competitive business, among nations as well as individuals. Knowledge and skills are essential in order to produce virtually ANY marketable project in this world's economy, and teaching requires access to that knowledge in the first place. Textbooks are expensive, as are writing materials. Computer skills and an understanding of computers has become incredibly fundamental - to the point, in fact, where basic literacy is taken for granted in the business world.
In cases where there is no social structure and all the power is in military hands, knowledge and skills won't count for much. In many other situations it can make a HUGE difference, and just because there are worse regions of the world doesn't mean we should ignore the ones where people need additional education.
We don't want these people to have to rely on ANYBODY forever - they should be able to build their own society with their own resources eventually. We need to help kickstart the process, but we can't do it for them. To build a non-despotic government people have to invest themselves in the success of a system that is designed to educate and help people rather than grabbing whatever one can for oneself, even at the cost of personal gains that COULD be had by acting selfishly. Once enough people do that selfish actors begin to have difficulty getting more by bypassing the system than attempting to work within it, and for a democracy THAT is the beginning of stability. People need to know that for it to work. Arguably Russia has not reached that point, based on recent news reports - if the system itself were strong the penalties for voting fraud would be strong enough to deter a party (or individuals) from attempting to mess with the system. The US trend towards electronic voting is troubling for similar reasons - it makes accountability for the correct functioning of the system difficult to enforce.
Anyway, the point is that knowledge and understanding should be in as wide supply as possible, and that is the purpose of OLPC. It feeds a different hunger than food, but one in the end that is just as important to the building of a sustainable future.
Oh, yeah, the whole "open source" thing. Excepting core functionality, some of Mathematica and the majority of Maple is provided in source form.
For now. But since the program is closed source and very expensive, what happens 30 years from now when Wolfram won't give you the version the original result of interest was created on and it's illegal to get it anywhere else? Oh, and the formatting options changed over 30 years so the results look different and you can't tell easily if they're still the same? Not that this is guaranteed to happen, but it might. Open source is a guarantee, and when you're doing research of this sort that guarantee is very good to have.
You can whine about needing peer review of implementation at all levels, but how many of you have inspected your CPU's microcode or circuit diagrams?
A very good point, but the idea is that (in theory) you could if you have to. Indeed, my own interests with Axiom have lead me in those directions - I have downloaded the MIT CADR machine circuit diagrams and have acquired a couple books on Forth (which has the virtue of being "easily" bootstrapped from machine instructions). I'm also aware of things like OpenSPARC and OpenCores. The point being not that I will ever be good enough at understanding them to verify them other than experimentally (unit testing, etc) I COULD do it in principle because it is available. I would very much like to seen a machine built entirely on open hardware even if it would be slower, but commercial realities may make that difficult.
Anyway, the point is you strive to be as open as possible. Even if hardware today isn't verified, someday open code could be ported to a verified open platform. The principle is worthwhile even if the implementation of it isn't perfect from the beginning.
At some point the line is drawn, and you combine a trust in the reputation of your vendor with the fact that usually you're prototyping and modelling.
Indeed that is what must (practically) be done now, but that doesn't mean we shouldn't fight to make sure that things remain open - it's a foundational principle of science that things be reproducible and openness facilitates that. Perfection is not currently possible, but that doesn't mean we give up and don't do what we can.
I am not personally involved with SAGE, but I know a little about it. Rather than being a totally new system in all respects (although there is certainly new code created for it) SAGE attempts to make use of the plethora of existing open source systems available already and provide a unified interaction environment for them. As it says above, SAGE takes aim at the functionality offered by commercial systems.
This is undeniably a practical approach that will benefit many research teams, and I am rooting for its success. My main concern with it is that by using a wide array of libraries/programs to cover broad functionality, it will become difficult to integrate results from one system into the computations of another. Different systems may make different default assumptions (sometimes very subtle ones) that other systems will not be aware of. Efforts like OPENMATH (http://www.openmath.org) that have attempted to define a protocol for exchange of mathematical information between systems have run into this before.
Unfortunately, any proper solution to that problem is likely to be even more work than re-implementing algorithms inside a single environment. A framework for a CAS that could handle such broad scope is a problem (Axiom probably comes the closest right now) so for problems that don't hit the more difficult situations SAGE will be very useful indeed, but it is something to bear in mind.
In the very long term, we need to integrate formal proof software concepts (ISABELLE, ACL2, COQ, etc.) with computer algebra systems in order to be able to trace any calculation back to its axiomatic roots at need - or, put another way, have the system be able to provide upon request correctness proofs of a result. There is a fair bit of literature on that and related topics, but it cannot be denied that the problem is an awesome one. In the meantime, SAGE is a very promising short term (practical) solution to real world problems.
SAGE's developers are also supporters of the idea of open source software in general, which is probably the most important aspect of the whole discussion: http://www.ams.org/notices/200710/tx071001279p.pdf
It may be argued that computers are not really an appropriate tool when truly "correct" mathematics must be relied upon. My response to that is that as problems of interest become ever more complex, limitations both of the human mind and the human life span will ultimately limit the problems we can solve unaided. The task for us now is to create a system we CAN trust to solve problems correctly, because someday we will have to trust it to solve problems we cannot handle. Some researchers would probably have a philosophical objection to that and define any problem human beings cannot solve and verify themselves as a problem where we will always be uncertain if it is really solved. The philosophical questions involved are fascinating for people who like that sort of thing. My take on it is such a system would be useful and is worth looking into.
SAGE is more pragmatic in its orientation, but that means for many (most?) people it is a project to watch and probably a product to use. Here's hoping they can build increased momentum!
Not specific to this situation, but there almost certainly has to be a practical limit to how much code you need before something is under copyright. For example, the single line
(+ 1 1)
could not be reasonably subject to copyright (IMHO, IANAL, etc.) IIRC there is some rule about originality that this would not satisfy. OK, what about:
;Code to print out "hello world" (defun hello-world () (format t "hello world"))
Exceedingly simple, entirely trivial, and arguably not creative or original, but more gray than the first example.
What about:
;Code to add two numbers and multiply by a third number (defun calc-with-three-numbers (a b c) (* (+ a b) c))
Still trivial, but you get the idea - at what point do we cross the line into copyrightable material?
Also, let's assume (for the sake of argument) the last example above is copyrightable. If someone else independently working on the same problem does:
;(x+y)*z (defun f1 (x y z) (* (+ x y) z))
Would that constitute a copyright violation of the above formula? They do precisely the same thing using exactly the same algorithm, but look very different. Is the second in violation of copyright of the first?
In practice, some problems have an "optimal" solution that most skilled programmers will eventually converge on (if they are good at their jobs). To my mind this might end with comments being (sometimes) copyrightable and code being defined as a mathematical algorithm, which (IMHO) is much closer to the true situation. But I don't know what the legal definitions are for this issue - anybody know if Groklaw has dug up any related material?
Open source has shown the "proper" way to fight these practices. If we don't like how people use copyright to restrict their works, ignore them and create Free content instead.
This hasn't caught on in the artistic world yet, I guess primarily because art doesn't scale in the same way when the community works on it as a whole (in fact, that may tend to make it much worse...)
Some other possible factors:
1. The only people who are capable of producing high quality art may be primarily interested in using it as a revenue source, and not doing it for its own sake. Or, in order to do good work, they need to also be supported by it. Our own biases aside, there is a chance this is true for some definitions of "high quality".
2. The money spent on creating commercial markets for a given product actually does create demand for that product independent of its quality, and only large scale marketing and "social engineering" can create music/art on a scale large enough to be part of the large scale social fabrics of the world.
IRATE radio (http://irate.sourceforge.net/) was one interesting approach to solving some of the technical problems associated with creating a non-commercial large scale distribution system, but it hasn't seem to pick up the momentum (in fairness, this doesn't seem to be the precise problem it is intended to address, since it lists links to songs rather than serving as a central distribution point.)
An interesting project to create to help foster an independent open music community (perhaps other art forms as well, for that matter) might be to start with the basic idea of the IRATE radio project, but instead of using links incorporate bittorrent directly into the client-server system itself. When playing irate radio songs, each client can then help push "popular" songs to other clients and ease the load on a server, which would only need to be the seed source for new music and maintain the rating systems. Much of this is already suggested by online music sites of various types, but the pieces haven't really been put together and pushed with an "open content licensing" mindframe.
That's probably all possible technically, but the other piece of the puzzle is such a system must be seeded with enough "good" music to make people want to give it a look. That's the hardest part, and would require good connections to whatever free artistic types are out there today.
It's not easy, but neither was the creation of the open source software ecosystem we enjoy today. It can be done, and if it takes off would forever de-throne the multimedia corporations who currently command attention. Adding things like "where is this band playing" features to the client could help fuel local interest - say, if enough people express a desire for a live concert via their client and are in the same geographic area, the artist can be notified and the suggestion made that they set up a concert there. Even incorporate ticketing mechanisms for the performance if the band expresses interest in coming - there are probably ways to do that.
Let's try the creative approach, and let those who insist on locking up their content for life + 90 years or more opt out of the popular cultural experience. If a trend/artist emerges who large scale media companies do not control, they can't make use of the content to fund their own activities either - let's sharpen the other edge of their copyright sword and see what comes of cutting both ways.
Reading the comments, it seems like the consensus is that given sufficient time, motivation, and technology it's hard to passively detect a well designed and built submarine in the open ocean, if it's built for quiet (i.e. non-nuclear) and active detection is the electronic version of wearing a "KICK ME" sign.
Well, the solution to that is obvious - do just what satellites have done for surface bases; map the oceans with automated sonar/other detection grids until we know what's going on everywhere, and the dark (unobserved) areas are points of interest simply by appearing - if someone removes our ability to see it's an automatic point of interest.
The environmental impact of doing something like that would not be trivial of course, but probably given sufficient time, money and resources it could be done. It would mean WE couldn't move quietly either, most likely (we wouldn't be the only ones doing it, once it started) but it would make a "sneak attack" rather more unlikely.
The article refers to a cross-licensing agreement with intent to use some technology - it doesn't say anything about not suing customers, although presumably that could be part of the deal and not mentioned here.
Installation of steganography tools != using those tools in practice. If someone is looking to conceal data, they may be grabbing anything out there that stands a remote chance of being helpful. Sort of like how in the early days students would have all kinds of music players and point-to-point file exchange programs, looking for ones that would do what they wanted or had what they wanted.
James Wingate, director of the steganography analysis & research center at Backbone Security, and a vice president there, says the use of steganography is on the rise, and it could be used for things like transporting malware.
"Some would call me 'Chicken Little,' but I fervently and passionately believe criminal activity is being conducted with steganography... We do know it's being used to conceal child pornography," Wingate says. "
When someone "fervently and passionately" believes something, particularly something related to a day-to-day project where one's institution stands a good chance of increased funding if what you believe is true, that's a good indication that you need to look hard for real, reproducible evidence that will stand up to rigorous peer review. Nor should concealing those types of images be surprising - unfortunately there seem to be a large number of sickos out there with this stuff, and probably every data-concealing program ever written has been used to conceal it (or try to). More to the point, is it in WIDE use?
I agree that a USB stick is a much more plausible attach vector for a company insider (no "hey what was that huge surge of email traffic with images?" signatures for IT to poke their noses into, just for starters.) If someone wants to hide data on their machine, I would think any of the various harddrive encryption techniques would both be simpler and much more effective.
I remember looking around at steganography tools some years back for other purposes (watermarking images people were considering contributing to a collectibles website) and my conclusion was that the most practical use of the techniques was to store information one WANTED to be found - another way to put metadata into an image so you could later figure out additional information about it (say, for a baseball card certified by a company you could add the certification information using steganography to ensure later availability of the information even without the website context, unless the image was compressed or otherwise distorted. It didn't and doesn't strike me as anything that can be used for anything uniquely evil or even uniquely practical (real image metadata is most likely a better place for useful info, and hiding information in it is an iffy proposition at best.
Remember, just because non-government researchers can't cover all 800+ programs doesn't mean someone like the NSA with large funding and budgets couldn't throw resources at it until they had all of them covered. Somebody will probably use it, but someone will use virtually every possible technique to do something at least once in the vastness of the Internet so that's not a very interesting statement. The interesting question is will a lot of people use it, and I just can't see it being worth the trouble.
Obviously this is not possible in general, since how sensitive information is can and will change over time. Without full AI awareness of the situation that places the document in context, this is not possible. (E.g. the statement "Bob will be leaving the company" could either be highly sensitive or old news, depending entirely on the time and/or reader. Even more fun, what about "accidentally" sensitive statements where the mere fact that the machine hides it flags it as an item of interest to someone who didn't know it was interesting?)
Also, a machine may "blank out" the sensitive part but leave enough around it for an astute hostile actor to still gain something - such things are so highly context sensitive I can't see any general algorithm that could guarantee success in all such cases.
Still, two possibly useful approaches that are closer to hand would be:
1) Supply the machine with a form, and specify certain areas (which will contain an SSN, for example) as containing information that must be treated as sensitive. So long as a standard form is used, the results could be handy.
2) Supply the machine with a complete list of information you want to keep under wraps (and all the various ways that information might appear - drawings, descriptions, what have you) and have it check each document for anything that matches anything on its sensitive list. This also has problems and would be easy to get around but it WOULD be helpful to prevent non-hostile carelessness - i.e. "WHOOPS Bob just scanned something sensitive to add to that email, better blot out the parts that aren't cleared to go outside the organization."
While a general solution isn't possible, I can actually see this being useful in controlled situations. The article mentions medical, financial and government which all have lots of well defined forms that can be used. It won't allow the replacement of human judgement but it might make it easier to stop certain forms of accidental distribution in well defined cases, and that's worth pursuing so long as it doesn't encourage carelessness.
Microsoft is in a very curious position right now. The SCO assault (which was to their benefit, whether or not they were behind it) has sputtered below the point of PR credibility. Linux is gaining ground slowly but steadily, particularly on the server side. The server side represents most of the "movable" machines as far as OS is concerned. Windows already has most of the world's desktops and so many users and businesses hooked into Office that they are all but impregnable in the near term as far as serious market share loss is concerned. (As Linux has discovered, it turns out the biggest and hardest barriers to acceptance are the re-training of users and the "if it ain't broke, don't fix it" mentality.) Oddly enough, this also makes showing growth difficult (Vista).
To compete against free software on the server side, there are some unique problems. Much more savvy "users" in the form of sysadmins who can and will learn new systems, stable and trusted software bases which provide both freedom to tweak and freedom from vendor lock in, and a very long history of Unix style systems proving themselves equal to server tasks. (Indeed, Solaris itself is now freely available, for those who are gun shy of Linux.) Licensing costs and concerns are impossible - Linux is free in many forms.
Hence the temptation to use patents. Patents are one of the few weapons that cannot be easily countered by an open source software movement, particularly if the patents have the effect of shutting open source software out of certain markets altogether. The lack of revenue to pay lawyers looms large here - in the US legal system that's a very dangerous position to occupy. But there are still drawbacks for Microsoft:
Much major open source work is not done in the US, but in places like the EU. Microsoft's position in the EU is weaker, and opening an offensive there would be more difficult. Politically it would also have ramifications, possibly serious ones.
If Microsoft DOES open a patent offensive against major open source projects, they run the risk of triggering Armageddon - a broad scale patent war that could leave the entire US software industry in ruins. There are defensive alliances behind open source who's potential in a legal contest must be weighed.
If they go TOO gung-ho, it could have the effect of helping to convince Congress to remove the software patent go-ahead.
In the short term, lawsuits against the free software key players least able to defend themselves would have a major harmful effect on the community (to say nothing of the individuals caught up in it.) However, potential long term effects are another story - Microsoft doesn't hold large legal clubs everywhere.
A lot of our manufacturing is now being done overseas, and many companies are outsourcing wherever they can. If all of a sudden the price of outsourcing was being compatible with non-Windows systems INSIDE the US (foreign governments may mandate avoiding dealing with someone like Microsoft, after all...), it would be very interesting indeed to see how that played out...
To all of those who keep saying this project is useless because it will never compete with NVIDIA/ATI:
Although I agree with those who cite "because we can" as a perfectly valid reason, it is not the only reason. The lack of high quality open source 3D graphics drivers has long been an issue with desktop applications of Linux/*BSD, and while NVIDIA's closed drivers do fairly well they still limit the options of the open source community. If a bug in those drivers is responsible for a crash, it's up to NVIDIA to do something about it. The open source community is prohibited from fixing it. Remember the story about how Stallman reacted when he couldn't fix the code for a printer?
Plus, who knows what optimizations might be possible if the major open source toolkit devs could sit down with the X.org guys and the OpenGraphics folk and really start to optimize the whole stack on top of an open graphics card? It wouldn't be up to the standards of NVIDIA or ATI for 3D games, but in this day and age you need decent 3D graphics for a LOT more than that! Scientific apps, Graphics applications, CAD applications... even advanced desktop widget features can take advantage of those abilities if they are present. What if ALL the open source apps that need "good but not necessarily top of the line" graphics card support could suddenly get rock solid, flexible support on an open card?
The paradigm for graphics cards has been "whoever can give the most features for the newest game wins" for a long time now. But there is another scenario - what if maturity starts becoming more important for a lot of applications? For many years, people were willing to toss out their desktop computer and replace it with one that was "faster" because usability improved. Then the hardware reached a "fast enough" point and the insane replacement pace slowed. For some specialized applications, there is no such thing as a computer that is "fast enough" but for a LOT (perhaps the grand majority) of users that point is dictated by what is needed to run their preferred software well. If the open source world can get their applications running very well atop OpenGraphics, who cares what the benchmark performance is? If the user experience is top notch for everything except the "latest and greatest games" (which usually aren't open source games, bty - most of the most advanced open source games are using variations on the quake engines, which being open source could certainly be tuned for the new card) and that experience is better BECAUSE THE CARD IS OPEN AND OPEN SOURCE IS SUPPORTING IT WELL it will have a market that NVIDIA and ATI can't hope to touch. Perhaps not a huge market, but niche products do well all the time.
There is one final scenario, which is the open nature of this board's design allowing virtually all motherboard manufactures to include it as a default graphics option on their boards at very low cost. That might allow for logic that uses that card for most things and fires up the newest cards specifically for games or other "high demand" applications if someone has one installed (presumably installed because they do have a specific need for the raw power). This would mean broader GOOD support for Linux graphical capabilities across a wide span of hardware as part of the cost of the motherboard, which is a Very Good Thing.
I had no expectation that either party would act to lessen the power of copyright. I rather expect, if the question comes up at all, they are rationalizing that strong copyright encourages more creativity by allowing people to live on enjoy the fruits of their labor. The fact that the "stronger copyright" stance enjoys such wide support is probably a reflection of this. Free access to and use of information appeals primarily to "intellectuals" and "academics" not acting directly in the commercial markets (although even academia seems to be getting into the IP business these days) and neither of those groups under most reasonable definitions is a major voting block or large percentage of the population.
It might be argued that open source movements are a backlash against over-application or poor definition of copyright, but despite the movement's successes it still remains a niche in terms of overall impact and support. There are even people who consider the very existence of the movement a Bad Thing, and they get to vote too.
It's not a rosy picture, and probably won't be for a loooong time. However, there is one ray of hope that someone up there has a clue - look at http://www.whitehouse.gov/copyright/ The presence of a Creative Commons license for whitehouse.gov content that has had copyright assigned to the government by 3rd parties must be taken as a hopeful sign.
I hope they take a look at non-superconducting maglev based rail. LLNL scientists apparently developed the original idea:
http://en.wikipedia.org/wiki/Inductrack
I think a proper system would need dedicated rail lines anyway, so if they must be built perhaps the new rails could be put to use. I don't know if this sort of system is really technically viable, but this seems like a good time to find out.
Can someone make these datasets available to download as aggregate torrents, or are they available only once someone writes an application and gets it working on AWS?
With hard drives getting bigger and bigger, to me it makes sense to have lots and lots of local mirrors of this sort of data.
At some point human beings will prove something - that is the "core" of the system in a proof sense. All that we can hope for is "if this checker is correct, everything that follows is correct." The checker will probably be the subject of ongoing human study, due to its importance.
There are still two advantages - one is that with intense focus on a small code base, the odds the checker is correct go up. Two, if a flaw is found the re-checking of the entire body of knowledge that depends on it being right can be automated. Both of these situations represent an improvement over simple human proof checking, which also requires "trust" of the human brains doing the checking. Humans are known to mess up on occasion, so massively redundant checking of a simple proof checker has the potential to greatly increase rigor.
This situation is a bit like some reactions to Godel's incompleteness statements - Godel's work does not preclude the immense usefulness of mathematical systems and proofs within them. Just as the ultimate requirement for human verification at some stage does not mean that automated proof checking is useless.
CAS, or Computer Algebra Systems, represent one of the most useful tools for handling practical application of complex mathematics. The package Feyncalc, built on Mathematica and used for High Energy Physics, is one such example. The problem with using these systems is that they can't be trusted by the people using them. There is always that risk of "did the programmer do something that buggered this case" or "did they get that formula wrong when they translated it to code?" The traditional answer is a combination of by-hand verification and learning to "trust" certain abilities of some systems over time - lots and lots of use creates a certain confidence that the bugs have been shaken out of well-used functionality. But that lingering doubt remains - "is it REALLY right?"
There are philosophical questions at the root of this issue. On the most abstract level is the question of whether knowing something is true is important compared to knowing WHY it is true - purists might argue if we don't know the latter the problem isn't answered. I'll state up front that for the problem I'm interested in solving - KNOWING my answer to a problem is correct - I'm willing to trust a machine that is proven by humans to be able to verify proofs as correct to verify MY solution to a particular problem. Or, put another way, that once the correctness of the checker is proven all statements of correctness from that checker are also proven. This is not a universal assumption, but if one is willing to make it things get interesting.
Most proofs mathematicians attempt are not the types of problems posed by high energy physics - proving the solution to a specific integral is the correct solution would be of minimal value as a mathematical revelation. For the practical focus of scientific use of CAS however, the question of whether the system just gave the correct solution to that integral is all important. Moreover, the mathematical axioms behind the statement of correctness are not of immediate concern - they interest mathematicians, but the physicists want to USE that result. There's a contradiction here, because to be trustworthy in a mathematical sense the foundational system within which that integral was evaluated and what assumptions were made in the process MUST be considered. What to do?
Trustworthy computer verification of proofs offers an answer to this dilemma. A CAS designed to incorporate proof logic awareness into its core system and algorithms could be asked to produce a "proof" of its answer based on the steps it used to create that answer. This proof can then be subjected, just like any human written proof, to the rigors of verification. A human COULD (in theory) do the checking if they wanted to. In practice, an incorporated proof verifier could examine the CAS's proof for flaws. If none were found, for the specific problem in question, the user could then know that the answer they have IS correct, regardless of any potential flaws in the CAS (which will hopefully be reduced dramatically by the design rigors needed to implement routines that can support supplying the proof logic in the first place). The trust tree has been reduced to the proof verification routine and the software and hardware needed to run it, which is a MUCH smaller trust tree than the whole of the CAS.
The practical realization of such a system is probably decades in the future. It could be done only as an open source system, where the entire mathematical and scientific community contributed to an ever expanding body of trusted knowledge which could be built upon. Many extremely difficult problems would need to be solved - an immediate problem is how to organize mathematics into a coherent framework in a scalable way via computer. Category theory is probably the answer, but what does that mean in terms of system implementation? What about the programming language that must be put behind the mathematical definitions, even if the conceptual framework of Category Theory in Computer is addressed?
Has anyone ever considered putting the available pieces out there together and seeing what we still need to achieve a fully open computer? It's expected it will be slow by modern standards but a completely open PC would be nice.
does this judgment break through the bankruptcy protections?
I was thinking the same thing. Perhaps a more accurate statement would be that this is the highest elevation ever observed on a damage path known to have resulted from a wave?
From a strict wave height standpoint it would be interesting to try and deduce wave heights for some of the largest recorded meteorite impacts at least partially in water - i.e. impacts that would generate a wave near the impact zone. I'm guessing those would be even more impressive than a mountain side falling off.
Agreed. That doesn't mean it's not a cost. I know several of these are difficult/impossible to measure, but the effects are none the less real.
Considering the massive economic resources that have been invested by big players filing software patents, is there any politically workable way to change the law and make software unpatentable again? It would be (in the eyes of patent holders at least) the same as throwing all the money invested straight out the window. Although this may be (practically speaking) what happens anyway as far as the economy (us) are concerned via paying lawyers to fight, those benefiting from the fighting and having committed the $$ may be a hard sell. Not to mention the difficulties involved in crushing those annoying upstart competitors without having patents to wave around.
The ray of hope for real change may be (oddly enough) the patent trolls and their parasitic activities hurting EVERYONE else, but will they be enough to turn the tide?
Businesses spend MASSIVE amounts of money either filing patents for offensive/defensive activities or trying to work around them. I would be very interested to see an accounting of a) what percentage of patents actually result in a license b) what the cost in terms of employee and lawyer time was to create the current body of patent work (plus the fees of course), c) the number of decisions to NOT make a competing product due to patent issues, d) the number of patent cases resulting in a patent being invalidated e) the number of patent cases settled out of court for less than the legal fees to challenge the patent f) (this is complex) the number of patents with BOTH cases settled out of court for less than potential legal fees and with existing patent licenses before the litigation and finally g) the ratio of licenses taken out on a patent to the number of observed workarounds (and patents on the workarounds) done by companies to avoid said patent.
If the ratio of a to b is very small, it would mean that there would have to be MASSIVE returns on license fees to justify the money paid to create patents. Otherwise we the customer are footing the bill for the horse and pony show.
c is hard to document, but every instance where it happens is one less competitor and in a capitalistic system that means less pressure to drive down prices on a product. The idea is of course to offer the patent holder a limited monopoly in exchange for publishing the idea, but the fact remains the customer loses on this deal UNLESS the invention would not have been published/implemented WITHOUT the patent system. Impossible to know I suppose, but food for thought.
Every instance of d is a waste of money in terms of all the effort to get the patent, the time of the patent office working on it, and whoever is forced to fight it. Ouch.
e needs to trigger a close examination of the patent - if the settlement is just to avoid going to court, it must mean that either the company doesn't think they'll make more in a lawsuit even if the patent is valid, the patent holder can't afford a battle either, or the defendant is not going to pay out of pocket just to invalidate a bad patent when its cheaper to settle. In the latter case, it is a waste of economic resources.
f is a possible way to get a handle on how often the first possibility for e happens - if they have successfully licensed it (not cross-licensed as part of a stand-down agreement between big players but actually had someone pay for the right to use it) and still took the lesser fees it might be at least a suggestion there could be validity in the patent.
g is simply a waste. Bright, talented minds try to work out a way around some idea, when they might be working on new features, products or inventions. Sometimes you get new ideas working around patents, but a lot of it is just monumental silliness. The consideration is avoiding the patent, not the best engineering solution.
If somehow all of these costs could be totaled up, I would be very interested to see what the end number would be.
In case anyone has a nature subscription:
http://www.nature.com/nature/journal/v453/n7191/abs/nature06932.html
I have no problem with making an artsy movie that has hidden meanings, and clearly the Elephant's Dream guys knew what they were doing. It would be interesting if some folks with a bit more mainstream focus would pick up the ball and try it - it might really help Blender too.
Any movie is going to be judged by a combination of its technical achievements and its storytelling. A lot of the reviews I have read of Elephant's Dream are sort of "what was THAT about" and clearly that was an expected response. Fair enough. Now I'm curious to see if the ground breaking work can be used to create something with a bit more mainstream appeal, that the wider press could pick up and promote with the expectation that most viewers would be entertained. Are there free movie scripts being written anywhere? Maybe if there's a central forum with scripts being reviewed by a community a team could take one of the highly ranked ones and see what they can do with it.
Maybe we can make some "stars" in the Open Movie world - script writers, voice actors, what have you.
Oddities of writing style aside (and possible DRM agenda nonwithstanding) I actually thought the idea suggested in the original Nokia paper to use older techniques that are or will very soon be based on expired patents was a pretty good one.
Whatever we may want to think, it is true that someone COULD challenge Ogg Vorbis on patent grounds, valid or not. A technique 20 years old and based on expired patents is absolutely unambiguous - the patent office itself is the documentation that the technique is now unrestricted.
For most of what is done on the web the older technologies would work just fine. They are also mainstream, which means they stand a better chance of being used. The HTML standards process is not strong enough to push forward Ogg Vorbis, IMO.
Remember, this is big corporate lawyer turf here. Ogg Vorbis is thought to be free of patent claims but there is no way to prove that. Expired patents are the safest possible way to proceed.
Hunger relief is only one part of the problem - it's the old "give a man a fish, he eats for a day; teach a man to fish, he eats for a lifetime" thing.
Survival is ultimately a competitive business, among nations as well as individuals. Knowledge and skills are essential in order to produce virtually ANY marketable project in this world's economy, and teaching requires access to that knowledge in the first place. Textbooks are expensive, as are writing materials. Computer skills and an understanding of computers has become incredibly fundamental - to the point, in fact, where basic literacy is taken for granted in the business world.
In cases where there is no social structure and all the power is in military hands, knowledge and skills won't count for much. In many other situations it can make a HUGE difference, and just because there are worse regions of the world doesn't mean we should ignore the ones where people need additional education.
We don't want these people to have to rely on ANYBODY forever - they should be able to build their own society with their own resources eventually. We need to help kickstart the process, but we can't do it for them. To build a non-despotic government people have to invest themselves in the success of a system that is designed to educate and help people rather than grabbing whatever one can for oneself, even at the cost of personal gains that COULD be had by acting selfishly. Once enough people do that selfish actors begin to have difficulty getting more by bypassing the system than attempting to work within it, and for a democracy THAT is the beginning of stability. People need to know that for it to work. Arguably Russia has not reached that point, based on recent news reports - if the system itself were strong the penalties for voting fraud would be strong enough to deter a party (or individuals) from attempting to mess with the system. The US trend towards electronic voting is troubling for similar reasons - it makes accountability for the correct functioning of the system difficult to enforce.
Anyway, the point is that knowledge and understanding should be in as wide supply as possible, and that is the purpose of OLPC. It feeds a different hunger than food, but one in the end that is just as important to the building of a sustainable future.
Oh, yeah, the whole "open source" thing. Excepting core functionality, some of Mathematica and the majority of Maple is provided in source form.
For now. But since the program is closed source and very expensive, what happens 30 years from now when Wolfram won't give you the version the original result of interest was created on and it's illegal to get it anywhere else? Oh, and the formatting options changed over 30 years so the results look different and you can't tell easily if they're still the same? Not that this is guaranteed to happen, but it might. Open source is a guarantee, and when you're doing research of this sort that guarantee is very good to have.
You can whine about needing peer review of implementation at all levels, but how many of you have inspected your CPU's microcode or circuit diagrams?
A very good point, but the idea is that (in theory) you could if you have to. Indeed, my own interests with Axiom have lead me in those directions - I have downloaded the MIT CADR machine circuit diagrams and have acquired a couple books on Forth (which has the virtue of being "easily" bootstrapped from machine instructions). I'm also aware of things like OpenSPARC and OpenCores. The point being not that I will ever be good enough at understanding them to verify them other than experimentally (unit testing, etc) I COULD do it in principle because it is available. I would very much like to seen a machine built entirely on open hardware even if it would be slower, but commercial realities may make that difficult.
Anyway, the point is you strive to be as open as possible. Even if hardware today isn't verified, someday open code could be ported to a verified open platform. The principle is worthwhile even if the implementation of it isn't perfect from the beginning.
At some point the line is drawn, and you combine a trust in the reputation of your vendor with the fact that usually you're prototyping and modelling.
Indeed that is what must (practically) be done now, but that doesn't mean we shouldn't fight to make sure that things remain open - it's a foundational principle of science that things be reproducible and openness facilitates that. Perfection is not currently possible, but that doesn't mean we give up and don't do what we can.
I am not personally involved with SAGE, but I know a little about it. Rather than being a totally new system in all respects (although there is certainly new code created for it) SAGE attempts to make use of the plethora of existing open source systems available already and provide a unified interaction environment for them. As it says above, SAGE takes aim at the functionality offered by commercial systems.
This is undeniably a practical approach that will benefit many research teams, and I am rooting for its success. My main concern with it is that by using a wide array of libraries/programs to cover broad functionality, it will become difficult to integrate results from one system into the computations of another. Different systems may make different default assumptions (sometimes very subtle ones) that other systems will not be aware of. Efforts like OPENMATH (http://www.openmath.org) that have attempted to define a protocol for exchange of mathematical information between systems have run into this before.
Unfortunately, any proper solution to that problem is likely to be even more work than re-implementing algorithms inside a single environment. A framework for a CAS that could handle such broad scope is a problem (Axiom probably comes the closest right now) so for problems that don't hit the more difficult situations SAGE will be very useful indeed, but it is something to bear in mind.
In the very long term, we need to integrate formal proof software concepts (ISABELLE, ACL2, COQ, etc.) with computer algebra systems in order to be able to trace any calculation back to its axiomatic roots at need - or, put another way, have the system be able to provide upon request correctness proofs of a result. There is a fair bit of literature on that and related topics, but it cannot be denied that the problem is an awesome one. In the meantime, SAGE is a very promising short term (practical) solution to real world problems.
SAGE's developers are also supporters of the idea of open source software in general, which is probably the most important aspect of the whole discussion: http://www.ams.org/notices/200710/tx071001279p.pdf
It may be argued that computers are not really an appropriate tool when truly "correct" mathematics must be relied upon. My response to that is that as problems of interest become ever more complex, limitations both of the human mind and the human life span will ultimately limit the problems we can solve unaided. The task for us now is to create a system we CAN trust to solve problems correctly, because someday we will have to trust it to solve problems we cannot handle. Some researchers would probably have a philosophical objection to that and define any problem human beings cannot solve and verify themselves as a problem where we will always be uncertain if it is really solved. The philosophical questions involved are fascinating for people who like that sort of thing. My take on it is such a system would be useful and is worth looking into.
SAGE is more pragmatic in its orientation, but that means for many (most?) people it is a project to watch and probably a product to use. Here's hoping they can build increased momentum!
Not specific to this situation, but there almost certainly has to be a practical limit to how much code you need before something is under copyright. For example, the single line
(+ 1 1)
could not be reasonably subject to copyright (IMHO, IANAL, etc.) IIRC there is some rule about originality that this would not satisfy. OK, what about:
;Code to print out "hello world"
(defun hello-world () (format t "hello world"))
Exceedingly simple, entirely trivial, and arguably not creative or original, but more gray than the first example.
What about:
;Code to add two numbers and multiply by a third number
(defun calc-with-three-numbers (a b c) (* (+ a b) c))
Still trivial, but you get the idea - at what point do we cross the line into copyrightable material?
Also, let's assume (for the sake of argument) the last example above is copyrightable. If someone else independently working on the same problem does:
;(x+y)*z
(defun f1 (x y z) (* (+ x y) z))
Would that constitute a copyright violation of the above formula? They do precisely the same thing using exactly the same algorithm, but look very different. Is the second in violation of copyright of the first?
In practice, some problems have an "optimal" solution that most skilled programmers will eventually converge on (if they are good at their jobs). To my mind this might end with comments being (sometimes) copyrightable and code being defined as a mathematical algorithm, which (IMHO) is much closer to the true situation. But I don't know what the legal definitions are for this issue - anybody know if Groklaw has dug up any related material?
Open source has shown the "proper" way to fight these practices. If we don't like how people use copyright to restrict their works, ignore them and create Free content instead.
This hasn't caught on in the artistic world yet, I guess primarily because art doesn't scale in the same way when the community works on it as a whole (in fact, that may tend to make it much worse...)
Some other possible factors:
1. The only people who are capable of producing high quality art may be primarily interested in using it as a revenue source, and not doing it for its own sake. Or, in order to do good work, they need to also be supported by it. Our own biases aside, there is a chance this is true for some definitions of "high quality".
2. The money spent on creating commercial markets for a given product actually does create demand for that product independent of its quality, and only large scale marketing and "social engineering" can create music/art on a scale large enough to be part of the large scale social fabrics of the world.
IRATE radio (http://irate.sourceforge.net/) was one interesting approach to solving some of the technical problems associated with creating a non-commercial large scale distribution system, but it hasn't seem to pick up the momentum (in fairness, this doesn't seem to be the precise problem it is intended to address, since it lists links to songs rather than serving as a central distribution point.)
An interesting project to create to help foster an independent open music community (perhaps other art forms as well, for that matter) might be to start with the basic idea of the IRATE radio project, but instead of using links incorporate bittorrent directly into the client-server system itself. When playing irate radio songs, each client can then help push "popular" songs to other clients and ease the load on a server, which would only need to be the seed source for new music and maintain the rating systems. Much of this is already suggested by online music sites of various types, but the pieces haven't really been put together and pushed with an "open content licensing" mindframe.
That's probably all possible technically, but the other piece of the puzzle is such a system must be seeded with enough "good" music to make people want to give it a look. That's the hardest part, and would require good connections to whatever free artistic types are out there today.
It's not easy, but neither was the creation of the open source software ecosystem we enjoy today. It can be done, and if it takes off would forever de-throne the multimedia corporations who currently command attention. Adding things like "where is this band playing" features to the client could help fuel local interest - say, if enough people express a desire for a live concert via their client and are in the same geographic area, the artist can be notified and the suggestion made that they set up a concert there. Even incorporate ticketing mechanisms for the performance if the band expresses interest in coming - there are probably ways to do that.
Let's try the creative approach, and let those who insist on locking up their content for life + 90 years or more opt out of the popular cultural experience. If a trend/artist emerges who large scale media companies do not control, they can't make use of the content to fund their own activities either - let's sharpen the other edge of their copyright sword and see what comes of cutting both ways.
Reading the comments, it seems like the consensus is that given sufficient time, motivation, and technology it's hard to passively detect a well designed and built submarine in the open ocean, if it's built for quiet (i.e. non-nuclear) and active detection is the electronic version of wearing a "KICK ME" sign.
Well, the solution to that is obvious - do just what satellites have done for surface bases; map the oceans with automated sonar/other detection grids until we know what's going on everywhere, and the dark (unobserved) areas are points of interest simply by appearing - if someone removes our ability to see it's an automatic point of interest.
The environmental impact of doing something like that would not be trivial of course, but probably given sufficient time, money and resources it could be done. It would mean WE couldn't move quietly either, most likely (we wouldn't be the only ones doing it, once it started) but it would make a "sneak attack" rather more unlikely.
The article refers to a cross-licensing agreement with intent to use some technology - it doesn't say anything about not suing customers, although presumably that could be part of the deal and not mentioned here.
Installation of steganography tools != using those tools in practice. If someone is looking to conceal data, they may be grabbing anything out there that stands a remote chance of being helpful. Sort of like how in the early days students would have all kinds of music players and point-to-point file exchange programs, looking for ones that would do what they wanted or had what they wanted.
James Wingate, director of the steganography analysis & research center at Backbone Security, and a vice president there, says the use of steganography is on the rise, and it could be used for things like transporting malware.
"Some would call me 'Chicken Little,' but I fervently and passionately believe criminal activity is being conducted with steganography... We do know it's being used to conceal child pornography," Wingate says. "
When someone "fervently and passionately" believes something, particularly something related to a day-to-day project where one's institution stands a good chance of increased funding if what you believe is true, that's a good indication that you need to look hard for real, reproducible evidence that will stand up to rigorous peer review. Nor should concealing those types of images be surprising - unfortunately there seem to be a large number of sickos out there with this stuff, and probably every data-concealing program ever written has been used to conceal it (or try to). More to the point, is it in WIDE use?
I agree that a USB stick is a much more plausible attach vector for a company insider (no "hey what was that huge surge of email traffic with images?" signatures for IT to poke their noses into, just for starters.) If someone wants to hide data on their machine, I would think any of the various harddrive encryption techniques would both be simpler and much more effective.
I remember looking around at steganography tools some years back for other purposes (watermarking images people were considering contributing to a collectibles website) and my conclusion was that the most practical use of the techniques was to store information one WANTED to be found - another way to put metadata into an image so you could later figure out additional information about it (say, for a baseball card certified by a company you could add the certification information using steganography to ensure later availability of the information even without the website context, unless the image was compressed or otherwise distorted. It didn't and doesn't strike me as anything that can be used for anything uniquely evil or even uniquely practical (real image metadata is most likely a better place for useful info, and hiding information in it is an iffy proposition at best.
Remember, just because non-government researchers can't cover all 800+ programs doesn't mean someone like the NSA with large funding and budgets couldn't throw resources at it until they had all of them covered. Somebody will probably use it, but someone will use virtually every possible technique to do something at least once in the vastness of the Internet so that's not a very interesting statement. The interesting question is will a lot of people use it, and I just can't see it being worth the trouble.
Obviously this is not possible in general, since how sensitive information is can and will change over time. Without full AI awareness of the situation that places the document in context, this is not possible. (E.g. the statement "Bob will be leaving the company" could either be highly sensitive or old news, depending entirely on the time and/or reader. Even more fun, what about "accidentally" sensitive statements where the mere fact that the machine hides it flags it as an item of interest to someone who didn't know it was interesting?)
Also, a machine may "blank out" the sensitive part but leave enough around it for an astute hostile actor to still gain something - such things are so highly context sensitive I can't see any general algorithm that could guarantee success in all such cases.
Still, two possibly useful approaches that are closer to hand would be:
1) Supply the machine with a form, and specify certain areas (which will contain an SSN, for example) as containing information that must be treated as sensitive. So long as a standard form is used, the results could be handy.
2) Supply the machine with a complete list of information you want to keep under wraps (and all the various ways that information might appear - drawings, descriptions, what have you) and have it check each document for anything that matches anything on its sensitive list. This also has problems and would be easy to get around but it WOULD be helpful to prevent non-hostile carelessness - i.e. "WHOOPS Bob just scanned something sensitive to add to that email, better blot out the parts that aren't cleared to go outside the organization."
While a general solution isn't possible, I can actually see this being useful in controlled situations. The article mentions medical, financial and government which all have lots of well defined forms that can be used. It won't allow the replacement of human judgement but it might make it easier to stop certain forms of accidental distribution in well defined cases, and that's worth pursuing so long as it doesn't encourage carelessness.
Microsoft is in a very curious position right now. The SCO assault (which was to their benefit, whether or not they were behind it) has sputtered below the point of PR credibility. Linux is gaining ground slowly but steadily, particularly on the server side. The server side represents most of the "movable" machines as far as OS is concerned. Windows already has most of the world's desktops and so many users and businesses hooked into Office that they are all but impregnable in the near term as far as serious market share loss is concerned. (As Linux has discovered, it turns out the biggest and hardest barriers to acceptance are the re-training of users and the "if it ain't broke, don't fix it" mentality.) Oddly enough, this also makes showing growth difficult (Vista).
To compete against free software on the server side, there are some unique problems. Much more savvy "users" in the form of sysadmins who can and will learn new systems, stable and trusted software bases which provide both freedom to tweak and freedom from vendor lock in, and a very long history of Unix style systems proving themselves equal to server tasks. (Indeed, Solaris itself is now freely available, for those who are gun shy of Linux.) Licensing costs and concerns are impossible - Linux is free in many forms.
Hence the temptation to use patents. Patents are one of the few weapons that cannot be easily countered by an open source software movement, particularly if the patents have the effect of shutting open source software out of certain markets altogether. The lack of revenue to pay lawyers looms large here - in the US legal system that's a very dangerous position to occupy. But there are still drawbacks for Microsoft:
Much major open source work is not done in the US, but in places like the EU. Microsoft's position in the EU is weaker, and opening an offensive there would be more difficult. Politically it would also have ramifications, possibly serious ones.
If Microsoft DOES open a patent offensive against major open source projects, they run the risk of triggering Armageddon - a broad scale patent war that could leave the entire US software industry in ruins. There are defensive alliances behind open source who's potential in a legal contest must be weighed.
If they go TOO gung-ho, it could have the effect of helping to convince Congress to remove the software patent go-ahead.
In the short term, lawsuits against the free software key players least able to defend themselves would have a major harmful effect on the community (to say nothing of the individuals caught up in it.) However, potential long term effects are another story - Microsoft doesn't hold large legal clubs everywhere.
A lot of our manufacturing is now being done overseas, and many companies are outsourcing wherever they can. If all of a sudden the price of outsourcing was being compatible with non-Windows systems INSIDE the US (foreign governments may mandate avoiding dealing with someone like Microsoft, after all...), it would be very interesting indeed to see how that played out...