Faster Synchronization Through Hash Maps

May 17, 2013

As part of a load testing project, I needed to collect and store data as fast as possible in a multi-threaded environment. This meant synchronizing on collections to avoid collisions. Synchronization is always a bad idea in any performance critical application. In my simple testing, adding to a synchronized ArrayList can be almost 4x slower […]

Comments Off on Faster Synchronization Through Hash Maps

JavaScript as the Future? My Personal Opinions

March 4, 2013

I have long had mixed feelings on the future of JavaScript. Many people believe it is the future. Others believe it is the new VM of development (similar to Java). Others believe it as the sole language across server and client-side development (one language to rule them all). So, where do I stand? I stand […]


RFC: Add ‘between’ and ‘in’ to modern day languages

October 1, 2012

One of the recent additions to TeaTrove I am making is adding the between and in operator. This may seem trivial, but they are quite powerful as well as generally better performing, not to mention easier to read. The SQL standard has had these operators for decades because they just make sense. I’m rather surprised […]


Concurrent Asynchronous API Programming in Java

March 11, 2012

Several sites are moving towards an API program to allow easier access as well as mashup data. The use of an API is considerably different from typical methodologies such as direct database access. The biggest difference is latency and time. Further, the work being done during REST lookups is more idle time or I/O processing […]


Server vs Client-Side Rendering

January 5, 2012

I’ve come to a strange realization today. Several industry leaders and even some companies (,Leaving_JSPs_in_the_dust:_moving_LinkedIn_to_dust.js_client-side_templates_%7C_LinkedIn_Engineering.html) are moving to using Javascript and related libraries to move most code to the client for high scalability solutions. In thought, that is a great idea. However, it’s a bit of a strange paradigm. Initially, there was only a handful […]


3 Ways to Skin a Fibonacci

September 11, 2011

Fibonacci sequences and their calculations are always an interesting computer science question and sometimes even an interview question. There are endless ways to calculate a fibonacci value and mathematicians way smarter than I am have much better ways. This is really just a blog post on three simple Java-based solutions. In no way is this […]


Code Generation Synopsis

June 21, 2011

One of the areas I have dug into lately is around code generation and class file manipulation. It’s actually quite amazing how much you learn and understand when you begin to understand what the JVM is doing and how class files are constructed. Even though on a day-by-day basis, class generation is rarely used, it […]


State of Web Performance 2010 (via Steve Souders)

December 28, 2010

Steve Souders recently published his State of Performance for the web for 2010. This is a well written state of where we have been in improving and capitalizing on performance of web applications and web sites in general. It also goes into plans and hopes for 2011. I personally am excited about the continual progression […]


Java Performance: Map vs If/Else

December 17, 2010

I came across an interesting javascript article the other day on how not to write javascript: Google Closure: How not to write JavaScript The interesting part of this article that caught my eye was using a map instead of a switch or if/else statement to check for string comparisons. This got me thinking of whether […]


Simple Performance Improvement with Large Ehcache Disk Store Data Sets

April 29, 2010

One of my applications has several millions cacheable entries.  In order to cache as much as possible without going back to the database I use both a  memory store and a disk store in my Ehcache configuration.  Loading a serialized item from disk is still faster than loading from a database generally.  That being said […]