About Bob Balfe

Distinguished engineer, Strategy and Offering Management, Watson Customer Engagement, IBM.

Bishop Company improves site performance by over 25% with Mobiecom

A Partner Connect Update for Mobiecom where we show how Bishop Company went from a grade D to a B+ on the Pingdom grade scale by moving to Mobiecom!

Continue reading


Most eCommerce sites are “marketplaces”

What is a marketplace? Essentially, a marketplace is a place where you can buy items that are produced or sold by other companies. Unless you are a specialty brand like Movado, Tommy Hilfiger, Louis Vuitton, etc.,  you are most likely selling “other companies goods” on your site. In a marketplace, these companies are called “sellers”.

The best marketplaces offer things like drop ship – where the order gets sent directly to the seller to fulfill to the customer – eliminating the need to house the products in a warehouse (or your basement). Amazon does this very well, hence the popularity of Amazon. I can basically create a web presence with little capital and sell all kinds of things from all over the world on Amazon. If you are a retailer with an existing web site, then Amazon is your absolute enemy. You need to do things faster, cheaper, and most of all more efficiently.

This brings us back to my last post about IBM Digital Commerce and Mirakl.

Screen Shot 2018-05-10 at 2.05.15 PM.png

With IBM Digital Commerce and Order Management you get an easy to use eCommerce platform that scales and offers not only drop ship but the ability to have a call center and even a store associate application; all connected to the same back-end eCommerce platform. Bring in Mirakl and you get a best in breed Marketplace platform that gives you the flexibility to onboard sellers, monitor seller KPI’s, automatic price and inventory updates, and even curation for your sellers.

If you haven’t had a chance, watch this partner connect video where I introduce Marketplaces and how IBM Digital Commerce and Mirakl make a great team for a great platform to compete against Amazon.

Partner Connect: Mirakl and Marketplaces

In this episode of Partner Connect I visit Mirakl and the IBM Digital Commerce and WebSphere Commerce v9 connector that quickly enables the launch of a marketplace. With the cross channel capabilities of IBM Digital Commerce and the quick on-boarding with the Mirakl platform, companies can get up and running with a marketplace very quickly.

I take a couple of minutes in this episode to explain marketplaces and how pretty much any company selling other brands merchandise is in essence a marketplace. This also goes for B2B companies that sell other B2B “widgets”. In all cases, Mirakl streamlines the process of getting those products into your eCommerce experience. With the additional benefits of IBM Digital Commerce with Order Management you also benefit from a true omni-channel platform where orders can be processed through a call center and even an in store associate.

Automatically scaling WebSphere Commerce v9 with Kubernetes

In case you missed this extremely impressive webinar, Real World Insights into Upgrading to v9, conducted by our partners LiveArea and Rackspace, you might want to set aside 60 minutes and watch it. We had access and download limits with my last post so I put the entire webinar up on YouTube.

LiveArea – who specializes in Strategy, Design, eCommerce, and Marketing are an excellent partner for various top eCommerce platforms and over 20 years with IBM Commerce. They also have deep expertise in many verticals, so check out their site to see what they can offer you.

Rackspace – a long time player in the managed hosted space. One of the best parts of the webinar is the auto-scaling demonstration of WebSphere Commerce v9 on Kubernetes they created with LiveArea. In the demonstration they put a load test on a v9 install and once the capacity on the transaction server breaches 80% they show how they configured Kubernetes to automatically spawn new pods – very slick demonstration.

Continue reading

Recording Available for Webinar: Continuous Delivery for a Highly Available Kubernetes Application

Our partners LiveArea and Rackspace did an awesome demonstration of the power of using Kubernetes with WebSphere Commerce v9. The demo shows how the configured Kubernetes orchestrator automatically scales up new pods when work load breaches their configured point. Take some time and watch this recording of a webinar I participated in with the LiveArea and Rackspace team.

Update: I uploaded the webinar to YouTube, so now it’s available to view there. Click the link below.

Click here to view



Webinar: Continuous Delivery for a Highly Available Kubernetes Application


Title: Continuous Delivery for a Highly Available Kubernetes Application

Date: Thursday, May 03, 2018

Time: 11:00 AM Eastern Daylight Time

Duration: 1 hour

Deploying an updated container to a cluster is easy – a command or two at the command line and you’re done.

But what about ….

  • Moving collections of containers?
  • To multiple clusters?
  • In multiple clouds?
  • Attached to an Enterprise Service Bus?
  • Orchestrated for high availability?

A major transportation e-commerce site has moved its rating engine to the cloud. They use two public cloud providers, with IBM Cloud Private as a consistent Kubernetes platform in each. The team needs to innovate fast while keeping enough control to protect the business and pass audit.

Join IBM Distinguished Engineer Paul Bahrs and Eric Minick for an examination of orchestrated updates when real-world challenges demand more than simple scripts at the command line.



30 years of OO programming – My reply to a critic

I read an interesting article over on Medium that is getting a lot of views and even more comments. The article is “Goodbye, Object Oriented Programming“. It goes through and attempts to debunk the many aspects of “object oriented programming”, from inheritance to polymorphism, the author hits them all. There is only one problem, every example you show has a proper object oriented solution for it. As Morpheu5 also explains in his response:

I’m just going to say that you sound like any of the many frustrated programmers — even long-time, very experienced programmers—who probably don’t have time, will, or resources to take steps back and evaluate the situation – link

This response is spot on. Every single OO language from Ada, C++, Java, C#, to Swift and many more, all have “pitfalls” and they all have their strengths.

Commodore Vic 20

My programming started in the early eighties with Assembler and BASIC. I then soon graduated to C and then C++. I wrote a lot of C++ without really knowing object oriented programming, read a lot of books but still fell into the many traps the author speaks about above. Then, I went to school for the military and learned Ada. This is where I was actually taught Object Oriented Programming but most of all I was taught the basics of OO along with Design Patterns. In the early 90’s I bought one of the most useful books I have ever bought for programmers – “Design Patterns: Elements of Reusable Object-Oriented Software“. It changed the way I coded and most of all it changed the way I thought when addressing problems. Morpheu5 hit the nail on the head, designing good Object Oriented classes is a skill and some even call it an art.  A colleague of mine was really big on patterns, Chuck, and he pretty much shot down anyone’s code (including mine and he reported to me) that was in his words “crap” if it didn’t fit nicely into an established pattern or used OO properly. You have to have this discipline or at least someone on the team that is a “code Nazi”.

Structural patterns (essentially most of the problems in the original article were structural problems) like Decorator or Facade could easily solve some of those or even the Bridge pattern.

If you want to see really good OO, you most likely have to look no further than the language itself, Generics for instance have transformed the way we code:


while ( iterator.hasNext() ) {
System.out.println(“value= ” + iterator.next());


for name in names {
print(“Hello, \(name)!”)


for label in labels:
if label in path:
return label

And those are just Loops, and if you don’t think that is OO, try doing that in C or Assembler and have it still be “generic”. I will end with, it takes time to learn Object Oriented Programming but it takes even more to be good at it. Use the well established patterns in whatever language you use and you will ultimately reap the benefits of a good OO design.

This post was originally posted on CodeByLarry.com.