Eric Newcomer is on to me
You can only get away with joking about transactions for so long before the gods of transactions bring you to justice. So is was only a matter of time before Eric Newcomer would catch me waxing about...
View ArticleGoogle Developer Day
Last week Google held a developer day in 10 cities around the world. Here are my take-aways.
View ArticleAPI's are for Humans, too
When graphical user interfaces became popular thrifty people had the idea that they could generate them automatically. Well, that bubble burst pretty quickly. When people say nothing is new with Web...
View ArticleUsers Like Events
Two weeks ago I presented a keynote at the DEBS (Distributed Event-based Systems) conference. The emphasis of the conference was on academic work in the field but event-based systems are rapidly...
View ArticleI Want My Events
Last time I claimed that users like events. This time I want to show how I fulfilled my personal desire for events off the Web. I built two solutions to alert me to new book reviews on Amazon, one...
View ArticleMashup Camp
I attended the first day of Mashup Camp today. The event took place at the Computer History Museum, which is actually walking distance from my office. Ironically, the only day in the year when...
View ArticleMashups == EAI 2.0?
Mashups pull data from different sources, aggregate and transform the data to be used in different contexts. EAI solutions pull data from different sources, aggregate and transform the data to be used...
View ArticleMashups Tools Market
As I reported from Mashup Camp, an increasing number of vendors play in the mashup space. I am obviously not the only one who noticed. Dion Hincliffe recently discussed 17 different mashup tools. Maybe...
View ArticleFacebook Developer Garage
The Internet is cruel. So you finally made the leap from EAI stone age to become a hip mashup developer. Now it turns out you are once again behind the curve, Unless you've written your won Facebook...
View ArticleEnterprise Mashup Summit
I attended the Enterprise Mashup Summit last Friday. It was a small-ish event, with about 50 people attending. We saw about 10 presentations, mostly by vendors plus an open forum. None of the...
View ArticleBubble 2.0
What’s wrong with this picture? I crash a stylish party at a pricey venue (SF Moma). I have no business being there, nor do I have the required invitation. I nonchalantly talk my way in, and hit the...
View ArticleDouble-Dipping: OOPSLA and Colorado Software Summit
I am just returning from a trip to Montreal and Keystone, CO for the OOPSLA and Colorado Software Summit conferences. I spoke on SOA Patterns, workshopped my conversation pattern paper, and gave six...
View ArticleGoogle Gears Live From Japan
Since Google's Developer Day, I have been promising to speak more regularly about Google products. This is a bit of a balancing act for me, as I want to avoid the slippery slope of becoming a corporate...
View ArticleReflecting on Enterprise Integration Patterns
The end of the year is always the time to reflect on the past happenings. My friends in Japan often send a New Year's card with 12 pictures, each showing the significant event during the month. I am...
View ArticleDesign Patterns: More than meets the eye
Blogging about design patterns seems about as original as blogging about the Java (TM) Programming Language, except for the missing (TM). However, as I just attended a workshop on software service...
View ArticleInto the Clouds on New Acid
I have been speaking more frequently about cloud computing in recent days. As SOA is becoming a daily reality, I needed to advance to new, still slightly nebulous topic. What could be a better fit than...
View ArticleGoogle I/O
I guess I am the last person to blog about Google I/O. By now, everyone should have read about Wave and the free Android phone (with 30 day SIM!). I am just now getting to write this up on my flight...
View ArticleMy First Google Wave Robot
By now everyone must have heard about Google Wave, the communication and collaboration platform announced at Google I/O. Google just announced that they are ramping up towards 20,000 developers on the...
View ArticleClouds and Integration Patterns at JavaOne
I joined JavaOne this year as a panelist on Cloud Computing. Here my belated impressions on this year's JavaOne.
View ArticleEIP Visions
The beginning of a New Year is the time to reflect on the past and make resolutions for the future. It's become my tradition to kick off the year with some reflection on EIP, so here we go.
View ArticleA Chapter a Day...
My New Year's resolution was to write more, so here my thoughts on how to actually make that happen. In a sense it's a plan for myself to be more productive, but hopefully the ideas also work for other...
View ArticleWhat Does It Mean to Use Messaging?
I was recently asked to help a team decide whether they should use messaging. Of course, I have not forgotten what I learned during many years in consulting: the consultant always answers "it depends."...
View ArticleDDD - Diagram Driven Design
Drawing a picture turns out to be a useful system design technique.
View ArticleExplaining Stuff
At a recent presentation, Martin Fowler introduced himself as a guy "who is good at explaining things". While this certainly has a touch of British Understatementâ„¢, it also highlights a critically...
View ArticleWriting for Busy People
One advantage of working for a relatively large organization is that I get to do a little more writing again. Not because I have spare time, but because in times of rapid change, communication across a...
View ArticleThe 3 Legs of an Architect
Defining what a software or IT architect is or does is no less challenging than defining software architecture itself. The SEI maintains a list of software architecture definitions, yet I have not seen...
View ArticleThe Architect Elevator
Architects frequently play a critical role as connecting and communicating element between multiple parties. Especially in large organizations such communication is an important factor: too many...
View ArticleSync or Swim
We were tempted multiple times to extend the EIP icon language, but always felt that simplicity should win over precision. However, seeing the visual vocabulary that my former Google colleague Ivan...
View ArticleRESTful Conversations
As indicated a good while ago I spent some time thinking about patterns that instead of following a message through multiple systems, looks at the message exchange over time between a (mostly) fixed...
View ArticleGoogle Cloud Pub/Sub
Google released the beta version of their publish-subscribe API just a few weeks ago. I show how to build a very simple demo app using the Java API and map the functionality to integration patterns to...
View ArticleFree Gift with Subscription (Pattern)
Discussing the Google cloud Pub/Sub system in the last rambling reminded me that the Publish-subscribe Channel pattern makes for a good example of the subtle but important difference between Messaging...
View ArticleSATURN Conference 2015
I have not blogged about events in a while, but SATURN 2015 has been an amazing event that's well worth rambling about.
View ArticleSame Old Architecture - Best of Ramblings
Architects can often be found commenting or complaining that many things in IT are the same old stuff in new packaging, created by marketing departments who were in need of a new buzzword. For example,...
View ArticleIs This Architecture? Look for Decisions!
Part of my job is to review system architectures. So I frequently ask teams to show me "their architecture", but almost as frequently I don't consider what I receive an architecture document. The...
View ArticleVirtualization Matryoshka
IT loves virtualizing stuff, following the old rule that in computer science every problem can be solved by just one more level of indirection. Cloud computing is based on virtualization of compute...
View ArticleMovie Star Architects
I recently wrote about architects and the role they play in large organizations. Still, the question often remains what an architect should be doing besides "riding the elevator". Let's try another...
View ArticleIf you never kill anything, you will live among zombies. And they will eat...
Corporate IT lives among zombies: old systems that are half alive and have everyone in fear of going anywhere near them. They are also tough to kill completely. Worse yet, they eat IT staff's brains....
View ArticleIf software eats the world, you better use version control!
As I recently observed, Corporate IT tends to be afraid of code: code is where all the pesky bugs come from, which have to be fixed by quirky, expensive, and unreliable developers or external...
View ArticleThe Architect’s Penthouse Bookshelf
When you hitchhike through the galaxy, a towel will generally do. To ride the you need to be a bit better equipped. Riding the elevator up and down is exciting and provides tremendous value to the...
View ArticleHow to Scale an Organization? The same way you scale a system!
The digital world is all about scalability: millions of web sites, billions of hits per month, more data, more tweets, more images uploaded. To make this work, architects have learned a ton about...
View Article25 Years of OOP
OOP is one of the conferences that originated in the "OO" era of the early to mid-nineties. While most of these events have shed the double "O" -- OOPSLA has become SPLASH and JAOO has become GOTO, OOP...
View Article37 Things or "Where have all my ramblings gone?"
About two years ago, I revived the ramblings from a four-year hibernation. Upon resurrection, the ramblings started to take a broader scope, including not only messaging, conversations, and patterns,...
View ArticleModern Examples for Enterprise Integration Patterns
Enterprise Integration Patterns are timeless as underlined by the fact that the book keeps selling well over 13 years after its publication in 2003. However, the code examples haven't aged quite as...
View ArticleServerless Integration Patterns on Google Cloud Functions
After examining which patterns are embedded in Google Cloud Pub/Sub in an earlier post, I implemented a few common patterns on top of Google Cloud Functions, Google's serverless implementation. It's...
View ArticleLoan Broker Implementation with AWS Step Functions
A lot has happened since we implemented the Loan Broker Example in EIP: we have the cloud, serverless computing, machine learning, service meshes and all sorts of other bells and whistles....
View ArticleLoan Broker @AWS, Part 2: Recipient List
In part 2 of this blog series I implement the Loan Broker Example using a Recipient List pattern, implemented in DynamoDB, Step Functions, and Lambda.
View ArticleServerless Loan Broker @AWS, Part 3: Publish-Subscribe with SNS
Part 3 of the mini-series on implementing the EIP Loan Broker as a serverless solution with AWS Step Functions uses a Publish-Subscribe Channel and a stand-alone Aggregator to request and process loan...
View ArticleServerless Loan Broker @ AWS, Part 4: Automation
Infrastructure as Code (IaC) has a whole new meaning for serverless applications. Rather than provision resources (the serverless frameworks do that for us), automation determines the system...
View ArticleServerless Loan Broker @ AWS, Part 5: Integration Patterns with CDK
Infrastructure as Code (IaC) brings repeatability into the provisioning and deployment of cloud applications. However, the vocabulary used by most automation tools describes cloud platform resources as...
View ArticleServerless Loan Broker @ GCP
Do serverless solutions lock you in? Let's find out by porting / rebuilding the Serverless Loan Broker on top of Google's Cloud Platform (GCP).
View Article