Hello. Anybody Home?
Some of you who have been with us a while may be wondering what happened to Ninja Forge over the last couple of years. Our once amazing support has come to a screaming halt, our frequent extension updates dropped to a trickle.
Well it is a long and messy tale of overcommitment, failure and shame. I will however give you the condensed version.
Optimism and Overcommitment
If I was to pick a single turning point, it would have to be Ninjaboard. Up until we started on this project we were humming along with enough money to keep people working and we were able to meet all our commitments in a timely manner. Customers were happy, the team was happy and progress was being made.
Ninjaboard also introduced us to Nooku which at first was a great boon and let us pump out some powerful extensions with a lot less effort than it took us in the past. Which led us to get far too over-confident in how many extensions we thought we could handle - every good idea became an extension or an extension in development. I have a graveyard of perhaps 2 dozen extensions that never quite made it to light.
Why? Because gradually the rapid fire changes to the platforms we were using, Nooku especially, began to pile up and we spent more time studying the changes in Nooku and Joomla and refactoring our extensions in production and those in development than we did working on new features.
Over this time we began pouring more and more of our income into Ninjaboard, even though it wasn't actually making money, because we just knew it would be great and pay for itself eventually. Meanwhile, stagnation and increasing competition in the Joomla extension space meant we were slowly losing income every month, while pouring more into NB.
Off to work we go...
I had personally never taken much of an income from Ninja Forge up to this point, preferring to pay developers in an effort to get more done. But the increasing cost of NB combined with deceasing revenues forced me to go the other direction and start paying people's salaries out of my own pocket.
This resulted in a struggle, especially once we had our first child and my wife took time off work (and thus money) to look after our child. So I had to find more work, to cover developers and my own life as well. This resulted in less time for me to spend on NF, even as the issues were piling up in the background. We had already invested so much into NB and Nooku that I thought it would be madness to throw it all out now. If we could just hold on a little more then it would sort itself out...
Opportunity Knocks...me over
Around this stage I managed to hook a great job working for the Linux Foundation. The money was good, initially the hours were good and there was lots of Joomla work to keep my skills up. But that changed soon after when our infrastructure got hacked (I can't go into details but it wasn't via the web). This resulted in me working 20 hours day, 7 days a week for 4 months rebuilding our infrastructure more securely and testing it.
As you can imagine I had 0 time for NF and the work almost killed me, but NF was still kind of chugging along with the other devs working. I was still paying people out of pocket but it felt like progress was being made.
Then it all kind of collapsed over the next year.
No funny quips. Things just went to shit.
I forget the exact order and timeline, but the following events each did their bit to tear things apart for NF over that year :
- Work at Linux kept me far busier than I wanted, with frequent returns to double and triple time work.
- We had another child, which takes a ludicrous amount of effort more than one child.
- Developers and mods started vanishing. Some taking months of salary with them.
- The primary NB dev, and the person most skilled with Nooku on our team left and NB development stopped dead as no one had time to learn it all. The straw finally broke the camel's back and we lost tens of thousands of dollars in work invested in NB.
- Nooku changes finally got the better of me - I was all that was left pretty much - and I could no longer keep up to date.
- Income dropped so far that I couldn't even afford to keep on temporary contractors to keep things up to date.
- The work that I did contract out often was so poor that I couldn't use it, so I ended up wasting thousands of my own dollars on code that got tossed out.
The only saving grace here was Mark really who dutifully kept up support as best he could and he basically single handedly kept NF from slipping past it's coma into death. But even he got burnt out in the end.
Shame and Failure
I made a lot of mistakes over the last few years, but the biggest was to let my shame get the better of me and avoid facing how bad things at NF had slipped to. I ended up pathologically avoiding looking at support tickets or the forum because I couldn't face the people I had let down.
For that I am truly sorry to everyone who put their trust in us and we let you down. I am doing my best to catch up on support, and make much needed changes as best I can to the site.
I hope you can forgive me, and show a tiny bit more patience as I get things back together.
Where to now?
Well, I left the Linux Foundation in January (they are moving to Drupal for their sites) but I am still having to work 2 jobs to keep food on the table and I still have my two kids so time is limited.
However I am making a dedicated commitment of several hours per week to improve and update Extensions again. I just released a fixed Ninja Eye for J3, and I have a totally revamped Ninjamonials for J3 coming along. I also have a practically complete Ninja RSS for Joomla 3, but it's built on FOF, which has it's own issues now, so I have to refactor it and remove FOF.
The new NRSS has been reworked to use plugins to provide source data and output formats, so you will be able to pull data from any component you like (by making a plugin or using one we make) and display it in any format you like (again by making or using a plugin), e.g. I have working plugins for Atom, RSS, Sitemap XML and JSON. It's really sexy, and I hope to show it to you all soon.
I am redoing the admin interfaces in Angular.js to make them a lot more responsive and our extensions in the future will function more like a dynamic web app than a PHP pageload-by-pageload extension. I hope to have some screenshots or video soon for people.
We will also be trimming down our selection somewhat. Many of our extensions have been made redundant by new core features, or there are quite simply better options out there. I hate to abandon anything that people are using, but I simply don't have the time to look after everything anymore and it will just continue to hurt everyone if I continue to try to please everyone. I will instead focus on the most popular extensions and anyone who wishes to take up one of our discards and maintain it or improve it is more than welcome to. That's what makes Open Source great after all.
I will also be temporarily taking the forum down, as it is becoming a den of spam and anger, and redirecting people to the contact form. I will try to find a more elegant solution, but there are higher priorities before that and email is adequate for support, even though it's not ideal.
Again, I am sorry to everyone we let down. I still love NF and appreciate all of you that have stuck with us, helped us, supported us and even those got (justifiably) angry with us. I will make it right.
Edit: p.s. I also unpublished pretty much the rest of the blog, they were all posts from two years ago about products we can't keep, so totally irrelevant now.