Developing a high-quality iPhone app can be tricky stuff for new and veteran developers alike - especially on larger projects. In this article, I'll discuss several tools & techniques that have helped my teams and me to produce high quality work and helped save a lot of time. Click here for the entire article.

About a year ago when I was blogging more, I discovered a neat static website generation tool called Jekyll. I really liked being able to edit my files in my favorite text editor. Unfortunately, it was difficult to add a few of the features I wanted, and I wasn't crazy about the Liquid template language Jekyll used, so I decided to spin off a Python version. The result of this work was Kelvin, the engine powering this blog. In this post, I'll describe Kelvin and how I use it. Click here for the entire article.

One of the interesting features of JavaFX is its ability to leverage existing Java APIs. Accessing pure Java APIs in JavaFX applications is almost as simple as it would be in a pure Java application. This means that your JavaFX application can not only access all of the standard JavaSE APIs, but any Java API as well. In this article, I'll show you how to leverage an existing Java API to build a complex web services user-interface with JavaFX. As always, I'll point out how some of the more interesting parts of the application work. Click here for the entire article.

Recently while testing an Android mobile application our team was developing, we encountered some performance issues in two of our List Views. Fortunately, the Android SDK provides mature debugging tools to help investigate performance problems. In this post, I'll describe how we used Android's toolset to locate the source of our problems and verify the optimizations we made were correct. I'll also share a few tips to keep in mind while tracing your own Android applications. Click here for the entire article.

With the announcement that Google App Engine is now supporting Java as its second language, Google has significantly altered the face of web development. Typically considered a poor choice for many web development projects, Java will now be considered more seriously for new web site projects. Google's announcement will undoubtably create a chain reaction that will only improve the adoption of Java-based web applications in other cloud services. In this post, I'll talk about why Java hasn't been a good choice for a web development platform until now and why Google has changed that. Click here for the entire article.

A lesser known, but powerful feature of JavaFX is its Production Suite. The production suite allows graphics designers to produce designs using tools familiar to them that are readily consumable by JavaFX programs. Using the production suite leads to simpler programs that focus only on the logic and effects and leaves the heavy lifting of the design to the graphic artists who know how to do that best. In fact, incorporating the production suite into your toolbox provides you with a JavaFX UI design tool that rivals any other. In this post, I'll show you how to create a simple dice game using an elegant UI produced by a real designer. Accomplishing a design like this in pure JavaFX would be almost unthinkable. Using the production suite though, this task becomes not only possible, but almost trivial. Click here for the entire article.

Earlier today I spent some time debugging an issue I was encountering with a free software package. While I searched for where the problem might lie, something interesting occurred to me. Even though the software was free in the Free Software Foundation sense, was it truly free? In order for software to be truly free, it not only needs to satisfy what FSF classifies as free, but should also lack any prohibitive barriers to modification. In this post, I'm going to examine some barriers that I've found on projects I've contributed to and provide some suggestions for making projects more accessible to small contributors. Click here for the entire article.

A few people at work have Nohohon Zoku solar powered bobble heads. I like watching them bob their heads all day, so I thought it'd be fun to make a virtual bobble head. In this post, I'll show you how to create your very own bobble head using the JavaFX Production Suite tools and a simple JavaFX script to tie everything together. If you'd like, you can download the source code from GitHub and play with it or follow along and create your own new project. Click here for the entire article.

I've had a tumultuous relationship with design patterns over the last 10 years. Our relationship started out pretty rocky as I tried to navigate the murky waters of the infamous Gang of Four (GoF) book, Design Patterns, Elements of Reusable Object-Oriented Systems. With some luck and the help of a mentor early-on though, I was able to avoid some common patterns problems before they caused a serious rift between design patterns and me. In this post, I'm going to share what works for me. I hope this advice will help you avoid some of the difficulties I've encountered with design patterns over time. Click here for the entire article.

There are already numerous tutorials that show you how to develop JavaFX user interfaces programatically. Many of the tutorials on Sun's own site show you how to build your UIs programatically. I would like to show you another option available to JavaFX developers: the JavaFX Production Suite (aka Project Nile). Project Nile is a suite of tools capable of exporting to JavaFX native format from Adobe Illustrator, Photoshop or any software capable of creating SVG illustrations. To demonstrate the power of the Production Suite, I'm going to show you how to create a button component. The interesting part about this button is that the design will be produced entirely in an SVG design tool. We will use JavaFX to only manage the state of the button and control its behavior. Click here for the entire article.

Based on some of the Sun JavaFX forums questions, there is uncertainty around writing unit tests for JavaFX classes. Since unit testing is an important part of a balanced developer diet, this post aims to remedy that. I will show you how to write unit tests for your JavaFX classes and even show you how to run them! Click here for the entire article.