With 2010 coming to its end I decided to create a compilation of the Top 10 JavaCodeGeeks posts for this year. JavaCodeGeeks have an internet presence of less than a year, but I believe that we have done a very good job providing original and helpful content. This compilation was made so that we remember our best moments for the year that is ending, but also in order to introduce some of our best articles to some viewers that have not yet discovered them.
The posts ranking was performed based on the absolute number of page views per post, not necessarily unique. We are using a well known web analytics platform and I used its stats as of today in order to create the list. So, let’s see in ascending order the top posts for 2010.
10) Android Full App, Part 1: Main Activity UI
This is the first of a series of tutorials on how to create a full Android application from scratch. The complete application aims to provide a way of performing movies/actors searching over the internet using the Android platform. The specific part is introductory and shows how to setup an Eclipse project, prepare the user interface for the main activity and finally test it on an appropriate emulated Android Device. Note that this post surpassed for only a few views one of my other posts describing how to Install Android OS on your PC with VirtualBox.
9) Java Best Practices – DateFormat in a Multithreading Environment
This is one of our “Java Best Practices” posts discussing the use of the well known DateFormat class in a multi-threaded environment. It is stressed out that the specific class is not thread safe, thus special care has to be taken when using it. Various approaches are examined on how to properly use the class and a performance comparison benchmark is also provided.
8) Getting Started with SmartGWT for awesome GWT interfaces
This is an introductory article on how to integrate SmartGWT into your web projects. SmartGWT is a framework based on GWT that provides a comprehensive widget library for your application UI as well as assistance for server-side for data management. In this article, I explain how to create a new GWT project that uses SmartGWT under the hood and how to build your first UI with it.
7) Java Best Practices – High performance Serialization
Another “Java Best Practices” post made it to the top 10 list. In this one, Justin discusses how to utilize Object Serialization for high performance applications. The performance problems associated with serialization are first discussed and then classic serialization and the externalization method are compared. A performance comparison benchmark is also provided.
6) JBoss 4.2.x Spring 3 JPA Hibernate Tutorial
This is a a very efficient tutorial on how to integrate Spring, JPA and Hibenate. More specifically, it demonstrates how to configure the Spring DI container, how to set up the JPA ORM layer and optionally how to configure Hibernate as a second level cache. All of these are eventually deployed to a JBoss application server. Note that there is a second part that concludes the specific tutorial.
5) Java Best Practices – String performance and Exact String Matching
This is one of our most “academic” posts. Justin talks about String perfomance tuning and explores the most commonly used algorithms for Exact String Matching. As always, a performance comparison is performed examining the performance of the various algorithms. Please note that under our Software section, a library with the implementation of the most commonly used algorithms for exact string matching is provided. There is also a dedicated project for that, hosted at SourceForge, which can be found here.
4) Things Every Programmer Should Know
This is actually a compilation of posts provided by one of our JCG partners (ui-programming), which are reproduced from the official “97 Things Every Programmer Should Know” site. The collection is intended to contain multiple and varied perspectives on what programmers should know. This can be anything from code-focused advice to culture, from algorithm usage to agile thinking, from implementation know-how to professionalism, from style to substance, etc.
3) GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial – Eclipse and Maven 2 showcase
A mouthful of title, indeed. In this post Justin explains, step by step, how to setup a Maven project for a web application that uses Google’s Web Toolkit (GWT) for the rich client and Spring as the back – end, server side framework. For the data access layer, JPA over Hibernate is used and for a database, Hypersonic is preferred. As you might have guessed, Eclipse is used after the Maven plugin has been installed.
2) Java Best Practices – Vector vs ArrayList vs HashSet
Another “Java Best Practices” post, in the second position this time. In this, a performance comparison between the three probably most used Collection implementation classes is performed. Various test cases are examined (insertions, deletions, iterating etc.) and the relevant benchmark results are provided. Note that this was quite a controversial post, causing heated conversations, but it has definitely helped to explore some of the most hidden aspects of the compared classes.
1) GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial
By far the most popular JavaCodeGeeks post, accounting for approximately 10% of our total traffic. In this killer article, Justin presents a detailed and thorough guide on how to develop a simple web application using GWT for the UI and Spring for the server side. Additionally, JPA and Hibernate are used for the data layer. If you are wondering what your next weekend project might be, this one should definitely satisfy you. Follow the guide in order to create a functional project template. Note that this is actually the first part of the post that holds the 3rd position in this list.
That’s all guys. Our top posts for 2010. I am really proud of being member of the JavaCodeGeeks team and having contributed to a big part of the content. I hope you have enjoyed our blog during the past year and that you will continue to provide your support in the year to come.
Happy new year everyone! From me and the whole JavaCodeGeeks team, our best wishes!