Well, I will try to see if I can watch this documentary (I am going to put it into my Netflix queue).
I asked about education, because some people are going to advocate that progression towards a more modern society is the most important issue, and so a measure of this is quite important. Most of the defenses I have heard from the Chinese essentially have a "we helped a primitive society become more modern".
Saying that large numbers of Chinese have immigrated into Tibet is quite different from saying that the Chinese have actively suppressed religious thought, denied advancement to the indigenous population, evicted people from their ancestral lands, and imprisoned/tortured/killed many of the citizens. The two are not equal (though the first can naturally lead to the second). I don't need proof of the former, but I would like some real factual evidence of the latter.
But even on the Chinese immigration, there is disagreement on what should be a factual issue. What is the current ratio of native citizens to recently moved in Chinese Han? The Chinese quoted figure is much higher (they say the native Tibetan population has thrived and almost doubled) than quoted by Tibetan nationalists.
Actually, I have been trying to find documented evidence of the claims you make.
Have monks and nuns been tortured? How many? Have locals been "displaced"? Have they been forced to move from where they were living before? How many? How valuable was the land that they lived on?
The problem I am having is that one side claims that these things are happening, the other side claims that they are not. Some times they agree that the thing happens but disagree on numbers by many orders of magnitude (ex: one side says 100s killed the other side says 100,000s killed when China invaded Tibet).
I am struggling to find clear documented evidence of these great "human rights" abuses. Of course, I am also finding no evidence that such things did not occur.
I cannot get factual answers to the following:
1. How many native Tibetans have advanced degrees? 2. What percentage of the bureaucracy in Tibet has native Tibetans in it? 3. What is the ratio of Tibetans to non Tibetans? 4. What geographic region is precisely the one being argued out about? It seems that there are edge case territories in the boundary that change the counting system when they are included or excluded. 5. Who exactly is participating in the turmoil in Tibet? Are normal everyday Tibetan citizens engaged in this? Again I get two sides claiming different facts. 6. What precise religious rights were taken away from native Tibetans? 7. What percentage of native Tibetans see the Dalai Lama as a great religious figure?
Every fact I have seen claimed seems to have no really strong foundation when you go inspect the original materials. If anybody can provide better sources of information, that would be great.
The problem of course is that China is in the best position to have accurate answers to these questions. But there is not a single example in history (counter examples are welcome) of self-appointed leaders (of reasonably large countries) ever providing non propaganda versions of information to others.
I have worked with various search engines including FAST. As part of my job we (a collective group that I was associated with) had to stress test each of the search engines and make a comparative analysis. The main focus of this testing was Metadata search, a place where a lot of the search engines do badly when you allow complicated open ended queries. In particular, Google's Intranet search is unusable because it cannot do integer or date ranges in an efficient manner.
Of all the engines we tested, FAST was the only one that could guarantee subsecond performance when you performed a search on a collection holding a million documents and the queries had many terms with some terms having substring searches on metadata fields. Every other search engine could not guarantee performance under 30 seconds, let alone subsecond. There is an underlying technology in the FAST search engine which is clearly superior to any other.
The problem that we had with FAST was the large J2EE app sever they insisted on shipping with their solution and the major pain it was to administrate. It was at times a little unstable and some of the administrative activity was unnecessarily arcane. It is because of the J2EE app server wrapper that made me surprised that they were bought by Microsoft. It has been a couple of years since we ran these tests and maybe they have evolved the product a bit.
I have taken quite a bit of higher mathematics and I saw something similar when there was a comparison between Japanese college entrance tests compared against math problems from the SAT back in the 80s.
I have worked through to a solution of the BBC problem from China and my first reaction is Yuck, this is not mathematics but artifical nonsense posing as mathematics. The problem does little to inspire what I call "abstract" reasoning (though it does have a little bit of cleverness in finding triangles with two equal sides and where all the perpendiculars occur). I suspect that the students who do well on this problem have drilled themselves on 100s of variants of this problem until they were deathly sick of it. This is why some characterize the Japanese and Chinese education system as a system designed to suppress creative thought.
I think we have little to fear from the Chinese produced from this education system.
Having said that, Britain does do a fairly poor job in educating their students in mathematics compared to their peers in other European countries.
Instead of taking on the whole infrastructure, let us just look at the process of install and configuration.
Look at what has happened to windows over time for install and configuration.
First we started with all shared binary going in C:\windows\ or C:\windows\system32 (or for real old stuff C:\windows\system - already backward compatibility is confusing the issue). Configuration for applications was usually found in "ini" files in the C:\windows\ directory.
The next step was to have a global registry. Binary now could go wherever you wanted, but a new typical place was under C:\Program Files. In order to place the binary where you wanted, you had to create not only randomly generated unique Ids (GUIDs) for the identifying the application, but also for any interfaces, resources, and so on. This made registering even a simple VB COM control require 12 separate registry entries that shifted on each rebuild.
In order to support this crazy hodgepodge, the operating system had code that automatically updated registry entries if you rename a COM control (or an OCX for some familiar with those instead). A very bad idea if I ever heard of one.
Today, Microsoft has finally gone back to a solution that Unix started out with. Now many of the new.net applications are directory based and discovery of binary and resources can be rule based relative to that directory. Configuration is now done using XML files (but with lots of clever "tokenization" extensions to allow flexibility and confusion). But even here, there are shifting rules and different schools of thought. Is the application supposed to be delivered relative to directories served up through a web server, in a separate directory for the application, or in some shared area?
If Microsoft had a chance to rewrite windows and all 3rd applications from the ground up, do you think for a second that configuration and installs would be anywhere as confusing and mish mashed as it is today?
I am glad Apple is finally providing a choice to consumers. Either you get a vast complicated OS full of support for backward compatibility for a huge army of old 3rd party applications or you get a clean brand new single solution but with good support only for brand new shiny applications.
In World War II, many in the US did not believe that the Nazis were systematically killing millions of Jews. Many still don't believe it today.
During the cold war many refused to believe that USSR (as the greater Russian conglomerate of states was called at the time) had an economy and military as horribly managed as was sometimes described in the press. That only truly became apparent when the communist government collapsed and finally the west got to take a look at a third world country economy that was masquerading as first world. East Germany is still trying to shake off all the problems of its inherited woes and it has the active help of an integrated partner.
I constantly remind myself of these things when I hear that "things could not really be that bad in China". Any place that implements systematic censorship is, almost by definition, worse than anything the western media reports. But having said that, I would really be surprised if China has any really horrible crimes that it is suppressing. Sure powerful people are pushing around the less powerful in ways that contravene justice, but you have to be awfully blind not to see that is universal in almost all countries regardless of government type. At least in a country with free press I can safely (for the most part - there have been too many exceptions) complain about it and once in a while justice will be done.
Of course, the fact that the media was fooled by a couple of prankster bloggers does not actually imply much about the politics of the media, but more about their general gullibility in reporting anything as fact without really checking it.
There are actually two critical issues here. The first is that should companies be obligated to give raises to a large percentage of their workers. The second is whether or not the company is creating an evaluation process that actually rewards performance. Almost all the quotes from employees at Microsoft were not against the idea of rewarding only the top performers but more the claim that the evaluation process is driven by politics instead of a fair-minded view of real accomplishment.
If you create a system where you give the majority of the money for raises to a select subset of your employees, you are sending a clear message to the other employees that they should consider working elsewhere. Whether your evaluations are fair or not, there is no way that all the employees who get the lower evaluations are going to be happy about the situation. Certainly Microsoft should not be surprised if an employee decides to leave because of an insufficient raise. In fact, Microsoft should expect it. I would consider receiving below a cost of living raise to be a clear signal that in a tougher economic climate I would be fired.
The real problem with running large organizations is coming up with fair methods of evaluations. I would very much like to hear from those in Microsoft who might defend their current methodology. A few quotes from unhappy employees who disagree with their evaluation does not even come close to a true indictment of the system.
That was actually quite a helpful and enlightening response. But I do have to wonder how much of this code "satisfies" the "provably safe" paradigm that was originally mentioned as the reason for chosing ADA. Also, a lot of this code is under the GPL which means any application built on the code has to be GPL. I wonder how restrictive that is for doing commercial code development. However, I was not aware of the intrinsic support for threads and concurrency, that increases my respect for the language.
Is it just me or does this have the feel of a made up story designed to make fun of France and EU. Certainly when I read this story my first thought was to have derisive thoughts about both France and telecom companies in the EU. It certainly has all the components that make the idea laughable.
1. Government, with forethought, creating a state of the art software application. Government has been at the root of some ground breaking technologies, but usually not because of any done by people at the top (except maybe for some who had the vision to get out of the way).
2. France doing anything that will attract world acclaim for innovation. Somebody probably will provide counterexamples, but I hope they are not too historical.
3. An indefinite completion timeline. Usually a bad idea for software projects.
4. A feature list of pie in the sky technologies (parse and index "audio" in multiple languages??!!).
Well, I read some of the publications and I don't quite see how he agrees with me. In fact, he seems to believe that programmers (do the "abstract" work) and system analysts (do the "people problem" work) properly belong in separate universes and you get into trouble if you overlap the semantic language of the two universes. This type of thinking is so far from the actual problem domain I face, it seems to be in some "virtual" perfect overly simplified programming universe. Usually when it comes to programming, the programming part is relatively trivial, it is the understanding of how a user interacts and perceives the utility of the application which is hard. His papers seem to over emphasize the relatively trivial (the algorithmic implementation) as being equal to the hard (making it do something truly useful).
I am going to say something Heretical. I don't really believe that customers know what they want. I believe that a good programming architect is not that interested in the "requirements" he is much more interested in the "problems" the customer is facing and to understand those problems. Many times a good developer has a much better idea of all the true complications posed by solving the actual needs of the customer. If you do not take that approach, then you are almost guaranteed to be surprised by all types of later "complications". The literature is filled with failed projects of this type with programmers and customers pointing fingers at each other to avoid blame.
To me a good programming requirements document is a description of the customer "issues" that need to be resolved (the so called "business problems") and an analysis of how the programmer proposes to solve them. In my mind there is way too little "analysis" being done in much of programming these days and too much powerpointy type bullet lists of requirements.
I have noticed that nobody really asked. What type of application are they writing? Are they writing anything on the level of complexity of Apache? Firefox? Open Office? Eclipse? It is much easier to write bug free code if the problems you solve have limited scope. The usual problem with solutions of this type is that they solve the problem the user described and not the actually much more complex the problem the user actually needs solved. For example, a user could say I need a way to view marked up text and graphics in a windows application. What he does not know is that he really needs a complex solution like Firefox which supports CSS, javascript, AJAX, plugin architectures and so on. I am always wary when anybody claims that they have found a magic bullet to software development that avoids the actual application of ingenuity and hard thinking.
Take the supposed wonderful language of ADA. What databases can it talk to? What type of user interface can you construct? Can it talk HTTP or HTTPS? Can it do SOAP? Can it spawn threads or processes?
Let us say there is a big commercial application A delivered by money grubbing company B. Let us say there is wonderful virtuous GPL application X put together by the hard sweat and tears of volunteers in their spare time.
Let us also assume that both application A and application X both have plugin and extension models (including scripting languages) that allow others to extend the applications in fruitful and wonderful ways (you can imagine A to be an email server or an app server and X to be a video converter/renderer/parser/streamer). In the implementations of A and X, they were written with no prior knowledge of each other and by completely separated and distinct entities.
Now let us suppose that somebody writes a new application, call it C that allows for interesting interaction between A and X and makes C interact with A by allowing C to successfully handle SOAP requests generated by A (using A's dictated formats) to provide extensions to A's functionality using functionality in X. I want to distribute C under the GPL license. Can I?
Can A legally incorporate C? Assume for the sake of argument that the SOAP conversations are deemed too "intimate" and it is not legal.
What if A unwillingly (or unknowingly) uses C because it allows for end users to submit unmanaged changes (equivalent to having an open web site where anybody can post binary extensions -- or somebody hacking Tivo to bind it with open source software and redistributing the solution)? As a manager (but not developer, distributor, or seller) of A, am I liable for the fact that I run C? What about the original seller (company B) of A ? What if a corporate member of B posts to a open forum website clear instructions for making it easy to incorporate C into A? What if the author of C becomes really famous, gets hired by company B and continues to promote C? What if B is sold under the basis of supporting C?
In the end, this is a long winded way of saying that my problem with the GPL is not with the basic idea, but with the large grey areas that exist on its boundaries. More and more code is written with discovery mechanisms to create opportunistic bindings (scan network for apps doing X, find one, ask about details of doing X, then do X). All you have to do is insert one GPL application of sufficient complexity into that mix and you can create a vast legal morass.
I am in the business of hiring people for software positions and have had some experience in trying to evaluate prospects for job openings.
There are usually two steps to getting hired fresh out of school.
1. Getting your resume picked. Here having a good GPA from a lesser known school or a reasonable GPA from a very well known school can help a lot. But so can previous experience even if it is a hobby that you pursued during the school year or a really cool school project. Some of the best programmers I have hired did more learning out of the class room than in it. If the resume can show this, then it can help it get selected.
2. Surviving the technical interview. I usually look for evidence that the candidate has the ability for analytical thinking.
I would switch to a more prestigious university if you thought it gave you an opportunity to pursue more exciting projects. I would not switch if a professor has picked you (or might pick you) to help pursue the professor's research interests. This is the strongest indication of accomplishment you can get as an undergraduate besides winning contests or writing a real cool application.
There is this beautiful concept that people accept for other parts of the economy but are not quite sure what it would mean to software. In a standard economy a product X becomes commoditized if it can be produced in large bulk cheaply by an inexpensive workforce. Generally when you say that a product becomes commoditized (an example would be DVD players), the potential per unit profit becomes very small.
There is a general trend for most mass market goods to become commoditized. This should have happened in software some time ago, but there were unnatural monopolistic forces that slowed this process. In particular, Microsoft is doing everything in its power to prevent the commoditization of their bread and butter applications. But even with the presence of Microsoft, there remains a tremendous pressure by natural market forces to commoditize a lot of the software products in use today.
The only unusual wrinkle to this is that software becomes commoditized by becoming essentially free. There are intrinsically no costs of production or distribution (except of course for the initial effort to create the software). To me open source is not an expression of some type of political manifesto, but the realization of natural market forces that have been held back too long by some of the large software companies.
What makes this hard to understand is the commitment by so many to do "free" work for the community. How can market forces cause people to do uncompensated labors? Well, there are really three principle reasons (and probably a host of other ones as well). One is to enhance other people's free labors incrementally to make it useful for myself or those who I work for. This is where the GPL license is vital because I have to contribute those labors back to the community. The second is the desire of fame and the many ways fame can be translated to fortune. Again, the GPL license is vital because it prevents others from obscuring my contributions. The last reason is to reduce the costs of creating a successful software solution to a problem. I have to use commoditized software and enhance it because if I don't I will lose to competitors who do. This is why large companies like IBM are willing to pay staff to do open source development.
So I do not view free software as a force in opposition to or separate from standard rules of the capitalist game, but just a natural outgrowth. If we did not have software developers creating open source solutions under a GPL license, the natural market forces would create such a solution very quickly.
I would say that anybody who tries to invalidate the rules of the game by which the free software community thrives (such as the GPL) cannot possibly claim to be pro free market. They really only serve the interests of the existing market players and their real agenda has nothing to do with the true spirit of entrepreneurial capitalism.
There is one interesting thing about these patent issues that I find ironic. I am now cheering for companies that I would normally scorn. First, it was Microsoft having the embedded object in browser page patent revoked, and now it is porn companies and the digital streaming(?) media patent. I have to admire the porn companies for their willingness to fight the patent. In this fight they are serving not just themselves, but the community at large.
I thought I had EFF tagged as an ineffective politically oriented "special interest" group and now they go and do something useful. I am going to have to improve my opinion of this organization. I don't think this is even going to be perceived as controversial by other political oriented entities and groups. I thought being "controversial" was their entire reason for existence, but I am glad to be enlightened otherwise.
Now we get to see if you have to be an organization like Microsoft in order to succeed in having the patent office revoke a patent. It would be nice if these obnoxious patents could be revoked purely on principle.
Actually I was referring more to a standardly implemented mechanic in many roleplaying games, than an actual statement of the real utility and speed of large swords vs. small daggers. However, I would say that if the sword is large enough, then a person with a dagger is likely to have more moments of "action". However, the person with the dagger usually has penalties when trying to hit (a large sword can be used to keep an opponent at a distance), so the end result is that with two evenly matched contestants, the person with the dagger may actually "successfully" hit less often.
However, if you are claiming you can swing a LARGE sword as fast as a dagger, then you are working with a different set of laws of physics than I am.
I have spent more of my life than I should trying to analyze the designs of various roleplaying systems. In none of the remarks, have I seen anybody say some of the obvious truths.
A good roleplaying system has three fundamental things it wants to achieve.
1. Simplicity. Simple enough that users can anticipate the results of their choices. If I use the +2 sword of summoning vs. the 20% magic resistance fire sword, I as a user will know how this choice will effect my combat results.
2. Faithfulness to the genre (this is sometimes construed to mean "consistent with reality" or "known facts"). My large sword should hit less often but with more damage than my dagger.
3. Balanced (multiple different strategies to create a successful outcome). An elvish druid is a fun and successful character to play as a Ogre barbarian fighter.
These three things are often fiercely in contention.
As an example, D&D does one thing that gives it both a huge advantage and liability compared to most other gaming systems. All players in a party can simultaneously roll to hit. All defensive rules are precomputed to the point that the attackers can just roll to hit and roll their damage. This makes D&D game play lightning in speed compared to a lot of other systems. However, it seriously impairs believability of results. Parrying, dodging, tumbling, grabbing, and pinning all tend to be rare. It takes a lot of the dynamic out of the fight.
As another example, some gaming systems make you roll to determine which precise parts of the body you hit, what types of effects your defensive maneuver and armor had on the attack, make you track how much you are bleeding (and from what body location). They will also decide how much stamina you still have for the fight either in courage or physical awareness. In these gaming systems, there is usually a clear best weapon, best armor, best attack and defense strategy, and best type of racial or profession choice for characters. Also, it can be very difficult for players to figure out what is happening during a fight and how their choices impact the results of the fight. These systems are faithful to reality at the expense of other game play.
One more example is how experience is earned and used. Do characters only get experience when they do the big thing (kill a monster, cast a spell in combat), or can they get experience just "practicing"? Do they get better incrementally or are there "level" jumps? If you try to do the realistic thing here, you are usually choosing the more dull and messily complicated solution.
My favorite pet peeve of all roleplaying systems I have ever played is the lack of balance. In D&D, mages start out weak and puny and then are like gods compared to other characters at higher levels (as long as they have a good set of high level warriors to act as bodyguards, thieves to do the dangerous bits of exploration, and clerics to act as hit point regeneration reservoirs).
In practically every roleplaying system certain characters, certain spells, certain skills, certain weapons, certain stragegies are clearly superior to most other choices. It is a rare game that is truly balanced. Most games cheat by making certain skills only available to certain characters and then making those skills required for success of the party. In those games, some people always have to "sacrifice" and choose to be the non combat oriented healing cleric.
>I can't believe this. Sun has resorted to this old pipe dream!?!
I was thinking of posting a comment just like this one, and then I saw somebody had already written it. This is usually a symptom of upper management that is not very technologically aware. They are not able to differentiate "sounds cool" from "sounds a little less cool - actually possible to build and is useful". This type of story has been seen many times. Apple's Newton is probably one of the more infamous (good idea, not yet the time to do it).
There are other signs of upper management is losing touch with technology. They don't seem to be able to differentiate their better talent from their lesser talent and making sure they keep the former. Their best talent have been jumping ship for years. Some of the most innovative things done in Java are being done by ex-Sun employees.
I admit that at least for me this sends a very strong SELL signal for the stock (although I may be a little late -- it may already be driven down as far as its going to go).
If you look at the number of patents that are created per year (in the 10s of thousands I think), you would think a lot of creative and useful activity was being done. But if you look at the visible effect on our actual world and environment, it is not hard to see that most of these patents are not that original or do not have much new creative insight.
Out patent office is biased towards approving patents, not towards denying them. This is probably somewhat due to the understaffing (and lack of appropriate training) because it takes more energy and thought to come up with an effective argument to deny a patent then it does to just let it slide through. If we made a law which forced the patent office to raise the bar on which patents got through (it should probably be knocking down 90% of the applications it receives), then that would probably help quite a bit.
However, this is yet another good government idea that is probably politically impossible because such a solution will create too much outcry from players who are comfortable with the status quo (Another example: Try taking away the agriculture handouts from our large agribusiness corporations).
First off, this is the only "comment" (the one that is close to the root of the messages you are responding to) I have ever posted that got moderated as "flamebait" but it is also the only one that ever got more than two responses. I admit I was trying to be deliberately provocative (a slightly reduced version of "flaming") to see if I would get more response. It worked (and may also point up a flaw in Slashdot's moderation solution since I got a far more satisfying response to this particular comment).
Personally, I am not a big believer in conspiracies. So I agree with your assesment that our mass media hypes violence and fear. But I think the real problem is that "gutcheck" violence sells. I can still remember tragic stories about women allowing their babies to die in their cars on a hot day because they forgot that the child was there. My intellect tells me that there are probably only 10 cases of something like this a year and therefore irrelevant compared to other types of suffering and death, but I am unable to push such stories out of my mind. Likewise, I think the popular media finds that there is much greater interest in a story about one soldier dying in Iraq, then a story about 100 motorists dying last year in their city.
But I still think that the New York Times is clearly to the left of other news sources such as USA Today or the Economist (and of course "Fox News"). In today's USA Today there was an article about conservatives on college campuses being denied their right to speak out. I am not so sure that such a story would appear in the New York Times with the same positive spin for the conservatives. The USA Today made it seem like virtuous upstanding students were being suppressed. The New York Times version of this story (if they were to run it), would probably point out more of the virtues of eliminating "hate" speech on campuses by interviewing gays or blacks would had been the victims of "hate" speech.
One of the things I love about the far left and far right is that they actually think they get to define where the "center" is. So to somebody on the far left I am clearly an ignorant conservative and to somebody on the far right I clearly hold dangerous liberal tendencies. I believe myself to be mildly left of center and I find my views about the world and the New York Times mostly agree, I just wish the New York Times suffered less from the "mass media culture" syndrome (as you so rightly point out).
Sigh. I have a Ph.d. in mathematics and I consider myself a liberal (I really do not like the fact that Bush is our president). But much of the "activist" left wing are so clueless when it comes to seeing reality. I read the New York times daily. It so clearly has a liberal bias. Every news story about Iraq tends to show the negative (the few positive ones seem to be forced and played down). Every news story about Democrats who attack Bush has a positive spin. Only very grudingly to they admit that the last quarter's growth has some positive aspects to it. They ran a story about Bush trying to take credit for the recent economic growth and the story pretty much said that Bush was seriously overstating the case.
I find the "New York Times" to be sufficiently biased in its reporting to be annoying, especially when I feel the irrational spin on an event is actually damaging and not helping a cause I favor. For example, the "New York Times" would never point out that more die in Iraq from standard causes like crimes, sickness, accidents by an order of magnitude than die from terrorists acts. And a couple 100 American dead is really small fry casualties for a war zone type situation. By exagerating issues like small fry terrorists acts, they make it sound like the issue at stake is not whether we really have any business in Iraq (I personally think we should have never gone in), but that a few hundred dead American soldiers would never be justified for a good cause.
Try reading an "Economist" and "New York Times" article about the same thing (such as globalization or the war on Iraq). There are startling differences. If the Conservatives in our country actually hold the correct opinions (note the big "if") about how to direct the future of our country, then they have a right to be outraged by the left wing media. Since I mostly agree with the positions of the left wing media, I am only annoyed.
There are a lot of examples where convenience trumps common sense. I will just go through some examples.
We are still using a creaky and ancient way of doing email that allows anybody to spoof anybody else.
The entire "domain/host" structure of the internet is based on a certain level of unverified trust. Besides the obvious issues with the ease with which domains can be hijacked there are less known problems. Verisign has become the defacto place to get commercial web server certificates thus centralizing the point of attack for those who wish to compromise our https web infrastructure. The utf-8 extensions for domain names allow font confusion for domain names (something like registering Micr0soft but with a subtler character variation for the 0).
And now I am going to do an extended rant. A common preferred security implementation is to allow a user to dictate precisely who accesses each atomic piece of content (called the Access Control List or ACL security). Usually that user has to pick from a vast list of users and groups (groups of users) for granting access without much of a clue to the nature of the users or the groups. In a reasonably complex environment, the chances are that most assignments will either deny access to those who need it or grant it to those who should not have it. The biggest problem is that it is practically impossible to audit the model so that an administrator can understand who has access to what and why. It is the fundamental failure of this model to create real security that allows the compromising of one machine to compromise a network. An ACL model does not make as clean a separation from those who are privileged from those who are not. But it is highly convenient and beloved by end users.
And if you want to leave software and look for other examples, you just have to look at credit cards. Credit cards have many vulnerabilities but they are so highly convenient that the issuers of the cards are willing to accept a significantly measurable "bleed rate" due to credit card fraud.
People leave keys in running cars when going into a store. They leave house doors unlocked when doing a short errand.
In many ways I am just stating the obvious. But let me give a different spin on this issue. It might still be true that the convenience of certain Microsoft OS features/applications create greater productivity than the productivity lost to security holes (although lately that has been harder to argue). In other words, it may be the proper and healthy state (just as with credit cards) to have a certain number of viruses and such running around all of the time. It is just the cost of having highly convenient software.
The fact that the software is from a single vendor is just another "convenience" feature that has been embraced by the end users.
If the EU's process can avoid patenting one-click shopping or obvious browser plugin ideas, then they will already be far ahead of the standard in the U.S. I have no problem with software being patentable. I just hate the low standard used to decide whether a particular idea of software application is patentable (by the way this is a complaint that extends outside the domain of software -- biotech is hampered by stupid patents as well).
It should require a large majority vote from an "experts" panel who are told that the invention truly has to be innovative and new before a patent is allowed to go through (I am thinking of expert panels at least at the level used to judge finalists for high school science contests). Any patent that is easy for an expert to understand or implement should just not be a patent. To give you an idea of the high standard I would like to use, a patentable idea should be cleverer or more innovative then the ideas used either in HTML or the GIF format. A patentable idea should have the aura of obscurity and complexity; even to the expert.
Well, I will try to see if I can watch this documentary (I am going to put it into my Netflix queue).
I asked about education, because some people are going to advocate that progression towards a more modern society is the most important issue, and so a measure of this is quite important. Most of the defenses I have heard from the Chinese essentially have a "we helped a primitive society become more modern".
Saying that large numbers of Chinese have immigrated into Tibet is quite different from saying that the Chinese have actively suppressed religious thought, denied advancement to the indigenous population, evicted people from their ancestral lands, and imprisoned/tortured/killed many of the citizens. The two are not equal (though the first can naturally lead to the second). I don't need proof of the former, but I would like some real factual evidence of the latter.
But even on the Chinese immigration, there is disagreement on what should be a factual issue. What is the current ratio of native citizens to recently moved in Chinese Han? The Chinese quoted figure is much higher (they say the native Tibetan population has thrived and almost doubled) than quoted by Tibetan nationalists.
Actually, I have been trying to find documented evidence of the claims you make.
Have monks and nuns been tortured? How many? Have locals been "displaced"? Have they been forced to move from where they were living before? How many? How valuable was the land that they lived on?
The problem I am having is that one side claims that these things are happening, the other side claims that they are not. Some times they agree that the thing happens but disagree on numbers by many orders of magnitude (ex: one side says 100s killed the other side says 100,000s killed when China invaded Tibet).
I am struggling to find clear documented evidence of these great "human rights" abuses. Of course, I am also finding no evidence that such things did not occur.
I cannot get factual answers to the following:
1. How many native Tibetans have advanced degrees?
2. What percentage of the bureaucracy in Tibet has native Tibetans in it?
3. What is the ratio of Tibetans to non Tibetans?
4. What geographic region is precisely the one being argued out about? It seems that there are edge case territories in the boundary that change the counting system when they are included or excluded.
5. Who exactly is participating in the turmoil in Tibet? Are normal everyday Tibetan citizens engaged in this? Again I get two sides claiming different facts.
6. What precise religious rights were taken away from native Tibetans?
7. What percentage of native Tibetans see the Dalai Lama as a great religious figure?
Every fact I have seen claimed seems to have no really strong foundation when you go inspect the original materials. If anybody can provide better sources of information, that would be great.
The problem of course is that China is in the best position to have accurate answers to these questions. But there is not a single example in history (counter examples are welcome) of self-appointed leaders (of reasonably large countries) ever providing non propaganda versions of information to others.
I have worked with various search engines including FAST. As part of my job we (a collective group that I was associated with) had to stress test each of the search engines and make a comparative analysis. The main focus of this testing was Metadata search, a place where a lot of the search engines do badly when you allow complicated open ended queries. In particular, Google's Intranet search is unusable because it cannot do integer or date ranges in an efficient manner.
Of all the engines we tested, FAST was the only one that could guarantee subsecond performance when you performed a search on a collection holding a million documents and the queries had many terms with some terms having substring searches on metadata fields. Every other search engine could not guarantee performance under 30 seconds, let alone subsecond. There is an underlying technology in the FAST search engine which is clearly superior to any other.
The problem that we had with FAST was the large J2EE app sever they insisted on shipping with their solution and the major pain it was to administrate. It was at times a little unstable and some of the administrative activity was unnecessarily arcane. It is because of the J2EE app server wrapper that made me surprised that they were bought by Microsoft. It has been a couple of years since we ran these tests and maybe they have evolved the product a bit.
I have worked through to a solution of the BBC problem from China and my first reaction is Yuck, this is not mathematics but artifical nonsense posing as mathematics. The problem does little to inspire what I call "abstract" reasoning (though it does have a little bit of cleverness in finding triangles with two equal sides and where all the perpendiculars occur). I suspect that the students who do well on this problem have drilled themselves on 100s of variants of this problem until they were deathly sick of it. This is why some characterize the Japanese and Chinese education system as a system designed to suppress creative thought.
I think we have little to fear from the Chinese produced from this education system.
Having said that, Britain does do a fairly poor job in educating their students in mathematics compared to their peers in other European countries.
Instead of taking on the whole infrastructure, let us just look at the process of install and configuration.
.net applications are directory based and discovery of binary and resources can be rule based relative to that directory. Configuration is now done using XML files (but with lots of clever "tokenization" extensions to allow flexibility and confusion). But even here, there are shifting rules and different schools of thought. Is the application supposed to be delivered relative to directories served up through a web server, in a separate directory for the application, or in some shared area?
Look at what has happened to windows over time for install and configuration.
First we started with all shared binary going in C:\windows\ or C:\windows\system32 (or for real old stuff C:\windows\system - already backward compatibility is confusing the issue). Configuration for applications was usually found in "ini" files in the C:\windows\ directory.
The next step was to have a global registry. Binary now could go wherever you wanted, but a new typical place was under C:\Program Files. In order to place the binary where you wanted, you had to create not only randomly generated unique Ids (GUIDs) for the identifying the application, but also for any interfaces, resources, and so on. This made registering even a simple VB COM control require 12 separate registry entries that shifted on each rebuild.
In order to support this crazy hodgepodge, the operating system had code that automatically updated registry entries if you rename a COM control (or an OCX for some familiar with those instead). A very bad idea if I ever heard of one.
Today, Microsoft has finally gone back to a solution that Unix started out with. Now many of the new
If Microsoft had a chance to rewrite windows and all 3rd applications from the ground up, do you think for a second that configuration and installs would be anywhere as confusing and mish mashed as it is today?
I am glad Apple is finally providing a choice to consumers. Either you get a vast complicated OS full of support for backward compatibility for a huge army of old 3rd party applications or you get a clean brand new single solution but with good support only for brand new shiny applications.
In World War II, many in the US did not believe that the Nazis were systematically killing millions of Jews. Many still don't believe it today.
During the cold war many refused to believe that USSR (as the greater Russian conglomerate of states was called at the time) had an economy and military as horribly managed as was sometimes described in the press. That only truly became apparent when the communist government collapsed and finally the west got to take a look at a third world country economy that was masquerading as first world. East Germany is still trying to shake off all the problems of its inherited woes and it has the active help of an integrated partner.
I constantly remind myself of these things when I hear that "things could not really be that bad in China". Any place that implements systematic censorship is, almost by definition, worse than anything the western media reports. But having said that, I would really be surprised if China has any really horrible crimes that it is suppressing. Sure powerful people are pushing around the less powerful in ways that contravene justice, but you have to be awfully blind not to see that is universal in almost all countries regardless of government type. At least in a country with free press I can safely (for the most part - there have been too many exceptions) complain about it and once in a while justice will be done.
Of course, the fact that the media was fooled by a couple of prankster bloggers does not actually imply much about the politics of the media, but more about their general gullibility in reporting anything as fact without really checking it.
There are actually two critical issues here. The first is that should companies be obligated to give raises to a large percentage of their workers. The second is whether or not the company is creating an evaluation process that actually rewards performance. Almost all the quotes from employees at Microsoft were not against the idea of rewarding only the top performers but more the claim that the evaluation process is driven by politics instead of a fair-minded view of real accomplishment.
If you create a system where you give the majority of the money for raises to a select subset of your employees, you are sending a clear message to the other employees that they should consider working elsewhere. Whether your evaluations are fair or not, there is no way that all the employees who get the lower evaluations are going to be happy about the situation. Certainly Microsoft should not be surprised if an employee decides to leave because of an insufficient raise. In fact, Microsoft should expect it. I would consider receiving below a cost of living raise to be a clear signal that in a tougher economic climate I would be fired.
The real problem with running large organizations is coming up with fair methods of evaluations. I would very much like to hear from those in Microsoft who might defend their current methodology. A few quotes from unhappy employees who disagree with their evaluation does not even come close to a true indictment of the system.
That was actually quite a helpful and enlightening response. But I do have to wonder how much of this code "satisfies" the "provably safe" paradigm that was originally mentioned as the reason for chosing ADA. Also, a lot of this code is under the GPL which means any application built on the code has to be GPL. I wonder how restrictive that is for doing commercial code development. However, I was not aware of the intrinsic support for threads and concurrency, that increases my respect for the language.
1. Government, with forethought, creating a state of the art software application. Government has been at the root of some ground breaking technologies, but usually not because of any done by people at the top (except maybe for some who had the vision to get out of the way).
2. France doing anything that will attract world acclaim for innovation. Somebody probably will provide counterexamples, but I hope they are not too historical.
3. An indefinite completion timeline. Usually a bad idea for software projects.
4. A feature list of pie in the sky technologies (parse and index "audio" in multiple languages??!!).
5. Multiple bureaucratic entities involved.
Well, I read some of the publications and I don't quite see how he agrees with me. In fact, he seems to believe that programmers (do the "abstract" work) and system analysts (do the "people problem" work) properly belong in separate universes and you get into trouble if you overlap the semantic language of the two universes. This type of thinking is so far from the actual problem domain I face, it seems to be in some "virtual" perfect overly simplified programming universe. Usually when it comes to programming, the programming part is relatively trivial, it is the understanding of how a user interacts and perceives the utility of the application which is hard. His papers seem to over emphasize the relatively trivial (the algorithmic implementation) as being equal to the hard (making it do something truly useful).
To me a good programming requirements document is a description of the customer "issues" that need to be resolved (the so called "business problems") and an analysis of how the programmer proposes to solve them. In my mind there is way too little "analysis" being done in much of programming these days and too much powerpointy type bullet lists of requirements.
I have noticed that nobody really asked. What type of application are they writing? Are they writing anything on the level of complexity of Apache? Firefox? Open Office? Eclipse? It is much easier to write bug free code if the problems you solve have limited scope. The usual problem with solutions of this type is that they solve the problem the user described and not the actually much more complex the problem the user actually needs solved. For example, a user could say I need a way to view marked up text and graphics in a windows application. What he does not know is that he really needs a complex solution like Firefox which supports CSS, javascript, AJAX, plugin architectures and so on. I am always wary when anybody claims that they have found a magic bullet to software development that avoids the actual application of ingenuity and hard thinking. Take the supposed wonderful language of ADA. What databases can it talk to? What type of user interface can you construct? Can it talk HTTP or HTTPS? Can it do SOAP? Can it spawn threads or processes?
Let us also assume that both application A and application X both have plugin and extension models (including scripting languages) that allow others to extend the applications in fruitful and wonderful ways (you can imagine A to be an email server or an app server and X to be a video converter/renderer/parser/streamer). In the implementations of A and X, they were written with no prior knowledge of each other and by completely separated and distinct entities.
Now let us suppose that somebody writes a new application, call it C that allows for interesting interaction between A and X and makes C interact with A by allowing C to successfully handle SOAP requests generated by A (using A's dictated formats) to provide extensions to A's functionality using functionality in X. I want to distribute C under the GPL license. Can I?
Can A legally incorporate C? Assume for the sake of argument that the SOAP conversations are deemed too "intimate" and it is not legal.
What if A unwillingly (or unknowingly) uses C because it allows for end users to submit unmanaged changes (equivalent to having an open web site where anybody can post binary extensions -- or somebody hacking Tivo to bind it with open source software and redistributing the solution)? As a manager (but not developer, distributor, or seller) of A, am I liable for the fact that I run C? What about the original seller (company B) of A ? What if a corporate member of B posts to a open forum website clear instructions for making it easy to incorporate C into A? What if the author of C becomes really famous, gets hired by company B and continues to promote C? What if B is sold under the basis of supporting C?
In the end, this is a long winded way of saying that my problem with the GPL is not with the basic idea, but with the large grey areas that exist on its boundaries. More and more code is written with discovery mechanisms to create opportunistic bindings (scan network for apps doing X, find one, ask about details of doing X, then do X). All you have to do is insert one GPL application of sufficient complexity into that mix and you can create a vast legal morass.
I am in the business of hiring people for software positions and have had some experience in trying to evaluate prospects for job openings.
There are usually two steps to getting hired fresh out of school.
1. Getting your resume picked. Here having a good GPA from a lesser known school or a reasonable GPA from a very well known school can help a lot. But so can previous experience even if it is a hobby that you pursued during the school year or a really cool school project. Some of the best programmers I have hired did more learning out of the class room than in it. If the resume can show this, then it can help it get selected.
2. Surviving the technical interview. I usually look for evidence that the candidate has the ability for analytical thinking.
I would switch to a more prestigious university if you thought it gave you an opportunity to pursue more exciting projects. I would not switch if a professor has picked you (or might pick you) to help pursue the professor's research interests. This is the strongest indication of accomplishment you can get as an undergraduate besides winning contests or writing a real cool application.
There is a general trend for most mass market goods to become commoditized. This should have happened in software some time ago, but there were unnatural monopolistic forces that slowed this process. In particular, Microsoft is doing everything in its power to prevent the commoditization of their bread and butter applications. But even with the presence of Microsoft, there remains a tremendous pressure by natural market forces to commoditize a lot of the software products in use today.
The only unusual wrinkle to this is that software becomes commoditized by becoming essentially free. There are intrinsically no costs of production or distribution (except of course for the initial effort to create the software). To me open source is not an expression of some type of political manifesto, but the realization of natural market forces that have been held back too long by some of the large software companies.
What makes this hard to understand is the commitment by so many to do "free" work for the community. How can market forces cause people to do uncompensated labors? Well, there are really three principle reasons (and probably a host of other ones as well). One is to enhance other people's free labors incrementally to make it useful for myself or those who I work for. This is where the GPL license is vital because I have to contribute those labors back to the community. The second is the desire of fame and the many ways fame can be translated to fortune. Again, the GPL license is vital because it prevents others from obscuring my contributions. The last reason is to reduce the costs of creating a successful software solution to a problem. I have to use commoditized software and enhance it because if I don't I will lose to competitors who do. This is why large companies like IBM are willing to pay staff to do open source development.
So I do not view free software as a force in opposition to or separate from standard rules of the capitalist game, but just a natural outgrowth. If we did not have software developers creating open source solutions under a GPL license, the natural market forces would create such a solution very quickly.
I would say that anybody who tries to invalidate the rules of the game by which the free software community thrives (such as the GPL) cannot possibly claim to be pro free market. They really only serve the interests of the existing market players and their real agenda has nothing to do with the true spirit of entrepreneurial capitalism.
There is one interesting thing about these patent issues that I find ironic. I am now cheering for companies that I would normally scorn. First, it was Microsoft having the embedded object in browser page patent revoked, and now it is porn companies and the digital streaming(?) media patent. I have to admire the porn companies for their willingness to fight the patent. In this fight they are serving not just themselves, but the community at large.
Now we get to see if you have to be an organization like Microsoft in order to succeed in having the patent office revoke a patent. It would be nice if these obnoxious patents could be revoked purely on principle.
However, if you are claiming you can swing a LARGE sword as fast as a dagger, then you are working with a different set of laws of physics than I am.
A good roleplaying system has three fundamental things it wants to achieve.
1. Simplicity. Simple enough that users can anticipate the results of their choices. If I use the +2 sword of summoning vs. the 20% magic resistance fire sword, I as a user will know how this choice will effect my combat results.
2. Faithfulness to the genre (this is sometimes construed to mean "consistent with reality" or "known facts"). My large sword should hit less often but with more damage than my dagger.
3. Balanced (multiple different strategies to create a successful outcome). An elvish druid is a fun and successful character to play as a Ogre barbarian fighter.
These three things are often fiercely in contention.
As an example, D&D does one thing that gives it both a huge advantage and liability compared to most other gaming systems. All players in a party can simultaneously roll to hit. All defensive rules are precomputed to the point that the attackers can just roll to hit and roll their damage. This makes D&D game play lightning in speed compared to a lot of other systems. However, it seriously impairs believability of results. Parrying, dodging, tumbling, grabbing, and pinning all tend to be rare. It takes a lot of the dynamic out of the fight.
As another example, some gaming systems make you roll to determine which precise parts of the body you hit, what types of effects your defensive maneuver and armor had on the attack, make you track how much you are bleeding (and from what body location). They will also decide how much stamina you still have for the fight either in courage or physical awareness. In these gaming systems, there is usually a clear best weapon, best armor, best attack and defense strategy, and best type of racial or profession choice for characters. Also, it can be very difficult for players to figure out what is happening during a fight and how their choices impact the results of the fight. These systems are faithful to reality at the expense of other game play.
One more example is how experience is earned and used. Do characters only get experience when they do the big thing (kill a monster, cast a spell in combat), or can they get experience just "practicing"? Do they get better incrementally or are there "level" jumps? If you try to do the realistic thing here, you are usually choosing the more dull and messily complicated solution.
My favorite pet peeve of all roleplaying systems I have ever played is the lack of balance. In D&D, mages start out weak and puny and then are like gods compared to other characters at higher levels (as long as they have a good set of high level warriors to act as bodyguards, thieves to do the dangerous bits of exploration, and clerics to act as hit point regeneration reservoirs).
In practically every roleplaying system certain characters, certain spells, certain skills, certain weapons, certain stragegies are clearly superior to most other choices. It is a rare game that is truly balanced. Most games cheat by making certain skills only available to certain characters and then making those skills required for success of the party. In those games, some people always have to "sacrifice" and choose to be the non combat oriented healing cleric.
>I can't believe this. Sun has resorted to this old pipe dream!?!
I was thinking of posting a comment just like this one, and then I saw somebody had already written it. This is usually a symptom of upper management that is not very technologically aware. They are not able to differentiate "sounds cool" from "sounds a little less cool - actually possible to build and is useful". This type of story has been seen many times. Apple's Newton is probably one of the more infamous (good idea, not yet the time to do it).
There are other signs of upper management is losing touch with technology. They don't seem to be able to differentiate their better talent from their lesser talent and making sure they keep the former. Their best talent have been jumping ship for years. Some of the most innovative things done in Java are being done by ex-Sun employees.
I admit that at least for me this sends a very strong SELL signal for the stock (although I may be a little late -- it may already be driven down as far as its going to go).
Out patent office is biased towards approving patents, not towards denying them. This is probably somewhat due to the understaffing (and lack of appropriate training) because it takes more energy and thought to come up with an effective argument to deny a patent then it does to just let it slide through. If we made a law which forced the patent office to raise the bar on which patents got through (it should probably be knocking down 90% of the applications it receives), then that would probably help quite a bit.
However, this is yet another good government idea that is probably politically impossible because such a solution will create too much outcry from players who are comfortable with the status quo (Another example: Try taking away the agriculture handouts from our large agribusiness corporations).
Personally, I am not a big believer in conspiracies. So I agree with your assesment that our mass media hypes violence and fear. But I think the real problem is that "gutcheck" violence sells. I can still remember tragic stories about women allowing their babies to die in their cars on a hot day because they forgot that the child was there. My intellect tells me that there are probably only 10 cases of something like this a year and therefore irrelevant compared to other types of suffering and death, but I am unable to push such stories out of my mind. Likewise, I think the popular media finds that there is much greater interest in a story about one soldier dying in Iraq, then a story about 100 motorists dying last year in their city.
But I still think that the New York Times is clearly to the left of other news sources such as USA Today or the Economist (and of course "Fox News"). In today's USA Today there was an article about conservatives on college campuses being denied their right to speak out. I am not so sure that such a story would appear in the New York Times with the same positive spin for the conservatives. The USA Today made it seem like virtuous upstanding students were being suppressed. The New York Times version of this story (if they were to run it), would probably point out more of the virtues of eliminating "hate" speech on campuses by interviewing gays or blacks would had been the victims of "hate" speech.
One of the things I love about the far left and far right is that they actually think they get to define where the "center" is. So to somebody on the far left I am clearly an ignorant conservative and to somebody on the far right I clearly hold dangerous liberal tendencies. I believe myself to be mildly left of center and I find my views about the world and the New York Times mostly agree, I just wish the New York Times suffered less from the "mass media culture" syndrome (as you so rightly point out).
I find the "New York Times" to be sufficiently biased in its reporting to be annoying, especially when I feel the irrational spin on an event is actually damaging and not helping a cause I favor. For example, the "New York Times" would never point out that more die in Iraq from standard causes like crimes, sickness, accidents by an order of magnitude than die from terrorists acts. And a couple 100 American dead is really small fry casualties for a war zone type situation. By exagerating issues like small fry terrorists acts, they make it sound like the issue at stake is not whether we really have any business in Iraq (I personally think we should have never gone in), but that a few hundred dead American soldiers would never be justified for a good cause.
Try reading an "Economist" and "New York Times" article about the same thing (such as globalization or the war on Iraq). There are startling differences. If the Conservatives in our country actually hold the correct opinions (note the big "if") about how to direct the future of our country, then they have a right to be outraged by the left wing media. Since I mostly agree with the positions of the left wing media, I am only annoyed.
There are a lot of examples where convenience trumps common sense. I will just go through some examples.
We are still using a creaky and ancient way of doing email that allows anybody to spoof anybody else.
The entire "domain/host" structure of the internet is based on a certain level of unverified trust. Besides the obvious issues with the ease with which domains can be hijacked there are less known problems. Verisign has become the defacto place to get commercial web server certificates thus centralizing the point of attack for those who wish to compromise our https web infrastructure. The utf-8 extensions for domain names allow font confusion for domain names (something like registering Micr0soft but with a subtler character variation for the 0).
And now I am going to do an extended rant. A common preferred security implementation is to allow a user to dictate precisely who accesses each atomic piece of content (called the Access Control List or ACL security). Usually that user has to pick from a vast list of users and groups (groups of users) for granting access without much of a clue to the nature of the users or the groups. In a reasonably complex environment, the chances are that most assignments will either deny access to those who need it or grant it to those who should not have it. The biggest problem is that it is practically impossible to audit the model so that an administrator can understand who has access to what and why. It is the fundamental failure of this model to create real security that allows the compromising of one machine to compromise a network. An ACL model does not make as clean a separation from those who are privileged from those who are not. But it is highly convenient and beloved by end users.
And if you want to leave software and look for other examples, you just have to look at credit cards. Credit cards have many vulnerabilities but they are so highly convenient that the issuers of the cards are willing to accept a significantly measurable "bleed rate" due to credit card fraud.
People leave keys in running cars when going into a store. They leave house doors unlocked when doing a short errand.
In many ways I am just stating the obvious. But let me give a different spin on this issue. It might still be true that the convenience of certain Microsoft OS features/applications create greater productivity than the productivity lost to security holes (although lately that has been harder to argue). In other words, it may be the proper and healthy state (just as with credit cards) to have a certain number of viruses and such running around all of the time. It is just the cost of having highly convenient software.
The fact that the software is from a single vendor is just another "convenience" feature that has been embraced by the end users.
It should require a large majority vote from an "experts" panel who are told that the invention truly has to be innovative and new before a patent is allowed to go through (I am thinking of expert panels at least at the level used to judge finalists for high school science contests). Any patent that is easy for an expert to understand or implement should just not be a patent. To give you an idea of the high standard I would like to use, a patentable idea should be cleverer or more innovative then the ideas used either in HTML or the GIF format. A patentable idea should have the aura of obscurity and complexity; even to the expert.