Jonas Bonér bio photo

Jonas Bonér

Specialist at Large.
Entrepreneur.
Hacker.
Public Speaker.
Powder Skier.
Obsessive Learner.
Jazz Addict.
Wannabee Musician.

Twitter LinkedIn Github

All Posts

2017

2016

2013

Reactive Manifesto 1.0

Defining the blueprint for future applications that are event-driven, scalable, resilient and interactive.

2010

2009

2008

Reward Failure

Alex Miller has written a very important post on the importance of failure, putting, what has been one of my guiding principles in leadership and working env...

Real-World Scala: Introduction

The last nine months I have been running my own business together with some friends (Triental AB). We are building a product suite for private banking and we...

Clustering Scala Actors with Terracotta

Introduction A month ago I wrote an introductory post about Scala Actors: HotSwap Code using Scala and Actors. For you who don't know what it is I don't w...

2007

HotSwap Code using Scala and Actors

Update: In this article I am showing an even more powerful way of doing hotswap in Scala. ---- In this post I will show you how you can do code hotswap i...

The Terracotta Book

The last month I have been very busy writing on The Definitive Guide to Terracotta. It is a collaborative effort from the Terracotta team each one writing...

The Power of Sockets and Dynamic Proxies

I was going through some of the older parts of my darcs repository the other day when I stumbled upon a pretty neat and powerful little remoting library that...

Love What You Do

I was in Rome, Italy some weeks ago. After strolling around in the old town for a couple hours I felt the need to grab a bite. So I stopped at a café, sat d...

How To Keep Your Creative Flow

I recently saw an interview with Jan Guillou, one of the most successful and creative authors in Sweden. He had some interesting thoughts about creativity th...

Clustering JRuby with Terracotta

Yesterday I was spending some time thinking about the possibilities to cluster applications written in "JRuby":http://jruby.codehaus.org/ with "Terracotta":h...

You're Smarter Than They Think

Seth Godin has written yet an amazing and inspirational piece on how to be remarkable. It is a short write-up of some of the ideas he has been talking and wr...

2006

Back From Serbia

I just got back from a small JUG roadshow in Serbia. I did two 2 1/2 hours talk in two days, the first one in Novi Sad and the second one in Belgrade. Both t...

The Art of Minimalistic Design

Minimalism: "...where the work is stripped down to its most fundamental features and core self expression". The world needs more minimalism. Sty...

Domain-Driven Pointcut Design

What is a pointcut language? Let's start with some terminology and definitions. A pointcut language can be seen as a Domain Specific Language (DSL) for ...

The Optimized Null Check Pattern

A friend of mine showed me The Optimized Null Check Pattern (TM) yesterday (found in a piece of production code): public static boolean isNull(Object obj)...

Books That Makes You Think

After my rant about the lack of computer literature that: ...makes you think and challenge the way you work. I thought that I should provide a list of book...

Welcome Noah

Saturday 17:45 PST, little Noah decided that it was time to come out and meet the family, seven weeks early, but very welcomed. He will have to stay in the i...

2005

Highlights 2005

2005 has been a good year, both personally and professionally. Here is a summary of some of the highlights (in chronological order): Family trip to Vie...

AspectJ 5 Final Is Shipped

AspectJ 5 final is finally shipped. This means that the merger with AspectWerkz is complete and that the most important chapter in the history of AOP has b...

Stay Out of Jar Hell with Jar Jar Links

Jar Jar Links have been part of my Java toolkit ever since we started using it in AspectWerkz a couple of years ago. It is one of these little gems that de...

Commons Logging Has To Die

Unfortunately, I guess it is to late to kill the beast... But I am writing this post anyway, since it keeps on causing harm and since more enlightment arou...

Learning From The Web

Adam Bosworth has written an interesting article about what we can (or have to) learn from The Web. He is talking about how it has teached us how to manag...

HotSwap Is A Dead End Road

There has been a lot of discussions about the need for more dynamicity in Java, including the need to support scripting languages. Most are around the sugg...

util.concurrent on steroids

Steve has written a nice article on how you can coordinate threads in a distributed application, transparently, and with very little effort.

Interception Done Right

One of the new features in the AspectWerkz 2 architecture is that it comes with a full-blown interception framework that allows per instance programmatic d...

2004

AWProxy: Proxy on steroids

Summary Proxies are an important piece in the J2EE puzzle. Since it offers a non-intrusive an more transparent way of weaving in advice/interceptors. Howe...

BEA sponsors AspectWerkz

The AspectWerkz project is since a a month ago sponsored by BEA Systems. Both Alexandre and I, the founders and primary contributors to AspectWerkz, are fu...

AspectWerkz NextGen

Today we released the 0.10 Release Candidate 1 of AspectWerkz. Which forms the foundation for the next generation of AspectWerkz. AspectWerkz has gone...

Presenting on dynamic AOP @ JavaOne

I was lucky and our submission to JavaOne was accepted. This means that Alex and I will do a presentation on "Dynamic Aspect-Oriented Programming in J2EE e...

2003

Role-Based Security the AOP way

Since the last example of the new 'annotation-defined aspects' model in AspectWerkz seemed to have caused a lot of confusion and made people miss the point...

Annotation-defined Aspects

The upcoming release of AspectWerkz (0.9) will have support for a new definition model in which the aspects are self-defined. This means that implementatio...

AOP for EJB made easy

Using the new 0.8 version of AspectWerkz it is now a breeze to instrument your Servlets, EJBs or WebServices at runtime. In this example I will show how...

AspectWerkz 0.5 has been released

The AspectWerkz 0.5 release is a huge improvement compared to previous versions. Apart from many bug fixes it is also packed with new features. You can dow...

AOP standardization process started

Renaud Pawlak, the creator of JAC has started up a project called AOPI, which has the goal of specifying a common set of components for aspect-oriented syst...