The Oxford English Dictionary was produced through a community effort, with thousands of people sending in slips of paper noting the first occurrences of words in books; these references formed the basis for the OED's historical definitions.
We think of creativity as an individual talent, but communities can be creative, too. And the sorts of things a community can build are considerably larger than those an individual can. There are many examples. Cathedrals in the Middle Ages were built by a long-lived community of builders, artisans, carpenters, sculptors, stone cutters, woodcutters, ceramics makers, glass makers, painters, and ordinary people working as laborers, based on a model created by an architect perhaps decades earlier, but inspired by a common vision of what that cathedral will be.
Programming languages have been defined by widely dispersed communities using email and similar tools. Linux -- itself a cathedral-like project -- has spawned tens of thousands of other projects, some adding well-known pieces to Linux and others stretching the imagination or bringing to Linux functionality once found only elsewhere. The software patterns community was self-created without any support whatsoever from funding agencies or corporations; similar stories are true of the Agile and eXtreme Programming communities. These are all highly influential and widespread communities now.
The vision of java.net is to build a self-creating and self-governed web place where communities can join together -- either loosely through federation or tightly by living on java.net -- to build something like a diverse city of diverse communities, individuals, and companies who are engaged in using the Java language and technology in both routine and innovative ways. The purpose is to bring people together to increase the density of triggers so that new markets and resources are created.
My conception of java.net was influenced by the book The Rise of the Creative Class, by Richard Florida. In it, he talks about what makes a city a center of innovation and creativity. In essence, it's a place diverse with people engaged in creative activities and imbued with tolerance for that diversity:
Creative people ... cluster in places that are centers of creativity and also where they like to live. From classical Athens and Rome, to the Florence of the Medici and Elizabethan London, to Greenwich Village and the San Francisco Bay Area, creativity has always gravitated to specific locations. As the great urbanist Jane Jacobs pointed out a long time ago, successful places are multidimensional and diverse -- they don't just cater to a single industry or a single demographic group; they are full of stimulation and creative interplay. -- The Rise of the Creative Class, Richard Florida
We can build a community around using, doing research on, learning about, and teaching a language -- a community built for the purpose of stimulating innovation and creativity. Companies sponsor conferences and workshops, computing societies such as ACM and IEEE hold scientific and technical conferences, and there are user groups, courses, FAQs, and other sources of information for people trying to solve problems. But for most languages and platforms, there isn't a single, easily located place to visit to answer all of one's questions. This is an experiment that has never been done, as far as I know.
The Java language is a pretty good language, and as its use spreads and libraries are added for it, it has the possibility of providing a uniform platform powerful enough to accommodate most of the computing and information work we need to do over the next decade or so. To do this, we need to have an extensive portfolio of "stuff" for people to work with -- frameworks, libraries, course materials, documents, tutorials, applications, source code, tools, lists of consultants, methodologies, and support forums. These will all appear in their own good time based on the needs of the overall community, a community somewhat scattered across separate companies and projects or isolated as individuals. How much faster would these resources be created if there were the equivalent of a great city dedicated to the Java language and platform?
The poet Richard Hugo, talking about how poets go about writing poems, suggests that the key to poetic creativity is a thing he calls a trigger, a stimulus from the outside that, when combined with other triggers and a person's own knowledge and background, produces new material. Another way to look at it is that a person surrounded by a diversity of triggers will be highly creative. This is certainly true of emerging and thriving markets where the presence of competitors and strong customer interest spawn new products, improvements, and innovations.
Java.net will eventually have the best community-related and artifact-building tools available: wikis, weblogs, all of the open source tools, mail lists, forums, reputation, web publishing, and news feeds. People will be able to come to java.net to work on things, find things, ask questions, and participate.
To me, the most important ingredients for a great community, aside from diversity, is self-determination and self-governance. Communities joining java.net will be able to keep their existing governance structures, and the overarching java.net governance is lightweight, with its evolution under the control of the java.net community. The tools at java.net will grow with the needs of the community. Initially, the infrastructure will be limited by the toolsets that have been chosen, but the goal is to choose how to move forward based on the evolutionary path the community chooses.
News is important to a great city -- news both about global events and about itself. Java.net will have a newspaper and perhaps a magazine edited by a neutral editorial staff, providing news from each java.net community and the rest of the Java technology world. I hope that java.net will become a place so thriving that news of what's going on there will be syndicated in other venues. There will be an Editorial Advisory Board consisting of respected individuals that will oversee the creation and neutrality of editorial content and make recommendations about how the editorial portions of the site should evolve and what directions the editors should consider. The nice thing about the virtual world is that the laws of physics (and common sense) don't apply. Though many cities around the world would love to have part of a special Arrondissement transported to their city limits -- I like the 4eme, though the 5eme and 18eme are classic favorites I appreciate -- it's not going to happen. But in the virtual world, it's entirely feasible for a community already thriving somewhere on the Web to join java.net, bringing its own unique complexion and texture while taking back something from java.net. Ideas like steel and flint striking each other spark off new ideas that need only a patch of char and some tinder to take off.
Although not part of the design or mission, Java.net allows the engineers who create the components that make up and enable Java programming to observe those who use their creations. By watching folks making a go of it using Java technology and talking about their experiences on java.net, the designers of Java tools and framework, standard libraries, and even the language and platform itself can learn what is needed to move things forward. Reports from the front don't take too long to arrive because the front is nearby -- well, it's just a click away. Maybe those designers will learn something and turn the experiences of the people in the trenches into good changes, and just as they once opened up the magic technology bag that held things like automatic memory management, they will open it up once more or several times more to help make the task of software development a joyful one, as it should be.
Richard P Gabriel is chief scientist of a small laboratory at Sun Microsystems, President of the Hillside Group, and the CEO of Dream Songs, Inc.
Embedded Java community
2003-06-12 16:27:19 tkosan
[Reply | View]
What is the difference between a java.net community and a java.net project? On the left sidebar I see links to various Java communities and I would like to know how to start an Embedded Java community.
Thanks,
Ted
Embedded Java community
2004-06-10 18:40:59 jbob
[Reply | View]
To paraphrase, "what is the difference between a community and a project?"
That's a very interesting question and as simple as it sounds, it winds up to be a complex discussion.
We are trying to come up with a clear distinction between the two and it's likely to involve some measures of size and activity.
Is Netbeans a project or a community? Both, probably, but that answer does not help this exercise.
We'd love to here some input on how others define a "community" and a "project" and how to make a distinction between a very large project and a community.
To answer your second question, we are establishing a process for requesting a new community and that will be made available shortly.
Integrate Sun Java Forums?
2003-06-12 11:28:57 nat101
[Reply | View]
Will there be an integration with the current Java forums over at java.sun.com, or a consolidation, or will both continue as different entities?
thanks;
-nat
PS. About that other (jBoss) post...When you are famous, you have to take some heat...
Integrate Sun Java Forums?
2003-06-12 11:49:23 rpg
[Reply | View]
The initial thinking was that most of the java.sun.com material was aimed at learning Java while java.net is aimed at people already relatively expert. Integration could be in the cards if it makes sense to the participants.
Integrate Sun Java Forums?
2003-06-12 21:33:05 efliski
[Reply | View]
Well, how about JCP? That's for the experts for sure...
Does this vision include SWT, JBoss and Eclipse?
2003-06-11 05:06:12 ahornby
[Reply | View]
They are where a lot of the energy and vitality of open source java can be found today.
SWT in particular raises the possibility of resurrecting client side java.
Does this vision include SWT, JBoss and Eclipse?
2003-06-16 03:48:52 bpmurray
[Reply | View]
This is ridiculous. If java.net is to work, we need to at least be polite to one another. Baldly stating that IDE/Widget set/Religion/Race A is better than IDE/Widget set/Religion/Race B is simply stupid. I actually prefer to use vi as an editor, but I'm not so silly as to state that all other IDEs/editors are rubbish.
We need to have some guidelines - remember, we're all on the same side here, so play fair. I'd suggest that the guidelines be simple and straightforward, something along the lines of:
1. If you criticise something, you *must* rationalise your criticism.
( You may not state that something is bad without explaining why you believe so.)
2. Do not use language that others will find offensive.
(Stating that Eclipse is "shit" has the dual effect of making the person who says that look incapable of expressing him/herself in rational terms and, at the same time, scares off some potentially valuable contributors who are offfended by vulgarity.)
As a response to those who have criticised (if that's what some of the comments can be called) Eclipse (and its SWT), the reality is that there are millions of professional, clever, constructive and productive users of that product. No matter how much *you* dislike it, it's clear that very many people have found it to be valuable in their everyday work. Its uptake and industry backing mean that it must be taken seriously, and it's pointless trying to exclude it from any Java disucssions.
All products that use Java have a place in this site, no matter if they have originated in Sun, IBM, OTI, Borland, BEA, or even Microsoft. Yes, if there are merits in J#, we should discuss *reationally* if these deserve inclusion in some future Java-based technology, and not simply refer to it with expletives.
I don't think it's fair to imply that there is a "wrath of Sun" to be worried about on java.net.
In our short history, I can't think of a single circumstance where a topic relevant to Java was off limits.
Does this vision include SWT, JBoss and Eclipse?
2003-06-12 12:32:46 rpg
[Reply | View]
While designing java.net we talked about SWT, JBoss, and Eclipse a bit (I'm sure this is a surprise). Personally, I love a good debate, and I would like to see a polite discussion take place at java.net about these groups/technologies. SWT and JBoss raise issues related to what to do when a community predicated on compatibility is split over what's the right way—and perhaps there are also issues surrounding how to evolve standards over time. Steele's "Growing a Language" is relevant, as may be my "Mob Software" essay.
The vision we're commenting on is my vision for java.net, and in that vision there is plenty of room for other voices.
Does this vision include SWT, JBoss and Eclipse?
2003-06-11 10:57:06 swapnonil
[Reply | View]
1.SWT No becoz it is the wrong direction.
2.JBoss, No bcoz those guys are too complicated for www.java.net.
3.Eclipse: That's a shit IDE. Wake up to Netbeans and IntelliJ my dear friend.
Does this vision include SWT, JBoss and Eclipse?
2003-06-12 04:38:51 philwebster
[Reply | View]
Come on, you can do better than that!
1. What exactly is SWT's direction, and why is it wrong?
2. What is so complicated about JBoss, and why does that exclude them from the java.net vision (whatever THAT is...)?
3. What is wrong with Eclipse? What makes NetBeans better?
Just making assertions doesn't encourage community discussion. Give reasons so we can discuss your points.
Stating 'X is shit' or 'Y is wrong' is almost meaningless. It's essentially like saying 'I dont like X and Y, so there'. It comes across as entirely subjective, and provides us with no foundation for discussion.
It's also a very hostile way to behave, and certainly does not encourage a community spirit to develop around the Java platform.
Does this vision include SWT, JBoss and Eclipse?
2004-06-10 05:06:00 jwenting
[Reply | View]
1) SWT is IBM and not natively platform independent (iow, relies on platform specifc APIs for rendering).
The first is reason enough, the second is sacrilege.
2) JBoss is overly complex, not nice people, etc. etc. plus they're a competitor.
3) Eclipse is in competition with Netbeans and more importantly Enterprise Studio. It's also endorsed by IBM and refuses to have itself merged into the fold of Netbeans which is sacrilege.
I agree that the statement "Eclipse is crap" is extremely hostile (quite besides being untrue).
Personally I prefer Eclipse to Netbeans any day because it's easier to use, performs better and doesn't have feature bloat in areas I don't need.
Does this vision include SWT, JBoss and Eclipse?
2003-06-12 10:41:21 swapnonil
[Reply | View]
You See,
The original question really poked fun at the article, so I thought I might as well give it back to this guy. In the process, I have probably gone overboard, so I do tender my sincere apologies.
Does this vision include SWT, JBoss and Eclipse?
2003-06-15 07:44:40 chatterj
[Reply | View]
Good community manners on the apology!
But, you still didn't answer the question on stating the basis of your opinions on SWT, JBoss and Eclipse. Those three pieces of OOS SW have garnered a huge amount of developer/user mindshare and they deserve, at a minimum, their due place in any Java community.
Does this vision include SWT, JBoss and Eclipse?
2003-06-11 14:29:00 balteo
[Reply | View]
Eclipse is a top IDE and I'd really recommend it.
Does this vision include SWT, JBoss and Eclipse?
2003-06-11 12:41:59 gurkha
[Reply | View]
Huh?!? Eclipse is a shit IDE? What gave you that idea? Are you mentally challanged?
Does this vision include SWT, JBoss and Eclipse?
2004-06-10 08:53:29 zander
[Reply | View]
| Huh?!? Eclipse is a shit IDE? What gave you that idea?
| Are you mentally challanged?
Now, now...
Eclipse breaks loads of usability ground rules and has only made my life miserable every time I needed it.
It really really really sucks in the usability department; dialogs use too technical terms; choices made can not be undone without restarting the project and SWT is just plain ugly under Linux.
I could probably write 50 bug-reports on the tool; but the project only seems to get worse usability wise so I'm pretty sure that won't help.
This post is just an overdone "mee-to" post; but the parent deserved that :)