The Source for Java Technology Collaboration
User: Password:



Ken Arnold's Blog

Community Archives


JCP Wants You, Sort Of, It Thinks...

Posted by arnold on May 18, 2006 at 09:31 AM | Permalink | Comments (26)

The Java Community Process -- they want you, but it seems like they still don't quite know what to do with you.

As I briefly mentioned in a previous blog, the JCP people want you to sign up as an individual member. And you should, really, it's a good thing.

But that's not good enough -- if you're going to be there you ought to count more.

The final decision maker in the JCP is the Executive Committee (EC), one for ME and one for SE and EE. Each EC has 16 members, and here they are.

You can see that the EC for J2EE has two actual individuals. J2ME has none. So as individuals you have (maybe you've already done the math) 2 of 32 members. While this is a nice, comforting pair of powers of two, it tells you where you are.

This is fundamentally broken. It is broken in two major ways:

  • Obviously there are simply too few actual individuals on the EC. The two J2EE members are both very good people who deserve our admiration and thanks. But the principles of the process say that the ECs represent "a cross-section of both major stakeholders and other members of the Java community". Two of sixteen in one case, and zero of sixteen in another, isn't much representation for us individuals who are being pushed to sign up. If we sign up, where is our practical representation as major stakeholders?

  • More subtle, 30 members are companies. People show up to represent them, but it is (say) IBM that is a member of the J2EE EC, not the current human being they ask to do that job. What this means is that even for the commercial stakeholders, only a very, very few actually get representation in the final decisions.

    In political terms, this is an oligarchy, a governing system where the final decisions are in the hands of an elite. This is further reinforced by the selection model. Sun gets one seat. Five seats are elected. The other ten are nominated by Sun and ratified (or, theoretically, not) by members. In other words, these ten are chosen by one-candidate elections.

    Or to put it another way, if the individual members rose up in unison, we could elect, at most, five of sixteen members. For the rest we would have to vote down company after company, or person after person, until Sun nominated them someone we wanted.

    Or, more simply, it's "You discuss, we decide."

    As individuals we should join, but the JCP needs a more open system that allows all stakeholders, not primarily the largest, a part in the final decisions. More members should be elected. Equally important, it should be people on the EC, not companies. Yes, people should be elected to represent commercial interests. A person with good understanding of the telecommunications industry, say, could be elected, and while they might be employed by one company, they should be expected to represent a set of commercial interests that elect them, not just that one company.

    The Jini Decision Process has many different requirements so is probably not simply transplantable. But it has a system that has individuals elected by both commercial and individual blocks. This gives it a structure that represents more stakeholders at the top.

    Politically, the technical term for this is "representative democracy".

    Or, as it is commonly known, "The worst form of government. Except all the others." It is time for a less worse form of governance in the JCP.

    Ludicrous as a Balm for Patent Idiocy

    Posted by arnold on November 26, 2004 at 02:43 PM | Permalink | Comments (9)

    Pamela Jones's GrokLaw website has kindly noticed my suggestion to make ludicrous patents a form of fraud. She raises a few questions that overlap with some from other folks, so I thought I'd clarify my thinking. What the heck -- I've not nothing else to do on Thanksgiving.

    One phrase I am known for repeating is "You're thinking too hard." I use it to mean that someone is looking for a complicated, subtle meaning instead of a simple one. Often it seems that if you pretend the solution is simple, it becomes so.

    So I have to say to PJ: "You're thinking too hard." Here are her concerns (quoted from her blog):

    1. You'd have to define a clear line in the sand, a definition of obviousness that couldn't be stepped beyond unless it was on purpose, and I don't see how you could. Maybe you do. But no law can be so vague that it's impossible to know precisely when you are breaking it. How could you define clearly enough where that line is?
    2. Who do you punish?
    The first is actually (to me) quite simple. The relevant standards for a patent are (a) that it must be not obvious "to one normally skilled in the art", and (b) not already be public knowledge. The phrase "normally skilled in the art" has well-defined meaning in patent law, sufficient to under-pin the whole structure. So let's just reuse that: A patent is "ludicrous" if it is "trivial to one normally skilled in the art." Note the range opened up between "obvious" and "trivial". On a scale from 1 (stupid) to 10 (Einstein), we could say that an idea is "obvious" if is a 6, and so any patent should be a 7 or above. Whether an idea is a 5 or 6 or 7 is something reasonably people could argue about, and so is not fraud to disagree. But at some point -- let's call it 3 -- it's just plain trivial.

    This is the level of precision of most legal standards. These words are then interpreted by judges to apply to particular instances, which nails it down harder and harder. But the word "trivial" (or the phrase "trivially obvious") fits into the structure quite nicely.

    As for prior art, I would say a patent is "ludicrous" if it steps on prior art "widely known to those normally skilled in the art." In our current poster child, I would say that finding folks who have heard of "not equal" operators for comparing objects, pointers, or references would be pretty damn easy. It's probably hard to find normally skilled folks who haven't.

    Liability is even easier. Those who are in a position to profit from the fraud are liable. Typically this is the patent's actual owner, who may or may not be an inventor. In our particular poster child, this would be MicroSoft. I use the phrase "actual owner" because people who are clever should not escape their responsibility by hiding the patent in a shell company or something. Like with any other fraud, you cannot escape liability easily. If you buy a patent, you buy the risk. So don't buy a patent that is likely to be ludicrous.

    Others have worried about the new lawsuits involved. First, remember that if you file a claim on a ludicrous patent, you only get paid if you win. This is real incentive to avoid that. And there are protections in the legal system against frivolous suits, which would equally apply here. Remember, the idea is to leverage the existing systems to address the problem, not invent an entirely new system. Standard safeguards and rules apply. We're just defining a new form of fraud, based on existing standards for fraud and patents. Once we've set up the language reasonably, most things should just follow naturally.

    I don't declare for or against software patents here. We can leave that for some other time. But politics is the art of the possible, and I think that this suggestion actually is slightly near possible. And I think it would make a difference. And, like PJ, I like the idea of someone getting legally smacked for being "ludicrous". That alone would be worth it.

    Self-enforcing Patent Sanity

    Posted by arnold on November 22, 2004 at 06:44 PM | Permalink | Comments (6)

    There are many suggestions for fixing the patent system, from abolishing it to radical surgery. Many of these are praiseworthy in design, but most suffer from a severe problem -- You can't get there from here. Wonderful end results are nearly impossible to attain because the forces defending the status quo are powerful and have little stake in the resulting system.

    So here's an idea that actually gives some major players a strong stake in the outcome and could have a big impact: Declare that ludicrously obviously invalid patents are a form of fraud. And enforce that by giving anyone who proves patent fraud by ludicrosity gets paid triple their costs as a reward, plus any damages they can show were caused by the issuance of the patent.

    As a starting point, I would define a "ludicrous" patent as one that any practitioner normally skilled in the art would recognize as having prior art. MicroSoft's is our most recent poster child, who seems to be seeking a patent on an IsNot operator that checks if two pointers point to the same place in memory. In other words, it's like C's "p1 != p2" where p1 and p2 are pointers. Uh, hello? Can we say prior art, like almost any machine instruction set? And can we say "obvious" as in "done in almost any language you can name that has pointers or references"?

    I model this on "whistle-blower" laws that encourage private citizens to ferret out fraud against the government by giving successful ferreters a chunk of the recovered money. This means that the gov't itself doesn't have to do anything to ensure that a bunch of investigators are always looking for fraud against it. If someone has a good case, the perps pay the investigator. And it also keeps the number of frivolous fraud suits down, because a frivolous fraud suit gets you nothing.

    Here we create a herd of patent lawyers who will invest their own money knocking down patents that are ludicrous and collecting bucks. Sometimes they'll get a nice payment from a simple letter that shows the holder that they will lose the case. Sometimes they will win big bucks when someone defends one of them.

    It also creates a liability for filing ludicrous patents, which (beyond filing costs) there is none now. It helps protect every major player who isn't using patents as offensive weapons. And another set of major players -- the patent lawyers -- have new ways to make money.

    To be fair to those holding patents the predate this rule, I would give holders one year to voluntarily void any patents they hold, but after that, all unexpired patents would be fair game.

    So what so you? How about we pay the lawyers to sue the lawyers to keep the pool cleaner?

    Community Session Tonight

    Posted by arnold on June 29, 2004 at 04:20 PM | Permalink | Comments (0)

    Tonight we'll get a look at several of the communities. Don't miss it. Jini, JXTA, Java Community Process, and java.net will all have a chance to give a whirlwind presentation (and prizes), and then you'll get a chance to corral folks about any one you're interested in. Question about JIni? Ideas about JXTA? Complaints about the Java Community Process Just come in, see what's up, get some food and drink, maybe win a prize, but most certainly find some real stuff out from the folks who are doing it.

    Culture clash on the platform

    Posted by arnold on December 16, 2003 at 02:38 PM | Permalink | Comments (2)

    Joel Spolsky, of "Joel on Software" fame has posted a new essay called "Biculturalism", which is a review of the book The Art of Unix Programming by Eric S. Raymond. (If you prefer bits to atoms, you can read the whole book online for free, Eric being a famous Open Source advocate.)

    [One digression: Follow that link to the book above. You will find yourself on a great website for books: Amazon Lite. It's Amazon without all the noisy fluff, and is where I go first now to buy books. Very sweet.]

    Joel is a pretty isightful guy, and I've spent too many hours browsing his essays, and I recommend it to you as well. This review has some problems (as I note in my Artima blog), but I like it anyway.



    MacHack

    Posted by arnold on June 18, 2003 at 08:49 PM | Permalink | Comments (2)

    I'm getting ready to give my keynote at MacHack. At midnight. That's the kind of conference this is -- the opening keynote is at midnight. I am assured that these folks will hang around for the talk, and that at previous conferences they have stayed for hours. I do not intend to take hours -- who has that much useful to say at midnight? Not me, for sure.

    The conference is based on actual programming, as the name might imply. The idea is to do actual things while at the conference. It runs 24/7 for three days, wireless everywhere, write something cool, share it around. More conferences should be like this.



    JiniFest

    Posted by arnold on June 12, 2003 at 03:08 PM | Permalink | Comments (3)

    Last night was JiniFest, which was a blast. JiniFest is what the Jini community does at JavaOne to have folks show what they're doing with Jini. Some are community projects led by interested geeks and others are commercial products. So while the Java community folks are doing boring (if important) process stuff, the Jini folks are having a party.

    Jini is generally the best kept secret of Java, and in that vein, The Powers That Be™ put JiniFest in the farthest possible room from the main area of the community event. You had to walk past empty rooms to find it. Not that this implies that some folks in Sun are putting Jini down, of course.

    The room, though, was crowded with folks doing fun stuff with Jini. If nothing else, we had the largest percentage of Brazilian of any event on the floor. There were around 30 community projects and companies with tables showing what they've been doing. Some have been with us since Jini was released, and others just went public. At least one company went from no Jini code to full product release in less than nine months, so it all happened since the last JiniFest.

    I can't possibly remember it all, and I don't want to play favorites. Some companies had Jini development and deployment tools, including some interesting hardware demos with stuff that looks like props from an Austin Powers film (that is, it looks like a spoof on 007 technology). Several companies had products using Jini to build systems, including financial and taxes to security. Some were so new they hadn't even started last year, and others are ongoing for some time. The projects were led by some folks who just had something they wanted to do.

    The first annual award for service to the community went to Bill Venners, who (among other things) runs artima.com. Bill has been doing the monthly FAQ postings, drove the first approved community standard, has been on the oversight committee since the beginning, etc. In other words: Well, duh, who else? Congrats, Bill.





    Powered by
    Movable Type 3.01D
  •  Feed java.net RSS Feeds