iPhone Development for Java Programmers

Posted in: Software Development, Architecture & Design, Software Development, Development Tools, Reviews

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, Architecture & Design, Software Development, Craftsmanship, Software Development, Quality Assurance & Control, Software Development, Software Development, Web Technologies

In my previous article (Performance Tuning Resources For Web Clients) I discussed why you should care about the 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 . 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, Architecture & Design, Software Development, Craftsmanship, Software Development, Development Tools, Software Development, Open Source, Software Development, Web Technologies

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, Architecture & Design, Software Development, Craftsmanship, Reviews

It is one of the most venerated 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: Software Development, Architecture & Design, Software Development, Database Technologies, Software Development, Integration Technologies

eHarmony in the Cloud

Posted in: Software Development, Architecture & Design, Software Development, Open Source, Software Development, Web Technologies

Best Practices for Large-Scale Web Sites

Posted in: Software Development, Architecture & Design, Software Development, Database Technologies, Software Development, Integration Technologies, Software Development, Web Technologies

Cloud Computing Introduction

Posted in: Software Development, Architecture & Design, Software Development, Integration Technologies, Software Development, Open Source

Success Guide For Sun Certified Enterprise Architect Exam

Posted in: Software Development, Architecture & Design, Software Development, Training

After upgrading my SCEA certification recently (see this post), I have summarized some key pieces of information and the resources I used to pass the exam below. I hope this helps others pass as well.

The Basics
The place to start is the main SCEA exam page on the Sun site (http://www.sun.com/training/certification/java/scea.xml). You will find a description of the exam objectives as well as plenty of plugs for Sun’s own training courses to help you pass the exam (I have never taken any training directly from Sun, so I cannot speak to their value).

Certification Structure
Remember, the certification is made up of 3 parts.

The first part is an exam and is the hardest part, this is the part you are really doing all of the study for. The exam is a computer administered multiple-choice style exam (the same as the SCJP exam if you have done that one).

The second part is a take home assignment. This part will take the longest and involves presenting a solution (via UML and other documentation) to a business problem. There is no coding involved.

The third part is another computer based exam, but is made up of long answer questions this time. You should plan to do the 3rd part ASAP after you have submitted and passed the 2nd part. The questions in this part will ask about certain design considerations and other decision points from the assignment and why you chose the solution option that you did.

Obviously it will depend on your level of proficiency as an architect and specifically with the technologies, but I think you should plan on 3-6 months in prep for the first part, 1-3 months to complete the assignment and then you should be able to do the 3rd part within a month of submitting your assignment depending on how long it takes Sun to review your assignment and you to get scheduled in to take the exam.

Websites
Below is a list of some websites that contain relevant information.


I have read all of the following at one point or another. They are all mentioned as recommended reading at various places in the official Sun documentation for the exam.

Some Notes on Upgrading
If you have previously passed the SCEA for an earlier version of the JavaE/J2EE specification, then you can complete a modified version of the SCEA certification to upgrade to the latest version (currently 5). The upgrade certification process only requires you to sit and pass the first part of the normal certification – the multiple choice exam. You do not need to re-do the assignment or the long-answer exam.

When I sat the upgrade exam, I noticed that a significant proportion of the questions were related to web services. I suspect that this is because the first time I sat the exam, web services were not officially part of the stack and so perhaps the upgrade exam is tailored to cover only the newer parts of the specifications – but I cannot guarantee that this is the case.

Do you have other resources that you would recommend? Let me know in the comments.

Upgraded My SCEA Certification

Posted in: Software Development, Architecture & Design, Software Development, Craftsmanship, Software Development, Training

I am happy to announce that yesterday afternoon I passed the exam necessary to upgrade my Sun Certified Enterprise Architect certification to the 5 standard. I was previously certified for the J2EE 1.2 standard.

I have been working with a study group, but I am the only one who was upgrading, everyone else is working towards passing it for the first time. So I am the first one that is done.

Good luck to my study pals!