I Will Be Presenting At JavaOne 2011

Posted in: Cloud Computing, Enterprise Java

After successfully presenting at JavaOne back in 2006, for some reason I have not been able to get another presentation accepted since. I chalked it up to a high level of competition. But if that is true, then the email I received yesterday raises a few questions.
Continue reading »

Online Java Web Services Training Class

Posted in: Software Development Best Practices

I will be teaching my Java Web Services class starting the week of July 4th, this time around through the University of California Irvine Extension program.

Topics covered include:

  • Java API for XML Processing (JAXP) – SAX, StAX, DOM, XSLT
  • Service Oriented Architectures (SOA)
  • Java API for XML Web Services (JAX-WS)
  • SOAP
  • Web Services Description Language (WSDL)
  • RESTful Architectures
  • Java API for RESTful Services (JAX-RS)
  • JAXR / UDDI
  • Web Service Standards (WS-*)
  • JSON Web Services
  • Developing AJAX/JavaScript web service clients
  • Web Service Design Patterns
  • Web Service Best Practices

This class is 100% online based, with pre-recorded lecture materials available each week. In addition to lecture materials there will be weekly activities varying between forum discussions, quizzes, background reading, and of course coding.

Enrollment is open to everyone and is available right now.

http://unex.uci.edu/courses/sectiondetail.aspx?year=2011&term=SUMMER&sid=00152

The University of California Irvine Extension program provides an Orientation Week before each class to allow students to become familiar with the virtual classroom environment before formal instruction begins. For this class, the Orientation Week starts on June 27th (i.e. this coming Monday), however you are able to enroll up until the beginning of the formal instruction in the week of July 4th.

If you are interested but have questions about the course content, please comment below and I will answer as quickly as I can. For any questions about the University of California Irvine Extension program, please call Student Services on +1 949 824-5414.

iPhone Development for Java Programmers

Posted in: Enterprise Java

A friend brought this book to my attention recently. As an experienced enterprise Java developer who has recently added Objective-C to his toolkit of technologies to solve problems with, I was happy to see a book so close to my heart. I have started (but not yet finished) reading this one and so far it seems well worth the read for those of you who want to also add Objective-C to your Java skillset.

Top 10 Bare Minimum Web Client Performance Tweaks

Posted in: Software Development Best Practices

In my previous article (Performance Tuning Resources For Web Clients) I discussed why you should care about the performance of your web client and then listed out some of the better places to go on the web to find information on how to go about tweaking your web clients to get that better performance. In this article I am going to dig a little deeper and call out specifically what I think are the Must-do-No-excuse-not-to-do-them-You-are-really-being-unprofessional-if-you-are-not-doing-them tweaks that you should be performing on every single one of your web development projects.
Continue reading »

Performance Tuning Resources For Web Clients

Posted in: Software Development Best Practices

Recently I have been doing some research on tweaking websites to make them faster (either in reality, or at least in appearance to the client). Specifically the research has been focused on the actual client tier interaction – requesting the page, downloading the assets and rendering the page in the browser. In this post I will document some of the better resources I have found, focusing on client-side tweaks, so these resources should be relevant no matter if you are a Java, PHP, .Net or any other flavor of developer.
Continue reading »

Design Patterns 15 Years Later

Posted in: Software Development Best Practices

It is one of the most venerated books in the world of Software Engineering. It is such an icon it even has its own nickname and even the acronym of the nickname is easily recognized by most software architecture and design zealots.

I am of course talking about Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides. Also known simply as the Gang of Four book, or even more simply as just GoF.


I in fact never purchased the book myself, but I have definitely read it and it has been on my bookshelf for the best part of a decade now. When I first moved to the United States I moved into an apartment that was being rented and paid for by the company that hired me. It was the heady days of the .com explosion so there was a high rate of turnover at the company. When I moved into the apartment, it was clear that the previous occupant/employee had only just vacated and had left some personal belongings behind. One of the items carelessly discarded was a copy of Gof.

Now to be fair, the book will put the hardiest of readers to sleep pretty easily – it is most definitely a tome of knowledge, not a work of entertainment. But nonetheless, my copy is certainly worth the dead trees it is printed on.

As with many new ideas, there is rarely just one person thinking about them. It usually takes these visionaries getting together and coming up with some common terminology and cohesive thoughts to really launch the new idea into the mainstream. This is what GoF did for Design Patterns, and it is in this launching that its main value resides.

It is hard to believe that this book is already 15 years old. But InformIT has just published an interview with 3 of the gang (Vlissides died on Thanksgiving Day in 2005) to look back on the book, its influence on the Software Engineering industry since its release and whether in the rapidly changing world of app stores, mashups and the like, whether the book is still relevant.

InformIT: Design Patterns 15 Years Later: An Interview with Erich Gamma, Richard Helm, and Ralph Johnson > Design Patterns 15 Years Later: An Interview with Erich Gamma, Richard Helm, and Ralph Johnson

Java Persistence API (JPA) – A Brief Overview

Posted in: Enterprise Java

eHarmony in the Cloud

Posted in: Cloud Computing

Best Practices for Large-Scale Web Sites

Posted in: Software Development Best Practices

Cloud Computing Introduction

Posted in: Cloud Computing