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

While playing around some more with this miniapp idea, I came across geographer Tyler Mitchell's weblog post about hurricane tracking using Web...

Hmm. Perhaps it should have been mouth.getLocation() instead. That would present a more consistent BadJoke API. :)

I've been thinking about the miniapps idea some more. I still think it's a good idea, but I want to extend it a bit. Miniapps are great and all, 'cause they're, well, mini.. but I want more. Java...

It's gonna be a busy week so I'll keep this short. I've been thinking a lot about moveable applications and the idea of rich clients. This is mainly on my mind because the Flying Saucer team has...

It's been a little over a year since I've been here, and what a year it's been. Or something along those lines.

I have to say that Java2D is amazing simply for it's productivity. The other day I was watching the psychedelic display in iTunes when I thought, I wonder how hard it would be to do that? I know...

The last few months have been great for client side Java. With the release of JDIC, JDNC, Java 1.5 betas, and more support than ever from Sun, I think we are seeing a revival in interest for...

I normally try to be even handed, un-biased, and bi-partisan; but today I'm going to shamelessly use my muchly vaunted position as a highly skilled blogologist in field of java.net to plug my new...

On the plane back from California I decided I've had enough with politics for a while and I'm ready to get back to coding. One thing I've always thought was missing from Swing is a good color...

So it's been a week and I've seen a lot of response to my last entry. One commentor in particular asked for a point by point rebuttal; which...

I'm going to try to really tackle the issue of opensourcing Java and state my opinion of why it's a bad idea. Then I'll propose a way would could do it without all of the problems. It's a long one...

I recently read on Slashdot (something I promised myself I was going to do less) about Miguel de Icaza's comments on Longhorn. It was a pretty interesting read and makes me think I should read up...

I don't want to talk about how Open Source technology changes the rules by breaking up monopolies or giving you the freedom to reconfigure. I want to talk about actual economic effects as the cost...

I know it's been a while since I've posted. But I've been busy. With, um, you know, stuff! Writing stuff. Coding stuff. Drawing stuff.

I haven't written anything in a while because it was a busy Christmas season, Kimi is going back to school along with work, Lizi has to be fixed, and I started an exciting new job in the field of...

A lot of people have put out lists of what they expect to see for the new year. Instead of going across the industry I'm going to focus on one topic in particular: networked applications. I...

I've always wanted to make some sort of display that draws outside of a window with images scattered all across the screen. Though previously impossible in Java, I found a way to do it. And since...

We hear a lot about development processes these days, but I'd like to know what techniques people actually use? Do you create UML diagrams? Do you map out the states? And when it comes down to...

I was looking at the referers to my Swing has failed article and I noticed a site called Java Hispano.org....

I've been playing with Swing a lot lately for my new series of articles. In my research I came across another interesting...

When reading discussions about Unix versus Windows versus Mac, I often hear people complain about the Point, Click, and Drool user interface. This is usually directed at the Mac, but I've...

Yes, that's right microwaves are evil. More specifically, the microwave in my office. Or, to get right down to it, the interface on this microwave. You see, it's awful. Just plain awful. And yet...

I've been writing Swing apps for a long time and despite the speed and API improvements I don't think it's gotten better. After reading Chris's...

It's been a while since I've written something, so I thought I'd start out with another Swing Hack. This time I've expanded on the overlay idea of SwingHack 3 by adding sort of a magic lens. In...

Chris recently wrote about the jApps One in particular intriqued me: the Dukester a little java box that plays MP3s and can download other...

I have often wondered how people learn to program today. In the old days we had Basic and Logo, but what do kids use today? The old standbys are powerful enough to make something for the web (...

I stumbled across an older online magazine recently. A List Apart has a wide variety of topics, ranging from CSS and typography to what a designer truly...

I received an email today asking about my use of the glass pane. It seems this fellow wants to handle right clicks on any component in each screen. A logical request. In most cases your right...

As part of a new project for work I have finally broken down and learned Struts and JSPs. Struts is tremendously useful. I wish it had been around five years ago when I was up to my ears in...

It's Friday so I thought I'd do another Swing hack:

When I'm doing really complicated Swing layouts I often have trouble figuring out which component on screen matches the one in my code,...