August Issue of NFJS, the Magazine published.
Here’s what is in this month’s NFJS, the Magazine
Venkat Subramaniam – Programming with Scala Traits – Part One
In object modeling, mixins provide a way to create abstractions that define a common functionality that can be mixed into different abstractions. As Java programmers we did not quite have the ability to make use of this powerful concept, especially because Java does not provide multiple inheritance. In languages that do provide multiple inheritance, like C++, this is quite difficult to use in practice due to problems with method collision. Scala elegantly supports compile time mixins through traits. In this first part of the series, we’ll learn about traits in Scala and how to use them. In the second part, we’ll learn how to apply multiple traits both at class and instance levels.
Raju Gandhi - On Eloquent Conversations – Part Two
In the first installment of this series, we discussed the need for integration, and some of the potential pitfalls, especially when attempting to roll your own integration system. We then proceeded to discuss some of the patterns in Gregor Hohpe’s and Bobby Woolf’s aptly named “Enterprise Integration Patterns” and their corresponding implementations in Spring Integration. We discussed the core patterns that make up the founding blocks of Spring Integration – “Message Channel”, “Message” and “Message Endpoint”. In this article we will explore a few more patterns that will allow you to route, filter and manipulate messages as well as talk to external systems. We will learn how to do this while leveraging Spring’s declarative model that lets you focus on your domain, and let Spring Integration handle the specifics of messaging.
Craig Walls - NoXML: Spring for XML Haters
In spite of all of the great things Spring brings to Java development, one criticism it has received a lot of over the years is its heavy use of XML for configuration. It’s true that Spring configuration has traditionally required XML. Lots of XML. It seems that XML has fallen out of favor with many developers. And for those who are card-carrying members of the He-Man XML Haters Club, it’s hard to see the benefits of Spring through the haze of XML. If you’re among the XML haters, then this article is for you. Each version of Spring has taken steps to lighten the XML burden and I’m going to show you a few tricks from the latest versions of Spring that make it possible to develop a Spring application with minimal or even no XML whatsoever. To illustrate these techniques, I’ve written a simple Guestbook application using common Spring XML configuration. Throughout this article, we’ll swap XML configuration for Java configuration, until there is no more XML left in the project. If you want to follow along, you can download the before and after projects from this magazine’s download URL.
Scott Leberknight - Handling Big Data with HBase
In the past few years we have seen a veritable explosion in various ways to store and retrieve data. The so-called NoSql databases have been leading the charge and creating all these new persistence choices. These alternatives have, in large part, become more popular due to the rise of Big Data led by companies such as Google, Amazon, Twitter, and Facebook as they have amassed vast amounts of data that must be stored, queried, and analyzed. But more and more companies are collecting massive amounts of data and they need to be able to effectively use all that data to fuel their business. For example social networks all need to be able to analyze large social graphs of people and make recommendations for who to link to next, while almost every large website out there now has a recommendation engine that tries to suggest ever more things you might want to purchase. As these businesses collect more data, they need a way to be able to easily scale-up without needing to re-write entire systems.
Here’s what is in next month’s NFJS, the Magazine
Neal Ford – Build Your Own Technology Radar
ThoughtWorks’ Technical Advisory Board creates a “technolgy radar” three or four times a year. It is a working document that helps the company as a whole make decisions about what technologies are interesting and where we should be spending our time. This is a useful exercise both for you and your company. This article focuses on why you should undertake this exercise, both for your company and your own career development.
Venkat Subramaniam – Scala Traits Part Two
In this part two of the series, Venkat Subramaniam will discuss how to apply multiple traits at both class and instance level and to implement the decorator pattern.
Hamlet D’Arcy – Better DSLs with Groovy Command Expressions
Domain Specific Languages (DSLs) are often littered with the accidental complexity of the host language. Have you seen a supposedly “friendly” language expression like ride(minutes(10)).on(bus).towards(Basel)? The newest version of Groovy contains a language feature that aims to eliminate the noise of all those extra periods and parenthesis so that your DSL looks more like “ride 10.minutes on bus towards Basel”. This article shows you, step-by-step, how to use Groovy Command Expressions and plain old metaprogramming to write just this DSL and also offers advice on when, and when not, to use this new language feature.
I’m very proud of the work we do on this new magazine. The staff and I have worked hard to produce a top-notch magazine that is unique in the realm of software development magazines. The magazine costs $50 per year, which includes 10 issues. Each issue has at least four articles. You can download in a print-quality PDF and two mobile formats: EPUB (for the Nook and iPad) and MOBI (for the Kindle). The articles are professionally edited and are written by top experts in their field, so the content is worth well more than the $50 you pay.
The June issue just published this morning and you can subscribe here: http://bit.ly/fETp6d. As always, if you have questions just comment on this post and I’ll respond quickly.