Open moschel opened 6 years ago
I like this idea a lot. I would de-emphasize the game aspect of this, personally. I don't see it as much of a game as validation (for yourself and your bosses) that your application is in good shape.
I like the idea of running the generators through some UI a lot as well. Cool idea.
@moschel We talked about this with DoneJS contributors. We like this idea a lot, but it's also quite a big project. Is there an MVP of this that would be a little easier to accomplish but still solve your core goal? With the idea of course that if the MVP is successful that more can be added to later.
Yes, definitely. I think we can lay out a simple MVP that adds value with just a sprint or two of work.
I think we'd need a "discovery phase" with a designer in order to properly set goals, prioritize features, sketch designs, and create an MVP scope.
My suggestion if there's interest in this idea, is to prioritize a 2 week discovery phase with a designer.
In my opinion, the goal of the MVP would be to create an automated checklist, displayed in a web app UI, that uses some script to audit an app codebase and provide a checklist of best practices. It could have a "score" and suggest what they should prioritize next. We could start with just a few things and expand it over time.
This is a proposal/idea for a slightly different direction with DoneJS.
TLDR
Developers really like games, and they really like points. I wonder if we can build a dashboard into DoneJS development that incorporates all the best technical aspects of the Bitovi checklist, and codifies many of the best practices that CanJS/DoneJS encourage. Some things might be checked programatically - modlets, test files, demo pages, components, etc. Some things might require the user to fill out forms or check binary boxes.
The problem
The solution
We could make a comprehensive dashboard similar to the Vue Dashboard, a central hub for their app, which maybe produces a JSON file to persist information.
The dashboard could take on a different form for different lifecycles of an application: planning, development, QA, production.
At each stage, it could provide:
I think the primary goal of this platform would be to make UI development feel more fun and sticky. It could use components of habit formation to help devs feel incentivized to come back. It would help form habits by giving some visual feedback as certain tasks are accomplished.
The secondary goal (maybe even a phase 2) would be to create useful tools that make development more efficient.
For example, if I'm assigned the item explorer, I use this dashboard to "create" a new component, go through a component checklist, use a code audit tool to provide suggestions for improvement, etc.