Monday, February 22, 2010
Hadoop is garnering a lot of attention these days as companies ponder how to address problems involving large amounts of data (tera to petabytes). It also gathers attention from companies interested in distributed computing. Lastly, it is seen as an alternative to an RDBMS. So what is Hadoop actually and how would [...]
Posted by Joel Crabb
Comments Off
Monday, February 22, 2010
Overview
It is commonplace in enterprise applications to allow application properties to be loaded from configuration files. When leveraging Spring, this is typically achieved using a PropertyPlaceholderConfigurer instance within the application. As is stated in the JavaDocs for this class, it is “A property resource configurer that resolves placeholders in bean property values of context definitions. [...]
Posted by Nick Adelman
Comments Off
Monday, February 15, 2010
Apache Camel’s SEDA (Staged Event-Driven Architecture) endpoints (http://camel.apache.org/seda.html) provide a useful and quick mechanism to implement asynchronous, event-driven processing within your applications. See http://www.eecs.harvard.edu/~mdw/proj/seda/ for the original description of the SEDA architecture. For those not very familiar with Camel, implementing a SEDA route can be as simple as adding the following to a route builder [...]
Posted by Nick Adelman
1 Comment »
Monday, February 8, 2010
The spaceship operator has it’s roots in Perl and has found it’s way in to languages like Groovy and Ruby. The spaceship is a relational operator that performs like Java’s compareTo() comparing two objects and returning -1, 0, or +1 depending on the value of the left argument as compared to the right. Perhaps the greatest advantage of using the Groovy comparison operators is the graceful handling of nulls such that x <=> y will never throw a NullPointerException and when comparing numbers of different types the type coercion rules apply to convert numbers to the largest numeric type before the comparison.
Posted by Brad Karels
5 Comments »
Monday, February 1, 2010
Concurrent applications have multiple threads running simultaneously. Access to data shared by multiple threads requires synchronization which is often a source of fragile and hard to maintain code, hard to find bugs, and performance issues. You can minimize synchronization and the headaches that go with it using immutable data structures. In this article I’ll demonstrate how [...]
Posted by Jim McClure
15 Comments »