Planning Tuskfish 2

Just a short note to say Tuskfish 2 is in the works. It's going to be a partial re-write of the back end, but there will be minimal changes on the front end or from a user experience point of view. The database schema will also remain unchanged to allow seamless upgrade. I spent months migrating my data from a legacy system to Tuskfish, I'm not going through all of that again!

So what will be different? Tuskfish 2 will be designed as a strict MVC architecture to improved separation of concerns, rather than the loose MVC it currently has. Why? After some investigation I found that a strict MVC greatly improves both flexibility and component re-use. That means I can make Tuskfish even smaller and more efficient.

Secondly, I will be completely abandoning the use of inheritance and designing components by composition, only. This requires a bit of a change in mindset (it's something I picked up from Golang), but done right it allows some intermediate objects to be dispensed with and allows for a simpler structure.

Lastly, I will be building out a formal test suite for the revised components.

I have no idea about the timing at this stage, but I would imagine it will be towards the end of 2019, maybe mid year if things go well.