Interview – Jeff Lewis of YaBB SE


    Jeff Lewis is the lead developer at YaBB SE, and was previously the lead admin and programmer for the original YaBB team.

    YaBB — an acronym for "Yet Another Bulletin Board" — was developed in July, 2000 by a programmer named Zef Hemel, and was one of the first free Perl based BB scripts. The original YaBB team benefited from the skills of several experienced programmers, including Christian Land and Matt Mecham. Matt later went on to write his own script, Ikonboard, and now leads the team for Ibforums.

    While Jeff began on the YaBB team, he later started a project to convert YaBB to PHP and MySQL. The project was named YaBB SE (the "SE" standing for "Splinter Edition") and was released to the public in the Fall of 2001. The product was released under Open Source agreement, as had the original YaBB.

    While helping one of my clients customize YaBBSE, I happened to talk with Jeff about a few things, and what he told me about the current progress of YaBBSE seemed really promising. The interview with Jeff covers:

    • The background of YaBB
    • The birth of YaBB SE
    • The development team and resources
    • The challenges they faced in developing the product
    • Development plans and support for new languages
    • Buy-outs and take-overs
    • Competitor products and the market direction
    A Brief History of YaBB SE

    How did you get into software development? What areas did you work in before you started with the YaBB project?

    I really got into software development when I began to create applications in Visual Basic for my online fantasy baseball league: developing tools to create online drafts, team management and more. Before that, I’d programmed in BASIC on my old C64, and in Pascal during my high school years.

    So, prior to YaBB, I worked on my baseball project in my spare time, and worked full time as a System Administrator for a pharmaceutical company. I wrote login scripts to allow guys to update team news, trading blocks etc — and this was all done with Perl. I was also writing freelance projects (including the creation of an application for a retail store in the area).

    Then I began to look for a new forum for my league and came across YaBB (which was originally started by Zef Hemel). I got involved in it, did some work, and eventually took over for Zef when he decided it was time to move on. At that time, YaBB was only Perl and flat files.

    But most hosts began to cease allowing the use of forum scripts that used the Perl/flat file combination. At the same time I was really into PHP, so the natural progression was to go to YaBB SE. The actual idea was brought up by a programmer named Joseph Fung. He mentioned that he’d thought of this, and I said "Yes, let’s do it". So one weekend he came over and we converted most of the Perl version to PHP.

    The original YaBB is one of the most widely used scripts on the Internet, and the YaBB community forums are a testament to that, having one of the biggest multi-language user base memberships of any bulletin board community. When you joined YaBB as Administrator and Project Leader, what changes did you bring to the then-current development of the script? And what were the biggest challenges that you had to face in moving the script forward at that time?

    YaBB was facing some tough times. There was some internal bickering and a few disputes, as well as a general lack of direction, which was understandable, as Zef was trying to back off to concentrate on other things. YaBB was also in need of a bit of a financial injection to pay for hosting costs.

    One of the first things I did was to have some hosted space dedicated to us. This saved us money, and helped ease the team members’ minds. I then wanted to focus on spreading the YaBB name. In doing so, we managed to sell site license to a couple of large pharmaceutical companies, and a couple of board hosts who used YaBB as their base system.

    We also needed to attract more developers, as some of the original members had left, and the development for YaBB had begun to slow. The biggest challenge was in getting some good coders, and then keeping them — one pet peeve of mine is when people join up and then vanish, or just have too many projects on the go to really focus.

    So once a few good coders had been involved, we started to develop the next set of YaBB scripts, attempting to lighten the loads on servers and add more useful features.

    YaBB SE Today – the Team and Resources

    How many people are working on YaBB SE? What are their specialties?

    The majority of the first SE release was written by two people: myself and Joseph Fung. Also contributing were other long time YaBB guys like Zef Hemel and Christian Land.

    It continued mostly with Joseph and myself as SE moved on, Joseph taking on the brunt of the work until we added a few others. Currently, Greg Robson is stepping up to take the lead role as Joseph and I step back a bit. He’s done some extensive database schema work to ensure that the performance of SE 2 will be the best it can be.

    We also have two other fantastic coders from the Netherlands: Francis specializes in security, and Compuart is just a great coder. Of course, everyone is a volunteer, as this is an open source project.

    Does the YaBB SE team work in parallel to the YaBB team with regards to development protocols? Do both teams follow the same set of targets/guidelines?

    No, the two teams don’t work in parallel. "SE" stands for Splinter Edition, and there were various reasons why we "splintered" off in the first place. While there have been group discussions on future development of the products (including their YaBB 2, which has been in progress for the last year or so), nothing solid has come up.

    What specific resources, in terms of computers, Internet access, hosting, funds, software for development, etc. do both the YaBB and YaBB SE teams employ now? Is there an office where more than one member of either team resides, or is everything done online?

    I can’t really speak for YaBB any more, as I pretty much left that project completely when we splintered off to do YaBB SE. As we were unhappy with the direction it was going in, we decided to start with a different philosophy.

    Most people have heard that YaBB is a resource hog, that it’s slow, etc. These complaints are all based on the Perl version of YaBB, and we’ve tried our hardest to shake this way of thinking (and in fact even debated releasing under a different name). So I can’t comment on the YaBB side of things.

    As for YaBB SE, most things are done online. However, Joseph lives in the same city I do, so occasionally we get together and do some coding, or meet to discuss things, but we’re also in business together on other projects.

    YaBB SE is run on a dedicated server, donated by the aforementioned business that Joseph and I share along with Peter Crouch and Ted Suzman. So funds were brought over from Lewis Media (the company I now work for) for use in the YaBB SE project. Now it sustains itself, which was always our goal.

    Success To Date…

    So far, YaBB SE has enjoyed great support from both new users and YaBB veterans. What reason would you give to explain the success and support YaBB SE has gained in the script world since its launch? Has it sprung form the fact that you decided to support MySQL — which has helped reduce server loads (a common complaint in the original YaBB? Was it the completely fresh approach the team took with the product?

    Since it was launched in December 2001, YaBB SE has done quite well for itself. YaBB was (and still is) suffering a major image problem due to the fact that the Perl version sucks up server resources. Though YaBB wasn’t the only product that was having issues due to the flat file structure, it may have been the first to be noticed as a resource hog. But eventually, even the "amazing" Ikonboard was taken off servers for the same reason.

    With SE, we basically converted the original product to PHP code. Now, this product was built upon the original YaBB so it still had some flaws, but it got a head start thanks to PHP and MySQL. This initial speed burst and easing of server resource usage brought some users back, but it’ll be a long process.

    With each subsequent version we’ve focused on optimizing what we can. We’ve released versions 1, 1.1, 1.3, and now 1.4 — all since December. With the latest release, we’ve optimized even more.

    YaBB SE also used a new approach and a new team. Joseph Fung, who started SE with me, is a fantastic programmer. His coding and problem solving skills are second to none, an if something’s adding a query or a fraction of a second to the process, he’s on top of it — changing it to ensure better performance. We decided that SE needed to clean up YaBB’s act, so we focused on creating a great product that will be easy on servers. We already have a decent jump on optimization for SE 2, and are planning to almost rewrite the product.

    While people were toying with v1.1 and 1.3, we’d begun to put SE 2 together, adding advanced features that no other board currently utilizes. On top of that, we managed to cut down the query numbers by 70-80%. So the speed boost and different approach have helped the product immensely, and it’s got a strong following despite the fact that we haven’t hyped it up.

    Do you think YaBB users are gradually converting to YaBB SE?

    Yes. The YaBB users have been waiting a very long time for YaBB 2, as it’s gone through delays, rewrites, and the team never seems to want to release any information on its status. People have grown impatient, and even the hardcore fans of Perl YaBB have started to migrate over now, possibly because many hosts frown upon Perl-based systems.

    Have any benchmarking tests between the YaBB and YaBB SE been carried out on large scale forums?

    To answer the question, no real benchmarking has been done on any YaBB software. The only benchmarking done to date was by Ikonboard, as far as we know. We performed well for speed in those tests, beating out vB and phpBB, but at the same time the tests indicated that we needed to address the number of queries we were using — which we’ve started to do (already slashing the number by 70-80% in SE 2).

    Is YaBB SE being used on any large-scale community?

    YaBB SE has been used on a few sites with fairly heavy traffic but so far I haven’t seen it on sites that have over 300 members online at any given time. Several larger sites have opted to use SE as their means of communication, though. One particular hockey site had upwards of 150-180 online at all times. A Mac site using YaBB SE hovers close to 300.

    These are only a few; but since I don’t visit many sites, I’m not aware of them all.

    Currently, YaBB SE offers an optional "Site License" for a one-time fee, which makes the script fall into the "Paid-Scripts" category. Can you explain how this concept was first thought of, and whether it has won user support yet?

    The Site License was formed in the days of Perl YaBB as a way for companies to be allowed to remove the copyright — as some don’t want to display that on site. The cost for the license was $250, and the money went towards hosting and other costs associated with YaBB. With SE, we offer the same thing, but we decided to go with a price of $150.

    Naturally it doesn’t mean much to the average user, who’s a hobbyist and is only looking for free software to begin with. However, several companies and individuals have taken advantage of the license for their sites, including a large pharmaceutical company in Germany, and a large computer company in the USA.

    The license isn’t geared towards the average user — they tend to offer donations rather than outlay a large sum just to remove the copyright. It’s not at all required for anyone to purchase this license, either, unless they wish to remove the copyright from their template.

    The Future

    Are there any future plans to charge for support for YaBB SE, or even the YaBB SE script itself?

    No, there are currently no plans to charge. The Perl version of YaBB charged for priority support, and other systems do charge for some support, but we have no plans to do that. And we’ll always offer free support on the forums.

    As for charging for the script itself, no: it’ll always remain free. We offer our script under the GPL, unlike some other systems these days.

    Recently, Ibforums came out with their first stable release, and have a Perl API system that allows Webmasters and script developers to implement certain features of the script. PhpBB has had support for several databases and different languages for a long time now. Does YaBB SE plan to offer support for more databases and languages in the future, and something like an API or your own unique feature?

    A few months back we offered a SSI.php file (and I see Ibforums has one now as well) that allowed users to implement parts of the forum on their site. For example, they could add login boxes, recent posts etc etc.

    SE has had full language support since it came out, as does the Perl YaBB. I think we had support for 11 languages last time I checked. Users can select their particular language, so they don’t need to reply on whichever has been set by their administrators.

    As for databases, we have something now for SE 2 that will allow multiple database types (so far we have MS SQL, mySQL, PostegresSQl, and ODBC).

    Buy-Outs, Mergers, and More

    Were you ever approached by anyone wanting to buy YaBB SE rights, or have you approached any other script product to buy or merge with them?

    The thought never crossed our minds when Matt headed Ikonboard. Matt and I discussed a few other things but we never made it past initial discussions — and even then, the talks we had were pretty much nothing. That was at the beginning, and later on I did approach Matt to ask him about it. At the time, there was no action on YaBB, and there were a few internal things going on, which I just wanted out of my hair.

    Matt basically wanted to take the YaBB users, and the YaBB team would maintain Ikonboard 2 (the Ikonboard team was working on iB 3 at the time). That was what killed the deal — the YaBB team didn’t want to have to maintain an older product.

    If it were up to me, a couple of the forum packages that are available today would merge. There’s so much talent on these teams, and so many good ideas — combined, they could really come up with something great. But, sadly, everyone has egos and they all want the credit.

    We have been approached by two companies who wanted to buy the rights to YaBB SE, but we never even listened to offers. YaBB (Perl) also received several requests, including two very serious offers. I signed confidentiality agreements in both instances and though I’m still bound by those, I’ll try to explain both.

    The first was a company that offered something in the way of forums already. They were fairly serious: figures were exchanged, future paths were discussed, and this one seemed like it was going to happen. But talks fell apart when they failed to grasp the concept of our license.

    The second was a company that wanted to get into programming and offer forums. Though we progressed fairly deeply into discussions, internal issues at YaBB held this deal up.

    Where do you see YaBB SE in the future? Are there any major enhancements to the script in the works at the moment?

    We see YaBB SE as being one of 5 main forum applications out there. Currently there are three really big ones, and YaBB’s still fighting to erase some of the "bad press" it received earlier in its lifetime. The fate it suffered was that suffered by all the other Perl-based boards.

    So SE will continue to plug away at rebuilding YaBB. SE 2 is currently being written, with a strong emphasis on performance, and it’s already showing major improvements. While that’s our main focus for SE 2, we’re also adding more functionality, some of which hasn’t been seen in forums yet.

    There is a notion amongst commercial script usrs that free scripts aren’t worth installing, as they don’t generate assets to benefit the people who work on the project in which the software is applied. Commercial scripts like VBulletin or UBB are thought by many to have been around a longer, and not have suffered any major casualties because of lack of support.

    While it is true that the majority of free scripts will fall away and fade out, you get a certain group that will stay around, and have managed to grab a decent audience. phpBB, YaBB, and Ikonboard are all examples of these kinds of products — and they aren’t going anywhere any time soon. The same people that said these forums would vanish two years ago, are now watching the forums proliferate all the time.

    People, and I’d venture to say the majority of North Americans fit into this group, go by the philosophy of "You get what you pay for". In business, we fight daily with employers to look at things like PHP and MySQL in our work. Our employers want to pay thousands and thousands of dollars for solutions that can easily be attained with open source software and technologies.

    I always use open source programs and, for some shareware, I also support the authors themselves. This kind of feedback encourages developers to keep going — it’s an extra ‘reward’, and it’s different to the developer’s own acknowledgement that they love helping people, and doing what they’re doing. I don’t think these motivations are going to change.

    Selecting Your Forums Software

    There are several new forum scripts that came out recently, which created more competition in an already crowded market. What advice would you give to both novice and professional Webmasters who are looking for a good forum script? Should the people who want to run a forum as a business look for different criteria in forum software than might those who want to run the forum as a hobby?

    To both novices and professionals I’d say: check a few scripts out. Figure out what your needs are, and go from there. Some packages may be a bit bloated for your needs, others may be just right. The majority of these scripts are simple to install and they’re all pretty similar, despite what anybody says.

    If you want to customize the look, make sure the software you choose allows you to do it easily. Some products require you to edit one file to change the look; others will have you changing dozens.

    I also suggest that you don’t ask for opinions of a product on its own forums. One thing I’ve learned about most users is that they are horribly biased. So do your own research into the products you like.

    As for business versus hobby usage, the free scripts are just as good as anything commercial, except for maybe VBulletin, which is still probably right at the top of all the scripts out there. Besides that, look around for something with a bit of history, so you know it won’t simply vanish one day without a word.

    Thanks for your time Jeff! We look forward to the next release of YaBB SE software. For more information, visit the YaBB SE Website.