| « December 2009 | | Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|
| | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | | | | | | | | | | Today |
LINKS
CONTACT
Tom Marble's Weblog
template by
Helquin
|

Saturday December 16, 2006
Just In Time Collaboration
Of course many of us knew that yesterday was the last day for
the JavaOne 2007 Call for Papers. In fact I had submitted my "Performance Criteria for OpenJDK Contributions" talk proposal way back on Tuesday.
I've been talking with several the folks in the Free Software and Open Source
Java community about JavaOne including
Mark Wielaard (mjw),
Dalibor Topic (robilad), and
Geir Magnusson, Jr (geir)--
but they've been busy this week at
JavaPolis
(I was not able to attend, but I understand it was quite a good conference).
I've been thinking and talking a fair amount about getting to
community consensus around Java Policy for Linux
(agreeing on details like the filesystem layout, packaging interdependencies,
browser integration, developer guidelines, etc.) for some time.
Dalibor suggested that we do a session on this topic and so
I enlisted Geir and
David Walluck
(DavidW2)
to join me to propose a "Java on Linux" talk.
Ideally we would like to add some of the key packaging experts
to this talk as well, such as
nichoj,
overholt,
fitzsim,
jvw, and
doko.
Whom am I missing? Anyone else care to join in?
What was remarkable yesterday wasn't that I was chatting
with these guys and
Tom Tromey (tromey)
on IRC and
IM, but that
we actually went from the idea to having the proposal
submitted in a couple hours. An essential element to this
Just-In-Time success was Dalibor suggesting that we
leverage Google Docs to work out the abstract --
together.
I use often use various Google services, but I'm a little hesitant
to do so because of the
Terms of Service and the
Privacy Policy.
Nevertheless I must say that that the experience using
Google Docs was very impressive.
I've often wanted to edit documents collaboratively and I've known
about various hacks for doing this (e.g. OpenOffice through a shared
VNC session), but here I found not only the ability for multiple
people to edit the document at the same time, but also
a handy way to visually review the document revision history
(redlines colored by the user making modifications) and noticed
the menu options to export to many formats (e.g. HTML, PDF, OpenOffice, etc.).
Even though there are quirks (e.g.
the invite-your-friend-to-edit e-mails are not
RFC 822 compliant)
the service is an excellent collaboration tool.
While we were chatting Geir proposed doing a panel at J1
to get everyone together and talk about "What cooperation can lead to
and how to keep an environment that fosters collaboration, innovation and
compatibility." In a matter of minutes I was editing the
abstract with geir, mjw, tromey and robliad.
Amazingly the basic ideas converged quickly and I submitted the
talk to the CFP website (which, I am told, may continue
to work until Monday ). If we are lucky the "Java Libre Panel" will
get accepted and provide a lively debate next May!
I have never submitted talks to J1 in such a short span of time.
While it is awkward to switch windows from IRC, to Gaim, to Firefox
constantly (I need more pixels!) the result is clear: e-mail is
a last resort for collaboration. It's not obvious that having
a voice conference would have added much more efficacy to our work...
especially considering that we were spread out among something like 9 different
timezones and multi-tasking with other work and/or personal affairs.
Posted by tmarble
( Dec 16 2006, 09:54:16 AM CST )
Permalink

Tuesday July 25, 2006
Java Benchmarking Folksonomy
One of the hot topics in the Java Libre crowd is
around performance benchmarking and the tools and
infrastructure to be successful at it.
I've thought about how to represent the different components of the
story: from microbenchmarks to macrobenchmarks, load drivers,
test harnesses, statistics tools and results visualization.
Here is a fantastic space for Open and Free collaboration -- this
is a common need and we often end up reinventing the wheel.
Of course those that know me know that I'm big on collaboration.
A recent essay by
Larry Sanger defines Strong Collaboration.
This is a very important work in it's own right and merits the
time to read it and grok it [ with a cup of Java ;-) ].
For my purpose here I'm looking for collaboration on the components,
but also the meta information: how to find existing work and
avoid duplication of effort.
That's why organizing the different facets of benchmarking
cannot really live on a static web page and invite collaboration.
My first instinct is to grab a Wiki... but many people are shy
about editing Wikis and they are notoriously flat.
So as I'm trying to develop a collaborative taxonomony it seems
the logical approach is to hack del.icio.us as our
Open Source Java Benchmarking Folksonomy.
So after a little research I decided that everything in this
folksonomy will have the tags opensource java benchmarking.
Then additional tags can point to specific areas, such as:
- benchmark a benchmark
- microbenchmark a microbenchmark
- macrobenchmark a macrobenchmark
- suite a set of many benchmarks
- loaddriver a synthetic load generator
- harness a benchmarking script/program
- stats statistics calculation tools for benchmarks
- visualization tools for viewing results
- results publication of specific results
- article a review of benchmarking and/or tools
- index a directory of tools
So here it is: the Java Benchmarking Folksonomy
You can find all my sites with:
http://del.icio.us/tmarble/opensource+java+benchmarking
You can find all everyone's sites -- the public Java
Benchmarking Folksonomy at:
http://del.icio.us/tag/opensource+java+benchmarking
I have included links to the global entries in the folksonomy
(and my links in parentheses).
- benchmark (tmarble: benchmark)
One challenge I had right away is around the exact definitions
of microbenchmark and macrobenchmark. Another challenge is that
the japex project is really an infrastructure for creating
microbenchmarks. So right away we have some semantic challenges.
At least for starters I encourage you to check out the
Beware of Microbenchmarks! section of the
Java Performance Tuning White Paper.
- suite
(tmarble: suite)
Well, I'm in trouble again because suite could mean, literally,
that one benchmark is comprised of some very specific
sub-benchmarks. Alternatively it could be just a grabbag of
different benchmarks. I'll let this ambiguity remain for now.
- loaddriver (tmarble: loaddriver)
Sun has contributed nicely to this space of synthetic load generation.
- harness (tmarble: harness)
I'm sorry to say I haven't found a Free benchmarking Framework that
is a standalone harness. I'm sure every one of the suites has some
kind of harness, but I haven't found a generic one.
The value of a harness is outlined in Use a benchmark harness.
-
stats (tmarble:
stats)
Like the harness I haven't tagged anything here yet. This is tricky
because I'm sure there are some statistics tools in Java -- don't
know if there are any standalone packages (i.e. for calculating
the student's
T-Test). See also Use
Statistics. While looking at other's stats tags I found this link
which made me chuckle: Programmers Need To Learn Statistics Or I Will Kill Them All.
- visualization
(tmarble: visualization)
This is the fun part... actually using your inner Don Norman to
show people what the data says.
- results (tmarble: results)
As we get better at doing this benchmarking Libre I expect
we will see many more publications.
- article (tmarble: article)
Tag with article for whitepapers, reviews, columns and otherwise
human readable discussion on Java benchmarking.
we will see many more publications.
-
index (tmarble:
index)
And, of course, the whole concept of open collaboration is that
we are standing on the shoulders of giants. Use index to
tag other taxonomies on Java benchmarking.
Of course this is a first draft... Now your homework is to
add the Firefox
extension for del.icio.us so that you can tag in one click.
Then as you find relevant pages tag them as shown above and
voila the Java Benchmarking Folksonomy will grow
in parallel without every having to "publish" anything nor ask
for permission to "commit". How will you know if or
when anyone contributes? Add the
RSS
feed for the Java Benchmarking Folksonomy bien sûr!
There are bound to be more semantic
potholes so please comment here, drop me a line or find me
on OFTC #debian-java and let's collaborate!
Posted by tmarble
( Jul 25 2006, 02:13:15 AM CDT )
Permalink

Thursday June 29, 2006
Freedom to Collaborate
Building on Simon's Freedom to Leave
I would like to do an idea mashup
between the great visualization features we
have in Java,
community projects,
windowing environments
and development tools.
![[lg3d]](https://lg3d-core.dev.java.net/branding/images/lg3d-core/lg_snapshot-s.png)
Why shouldn't we be using Stereoscopic 3D
for more than gaming?
There are some very interesting Stereoscopic 3D heads-up displays
that are apparently realistic enough to provoke "projectile vomiting".
Imagine how this technology could facilitate distance learning and remote collaboration!
The challenge here, of course, is that our ability to leverage
the cross-platform advantage of Java breaks down at the hardware
level. In my experience the best graphics driver support for
Linux is from nVidia
(despite the drivers not being Free)
and apparently nVidia supports Stereoscopic 3D (hopefully this works in Linux -- and not just for Quadra cards).
It's a shame that the 3D Visor only supports Windows (too bad
for Linux and Mac OS users) and has seemingly redundant analog
and digital cables to the computer. Does anyone know of a solution
to this problem -- or alternative display options?
This a great opportunity for the patrons of Free
technology to sponsor Open Source Hardware!
I'll have to suggest that to Warren Buffet
Posted by tmarble
( Jun 29 2006, 09:01:31 AM CDT )
Permalink
|