Bob: Welcome to the 45th “The Bob Bloom Show”. My name is Bob Bloom from Toronto, Canada.
Today is Thursday, January 12th, 2012, my first podcast of 2012.
Jeremy Wilken is a first time guest, and my first guest of this new year. Thanks for being here, Jeremy.
Jeremy: Thanks for inviting me.
Bob: Today is part one of a two part podcast with Jeremy. I think Jeremy’s doing something very wonderful, putting a lot of effort into a Joomla distro and what is a Joomla distro?
Jeremy: Well that’s a tough question, some people will disagree slightly on what exactly a distribution is. Distro means distribution first off, but there is other terms known as forks, and distributions are kind of the two big terms.
A distribution is, in my definition, is where you take a piece of software and you alter it within the same confines of what the software currently exists in, so you keep it within compatibility, you keep it along the same lines – you make tweaks of course, you make changes, you maybe add some stuff, you can remove some stuff, but you’re keeping it in the spirit of the original project and you’re keeping a lot of the compatibility so that they are fully able to work with one another. So, if someone knows one project and they know your distribution, chances are there should be little to no resistance getting to know it.
On the other hand a fork would be taking software and you might still continue to develop in the same original spirit but you’re breaking ties to that original project and you’re not just with the code but with your philosophy and your communications. So it’s taking the project and instead of starting from scratch you’re taking something that exists and starting with that down your own path. So that’s to me the biggest thing – the difference between the two and really where I think a distribution fits into the scene.
Bob: Your Square One Joomla Distro the url isSquareOneCMS.org and at the bottom you describe that we’re not a fork, we’re a Distro and we’re keeping the integrity of Joomla. My question is: when Joomla updates, do those updates get into your Distro?
Jeremy: Well, when we talk about Joomla updates there are sort of two methods there. Jo0mla updates through the update manager inside of the system when you log in to the administrator, go to the extensions manager and hit update, that information actually has been rewritten, well not rewritten, but it’s pointing to a different update system. So Square One has its own now which is essentially the same except for the files point to the Square One versions of the files. So that means when you update inside of Square One you will be getting the package versions of Square One, not of Joomla and the other aspect of that is through the actual code updates which are done through GitHub and all that code is stuff that I’m managing on the side, most people don’t need to think or worry about that, but for the person using the software it will seem very much the same process as Joomla when you update the patches will be applied automatically, but the process will actually include fixes to Joomla and Square One in that update package but that will be managed by me separately.
Bob: I think going to your Git Hub – github.com/square-one-cms – is great, it’s great to go through all the commits and all the notes.
Jeremy: Thank you.
Bob: Actually I find it very very helpful in understanding what you’re doing. I think your most favourite word is remove. [laughter]
Jeremy: Up to now it’s been a big one, yes.
Bob: “Remove” and “clean”, and I thought well if and when I use your Distro, I’ve always wondered where the updates come from, so when I see that there’s an update in Joomla then I should wait for your update.
Jeremy: Correct. So you will never, if you use Square One, you will always go to Square One either to the website or the update system to get updates or fixes. They will, since we’re based on Joomla it’s going to include a lot of the fixes that Joomla has but you will still see everything centralized in one place and that’s to keep it clean otherwise there could be conflicts. So, for example, if you took Square One and had it on your website and then you applied the Joomla patches on top of it instead of the Square One patches, there is some stuff that’s different, that if it’s not accommodated for, could break your site. Or for example, if you’ve removed certain extensions and it tries to update them, it’s going to throw an error because it doesn’t know what to do. So Square One will separate those packages out and make it possible so that only the pieces that are relevant are being reapplied in the fixes.
Bob: Because the updates, a lot of the updates apply to parts of Joomla that you are removing.
Jeremy: Correct, so in, I was just looking at this the other day and it hit me that a lot of the work in the betas has been related to only two or three extensions. So the new smart search component has had a lot of commits and as well as some of the other additions. So a lot of the focus of the Joomla code goes towards, not towards what I’m considering the core but to the optional extensions, I should explain what that means maybe in a moment. But to the extensions that I consider optional and that I’ve removed from Square One – that’s where a lot of the attention actually ends up going just because that’s where a lot of code is – it makes sense, especially when something is new. So for example, if Joomla comes out with 2.5.0 and then release 2.5.1 however many weeks later – there may not be any issues related to Square One. It might be only related to the extensions, it is unlikely there’s probably a good chance that no matter what, I’ll still need to provide a release but once in a while especially as the Joomla gets more and more stable after each release, like 1.5 right now, it hasn’t seen an update in months, it’s not having the reports for quite some time and the last five or six updates to 1.5 have been fairly minor. So over time, those fixes and changes may not be completely necessary for both systems because I’ve removed pieces and Joomla still has them so Joomla would need them but maybe not Square One.
Bob: You know what I love about what you’re doing? You’re saying I’m just going to take it and I’ve got a vision of what I want it to be and I’m just going to do it. I’m not going to ask them to take out stuff from the core, I’m just going to do it myself and see how it goes. I think more people should express their vision that way.
Jeremy: Sure and I have asked, I’ve talked about it I’ve raised it in discussions several times and a lot of times I’m met with resistance and there’s resistance about what people need and what people want. Do people expect this to be there, do people need this, what are we going to do if we take it out? How do we ease users into that transition? And it comes down to what you believe to be the truth as far as how users handle things and we don’t really know anyways how everyone uses Joomla but the only way for me to express my full vision is to actually go out and prove what it is and prove that it can work and if it’s not accepted by some people that’s the way, that’s how software is. Some people choose Joomla, some people don’t and some people will choose Square One and some people won’t. But it will be the vision that I have laid out and it will still be based on the software that I know and base my living around but, it will be an alternative view of how it could be done.
Bob: Well what you’re doing publicly is what people do privately. Like sometimes I’ll go to the database and I’ll just remove the menu link to banners and those so that the client doesn’t see them, so I don’t have to have questions on it and it doesn’t look cluttered. But the fact that you’re doing it publicly for everybody to use I think it’s great and I applaud you for the effort and you’re first. But my question is: why do it for the public, why have such a massive effort?
Jeremy: You know, that’s a good question, and originally I just did it on my own. The whole thing started with, they put Joomla on GitHub and that was my doorway really. It was the opportunity that provided me using Git versus Subversion, which is a separate topic, but basically the advantages of using a service like GitHub made a lot more things possible that were much trickier or technically more, just take more work. So now I’m able to basically take Joomla and I sat down with it and I said well I just want to get rid of a bunch of things and see what happens, I spent a couple of hours just seeing what would happen and seeing if it was a good idea or not and it seemed to be working out.
A lot of the extensions, they were already set up so they could be quickly removed and in fact almost all of them are made available separately now so I was able to extract them from Joomla and then package them separately so if you want banners, well you can still reinstall it and I found that out over one night and a lot of the reason that I’ve put it together in that start was it made me think well I can make a light version of Joomla, but then I realized that there’s more than that there. There’s something here that other people can benefit from.
If I were to do this on my own always in the quiet, there would really be no reason for me to do what I’m doing, I would just basically fork Joomla and make my own little copy of it. That’s a very different philosophy and if it was just for me then it wouldn’t matter if I broke a compatibility with something as long as the things I needed, worked. But my desire was to actually improve hopefully, be able to provide back to Joomla improve things backwards so if I make an improvement and Joomla’s management says you know that’s a great idea or I offer it to them or however that works, if I make an improvement they should be free to take it and it should work and at this point in time everything should be fairly well synced. So, I keep it open and public because Joomla is that way so I’m keeping in the same strategy as Joomla being open source, well it has to be open source as I’m keeping the same license, I’m keeping it open and available, there’s no reason to charge for it because there’s nothing in it outside of some tweaks that I’ve made that are new. A lot of it is pretty much Joomla – 98% of it is still very much the same original stuff and the few things that I’ve changed are only to improve or enhance or add a little bit of functionality that’s missing. So charging for that 1) doesn’t seem right, 2) if I want to get help I would like to build a community where people are active in helping to develop, improving things and those kind of things can also be offered back into Joomla. If I did this all privately you wouldn’t have any of those opportunities, it would just be me kind of doing my own thing whenever I went with it was fine but this way it keeps me also more accountable to a vision, it keeps me more accountable to progress and if it’s in public it could benefit a lot of people.
Bob: I feel like you’re kind of bringing a practice out of the closet, because so many people I know tweak Joomla before they put it on a site, in some way. But you have it in public, you have a website and there’s a few people that are helping you. I think that it would be great to use your SquareOneCMS and then on top of that I have ideas of what I want to do with it. But I thought you should charge for it because it is a value added, and you’re maintaining the updates.
Jeremy: Well sure, there’s some work involved with that and I’ve always spent time helping out with Open Source projects, it’s not always consistent in any way, how or where or when, but it’s always been a part of my process because so much of what I know and what I do is based on it and so it’s only fitting that I spend some of my energy to keep it going, improve it, help out where I can, so charging for SquareOne doesn’t fit with my vision. If I were to develop customized extensions that do really crazy things, you know whatever possibilities there might be, those could be separate things I don’t know. I’m not to that point, right now I’m thinking that it’s far more likely that it will be sustained through a community than by through finances. So there’s no real financial incentive that I can see at the moment to do so.
Bob: I thought maybe doing your Distro would help you in your own consulting, so is that where there’s a good payoff for you?
Jeremy: I don’t know.
Bob: It’s like you kind of do it anyways so if you formalize it, it helps you with the other things you’re doing.
Jeremy: Well sure and I’ll start using it as soon as I have the stable version. It’s not out officially yet, so people haven’t had a chance to really play with it yet. There’s a few people I know who installed one of the test versions but it’s still not quite stable because it’s being based off of Joomla 2.5 which is not stable yet either, so until that happens, you know, we’re still kind of waiting calling in the bug fixes and things as we go. So the ability to get I guess what you say client work perhaps from it, yeah that’s possible I suppose. It’s more of a if it’s something that I can focus on and do well that I know will always open more relationships, more opportunities it doesn’t matter whether they’re business or not. Most of my business is based on the relationships that I have established over the years, most of them through Joomla, so those relationships often are what support my business in some way or another either through referrals or actual direct work, so I spend a lot of time with those relationships and I think SquareOne’s also kind of a way to show and further develop some of those relationships as well and maybe make some new ones.
Bob: Well put. Well, yes it’s, I certainly saw what you were doing and was very interested, and I had not seen anyone use it and I loved how you were using GitHub, I thought you were really paving the way.
Jeremy: As far as I know it’s the first, well as far as Joomla goes, it’s the only one that I’m aware of that’s being done in the fashion that I’m doing it as far as taking the CMS and then keeping as much compatibility as possible, making some tweaks and still making it available and there’s some other distributions or forks out there that have different philosophies, so yes it’s been a bit of a learning curve too because there’s no manual on this and sometimes I don’t know the right process to do something so I have to make it up as I go and for the most part things have gone pretty well, but once in a while I have to go back and revert my changes or look up new Git commands to figure out a new fancy way to accomplish some task.
Bob: I love that, I mean the leadership and the example, but also Joomla 2.5’s not out yet, the final – so you have to figure things out as you go and yes in using GitHub I think that’s very important everybody and you’re tweeting as well as you go along and I could see how you’re progressing and then you added more branches and it’s beautiful. It’s the way to go.
Jeremy: Well it’s a matter of management and at the moment being on my own kind of helps keep things a little bit internal I can focus a lot better, I know what’s being done if things are to get distributed out into a larger group of people helping to maintain, then again I’ll have to adapt and learn how to manage the team or get a team to help manage themselves and it’s going to be a learning process throughout, but considering that it’s been really about two months that I’ve really been focusing on this as a possibility of being an Open Source project and a distribution of Joomla, there’s been a lot of interest but until it’s there’s sort of that Catch-22 where people are not quite ready to take it seriously until it’s ready for them to be able to use for sure and so it’s been a lot more work getting to that point, I think once we get there we’ll see a lot of exciting things happen I think.
Bob: Well, it’s just more like Joomla’s 2.5 isn’t out yet, but you took the right time to get into it.
I wanted to close off Part One now, even though we’re a little early and get into some other things in Part Two, so we won’t get interrupted.
Bob: Jeremy, thank you for being on my show today.
This is Bob Bloom, signing off, wishing you a profitable week.
You have been listening to a SouthLaSalleMEDIA.com 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.