LaSalleMart #30: From Joomla To WordPress And Laravel

Sunday June 1st, 2014


Welcome to my June 2014 "LaSalleMart News" podcast, episode number thirty. Wow, thirty podcasts dedicated to updating you on my LaSalleMart ecommerce technology.

My name is Bob Bloom from Toronto, Canada.

At the top of each month I update you on LaSalleMart; and, on my other projects.



This transcript is not the full e-broadcast this month!



There are two reasons I compose my podcasts beforehand: one, because I stink at ad-libbing; and, two, for SEO juice.

Composing this month's podcast has, again, reminded me that in some way, composing the entire podcast beforehand has serious downsides.

First of all, the podcast is a sound medium, and writing everything down first tends to lessen the sound. Basically, it sounds like I am reading, and that is, admittedly, not an attractive thing to hear.

Secondly, I cannot capture everything I want to say in the manner in which I want to say it. My own conclusion of the best podcasting - quote unquote -  sound is the "conversation". You know what I despise about morning radio? The fake ersatz conversational tone the announcers assume with the listener. Their phony attempt to connect emotionally with their listeners. That's why all the advertisements for morning radio is how fun and friendly these announcers are. Of course, they are connecting to a mass audience, and the words "intimate" and "mass" don't go together. It's such a farce.

However, you and me, we have a real connection. Some of you actually do know me! Some of you have met me. Some of you have at least talked to me on the phone. Everyone else, though, has an interest in what I am up to. The topics matter. I am not a professional morning radio announcer hustling phoney personal bonds with my audience to boost my annual bonus. I am an ecommerce consultant, and a pretty good one at that, and a software developer. And you know something, I don't make the most of it. And you know why? Because I am a not a professional podcaster!

Which is the charm, and the curse too. Putting this podcast together, I just got too frustrated trying to put everything into words. And that frustration is going to come out in my voice when I read it out loud to you. On the other hand, I am not a pro. I pause way too much, I say "uh uh uh" all the time, and I cannot moderate my irritating little laugh that drives people crazy.

In particular, I want to share with you my weird and wacky experience I've had with Joomla these last two months. I want to share with you my insights about moving to WordPress. I want to share with you my crash course in the Laravel Framework, including my experience at my first Laravel Toronto workshop.

Writing it all down beforehand is hard, in part because my mind goes on tangents. If I could express those tangents when I record my podcast, whether they are written down or not, then my podcast would be that much more interesting. Even when I write little notes to go on tangents, when I am recording I cannot always get that tangent going. Hey, what was that idea, exactly?

But there's a deep dark secret to why I stink at ad-libbing while recording my podcasts. There's a deep dark secret to why my written scripts get all tangled up. There's a deep dark secret why I find putting these podcasts together so frustrating,

That deep dark secret is called: getting sued. Secondarily, the deep dark secret is called: pissing people off.

The deep deep deep deep deep dark secret is that people are insanely sensitive.

I am not doing these podcasts to get sued for libel (or whatever). I am not doing these podcasts to get people angry.

What is particularly difficult with this podcast is the fact that I know that it is so easy to be perceived as having "sour grapes" about Joomla. Yeah, I know... here's a guy who is unhappy and just complaining like a sore loser.

What I almost always do is censor myself. I either avoid topics (and avoid 'em I do); or, I use neutral inoffensive terminology.

As usual, and it happens all the time -- all the time! -- that I spend significant time writing really juicy stuff that I know is going to piss someone off. Oh, to get this stuff indexed in Google, my friends! But, invariably, I rewrite it. And then rewrite it. Then rewrite it again, until I pound the reason for it being so interesting in the first place into dust.

You won't believe the effort these podcasts take me! Last month I did three full rewrites, and over 20 takes. For once I had a real reason, though: the day I recorded my podcast, WordPress announced $160 million in series "C" funding. I extemporized my podcast in order to talk about this very significant event that was directly related to what I had prepared -- but in so doing had completely botched my podcast. But, I noticed that I was expending, even for me, an inordinate effort censoring my script.

This month, my usual self-censorship produced an unusu, but perfectly logical, outcome: the podcast does not make sense without the stuff that I know is going to piss people off. Leaving out all the interesting stuff that led to what is a major life changing decision renders the entire podcast void of context. The prose that survived my self-censorship made no sense. Instead of weaving through a tale in a compelling intimate conversational tone, I end up flitting from one independent topic to another independent topic. To be brutally honest, the outcome seems to be to perpetuate my podcasts.

I am not podcasting to podcast. It's purpose is to provide you with info and insights of my projects and professional life as a way of marketing myself.

Well, this month, the rubber meets the road. Either my podcasts are itself the end; or, I get back to basics.

My goal is not to piss people off. My goal is not to offend. But, in the end, to tell you the truth, I am getting incredibly offended by being so sensitive to other peoples' sensitivities. In fact, I am overly sensitive to other peoples' sensitivities.

I am not going to now over-compensate by purposely seeking to offend. I am going to offend simply by stating facts. Those facts hurt.

It is a fact that the Joomla project officially announced its abandonment of its Long Term Support policy without simultaneously announcing its official versioning policy to replace it.

It was not what the Joomla project did in the end that sunk it with me. It's what it did not do that did it in the end.

Even though I believed my own lyin' eyes, I needed to make sure that I did not, somehow, miss something. This is why we have local Joomla groups, right? I can go to my monthly Joomla group meet-up, actually talk to knowledge-able Joomla professionals face-to-face, and get the "real deal" on things.

So, yes, I made a point of attending my local Joomla group meet-up in April. Knowing that the leader of our local Joomla group would be there, I made an especial point of attending -- not necessarily an insignificant thing given I have other volunteership commitments and other things going on in my life.

The opening presentation was devoted to the change in versioning policy. After the official workshop, there was the shmoozing meet-up, which yielded bountiful information.

So, maybe I'll sound like I am full of sour grapes, and maybe I am at that, or maybe it has nothing to do with "sour grapes". But, I did my due diligence.

Usually, I sit beside "the regulars" at these Joomla Toronto meet-ups. Why? Because I'm a regular too. I get there a touch early usually, chat up the gang, and then we sit together. At April's meet-up, I wanted to see everyone's body language so I sat away from the regulars. It is the regulars who are most in the know, and I needed to know what they really thought of what was going on. Well, their body language was pretty clear, which was consistent with their confusion. No, there was no policy white paper or blog post or something that enunciated the new versioning policy.

The Joomla project really did abandon their LTS policy without simultaneously enunciating its replacement. Was the new policy argued, after the official policy was abandoned, in the Google Group? Why, yes it was. Do you know what that did to my morale?

So, after spending months and months developing, from scratch, an innovative Joomla ecommerce technology based on the superb Akeeba Framework for Joomla, and based on Joomla 3.2, to be used on the upcoming Joomla 3.5 LTS, I see that the LTS is dropped, with no official announcement of its release.

Do you understand what it really took to get LaSalleMart 3.0 going? Do you understand what an incredible commitment it was to Joomla 3.5 LTS? What reaction do you think I'm going to have when an explicitly termed "Long Term" version policy is abandoned, to be replaced with -- oh, there is no official replacement version policy? Do you think that my family is disinterested what I do? Do  you think that I am all alone here in Toronto with nothing better to do than to program gorgeous new innovative Joomla ecommerce technology for kicks? Do you think that I'm not taking the absolute best care I possibly can in creating it? Do you know the investment in learning LaSalleMart 3.0 represents? Do you know the nights I've spent figuring out how I should use FOFv2 with Joomla v3.2?

You know, I did not even realize that the Joomla 3.5 LTS version was even in jeopardy. Did a missive come through to the local Joomla Groups for feedback? Was there an article or something about it? What did I miss? Am I not on email lists? How is it that being on the exec of my local Joomla Group, that no one had brought it to my attention that the LTS version was "on the table"? Furthermore, how would such a thing not be mentioned in the FOF project, where I am on not one, but two lists? Am I not following a zillion Joomla people on Twitter? You know, just writing this down is pissing me off! How could something this major in Joomla, that so intimately affects me, have side-swiped me? This is why my my number one question at last April's Toronto Joomla group meet-up was "what did I miss?". Well, I missed nothing.

I state again that the Joomla version policy explicitly stated the words "Long Term". The policy was an explicit long term policy. It was this long term versioning policy, in effect for years, mimicking the ubuntu policy, that assured me that my family's very significant investment in LaSalleMart 3.0 would achieve the Return on Investment we expected of it.

Even so, with all that, if the new versioning policy was changed to accommodate new pressures, yet preserved the long term nature of the "LTS" policy it was replacing -- or, had a variant -- then all would be fine, right?

Well, there was no new versioning policy. For about two weeks. So what do you think is going to happen here? I'm going to panic. And that's exactly what I did: I panicked. Where there was clear expanse of sky was replaced by looking straight into the abyss.

My confidence in the Joomla project evaporated right then and there, and nothing in the almost two months hence has restored any confidence. In retrospect, and what I did not realize before, is that my confidence in the Joomla project took a hit already.

As I saw it, the only way to realize a return with LaSalleMart was to change base technologies. The probabilities had changed. And so much so, that staying in Joomla was more risk than leaving it.

The versioning strategy vaccuum existed for two weeks. Then, two articles were published on the Joomla website. They were dense with text and badly formatted. Again, to tell you the truth, my eyes glazed over. I saw they made a reference to the WordPress version policy.

Y'know, does WordPress mention Joomla in their official policy edicts? "We have a great version strategy because it is just like Joomla's". Oh, another one: "We have a great feature set because it is so much like Joomla!". Oh, no, I am lying. WordPress does nothing of the sort. WordPress' version strategy is that the newest release is "THE" release. That's it. There's only one up-to-date release and that is whatever the latest release is. And that release will not break the previous release. That's it.

Joomla's version policy mimicks ubuntu. Ubuntu is the most widely distributed version of Linux. Ubuntu is crystal clear what its versioning policy is. It has a nice chart. It is crystal clear, powerfully brief, statement on its recently released long term version 14.04: we will support this version for five years. That's not a typo, it really is five years.

I actually do not think Joomla is mis-managed. What I think is going on is that this is what Joomla is.

What Joomla is, how I see it... Joomla is an open source project where individuals, or individuals banding together, vie for control. Not one single person or group has absolute control.

The code manifests this -- to quote WordPress, just for irony's sake -- like poetry in code. And I've accepted this.

The project's management manifests this. I always thought that this was inherently good because the technology changes, and so Joomla had a way of translating the pressures of a changing technological world into the project. Now, the way I see it is that I am wrong. All that happens is that the office politics morph into the project and into the code.

So, it was not -- repeat not -- mis-management that caused this versioning stuff to happen. That's just how Joomla is. The person or group that prevailed made the abandonment announcement. The person or group that prevailed -- or perhaps that did not prevail -- prevented a new policy from being simultaneously announced. Basically, it's just office politics. For whomever, it was critical to slay the existing versioning policy in order to pave the way for whatever was to follow.

To me, you do not kill an explicitly stated "Long Term" versioning policy to replace it with a long term versioning policy.


Still, I very much wanted to salvage LaSalleMart 3.0. Weeks away from its first release, I really really wanted to release it and get some ROI from it. So, I went searching for after-the-fact justification to continue developing it. And I am going to tell you that I was, and still am, shocked at the affirmation of my decision to leave Joomla.

I harp on the market share statistics because I had no idea that Joomla's market share was abysmal. In 2007 I saw Joomla as the coming thing. It was the coming thing, and was number one. But I had no idea that since 2012, it's share was plummeting. WordPress was taking it's share away and running away with the CMS market. Although I felt the market share decline, I did not realize how bad it was. WordPress has 60% of the CMS market.

On the day I recorded my April podcast, WordPress announced $160 million in series "C" venture funding. I knew they had "A" and "B" funding but is was in 2008! Time flies, eh! I read the articles, and it wouldn't surprise me one bit if WordPress had 70% in 12 to 18 months.

All remaining CMS in the entire world have 40% of the CMS market. That's going down to 30%, of that I am sure. Of all the remaining CMS's, Joomla is #1, with 8.4% of the entire CMS market.

Ah, but Joomla is really three separate CMS's, not one. There's Joomla 1.0 and 1.5, with half of all Joomla sites. Yes, half! There's Joomla 2.5 LTS, with 40% of all Joomla installs. Then there's Joomla 3.x series, with 10% of all Joomla installs.

Which means that Joomla 1.0/1.5 is actually #2 in market share behind WordPress.

Which means that Joomla 2.5 is actually #3 in market share.

Which means that Joomla 3.0 shares the bronze medal in market share with a lot of other CMS's you forgot about or never heard of.

Joomla 1.0 and 1.5 represent the days when Joomla was the number one CMS in the world. Those days are long gone.

Joomla 2.5 represents the Joomla at its absolute peak, when WordPress equalled Joomla's market share. Joomla 2.5's end-of-life is slated officially this coming December. Who is going to build a new site in Joomla 2.5 at this stage of the game?

Joomla's fate rests with version 3. Just to maintain Joomla's overall market share, one new Joomla 3 has to be built for every Joomla 1.0, 1.5, and 2.5 that is attritioned out. I myself have three Joomla client sites that are moving to WordPress by year-end. Plus, my own will likely not be in Joomla. So, that's four new Joomla 3 sites that need to go live just so Joomla can maintain its overall market share.

Then, Joomla 3.0 needs explosive growth to grow its market share. There are very few CMS from which it can take that share from. So, either it grows the CMS pie, or it takes it away from WordPress.

Only after my "abyss" moment with Joomla did I see the market share numbers -- I was not paying attention, eh!

And then, WordPress announced their new funding. WordPress did pretty well with their $7 million funding, so I figure they just might do ok with their new $160 million funding.

As well, there are new kids on the CMS block. It's nascent, it's under-the-radar. It hasn't hit it's stride, but it will. How much of a niche will Laravel based CMS get? There are barriers to installing a Laravel CMS on a shared host, but I think what we may be seeing is something new. That will entail another podcast, but it is not without significance that one of the three topics at the recent Laravel Toronto meet-up was "deployment".

The problem for Joomla is that any new entrant to the CMS market that gets any traction, will take it from Joomla. No one is going to challenge WordPress -- there is only the remaining 30% to 40% to take it from, and Joomla is the only significant player to take market share from. Yes, there is Drupal, but Drupal has set themselves beautifully as a niche player, so they will hold their own. Drupal is a red herring anyways, it is Joomla that is most vulnerable.

Joomla's CMS market share is either going to fall, or it is going to rise. The other CMS' market share are so marginal that it doesn't matter statistically.

WordPress does not have the attrition risk that Joomla does. In fact, WordPress now has automatic updates (which I hate), and 97% of all WordPress updates occurred via auto-updating (yes, I am now part of the 3%).

The reality is that Joomla is in a turn-around scenario. It is in a long term secular market share decline. If it does not stop it's decline, then it will keep declining.  If Joomla does not turn around, it will keep going in the direction that it is going. And that direction is down.

Check the stats for yourself.

I am kicking myself for being so invested in Joomla that I did not see the raw market share reality.

Although, I did see Joomla 3.5 shaping up to be a really really good ecommerce platform, essentially due of the inclusion of the Akeeba Framework for Joomla in Joomla that started in Joomla 3.2. This framework really made LaSalleMart 3.0 tick. Things were cooking!

I was pretty shaken by the author of this superb framework refusing its inclusion into future Joomla versions. Abandoning the long term version with no new version policy announced at the same time, which happened after the Akeeba Framework announcement, was too much.

I am sure that someone in the Joomla-verse is going to be offended. Well, too bad. What happened really happened, and that's my analysis.

Just to leave no lose ends here, my interest in the Joomla Framework has dropped to zero. If anything, my crash course in Laravel has increased my understanding of the Joomla Framework. This understanding does not attract me to the Joomla Framework, nor lead me back to Joomla.

There is something that just came out in beta, called October CMS. From its home page:

October is a free, open-source, self-hosted CMS platform based on the Laravel PHP Framework. It allows developers to have full self-expression and the freedom to build web applications however they want.

I like that they say "developers" and not "users". I've not gone through the code, but I am intrigued. Laravel as a community, the way I see it, has hit an inflection point, of which I am a part. The OctoberCMS project is but one of a growing number of Laravel based projects. Laravel is itself an upstart, now four years old and maturing. On this momentum, if any Laravel based CMS gains traction, it will eat into Joomla.

Joomla has a CMS, and it has a PHP Framework. Yet, it did not lead the way with a CMS based on its framework, leaving this intiative to others.


I never wanted to create an ecommerce technology as a WordPress plugin, and I still do not want to do so. WordPress' codebase is long on the tooth. On the other hand, Laravel is a PHP Framework focused on creating web applications.

Laravel is an upstart. Four years ago its founder had a vision and went for it. Four years hence, it has matured and has gained enormous acceptance within the PHP community. It is very modern. Laravel underwent enormous changes in the first versions. Only now, in its version 4 series has it settled down. It is pretty clear that the community told the Laravel founder that he stabilize the code or the community will reject Laravel. That was version 3, if my history is correct. Version 4 represented the last technology leaps.

Now, Laravel is concerning itself with, the way I see it, adoption. Laravel's founder is launching little businesses, such as the Forge for deployment. I applaud him for releasing Cashier, a subscription ecommerce app he developed for himself. I will be studying this code too. Now that Laravel is here to stay, has matured, has stabilized, and has achieved an inflection point of adoption, the Laravel community is starting to crank out the apps. Again, this is how I see it.

I am well on my way to proficiency with Laravel. Once I downloaded it, messed up the install, and became totally confused, I decided to pretend I was taking a college course. I started reading up on the framework, its architecture, the approach it requires. Laravel demands that it be approached in a certain way in order to make the most of it. Learning this approach is not a trivial effort, but it is enormously satisfying. I am finally learning to program proper web applications. Not just put together websites. Not just integrating extensions or plugins. Not programming extensions. But, actual web applications using a modern PHP framework. It is enormously satisfying.

Laravel opens new opportunities. I suspect that these opportunities will avail to clients who have more of a start-up mentality than just a "build me a website" mentality, if my experience at my first Laravel Toronto meet-up is any indication.

In a few weeks, I will be at the point where I can plan out LaSalleMart 4.0 with Laravel. Having the product front-end reside in WordPress as a WordPress post is an attractive proposition, initial LaSalleMart 4.0 development will ignore WordPress. My initial inclination was LaSalleMart 4.0 touch WordPress, but in the short term, LaSalleMart 4.0 needs to come into existence first. Then, we can talk WordPress integration - for which I have a few idea.

Something that I've had on my mind for a while is LaSalleCast and reviving my "The Bob Bloom Show" podcast. Once I have LaSalleMart 4.0 going, I want to get LaSalleCast off the ground. LaSalleCast is my rendition of an e-broadcast platform, which, as you've guessed by now, I want to do with Laravel. WordPress has serious strategic strengths for blogging and e-broadcasting, so I may do some serious integration right off the bat. On the other hand, there is a chance that I will not integrate right away. It depends, and I'll have to deep dive into this in the fall on another podcast.

LaSalleCast is something that I am developing for myself, yet will be something I will offer clients. LaSalleMart is something I am developing for clients, but will be so powerful that -- I kid you not -- I am already searching for an e-business or e-businesses to run on it. That is how kick-ass I know LaSalleMart 4.0 will be.

I need workflow for my podcasting -- it is sorely missing. As well, I need some type of scheduling and advertisement management. So, the first main emphasis of LaSalleCast is back office functionality. So, WordPress may be the face of my podcasting, with the back office in Laravel. We'll see.

There is overlap between LaSalleMart and LaSalleCast, such as the email notification. It's too early at this point to say for sure, but what will likely happen is that I will create packages for certain function so that both can use them. As well, these packages will be available to clients.

Something that I've wanted to do for a long while is converge e-commerce with e-broadcast. Finally, this vision is in sight.


So, if it seems like I'm happy, well, I am happy. I am very much at home with WordPress. And I am starting to really take to Laravel.

I am in the early stages of working with a consultant I've worked with for many many years on WordPress plugins. In June, I will start working on tax plugins for WooCommerce for California, Canada, Florida, and North Carolina. Based on my existing WooCommerce tax plugin, which needs sprucing up for general distribution. Yes, I've already written a WooCommerce tax plugin!

We are discussing other WooCommerce plugins. It's just too nascent right now to announce anything. Suffice to say that I am not gliding into WordPress; rather, I am diving into the deep end of WordPress and WooCommerce.

My ecommerce specialties and business plans are settling down beautifully now. It just feels right. I do not know quite how to describe it, but it just feels right in a way that it did not quite feel before.

I want a few more weeks to focus on getting my new projects off the ground; then, I want to update my LaSalleMart dot com site to be my consulting site. I do not have a decent site for marketing, which is crazy but reflects the lack of stasis I was feeling. Now, it feels right, the projects are right, the focus is right. It's coming together now. And I want LaSalleMart dot com to reflect that and to attract new clients.

SouthLaSalle dot com will be my blogging site.

SouthLaSalleMedia dot com will remain as my media site.

LaSalleCast dot com may end up a live site in the fall -- we'll see!


In order to track all these projects, we are using It's not the prettiest project management and software development site, but it is my site of choice. For the first time, I am using Atlassian in a team setting. My Atlassian skills are already increasing as a result.


Check my blog for in-month updates. I've made the mistake of not posting updates to my blog for long stretches of time, and I will not be making the same mistake again. Get my new blog posts in your email by subscribing to my Feedburner email at Yes, things are starting to really cook to the extent that I am actually hustling my blog's Feedburner.



This is Bob Bloom, wishing you a profitable month.


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.


Thirty-seven LaSalleMart News podcasts were published between January 2012 and May 2015, reporting the progress of my LaSalleMart software.

   All Episodes

Note: Starting in the Fall 2015, LaSalleMart News podcasts continue as