GuestNo new alerts

Zen of Gosora

- Announcements3233🔒︎
Inspired by the Zen of Python, I'm going over a simple thing which should give you an idea of what might be accepted, when, and why feature x is being delayed when it might appear to be very important to a forum.

1) Features are added as they are needed. If there is little evidence that it will be immediately useful to at-least someone using the software (usually me), then it is likely to get put off, particularly if it takes a very long time to add. Users that actually use the software will be prioritised over maybe users.

2) A software which works is more important than one which does not. We all know those projects where they spend years to just produce a prototype, and I think they're going about it wrong.

It's more important to have something running right off the bat which you can roll in production and get information on what works and what does not. Anything else is at best a risky gamble, and at worst a waste of time. Also, you open yourself to falling behind the times when you focus on tangents and architecture.

3) A software which is fast is better than one which is slow, especially if it's due to unneccessary functionality which we could leave behind or due to bad architecture, but not when it involves gutting important functionality.

Usability is everything and we want to guide the user to the best experience possible, as that is what's going to lead to them coming back again and again. And we should mobilise our full power into making this happen.

4) A software must be bug-free by default. Squashing bugs shouldn't be delayed to some mythical beta phase where you crush 70% of the bugs and leave the other 30% for the end-user to encounter, you should be carefully watching for bugs and fixing what you can as you develop, anything less is pure negligence.

5) Legacy weight should die. This doesn't mean we need to break APIs every other week, but it does mean that we can't keep features from a decade ago around, simply because it worked back then or no one can be bothered to remove it.

Legacy weight can strangle a project and make it extraordinary hard to innovate and advance. This doesn't mean that we need to hop on every random trend or new technolgoy that comes along, but we really should try to stay at the front of the forum world and not tied down to decisions made in the distant past when the world was a very different place.

6) Avoid adding big fancy features that seem a little useful or convenient, but intrude greatly upon people's privacy. Data can be abused in all sorts of horrible ways, it opens you up to all manner of legal liability and it has a tendency of alienating users who may not want their data to possibly be scattered to the four corners of the earth or correlated in unexpected ways. Above all, do not collect data for the sake of collecting data.

Let us aspire to hit these goals and settle for nothing but the best for Gosora.
Proposed amendment. Strive for data minimisation, when this isn't possible for all sites, give admins the tools and settings they need to do said minimisation for their own sites. There is work to be done before this can be put fully in place.