It took year and half, but work on features for 0.6 release is now complete! There's still few more things that need to be done before first alpha for Misago 0.6 lands, and even more for first stable release, but fruit from labour of last four years are awesome:
JSON API implemented in Django Rest Framework that powers JavaScript UI and makes great foundation for eventual integration layer for mobile apps or sites powered in technologies other than Python, such as PHP.
Completely rewritten Python codebase that extends Django framework's facilities instead of replacing them. If you want to pair Misago with custom portal or Django-CMS, now its easier than ever.
95% tests coverage greatly helps with maintaining stability by detecting and alerting about regressions and errors caused by changes in codebase. Paired with better separation of features this enables incremental approach to project improvement.
Features as frameworks enable developers to inject custom behaviors or swap default ones at will. Want to run custom checks to see if new user is trying to post spammy urls, and deny him from posting if thats the case? See if new user registration is 10nth from same IP in last 3 hours and if so, ban that IP for 24h and block all past registrations as spammy?
Misago runs on Python 2.7 and 3.5! If you've already made switch, you'll love to hear that all improvements that Python 3.5 brings to table are now available to you.
Four years
Those last four years can be judged differently.
Those who looked forward to using Misago will likely consider those four years spent working on backend as wasted efford that could've been spend on incremental improvements, few smaller releases, or more noticable features or longstanding bug fixes.
Perhaps time spent on this release will turn out fatal on Misago's chances for gaining traction, sentencing it to "fame" of that one project that was rewritten for four years to don't deliver.
Going forward
While I'm hoping that eventually Misago will bounce around and start gaining traction like it did back in early days of 0.5, I'm also understanding that I honestly suck big time at managing and handling open source software projects. Its nice to think that software that will be good will attract traction on its own, but I've learned that good software is effectivelly an misnomer. Your software may be perfect, but arrive months after medicore solution that actually was good enough at what it did for people to no longer care about what you'll bring to table few months later.
This is why I've decided to bite it and put aside ambitious plans for next alphas, instead sticking to approach that allows me to ship often and improve with small steps instead of large leaps. The work that happened so far is massive enabler for this approach, and I can't stress enough how much a lifesafer having tests suite is. The plan for coming weeks is to wrap up work on first alpha 0.6 and ship it. Once this happens I'll be turning my attention to making new releases improving existing features, fixing bugs, improving mobile support and providing theme that won't scream "BOOTSTRAP!" at people. I have no idea if this will happen in two months or five, and I don't know specifics on what will be delivered, and when, but I'm sure the process to enable this will shape itself up eventually.