Application Saturation

As a relatively newer developer to the JumpMind Commerce team, I was tasked with writing a brief article on our newly christened Point-of-Sale application, JumpMind Commerce. Specifically, I was asked to talk about one of its most notable features: its a-la-carte structure.

Now when I first joined up in the product’s relative adolescence, this was actually a stated development goal—Commerce’s modules of functionality were to be able to be substituted in and out as the particular integration demanded. The application’s integration was designed from the ground up to be modifiable. That modularity has now become both a selling point and a core part of the infrastructure. And as it stands, pretty heavily valued.

At the time though, I was unclear as to why this was such a notable feature. Not so much the functionality itself—modularity is certainly not a negative feature—but the adherence to it. Does it really matter if the integration is modular? Surely most folks are going to go for the entire point-of-sale implementation anyway, are there really that many people who will want to turn off specific features like the loyalty or tax engines?

Yes, as it turns out. It’s actually been, arguably, the best thing about Commerce for several clients. And I think in hindsight, it’s actually quite clear why this is the case. But, for those of you still a bit disconnected from the real power of the a-la-carte modules of Commerce like I was, I’ve taken some time to explain what makes the design so valued.


I Would Like to Stop Adding On, Please

So, a few years back, I ended up trying to learn to 3D model. I downloaded the best rated open-source application—Blender—and got started. Over the years I’ve kept with it, and just recently I’ve started exploring the different addons the community’s designed for the app. One in particular that I’ve enjoyed is a quick AI-driven rigging engine. It’s great, makes animation super easy. The only thing that it asks is that I store my animations in a separate file format. Cool, no problem.

There’s also a secondary addon I’ve been looking to install though, one that makes curves a lot easier to execute on models. Of course, it’s incompatible with the rigging addon. What? But, why, you ask? One changes curves, and the other changes rigging, what gives? As it happens, the curve addon has a bonus secondary feature: an integrated rigging engine. The two cannot be separated.

And so we get to the crux of the issue, I don’t need the rigging engine in the curve addon, I’d just like to be able to make my Utah Teapots a little rounder. I already have a rigging engine addon, and it works really well for me and my workflow. In fact, it’s even a bit of a pain to convert over to curve addon’s rigging engine even if I wanted to do so. Why can I just not install the curve addon’s rigging feature? 

So Maybe Modularity Does Matter

So, you can kind of see where I’m going with this. It’s frustrating to see something in an application you like, but then you’re met with this implicit “convert or die” messaging. It’s annoying when you’re looking for a solution to in-store orders and find a great point-of-sale that does just that—only to be told you’ll have to convert your entire customer backend over to its system. Sometimes, even if you wanted to convert, it would be practically impossible anyway.

I think that’s really what makes Commerce such a desirable solution for some clients. You can pick and choose what you need to use and what you’d really rather not. No ripping apart your whole inventory structure just to get pick-up-from-store to work. You’ve already got an existing POS setup that works well for your backend processing, and you’re not totally ready to swap everything over to a new system? Great, some of our clients are in just that situation—you can start with just the client and sales modules and see how things go. You can take your time spinning up to a full conversion. Add in modules as you need them. Maybe you’re a smaller shop, you’ve got a salespoint you like, but you’re really just looking for someone to handle the payment and tax details as you expand? Cool, Commerce can set you up with the payment and tax modules and you can even expand into loyalty and promotion engines if you like them. It’s a clever system—efficient, yet still quite accommodating.