Some of you who know me may know my fascination and infatuation for SmoothWall, the open source Linux firewall distro. You may be interested to know that I’ve decided to take my leave of the project after just over 7 years. To explain, I need to tell a story of how I got there in the first place.
In October 2000, I moved house. My Internet access changed from using a Nokia 5146 mobile phone making data calls to Freeserve and BT Internet (0800 dialup for a tenner a month), hooked up to a Windows NT Workstation to share to my fledgling LAN (of two machines), to having a USR Sportster 56K modem and “real” phone line. I needed a better way to share the access than a Windows box, and decided to investigate building a router firewall running Debian Linux. I lasted about two days and was getting narked off that I had to read all my personal email at work. Then I picked up the December 2000 issue of Linux Format, which had a free Linux-based router firewall distro cover mounted on the CD. It was SmoothWall 0.9.5LF.
I installed it and it ran just peachy, getting way further than my fudged Debian install in about 20 minutes. Internet access had I. Once I was online, I did my usual: subscribe to the mailing lists, check out the project a bit more. Turns out they were looking for some help with the web interface the firewall software used, and at the time I considered myself a dab hand with Photoshop and HTML, so I threw my cap over the wall and sent some UI mockups to the list. Soon, I was part of the project team, and not only helping Dan Goscomb build out the web interface, but also doing some meagre Perl hacking on the UI rendering code, and fiddling with serial LCD consoles to get status information from the firewall onto. Eventually I found myself involved in redesigning the project website from scratch. In short, I had become a member of my very first Open Source software project. I soon grew to know members of the team very well — they included dang, dan_c, whaletales, bill, rebecca, and I especially got to know Richard Morrell and Lawrence Manning (aslak).
A year later, and the whole thing had ballooned to the point where a company could be formed around marketing, developing and selling the whole kit and caboodle in a more corporate-friendly fashion. In November 2001, I did some contract work for the company to create the very first iteration of the SmoothWall company website, and by January 2002, I was employee #4 of SmoothWall Ltd.; employees #1-3 were (in no real order) Richard, Lawrence and George. George had come from building up IT businesses, and we were looking for someone with biz clout to manage the company while we did all the fun stuff like hacking on cool code, websites and teams. I lasted there until mid-2004. This was a time when the company seemed to be doing well, building new commercial products on the back of the open source project output, and we had nearly tripled in size. Richard had already left by this point, leaving a trail of customers and open source users who loved what he had helped nurture, and some people angry at being sworn at a bit. While I enjoyed the work, we were still a small company and I needed a bit more money coming in. I decided to resign after I was offered a job with an ISP in Edinburgh which paid better, and let me explore system administration as a career as opposed to web development; I had spent a fair while doing webdev at SmoothWall, but I decided that my skills in that area were fading fast, and that I’d need an extensive amount of time to train myself up on newer webdev technologies.
Meanwhile, I still considered myself part of the open source project, and still did some sysadmin and forum twiddling in that regard. However, as time went on, I spent more and more time in my work — especially since some of it had an on-call element — while concurrently, more and more Express development seemed to be occurring in-house, sometimes taking cues — and I assume code — from the corporate products. Now, this is A Good Thing; a corporate entity backporting features and code from its commercial products into its open source endeavours, but there just seemed to be no way for me to do much outwith the realm of the company.
This went on until around 2007, when the smoothwall.org website was redesigned, shortly after the smoothwall.net site was overhauled. The team page had always listed me, and when we had text describing what we did, it always gave a pretty accurate view of what I had contributed. But this new version relegated me to “Moderator and user support”. What? In September, I tried asking why this had happened in the team-only forum:
Incidentally, why am I now listed as a “moderator and support” in the team listing? I have done sys admin, web design, UI design, and development for this project. I haven’t done forum moderation or any level of support for years, literally years. Why are my rather sizable contributions being demeaned in this manner? Why was I not consulted about this change? Why, frankly, should I give a damn about this project any more?
… and …
The bottom line is, I want to contribute to this project, and I want to be involved in more than just forum/support monkey stuff, which it seems I’ve been lumbered with. If it’s not clear from my earlier post, if this is where I’ve been relegated to, I’ll leave. It’s not a threat, it’s not an attempt at blackmail, coercion or anything like that, it’s just a reality. I don’t think it’s fair that some of the strongest contributors – and I don’t mean myself, but some of the very experienced and knowledgable folk in the community – appear to have been marginalised in favour of ultimate control resting with staff. The general attitude outgoing seems to be that we can only help with peripheral segments of the project. I do apologise if I’ve completely misread this, but that’s how it seems from the outside. […] The community. It has to be the sacred element of any open source project, and it simply can’t be abused under any circumstances. There is talent here, use it, leverage it, but for $deity’s sake, don’t marginalise or ignore it.
No meaningful reply was given, and nothing was done about my entry. At one point, I was challenged to define what I did on Express 3.0 to justify any expansion on my team entry; I replied with this:
That I didn’t contribute anything directly to 3.0 should have no bearing on my standing. Are you writing off everything I’ve done in total over the last nearly seven years? Are you happy to see me demoted to someone who helps on the forums (not that I had a lot of time for that even at my most active)? With that one statement, you have undermined my entire confidence in this project, however, I will not let this get to me, and I will not turn into some [censored] threatening all sorts of crap in a lame attempt to Get Things Done.
My work on the firewall user interface, which was built upon in 3.0, not re-engineered from scratch, was ignored, as was my other work on the website. Sadly, my repeated efforts to engage without threatening anything did nothing. Nothing changed.
A conference call was announced to try and talk through some of these issues, and while methods (telephone? Skype? Gizmo?) and times were discussed, nothing concrete came out and nothing was arranged.
Equally crazy things were done around this time; the administrator’s manual for Express 3.0 was gated behind a signup form, nominally to generate opt-in statistics on SmoothWall usage and hardware configurations, to better understand the population and how to tailor the HCL to increase hardware compatibility. Regardless of the rationale, well-intentioned or not, who hides the freaking documentation for an open source project behind a sign-up form? Meanwhile, a poll was fielded in the public forums to see if Express users would be interested in paying SmoothWall Ltd. for a “features” subscription, including “like anti-spam, web filtering blocklist and settings backup”. The answer was a resounding “no”. These were typical of what seemed to be increasingly odd business decisions, and bizarre attitudes on how to run an open, transparent FOSS project.
So five days ago, I posted to the internal forum explaining that I was considering leaving the project, and asking for comments: not to seek pleadings for me to stay, or to incite insults to force my hand, but again to generate a rational discussion, highlighting my issues:
I still appear to be listed on the website as a forum moderator, completely ignoring the work I’ve done on SmoothWall in the last 7 years. I’ve asked about this before, and nothing was done. I’m finding increasingly little time to squeeze in other things outside my commitments to things like Linden Lab, LugRadio and so on. I feel like there’s a stand-off-ish position being taken when communicating with those I know in the core community.
So, I’m giving serious consideration to resigning from the open source project; I’ve already revoked my forum adminship (did it a month or two ago, actually). All the development work now seems to be done in-house. There’s nothing for me to do whatsoever as a sysadmin. I’m not a good tester. I’m not going to sit and just moderate a forum given my level of involvement in the past. So it feels like time.
I made it crystal clear that this was not an attack, that this was not my trying to “get at anyone”, these were observations and my reaction to those observations.
Five days later, and nothing has happened. Again. So I feel it’s time to say farewell to SmoothWall. I’ve no doubt I’ll still stay part of the user community, at least peripherally, and I bear no real ill will to anyone involved. I’m just very disappointed in the decisions made to get where we are today, and I feel it’s hypocritical to stay connected to a project I have misgivings about. This also isn’t to say that SmoothWall the distro and product line aren’t good; they are, and I’ll likely continue to recommend SmoothWall Express where appropriate, although I’ll likely be replacing my own SmoothWall border solution with a Cisco 871-K9 to get my IOS nous up.