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

So you have probably wondered where I've been. Possibly even missed me. Or maybe you haven't and are glad I haven't wasted any of your precious packets during the last month. In either case: I'm...

I just arrived home after a both grueling and exciting week of JavaOne. I'm taking the next two weeks off, though I will be blogging a bit and answering the occasional emails. Don't be surprised...

I'm sitting in the audience watching Tuesday's keynote where Romain Guy and Richard Bair are on stage showing the new Swing demo we built called Aerith. It's a roadtrip slideshow builder...

I'm doing lots of pre-JavaOne work right now and I could easily bore you with details of our Java.net Community Leaders meeting on Saturday, but instead I'll tease you with our demo.

We are getting closer to JavaOne and companies are preparing to announce their latest and greatest products. We will also have lots of discussions of Java vs AJAX vs Flash vs other hot tech of the...

I'm going to be a complete nerd for a second and expound upon how amazingly cool it is that something I wrote has been translated into Japanese. I mean, writing down words that someone else pays...

I'm sure I'm the last Mac Java developer here to figure this out so I'm posting it not so much for you but for future generations intrepid googlers to find.

I'm always amazed by how big the Java ecosystem is. It really is a global community. When Chris and I wrote Swing Hacks we did it out of love for Swing, not to sell a lot of copies or make a lot...

This is totally off topic for Java, but I need to rant about computers for a second.

So here it is, I finally...

One of the great things about having a project like SwingLabs is that it gives me a place to put classes I've built that others might find useful. Today I'm going to describe my recent addition...

Some time ago I wrote an article for Slashdot discussing Be, Apple, and the future of operating systems. The mention of Be should indicate just how...

I would just like to say that I'm more and more impressed with Matisse. It does it's absolute best to provide a realistic preview of running components at design time. Today I was building some...

I'm working on a program that requires I convert degrees of longitude into miles. Since we are mapping radians on to the sphere (mostly) that is Earth, I needed to do some trigonometric...

Often times when you are building an application you need to hook multiple components together in such a way that when one component changes others must do something. When you are building custom...

By now you've probably all read one of...

Just a quick note to let you know that I've got a new article up about SwiXml....

I know it's been quite a while since I've written anything. I've been busy with quite a few project and I'll have some cool stuff to share soon. In the meantime I thought I'd show you an...

As some of you may know I'm a big Mac person. I split my time equally between my iBook (now heading back to the shop, alas) and my WinXP desktop. Being a dyed in the wool plain jane text editor...

I don't normally post about non Java related tech stuff, but I thought I would mention this really cool new filesystem called ZFS. It's...

There's been a lot of talk lately about Web 2.0, and which technologies are going to take us there. We can debate the exact definition of Web 2.0, but I'd say a rough approximation would be an...

More of Tuesday

I forgot to mention a few other things about Tuesday (day 2 of Josh's asian oddessy).

I woke up this morning painfully early, 4:00, which, as anyone who knows me can say, is the time that people should be going to bed, not waking up. Until recently I didn't even know there was...

Last week I gave a presentation on Project Peabody for the Los Angeles Java Users Group, and I think it was well received. What's that? You've never heard of Project Peabody? That's okay....

I'm spending today packing for my exciting trip to Japan this week. Yes, I managed to wrangle a trip to JavaOne Tokyo, where I will be speaking on Java 2D performance, Swing layout, and helping...

Katrina is big. Too big. By Katrina I don't mean the storm, but the overall situation. I feel like I did almost four years ago, unable to help or even understand much but realizing that our...

Time stands still for no man. Technology even less so. The world moves on and we have to adapt.

I just got an email from my co-author and looked up the

Brainstorm!

Every now and then I get the idea to build a cool program that does something interesting. Sometimes I get an idea by seeing another program, or seeing an interesting API I'...