The Source for Java Technology Collaboration
User: Password:
Register | Login help    

Search

Online Books:
java.net on MarkMail:


Joshua Marinacci

Joshua Marinacci first tried Java in 1995 at the request of his favorite TA and never looked back. He has spent the last ten years writing Java user interfaces for wireless, web, and desktop platforms. After tiring of web programming at a certain home improvement retail center, a wireless carrier, and a document management company he joined the Swing team at Sun to finally get back to into high quality user interfaces. Joshua recently co-authored O'Reilly's Swing Hacks with Chris Adamson. He also leads the Flying Saucer open source project and helps out with JDIC and SwingLabs. Joshua holds a BS in Computer Science from Georgia Tech and recently moved to San Jose, California.
 

Articles

Ed Ort interviews Josh Marinacci in this java.net Community Corner 2009 podcast, recorded at JavaOne. Josh talks about his work with JavaFX and the new Java Store.
Having introduced SwingLabs' JXMapViewer and JXMapKit in a previous article, Joshua Marinacci puts these components to work by showing how you can bring in geographic data from external sources and use Painters to create custom geodata GUIs.
Mapping is a common feature of many applications, and a new component from SwingLabs makes it easy to add maps to your Java GUI application. Joshua Marinacci shows you how to adding maps to your Swing app can be as simple as dropping a JXMapViewer component into a NetBeans layout.
Generating PDFs used to require proprietary and/or difficult-to-use tools, but the combination of the Flying Saucer XHTML renderer and the iText PDF library makes it easy to generate PDFs from a variety of markup formats. Flying Saucer founder Joshua Marinacci shows how it's done.
Continuing his introduction to the EJB 3 Java Persistence API as seen by the desktop developer, Joshua Marinacci shows how to put together a complete and fairly sophisticatedaddress book program, with one-to-many relationships, useful inheritance approaches, and other powerful techniques.
The EJB3 Java Persistence API may have been meant for enterprise developers, but there's no reason that desktop developers can't use it. Joshua Marinacci shows how a lightweight combination of Hibernate, HSQLDB, and the JPA can make saving address book entries a snap.
Challenged by the complexities of GridBagLayout and the ugliness of wiring all of that GUI layout code into your application? SwiXml offers an alternative: declare your GUI in XML markup and let SwiXml wire it up to your application. Joshua Marinacci shows how it's done.
Java Web Start offers new solutions to old problems of distributing J2SE applications to end users. In the second installment of his look at JWS, Java Sketchbook columnist Joshua Marinacci looks at the JWS sandbox, options for getting out of it, speeding up downloads with Pack 200 compression, and...
Desktop developers have long desired a more practical means of deploying applications than just dropping files on a client machine and expecting the user to do a java -jar, or a script/batch file equivalent. Java Web Start addresses not only this user experience problem, but also helps with...
Joshua Marinacci continues his investigation of Java Desktop Integration Components (JDIC) with a look into the SaverBeans API, which allows you to create Java-based screensavers.
It hasn't been easy to create a Java desktop application that goes beyond look and feel to actually do things native apps do--register file associations, communicate status via a tray icon, use the platform's browser, etc. But as Joshua Marinacci reports, JDesktop Integration Components may change...
Programs that expose themselves to programming by the user are few and far between--an Emacs Lisp macro here, an AppleScript-able Mac app there. It's a pity, since scriptability gives users great power. With Java, embedding JavaScript as a scripting language is pretty easy. Joshua Marinacci...
HTML is everywhere; not just on the Web, but as a styled-text and hyperlinking standard for help systems, online stores, email, and many other applications. For these many needs, there are many Java-based HTML rendering toolkits. This second part of Joshua Marinacci's series looks at the...
HTML is everywhere; not just on the Web, but also as a styled-text and hyperlinking standard for help systems, online stores, email, and many other applications. And for these many needs, there are many Java-based HTML rendering toolkits. Part 1 of Joshua Marinacci's two-part series looks at the...
Java's imaging APIs aren't just for desktop applications anymore! In this article, Joshua Marinacci looks at how servlets and JSPs can use the Java2D graphics API to create on-demand graphics for web users.
Joshua Marinacci built a distributed system for storing, searching, and updating small pieces of information. In this installment, he shows how to build an attractive thick client with Swing.
Joshua Marinacci wants to build a distributed system for storing, searching, and updating small pieces of information. In this article, he shows how Java-friendly standards like XML and HTTP will make up the foundation of his BrainFeed web application..
Swing applications don't often feel or behave like native apps. It doesn't have to be this way. Joshua Marinacci's three-part series concludes with polishing touches such as desktop icons, file selectors, and splash screens.
Swing applications don't often feel or behave like native apps. It doesn't have to be this way. Joshua Marinacci's continues with a look at providing double-clickable executables and filetype associations.
Designing a tag library for programmers is one thing; designing it for non-programmers is quite another. Joshua Marinacci shows off three tag library redesigns and how they make life easier for his target audience.
Swing applications don't often feel or behave like native apps. It doesn't have to be this way. Joshua Marinacci's three-part series begins by improving an app's appearance and menus, and offers a way to get attention via the Windows taskbar and Mac OS X dock.
Just as CSS allows you to maintain a consistent look across a complex web site, you can use the same technique to achieve this consistency across many screens in a complicated Swing application.

Weblogs

Some of you may have seen the five things you don't know about me meme going around. The idea is that someone tags you, you post to your blog five interesting things that people don't know about...

Well, the new year has come and my vacation is over. I the last three weeks I gave a way a bunch of projects, released the...

You may get several Christmas presents this year so I'd like to give you all mine first. Best to be early than late and forgotten. :) You can scroll down to the screenshot and link if you want,...

I've been so busy with NetBeans 6.0 work that I haven't commented at all on NetBeans 5.5. We just went final about a month ago and had a big party in Prague. 5.5 is a big release, though most of...

Last week's project

So far the response to my free projects has been positive. There was a question about why I put the strange requirement of having to create a project to get the code...

The Stacked Image Editor

The Stacked Image Editor is a little program I wrote and posted on my...

Screen Capture Uploader

The Screen Capture Uploader, released under the ominous name of Big Brother, is a simple program that runs on your desktop taking screenshots every...

Posting from 30k feet over north eastern Canada

Yes, I'm flying back from Prague today and we have wifi here on the Lufthansa aircraft. It's both expensive and power draining but...

I have often said that I don't love Java because I'm at Sun. I'm at Sun because I love Java. I love Java so much that I wanted to work at a place where I can do the most good for the Java...

After a several hour trek through Prague Castle and the Cathedral I arrived back at my hotel with around 400 photographs. It's going to take a while to go through them but here are some highlights...

Greetings from Prague. I've been at Netbeans for about two weeks now and it's been quite a busy time. I think I'm really going to like it here. Everyone is very friendly, the city is beautiful,...

The following is a techtip I wrote which wasn't used. Since I turned out pretty well I thought I'd post it here. Let me know what you think. Would you like more of these small self-contained tips...

If there is any other Java people living in the Prague area who would like to go out for dinner, drinks, or do some general site seeing then just let me know. I'm going to be here for three more...

It's true. I'm leaving the Swing team. But don't worry, I'm not leaving Sun. I'm joining the Netbeans team, flying to Prague, moving to Oregon; oh, and I'm getting married!

I...

Thanks to the hard work of several teams inside Sun (the development, testing, integration, and approval teams) combined with the persistence of the outside Java community, I am happy to say that...

Short short version:

map_not_awesome.png
Not Awesome

...

I just read this. The last patent on the GIF format will expire on Sunday (October 1st, 2006). At long last the GIF format will be free...

Introduction

Welcome back. Last week I introduced a cool new technology we've been working on in SwingLabs, Painters, and described how they work. If you missed...

I don't usually blog on non-Java topics here, but I thought I'd make a mention of how Windows Vista is improving.

One of the temptations of design is to not show your work until it's ready. Not until every edge is smoothed and every bolt is tightened should anyone be allowed to see it. While this might be...

One of the great things about my job is that I get to go speak to customers and other groups of Java developers. Even more amazing than the fact that Sun pays me to do this is that people actually...

In response to my Meet the Engineer interview on Sun.com a reader asked for the source to my magnifying glass component (originally...

Yes the best is yet to come, and won't it be fine...

Welcome back to the Windows Look and Feel Show!

In this segment we'll dive right into some of the bugs directly. In this series I won't cover all of the bugs because some of them...

Coming soon! Hard hitting, action packed, and full of effects you probably never asked for.

It's Painters Extreme!

Okay, so maybe making a Painter trailer isn't such a...

So you have probably wondered where I've been. It has been quite some time since my last post and I have been very lax in talking about what's going on. Well, the big news is that we...

Chances are no one reading my blog will be able to answer this question but hopefully in the future someone will run across this post in Google and respond with the answer.

Recently Simon Morris posted a blog called In defence of the desktop where he asks :"If SE is truly...

A few days ago we released the code to Aerith, our JavaOne demo that combines photos, mapdata, and 3d effects. We worked very hard to get the code out...

It look more work than expected (doesn't everything?) but at long last we have released the source code to Aerith, our killer 2d/3d/webservices mashup demo that we showed at the JavaOne 2006...