The Bob Bloom Show #40: Why I Am Not Using The Nooku Framework

Thursday November 17th, 2011


Welcome to The Bob Bloom Show. My name is Bob Bloom from Toronto, Canada. Today is Thursday, November 17th, 2011.

I expected to do bi-weekly podcasts this fall, but with my Club Commerce concluding a proof-of-concept phase, and with the start of its Membership Drive, my podcast schedule has not settled down. It will.

I started podcasting on February 18, 2010. This is my 40th podcast of my “Bob Bloom Show”. In total I’ve produced 64 podcasts!

Of the 40 Bob Bloom Shows, a quarter of them mention the Nooku Framework. Many shows are devoted to it, with interviews of Nooku Framework developers. Many shows manage to weave the Nooku Framework into the conversation. “Nooku” is in the title of many shows. I’ve done a lot of   Nooku Framework promotion.

So explaining to you why I find it un-usable is not fun.

Today’s podcast is inspired by two things: by Nicholas Dionysolpoulos’ laid-back, easy going blog post, “Why I’m not using the Nooku Framework any more“; and, more so, by my own recent experience with the Nooku Framework.

UPDATE  (November 17, 2011): Nicholas took down his article. I looked at the cache, which out of respect to Nicholas I will not link, and read the comments on this cached page. You commenters should re-post your comments in your blogs.

UPDATE (August 31, 2015 -- yes, almost four years later!): Nicholas' article is back up, so I am linking to it. 

UPDATE (August 31, 2015): This article is kick-ass‚Äč

For the first time, I recorded a podcast with Nicholas that I had to  delete. Unheard of! Would I refuse to publish a podcast with David Deutsch, Rastin Mehr, or anyone else? No.  But this time it’s different. As I told Nicholas, I want people to understand that my decision to back away from the Nooku Framework is mine alone. Nicholas is very gracious in letting me hit that delete button.

I told Nicholas that I disagreed with the Ad Hominen of his blog post. In general, I am not a fan of this approach anyways. In this case, I think it diminished very powerful technical points.

My podcasts are synonymous with the Nooku Framework, and I have to explain myself. For all my excitement about the Nooku Framework, my actual experience with it leads me to drop it. This decision is recent, and only by coincidence did it occur at the same time Nicholas was tweeting in real-time about his experience with Akeeba Subscriptions & the Nooku Framework. So, it’s not a matter of “siding with Nicholas” against anyone or anything.


Y’know, I feel compelled to enumerate my Nooku Framework bona fides. To confirm my credentials, to assure that I will be perceived properly. Forget about it. I’m not apologizing for my direct experience with the Nooku Framework that resulted in my decision to drop it.

I don’t apologize for deciding to use WordPress instead of Joomla for my Media site. When I set up my Media site, WordPress was the better platform for what I wanted to do.

Right now, many versions are used to build Joomla extensions, but only one version is installable on a Joomla site. For me, this renders the Nooku Framework unusable.

My Club Commerce is a new limited membership Club for Tienda users. I maintain a Tienda Distro (not a fork!); and, a “Distro Control Centre” component, a separate custom component that is used in conjunction with my Club’s Distro.

My plan is to use the Nooku Framework as much as possible. Why? To use less code and speed up turnaround.

Last month, finally, I wrote version 1.0 of my Control Centre component using the Nooku Framework.

Well, I have a problem. What version of the Nooku Framework do I use? Originally, I thought I should use whatever version Ninjaboard is using, since Ninjaboard is such a well known NFW based Joomla extension. As of two weeks ago when I last checked, the latest Ninjaboard  release is version 1.55 Stable revision 2352, which uses Nooku version 0.7.0 Alpha 2.

Then along came Nicholas’ Akeeba Subscriptions, with Tienda integration. Akeeba Subs uses a newer version of the NFW.

The problem is not that these Joomla extensions use different versions of the NFW. The problem is that one, and only one, version of the NFW can exist on a Joomla site.

The NFW versions are so different that a Joomla extension written with one version will not work with another version.

So, installing Ninjaboard means you cannot install Akeeba Subscriptions.

Using the NFW for my Control Centre component means choosing, on behalf of my Club Members, whether they can use Ninjaboard or Akeeba Subs.

The purpose of my Club is to deliver maximum Tienda technology to my Members. Choosing between one or other extension is antithetical to my Club’s purpose.

So, I cannot use the NFW.

Akeeba Subs 2.0 does not use the NFW. But that does not get me off the hook.

My using the NFW opens up the possibility that other NFW extensions, present and future, will not be installable.

Using the exact same NFW version as Ninjaboard is not foolproof either. I need advanced notice from the Ninjaboard team of their switching to another NFW version. Even that is not enough, because Ninjaboard has a terrific updater within its administration. This updater upgrades the NFW as well as Ninjaboard. Even if I syncronize NFW versions with Ninjaboard, I then have to syncronize NFW updates on individual sites.

This is a general problem.  When one extension upgrades to a newer NFW version and other extensions do not so upgrade, then this version problem rears its head again. NFW and extension upgrades have to happen in concert on individual websites, lest multiple NFW based Joomla extensions require multiple NFW versions.

I think that NFW upgrades should be managed in a separate Administrator component, and not within an individual NFW based Joomla extension.

I also think that this version issue is more a practical matter and less of a hard technical issue.  There’s nothing within NFW that is causing this problem. It comes down to the constraint that only one NFW version can exist in a Joomla site.

Nicholas was way ahead of me about the version problem. His documentation and his download page were very clear that Ninjaboard and Akeeba Subs cannot co-exist. He was on the front-line of this problem. Obviously, there are a lot of Ninjaboard installations out there.

My interest is heighten because I am tying Tienda to the NFW through my independent components. If you need my Tax component for your Tienda site, and my components require the NFW, then to run Tienda, you need whatever version of the NFW that my components use. So, if you planned on using Ninjaboard for pre-sales questions, forget it. You have to choose between Tienda and Ninjaboard — not just between Ninjaboard and Akeeba Subs.

My Tax component is tiny rowboat compared to the size of S.S. Ninjaboard. But size does not matter here. My component is a critical piece of the Tienda site, and is here to stay. If other NFW based Joomla extensions do not work with my NFW version, they can’t be used. It’s as if Tienda shipped with the NFW, and I use the same version of NFW as Tienda at all times.

For me, this version problem is so dire that I have to hold my use of the NFW in abeyance.

The problem of updating NFW based extensions has not even entered the picture for me. Although I think at some point it would be an issue.

The reason I want to use the NFW is to code less, save time, and speed up turnaround. There’s a definite upfront benefit. However, updates will be needed due to changes in the NFW, even when there may be no feature changes to code. So, there are “downstream” costs. I may have 50 little utility style NFW based components. So even a nominal 15 minutes per component to do downstream changes translates into 12 hours of solid work.

The version problem is so dire that “downstream” updates do not matter.

When the Nooku Framework is in beta development, I’ll  see where it’s at with these issues. In the meantime, it is not ready for my Joomla development work.

This is Bob Bloom, signing off, wishing you a profitable week.

You have been listening to a production. Opinions expressed are not necessarily those of SouthLaSalleMEDIA dot com, nor of the organizations represented. Links and materials discussed on air are available in the Show Notes for this show. Information contained herein have been obtained from sources believed to be reliable, but are not guaranteed. Podcasts are released under a creative commons licence. Some rights are reserved. Email correspondence to the attention of Bob Bloom at info at SouthLaSalleMedia dot com.

Monthly commentary and interviews about websites, technology, and consulting. Produced by Bob Bloom, founder and developer of LaSalle Software.

Produced 57 podcasts from 2010 to 2016.

Currently on hiatus.

All Episodes