The Source for Java Technology Collaboration
User: Password:



Roger Brinkley's Blog

Community: JavaDesktop Archives


500 Projects is Enough

Posted by brinkley on October 30, 2006 at 06:57 PM | Permalink | Comments (1)

The JavaDesktop community has just hit 500 projects. That's an awesome accomplishment for any community and a milestone worthy of a change. So with 500 projects under my watch I'm turning the community leadership reigns over to Jeff Dinkins, my silent sidekick for the last four and half years, and Hans Muller.

It has been great to work in one of the most vibriant communities in java.net. We have the highest readership on our community page by a factor of ten. We have the second highest number of projects and before the big boys from Glassfish and the JDK comumunity came on board, the highest number of projects in the top 10.

But don't think you can get rid of me that easily. I'm still going to be involved in java.net as the community leader of a brand new community that within three years I hope will rival the Desktop community. I can't tell you anymore at this point in time other than wait another couple of weeks to see a community that will combine both application and platform developers in a community that will provide the same one stop shopping that JavaDesktop has done for the client...Whew...I get the shakes just thinking about the possibilities!

Mustang Blog Carnival One Delight After Another

Posted by brinkley on February 16, 2006 at 06:03 PM | Permalink | Comments (3)

As this effort appears to be a duplication of effort with Mark Reinhold's Mustang Beta Blog Carnival blog I have removed the content and refer the readers to his blog at http://weblogs.java.net/blog/mreinhold/archive/2006/02/mustang_beta_bl.html.

Why the JEditorPane is important to the JavaHelp ContentViewer

Posted by brinkley on November 22, 2005 at 01:06 PM | Permalink | Comments (4)

In the original design of JavaHelp there was an emphasis on using Swing components. One of the major components in any help system is the content viewer. In JavaHelp, the content viewer is based on the JEditorPane and specifically the HTMLEditorKit and the TextEditorKit for rendering documents.

This dependency has been, according to several, the major drawback in using JavaHelp. While browsers continued to enhance their rendering capabilities with HTML 4.x support, Cascading Style Sheets 2.x support, XML, XHTML, and plugins, the JavaHelp ContentViewer continued to use HTML 3.2 tags and simple CSS 1.0 support. Rendering improvements were made over the years and a meaningful presentation could be authored but the capbailities were less than desireable for some authors.

The Java Client Group is now looking at planning for the Dolphin release and is very much interested in making changes to the text handling packages in the JDK release. They have a survey where they want to know what text rendering features are most important to you and in the JavaHelp context this means you, the help author.

Specifically, they want to know the importance of:

  • HTML 4.x and CSS 2.x
  • XHTML 1.x and CSS 2.x
  • XML and CSS 2.X
  • Look and feel consistency
  • Printing Support
  • Native browser rendering
  • Using custom rendering
  • JavaScript support

This is a rare opportunity for the online help authoring community to participate in the development of the swing text components and I urge all help authors, even if you don't use JavaHelp, to take 15 minutes of your time to fill out the survey. The future plans of JavaHelp and what content rendering capabilities are available depends on this survey. Your input as a help author is invaluable and unique in the industry. I'm hopeful that many of you will participate.

JBidWatcher snipes

Posted by brinkley on September 08, 2005 at 09:38 AM | Permalink | Comments (1)

I admitted it, I'm a ebay sniper. Those ebay buyers that step in at the absolute last second and take the bid away from perspective bidders. Until recently I would watch individual items as the ending time approached. It got so bad that I would even use my cell phone for those have to items. But no more, I've been liberated.

Last week Best Buy did me a "favor" and reduced that LCD HDTV set $600.00 which immediately turned into a purchase. Of course this meant that all the satellite equipment had to be upgraded and not just upgraded but expanded. I needed a new HD receiver, gramma wanted her own receiver, the LNBs had to be upgraded, and the legacy system needed an adapter to work with the new LNBs. I could have called my satellite provider and had them install everything but that would have cost me a lot more than the $600.00 I saved. Besides, I installed the original system myself so why not do the upgrade. All I needed was the parts and ebay was the place to go.

Once on ebay I realized that it was time for some good sniping software. Google searches revealed several interesting offers. Wow, for $9.95 a month I can have all the snipes I want. $9.95 are you kidding? If I didn't install the extra line in gramma's room for 4 months you think I'm going to spend $9.95 a month just to snipe?

Then I found JBidWatcher. JBidWatcher is a free open source project currently developed on Source Forge (sigh). As the JavaDesktp Community Leader it had immediate appeal. It was FREE, it was a Java client, I could run it on my own machine(s), it was FREE.

I first tried running it on my windoze laptop. Unfortunately, the VPN network connection was like a yo-yo. The prospect of losing a bid because the network disconnected was not acceptable so I moved the jar file to a Unix box connected directly to the network. What do you know, write once run anywhere actually works. The new software was up and running in less than 20 seconds. The interface changed slightly because I running on a Unix platform but it was still the same ole application.

I was psyched. The interface was easy and I no longer had to be home to place those last minute bids. I also discovered a really useful tool called multi-snipe. In a multi-snipe you place a max snipe bid on several items. Once you get one of the items all the other snipes are canceled. I sat down and culled the ebay list of HD receivers I was interested in to about 5 entries that were closing that night. Set my max price and went up for dinner.

I checked the progress a couple of times. After all, this is software and anything can go wrong and usually does. Lost the first two bids by $2.50 when earlier bidders set their max bids slightly higher. The snipes worked, I just wasn't the high bidder. Drat!!! At the end of the night I had nothing. I had lost two bids and other 3 were above my max when the snipe would have executed. So I loaded up another set of acceptable entries and tried again.

The neat thing about the multi-snipe feature is that you can add another item. Select it along with the other multi-snipe items, press the multi-snipe button and walla, it's added to the multi-snipe. The addition saga continued until the 10th try when JBidWatcher sniped in with 10 seconds left to take the bid for $7.50 less than my max. I got the lowest priced HD receiver that week and it was $250.00 less than retail!!! Same results with the other items. In the end I found every item either at or below my max bid.

The Java client JBidWatcher was exactly what I needed. Now if I could just get the author to move the project from Source Forge to the JavaDesktop Community it would be nirvana. :)

When 12% is really greater than 50%

Posted by brinkley on August 26, 2005 at 10:39 AM | Permalink | Comments (4)

When the 2005 WritersUA Skills and Technologies Survey initially was published a coworker forwarded me the results showing JavaHelp with a 12% of the respondents saying it was valuable or invaluable to them. I didn't understand at first why he was so excited. I mean after all if the number had been 13% I would have been rejoicing since that was the number I wore in my athletic days. No superstition here. But a 12% share that's nothing special, especially when HTML Help has a 55% share.

But further analysis shows this 12% is actually more like 50% and in fact is almost the same share of the market that HTML Help has. Take a closer look at the survey and in particular the platform section. Java users only make up 22% of the respondents where as Windows is used by over 95% of the respondents. That means that JavaHelp has 54% of the java users and HTML Help has 57% of the Windows users. That's a significant share of the market.

I believe that in the next year that this number will move higher for a couple of reasons.


  • The use of the Java client for rich client applications is increasing. Recent Evans Data for 2005 shows the Java Client increasing from 37% in 2003 to 39%. While this isn't a significant increase it shows a forward movement in Java Client development. And it does make me wonder where the other 17% of the Java developers are in this survey.

  • We've made some technical enhancements to improve the product. The latest release provided support for GTK look and feel and the capability of using alternative content viewers. The later is probably the most important as help authors now have the option of using a native browser or alternative browser like those available for Chimsaw and IceSoft.

  • JavaHelp is being used in non traditional environments. Within Sun JavaHelp is the base platform for help in the Java Desktop System operating system including the Solaris 10 desktop, also in all of Sun's server based products as well as the traditional Java Client products like Netbeans. This demonstrates the variety of uses from Java Clients (our traditional use), to java server based applications, to Unix based native applications.

If you haven't considered JavaHelp in while maybe it's time to take another look. I'm sure that by next year the percent of users will increase significantly. I'm thinking a lot more than 13% for next year. Not that I have any superstitions about the number 13. ;)

Roger Brinkley
JavaHelp Engineering



JavaDesktop Community tops 200 projects

Posted by brinkley on January 25, 2005 at 11:20 AM | Permalink | Comments (0)

I am pleased to announce that the JavaDesktop community has just surpassed the 200 mark in community projects. We are the second largest community in java.net in terms of projects and surpassing the 200 project milestone in a 20 months is quite an achievement.

What excites me the most about the 204 projects is the distribution of the projects between incubator, linked, and full fledged projects. Of the 204 projects 71 or 35% are incubator projects. That is an outstanding percentage! Incubator projects start out with just and idea from a javadesktop developer. Some projects will fail to materialize and others will be promoted to be javadesktop community projects. To date 8 projects have graduated from the incubator to become javadesktop projects. I would like to see more incubator projects started this year. If you have an idea for a new project go to the java.net home page and click on "Request a new Project". We'll help get you started.

Another key type of project is the linked project. Linked projects are hosted on another site but still wish to affiliate with the JavaDesktop community. Currently there are 23 projects or 11% of our projects which are linked projects. If you have and externally developed project that you'd like to have linked to the JavaDesktop community just send a email to community_leader@javadesktop.org and I'll send you back details on how to become a linked project. Be sure to provide the web address of your project.

For those that have been counting, we have 108 full fledged projects in the JavaDesktop community. This is 52% of the total projects. Of those 108 projects 12 projects have downloads, other than source code, available for your use. The variety of projects range from developer tools like layouts and look and feels to full blown applications. Some projects are run by the biggest names in Java development and others by newbies that are just getting their feet wet. There is something for just about everyone.

Finally, I'd like to thank all of the project owners and developers for making the JavaDesktop community a successful site and reaching the 200 milestone and I'm looking forward to having 300 projects by Christmas 2005.

The way cool relative

Posted by brinkley on December 06, 2004 at 10:29 AM | Permalink | Comments (2)

This weekend three of my cousins came to the house for an afternoon visit. Mostly they wanted to see their aunt and uncle who are now living at our house. It was the normal family thing. The cousins were talking way and their kids had no idea who I was or why they were there. After all I hadn't seen any of them since 1982. Then out the blue the 17 year old son of one of my cousins looks at me says, "Do you work on Java?". His dad quickly piped in, "Can't you tell from his shirt?". I was wearing one of the Java.Net T-shirts.

Generally I try to keep things simple at this point. I said I was the JavaDesktop Community Leader and the lead engineer on JavaHelp. After a few more questions he asked, "Do you have any Java T-shirts?". As it turned out I had a couple of Java.Net and JavaHelp T-shirts.

As I gathered the shirts he starting asking more and more questions. At one point he asked if I could teach him Java. While I declined, I did tell him that if he was interested he should learn because the Advanced Placement test for Computer Programs was now based on Java instead of C++. We talked a little more about the differences between Java and C++ and other advantages Java has over C++. I also pointed him to the java.net Games Community since that is where his, and probably every other 17 year old developer, interest was.

After a quick tour of the Games Community and the Java3D project he turned to his dad and said, "Dad, you never told me we had any way cool relatives!".

Everyone laughed but I have to admit it's pretty satisfying to know that the work you're doing is viewed by a 17 year old as making you the "way cool relative".

JavaHelp V2.0_02 New Features

Posted by brinkley on November 04, 2004 at 10:22 AM | Permalink | Comments (3)

I've been looking for a good topic to start my blog and I finally found one. While most people in the JavaDesktop Community will recognize my name as the JavaDesktop Community Leader, I have a another job at Sun as the lead engineer on JavaHelpTM software. It's a project that I've been involved with since inception and greatly enjoy.

Yesterday Sun released JavaHelp V2.0_02 for general use at the java.sun.com javahelp website. This is generally speaking an bug fix release but there are couple of new features in this release that are worth noting.

Alternative Content Viewer Support

In this release developers now have the option of using an alternative content viewer. Additionally, support for the JDIC native browser is built in. While support for the JDIC native browser is built in, the developer will need to properly install JDIC before it can be used. However once installed properly a simple method call, illustrated below, will cause the native browser to used.


    import javax.help.SwingHelpUtilities;
    ...
    SwingHelpUtilities.setContentViewerUI
        ("javax.help.plaf.basic.BasicNativeContentViewerUI");

Alternative content viewer developers are encouraged to develop alternative content viewer user interfaces. Using the source from BasicNativeContentViewerUI I suspect it will take developers no more than 30 minutes to an hour to provide support for alternative viewers. I've include a list of changes below to help simplify the integration.

  1. Change
    
        import org.jdesktop.jdic.browser.WebBrowser;
    
    
    to import your viewer instead of the JDIC viewer.

  2. Change "WebBrowser" in the following line
    
        private WebBrowser html;
    
    
    to use your content viewer class. Keep the "html" variable name as it is used throughout the code and will help isolate the additional changes
  3. Change the JDIC instantiation method
    
        html = new WebBrowser();
    
    
    to your instantiation method.
  4. Change all the "html" method calls to your own. With any luck they will be the same. Specifically review the following calls:
    • getAccessibleContext()
    • setDebug(boolean)
    • setURL(URL)
    • refresh()
  5. Provide support for the following propertyChangeEvents if your viewer supports them.
    • font
    • clear
    • reload

Finally, at the current time we won't be able to handle highlighting of search text. At some future time that support will be available at which time a change to hightlightsChanged will be required.

All in all this should make integration of alternative content viewers easy for either content viewer developers or application developers.

GTK Look and Feel Support

In previous releases we only had support for one Look and Feel. Generally this wasn't a problem because we used the look and feel from application as it applied to Swing. The only real look and feel item was our images which remained consistent for each look and feel. With this release we have provide support specifically for the GTK Look and Feel and are using images that are consistent with the GTK Look and Feel. To activate the system look and feel your application needs to set the UIManager to the system look and feel as show below:


    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

Displaying Help on Multiheaded Systems

While this generally isn't a problem for most users as help will be displayed on the head that the application is running on, there was a need to provide the ability the display online help on a specific screen. With that in mind the following APIs have been added to provide multiheaded support

  • public void HelpBroker.setScreen(int)
  • public int HelpBroker.getScreen()
  • public void WindowPresentation.setScreen(int)
  • public int WindowPresentation.getScreen(int)

General Availability

Finally, in Solaris 10 and on the next major release of the JavaDesktop Operating System JavaHelp will be installed by default. It will no longer be necessary to install the Solaris JavaHelp package or the JDS JavaHelp RPM on those operating systems. However, because JavaHelp is still independent of the JRE it will be necessary to reinstall the packages if a new JRE or JDK is installed on either Solaris or JDS. It's an unfortunate consequence resulting from the recent ability to have multiple JREs.

Concluding Thoughts

This release is really taking a major step forward in the presentation of online help. If you have any questions about these new features you can ask them in the JavaHelp section of the JavaDesktop Forums.



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