Scaling out messaging applications with Scala Actors and AMQP
AMQP implementations like RabbitMQ offer OTP based messaging server. It is fun talking to them with Scala actors at the application layer. Nice... more »
0 commentsSave Tags: other languages, server, trends
Targeting BEAM for extreme reliability
Erlang VM (BEAM) provides extreme reliability semantics. Reia is a Python like language that targets BEAM. Some random thoughts on this issue.
0 commentsSave Tags: how-to, other languages
Java to Scala - Smaller Inheritance hierarchies with Structural Typing
Structural typing can be one way to reduce your inheritance hierarchy. This feature in Scala can address one of the drawbacks of Java typing.
0 commentsSave Tags: how-to, java, other languages
Designing Internal DSLs in Scala
You do not necessarily need a dynamically typed language to design internal DSLs. Scala, with static typing done right also provides adequate language... more »
0 commentsSave Tags: how-to, trends
Better Application Configuration using Spring Meta-Annotations
Spring 2.5 offers significant improvements in autowiring of managed components, which leads to much less XML configuration. And meta-annotation is one... more »
1 commentsSave Tags: how-to, java, open source
Domain Modeling - What exactly is a Rich Model ?
What exactly is a rich domain model ? Richer is not necessarily fatter.
1 commentsSave Tags: java, opinion
Productivity, Team Size and the Blub Paradox
Are big teams necessarily better teams ? Scale up with productive languages rather than verbose ones. Build up your infrastructure for good... more »
0 commentsSave Tags: opinion, trends
Learning Functional Programming
Want to learn functional programming ? Which programming language would you start from ?
1 commentsSave Tags: other languages, trends
Defensive Programming - What is that ?
Thinking in Erlang's philosophy of "let it crash". A nice exposition of separation of concerns and a robust platform for distribution mechanism.
1 commentsSave Tags: other languages, trends
Collector Idiom in Scheme - Is this a Design Pattern ?
The Collector idiom in Scheme has been used extensively in The Little Schemer. While the idiom is complex, it demonstrates the power of lambdas that a... more »
0 commentsSave Tags: opinion, other languages
Is the Java Culture changing ?
Programming languages are cultural artifacts, and their success (i.e., widespread adoption) is critically dependent on cultural factors as well as... more »
1 commentsSave Tags: java, opinion
Befriending Javascript
Javascript as a language has grown up a lot. Its usage is now being patronized in the community. There has not been a better time to learn more of... more »
0 commentsSave Tags: java, javascript
Customizable Business Rules using scripting on the Java Platform
Scripting in the JVM provides a new option to your architectural toolbox. If you want to have customizable business logic which needs to be flexible... more »
0 commentsSave Tags: java, javascript
Domain Driven Design : Handling Alternate Business Scenarios
This post discusses the strategy of handling alternate business scenarios (aka violation of business constraints) using a combination of the... more »
0 commentsSave Tags: how-to, java
In Defense of Static Typing
With Artima hosting the debate between static and dynamic programming languages, it is not out of place to bring up a similar debate between another... more »
0 commentsSave Tags: java, other languages
How do you decide when to use Aspects ?
Use the power of aspects judiciously and only when you need to address crosscutting concerns.
0 commentsSave Tags: java, opinion, trends
Domain Driven Design - What's in an Exception Name ?
When modeling your domain layer, do exceptions have to be part of the domain language ?
0 commentsSave Tags: java, opinion
How do you define a Programmer ?
In today's world of multi language development skill demand, what does it take to be a programmer ? Where are we heading to ?
0 commentsSave Tags: humor, java
Why Thinking in Ruby Matters
Think in the language in which you are programming. Try to find out the best possible abstractions while modeling a particular problem. This post... more »
0 commentsSave Tags: java, ruby
Design Tip: Localize your Object Creation Logic
Localize your object creation logic. It helps you change the strategy of object creation transparently without impacting your clients.
0 commentsSave Tags: java, ruby
Parameterizing Test Methods - Revisited
DRY up your test methods using parameterization. DataProvider in TestNG offers a great way to add parameters to your test methods, thereby allowing... more »
0 commentsSave Tags: frameworks, java
Refactoring Unit Test Methods to speak the Domain
Next time when you write a unit test method for your domain class, ensure the test method also speaks the Ubiquitous language of the domain. Refactor... more »
0 commentsSave Tags: frameworks, how-to, java
Unit Tests - Another Great Tool for Refactoring
Unit tests are great vehicles for refactoring object collaborations - thus there is a 2-way feedback loop between class design and its unit test... more »
0 commentsSave Tags: frameworks, java
Competition is healthy! Prototype Spring Bean Creation: Faster than ever before ..
Prototype bean creation performance has significantly improved in Spring 2.0.4. But it is still a lot worse than Guice, as this performance benchmark... more »
0 commentsSave Tags: frameworks, java
Guiced! Experience Porting a Spring Application to Guice
Here's a first hand experience of porting a complete Spring-JPA application to Guice. This post discusses some of the problems faced and their... more »
0 commentsSave Tags: frameworks, java