After a fruitful meeting last week on how to better approach planning for Listaflow long-term we’ve moved to having @Ali and myself having weekly planning meetings to focus on product needs as well as scheduling and prioritizing tasks. We’ll be posting video links and other important notes from the project here to make sure there’s good visibility into what’s going on.
The recording for the meeting from last week is here.
Our first product/planning meeting happened yesterday (Monday, Oct 25). Here’s the meeting video, and here are the highlights:
Discussed how to make progress and priorities in the project more visible. Ali is going to be looking into using GitLab’s project boards for organizing issues and making the relative priorities more obvious.
Discussed design concerns around tasks that have both a null value and a ‘zero’ or similar value and how we can think of these going forward.
Some design changes now that we’ve had a bit of experience using the project:
Removing the ‘expansion section’ functionality to tasks and having them be flat.
Making the body text of a task more visually distinct from the label
Whether or not to remove the templates page for now (decided against it, since there are still some edge cases where we need it, and it doesn’t seem to be hurting much)
Initial ideas on how to handle ‘anonymous submissions’, though these will need refinement.
Fox can handle small dev tasks that would otherwise have to go to Bebop and affect the budget the team members there are allowed to spend
What to spend the remaining budget for the year on (finishing up the multiple choice input, and improving email notifications/assistance with improving completion rates for the Open edX team)
Our meeting this round was shorter, as we already had the dev sprint planned and our priorities haven’t changed much. Here’s the vid.
And here are the highlights:
Ali will be working on the roadmap/GitLab project this week
The multiple choice select feature is going out today
The improvements to reminders are already being worked on-- but they will be the last ticket in Bebop for the year, unless there’s some sort of emergency that requires otherwise. cc @navin
Other tweaks will be scoped to small tasks and handled by Fox going forward so as not to affect Bebop’s sustainability. These aren’t expected to be big since they need to fit within Fox’s existing hours or else only go over a bit here and there.
Ali will (and has, as of this writing) update the team on edX’s side about our recent progress in a forum post.
This week’s planning meeting we went over some of the most recent updates that were being rolled out, discussed a handful of UX changes, and also discussed the reporting features and how we can make them better.
I also gave an update on the WIP of getting the tag support working and OpenCraft’s internal effort to move off of Monday.com and onto Listaflow for a few of our other proceses, and migrating our internal CRM off of it as well.
Another brief meeting-- most of the current effort is on migrating OpenCraft off of Monday.com and onto Listaflow and SuiteCRM. Ali will be primarily focused on Modular Learning for her hours this sprint.
Ali will be on vacation for a few weeks starting mid-month, and aside from the migration we’re done with features for the year. Current plan is to mostly bank the hours of January and then knock out some larger items in February. We also talked about the need to start looking at a marketing website for Listaflow, and other peripheral items.
No meeting this week, as Ali’s less available during the holidays and there’s not much slated for the remainder of this year anyhow.
Two things to report, however:
Progress continues migrating OpenCraft from Monday.com to SuiteCRM. @gabor got SuiteCRM running on our Kubernetes cluster and I’ve been writing scripts to migrate exports of the boards over. There’s a lot of massaging that has to happen to the data to make this work, so it’s taking a bit, but well within budget boundaries.
Looks like we may need a recruitment trial project-- will reply on the relevant forum thread for a suggestion from Listaflow’s backlog. More details in the other thread once I have them.
This last sprint we completed the role assignment automations between SprintCraft and Listaflow so that team members always get the tasks assigned to that role.
This has mostly worked, although we now have a new problem-- Deathstar and the Meta cell don’t have the same sprint planning needs as the devs, so roles like ‘Sprint Manager’ have a lot of irrelevant tasks on those groups, for instance. I’ll be taking a task this coming sprint to refine this.
As far as mainline dev, we have a ticket in this coming sprint (starting tomorrow) for fixing the timing of the reminders, which aren’t quite working as expected. The sprint after that we’re planning on improving the Listaflow checklist page based on feedback and usage, and then next month we’ll be looking at a feature to fetch and populate a text field with recent GitHub activity.
We’re also planning to work on required items for selling Listaflow soon-- I.E. a marketing site and some basic ecommerce setup, possibly via an out-of-box solution to start, like Shoppify, though if anyone has a suggestion for a mostly turn-key open source solution, please let us know!
@navin has just merged in some fixes to how the reminders work, as well as how dates are displayed on checklists, which should be live now. I just need to adjust the reminder days in the admin, which I’ll be doing after I finish writing this post
We’ve got a bug for filtering tags that’s shown up and is making building the CC’s report more difficult for Dean. That’s targeted for fixing in this coming sprint. We’re also taking on some changes that will allow forced submission of an incomplete checklists for cases where items that are marked as required are otherwise impossible. It will just require extra confirmation to do so.
All of OpenCraft is now doing sprint planning on Listaflow. Yay! For Bebop, Serenity, and Falcon, SprintCraft’s webhooks create the checklists each sprint, and for Deathstar and the meta cell, a recurrence handles them. The tags are filtering properly so that each team member should only receive that which is relevant to their roles.
We’re now gearing up to sell Listaflow as a product. There’s a lot of prepwork involved in this-- I’m planning on delivering a pricing proposal internally, and this coming sprint I’ll be coming up with a marketing/outreach plan. Meanwhile, @cassie has gotten freed up for more OpenCraft work, which will include some time on Listaflow. The tagging view designs are almost completed, and planning is underway for the Listaflow marketing site.
The main topic of the meeting this morning is tapering down of hours on Listaflow while we focus on sustainability in other parts of OpenCraft. However, we did produce some documents-- a pricing plan alongside accompanying proposed prices for the SaaS offering, and an outreach strategy.
On the development front, it is now possible to forcibly submit a checklist if, for instance, a required item cannot be honestly marked as checked, but some response is better than no response. @navin did this, and also fixed a bug that was preventing properly filtered reports from working right, which should allow Dean to more easily export reports.
OpenCraft is working to improve sustainability, which means we’ve been adjusting our budgets to better put a cap on non-billable hours. This has resulted in some slowdown for Listaflow, but we do now have a path we can carve forward to get to a public release.
The main goals right now are:
Get the software to a publicly releasable state. The following things will need to be done for this:
Disable/remove the Google login, since it isn’t going to work until we’re able to provide a few more things to Google anyway.
Remove the templates page. At this point it’s pretty clear templates will be bound to teams, and that teams will have their own private repository of checklist templates, so sharing them all system-wide will not be good.
Make some changes to the deployment/code so that Listaflow can share space with a marketing website. This will mean either putting Listaflow itself on a subdomain like app.listaflow.com or else getting clever with a reverse proxy web server and updating which views get handled by the app verses the marketing site, with the app’s routing updated to accommodate this.
Creation of the Marketing Website
The site outline is being handled by @cassie, who will pass it on to me so that…
…The marketing site copy can be written so that…
Ali and/or Cassie can complete the design so that…
Ryan at Freehive can perform the implementation
Once we’re released we will be able to focus on building outreach for Listaflow, as described in our strategy document. Said strategy document should be finalized this week, after I’ve had a chance to review Producing OSS, specifically chapter 2, and then incorperate any learning from it.
No meeting this time since we’re out of budget for the month. Here’s what’s new:
There was an issue with lists not getting created because the celery pods lost connection to the Redis instance. This has been fixed and the relevant checklists backfilled.
There was a separate issue where one of the cell checklists didn’t get created by SprintCraft. I believe this has also been solved, but we’ll know for sure when the sprint rolls over.
The Google Authentication workflow has been upgraded to the latest API (Google was set to disable the old one next month), but since we’re not using it we’re disabling it for now until some other items are resolved. So production no longer has the confusing log in with Google button that doesn’t work, but it will work once we’ve done the approval process with Google.
All other work is on ice until next month, and next month will have fewer hours to make up for the overage that the production incidents created. Next month will primarily be focused on the marketing site needs.
First meeting in a while-- we’d paused them while recuperating hours.
Cassie has finished wireframing the marketing site, and I’ve finished writing copy for it.
We will be reaching out to Ryan at Freehive to have him install and set up a copy of WordPress for the marketing site with Oxygen
We have decided to do some additional dev work next month to make one-off checklists viable-- they’re very close to being so, and they would allow us to move our vacation checklist over, for instance, as well as increase the feature list for potential clients. Ticket here.
Ali has started a discussion with the CCs on how to improve their planning and retrospective experience. This may or may not result in changes to Listaflow, as tech is likely to only be part of any improvements/solutions.
One thing that did not come up in the meeting is that a bug report arrived over the weekend showing that email notifications were interrupted when sending out reminders. This would have caused some number of notifications not to be delivered. Since it’s a small fix and we have some wiggle room, I’ve gone ahead and assigned myself the task to fix it.
Speaking of Karl, he was a keynote speaker at the Open edX conference, and he showed one of Navin’s MRs as an example of the exemplary collaboration methods and tools used within the Open Source community. Congrats, @navin !
@ChrisChV will be handling a ticket this sprint to tidy up the one-off checklist use case.
While it looks like Mattermost’s licensing will get in the way of us starting a real-time communications method for the Listaflow community, we will route around this by using a bridge app so that people can join a public Matrix instance. That way, we’ll still get alerts when people are talking in the public chat without our team members needing to install and monitor another tool.
We’re pulling back the frequency of our planning meetings in order to make more efficient use of the budget.
Here are some updates:
@Ali has swapped out for planning with @cassie , who will be handling the UX needs and attending the planning meetings now.
The home page design is underway! Once it is done, the most difficult part of the website design will be completed, and we can expect that subsequent pages can be built more easily.
On that note, the website remains priority number 1 for now in terms of work, so we can get the project to clients and recruit more developers from the community.
One-off checklists are now completed. Teams can have their own templates, and there can be global instance-wide templates. When creating a checklist from a template, it will be created within your team space, and filter the tasks by your roles. If you’re creating based on a global template, you will be prompted to select a team space in which to create the checklist.
One-off checklists can be shared with team members, who will get a read-only view of the checklist. However, the design for this isn’t truly complete-- it currently looks like you COULD edit it. However, it will return an error if you try. After the home page, the design for read-only versions of components is still needed.
In any case, the above means we can move the vacation checklist to Listaflow! Yay! We’re of the mind that migrating the vacation checklist is something we could do under a different budget from Listaflow development, as well, so it shouldn’t cut into dev hours. @gabriel would the Cell Management account or something else be best for this?
We will try dropping Zeplin in favor of using GitLab’s design review process-- this will allow the design work to be done more openly.
Our next planning meeting will be in two weeks. We will see if a biweekly meeting still has enough work for us to do in terms of planning, and if it doesn’t, we’ll scale back to monthly.
There are no other relevant checklists in Process Street that we can add to Listaflow. I think we need to look at the handbook to see if it makes sense to convert any “checklist” content into a Listaflow Checklist. There are various checklists in the handbook - but they’re just bulleted lists:
I don’t think all of them should be converted into Listaflow checklists, but some may be valuable. @Fox will you search the handbook and let me know which content you think makes sense as a Listaflow checklist? Or perhaps there are other processes the handbook doesn’t refer to that makes sense to add to Listaflow?