On the past Wednesday (2005-12-15) I had a chance to interview marcan, founder of The SmartFactory. For those unfamiliar with The SmartFactory you can read about its history and origins
here.
The SmartFactory was recently in the news due to its merger with another big group known as WF-Projects.
Kaotik: How has the merger with WF gone?
Marcan: It actually exceeded my expectations. When Catzwolf contacted me the first time to discuss a possible merger, I was really excited because the WF-Modules were the reasons I started to learn PHP and XOOPS. When I discovered XOOPS about 2 years ago, the WF-Modules were the coolest modules in the community. I was impressed by what a module developer could develop for XOOPS, and I started to learn everything I could. When I started, Catzwolf was probably the most famous developer around and he was kind of a model. So it was something very cool for me and The SmartFactory to learn that he was considering us for continuing his excellent work.
Kaotik: Now with WF-downloads being SmartDownload, in witch direction do you plan on taking it? More features or better consolidation of the existing code?
Marcan: Our first task is to consolidate WF-Downloads' code. We had the amazing help of Mithrandir and Ackbarr to do this. We are now very close to a beta release of WF-Downloads 3.0 which will not bring more features but will be a "coding improvement" version of WF-Downloads 2.05, supporting PHP 5 and XOOPS 2.2.3. Once 3.0 Final is released, we will attack our second task: transforming WF-Downloads into SmartDownloads, meaning we will "smartify" the module, adding all the usual feature of the SmartModules.
Kaotik: Do you have a rough estimate of when 3.0 Final is coming?
Marcan: 3.0 beta should be released probably next week. The hard work has been done and we now need to document the changes we've made, check to see that we have no major bugs, and then package it!
Kaotik: When working on a SmartModule, does the entire team work on every module or are you divided into groups for each project?
Marcan: Usually we are divided into groups but we welcome the input of everyone in the team.
Kaotik: So does each SmartModule have its own team leader?
Marcan: Not yet, but it is certainly something we will consider sooner or later. Before the WF-Projects merger, we were 3 or 4 developers. Since the merger, we are more than 10 people, working on more than 11 projects !
Kaotik: You mentioned earlier about “smartifying” modules, could you elaborate a little more about some of those useful SmartModule features?
Marcan: Sure:
- The Admin interface
- The dynamic meta tags (page title, meta-keywords, meta-description)
- Built-in support for XOOPS Multilanguages
- The module upgrade procedure
- Keywords highlighting search
- And more generally speaking :
- code that is "XOOPS compliant", meaning we are trying our best to use all the classes, objects and functions that the XOOPS core put at our disposal
- and of course, we are trying our best to release quality module, with the least possible bugs
Kaotik: WF-Channel and WF-Links are 2 other projects that have passed to The SmartFactory, what are you planning for them?
Marcan: WF-Links originally was a copy of WF-Downloads, adapted for managing Links instead of Downloads. Since WF-Links always was very close to WF-Downloads , our plan is to recode WF-Links based on our new version of WF-Downloads.
So the game plan is the following:
1. Condolidation of WF-Downloads
2. Release of WF-Download 3.0
3. "Smartification" of WF-Download 3.0
4. Release of SmartDownload 3.1
5. Adaptation of SmartDownload to manage Links instead of Download
6. Release of SmartLink 3.1
Kaotik: I've also been reading about SmartTie, is there any planned release date for it?
Marcan: Unfortunately, no release date yet. But this is another project nearly completion...You see, as I said, The SmartFactory tries everything to release real quality modules. The downside of this, of course, are the delays that can occur...we are always in the middle of our 2 prime directives :
- Release Early, Release Often
- Quality, quality, quality !!!
Kaotik: With a new version of Xoops released, how has it impacted the SmartFactory modules? Were there any issues going from 2.0.13 to 2.2.3?
Marcan: For sure there was. The main problem is that the community was expecting SmartModules to be 2.2.x compatible very quickly even before the 2.2.x code was completed. As I said earlier, we are trying to integrate our module as deep as we can in the core so any changes in the core code affect our modules. We then decided to take 2.2.x more slowly. With the number of modules we are actively developing, we cannot afford to loose time developing something that will have to be recoded in a month because the core changed. So this was the hardest part: people were expecting something that never really completely came. But patience is always rewarded. All the SmartModules will sooner or later all be compatible with the next major XOOPS release.
Kaotik: You being a "XOOPS Core Developer" are you also an active developer in the Xoops core?
Marcan: Unfortunately not. I would like to contribute in the core much more than I can afford. Leading more than 10 XOOPS modules projects is a little bit time consuming
Kaotik: The SmartFactory is sustained by your company InBox Solutions. Is Xoops a good avenue for a profitable business?
Marcan: This was my bet at the first place, and it is still something I’m believing in. Organisations can benefit a LOT from the open source world. Manny of them are starting to use Linux, OpenOffice and other open source software’s. When an organisation needs a web site, an intranet, an extranet or a portal, open source CMS can be a really good alternative. What amazed me in the open source world are the thousands of people behind it! The potential is absolutely unimaginable!
Kaotik: You spoke of quality in coding modules earlier, what tips would you give to new module developers?
Marcan: Mmm, that's a good one. I think the first thing, anyone should do is to look at how the "good modules" are coded. It's the only way to learn; of course, you need a little base in PHP, MySQL and XHTML, but really, the basics should do the trick. Then, look at how those modules are built, and search the forums and the web in general. ALL the answers are out there ! The important thing I see, is to copy "good code" not “bad one” because learning the wrong way is much more time consuming...
Kaotik: Is The SmartFactory open to people who would like to help?
Marcan: ABSOLUTELY! We are actually in the process of switching all our development to a TRUE OPENED development. All our private forums will be opened publicly and everyone who requests it and who has a minimal understanding of PHP, XOOPS and CVS will be granted an access to our CVS.
Kaotik: Anything you would like to say to our readers as a finishing note?
Marcan: Yes. I would like to say a quick word about contributions… Any open source project relies on the people that use it. Without them, there is no project. And without contributions of as much people as possible, the project does not move forward! If there is something you can do to help any of our modules, or any modules at all, or any area of the XOOPS project, please do it! Contact the people in charge, explain your ideas, but moreover, if you can, REALISE THEM! This is what open source is about! You need something? You do it and if you can't because you don’t have the knowledge, help in an other area and you will find people willing to help you !
It’s surely a “cliche” but it perfectly resume my thoughts on the subject : Don't ask what the XOOPS community can do for you, ask what you can do for the XOOPS community !
Kaotik: Thank you for taking the time to do this interview
Marcan: It was my pleasure !