Helpdesk System

Hello, I have been dealing with a number of issues on the Prusa XL which has lead to the realization the way we track issues could use some improvement. I ran IT departments for non-profits for over 20 years and have run more than a few support departments and the resulting helpdesk platforms. My main concern is that the current “system” is completely opaque, which as a plain old member is frustrating. Helpdesk software is widely available, and as a non-profit we can definitely get either free or reduced licensing cost - I know, I have negotiated, purchased and implemented several for large organizations.

So, my proposal is that we get interested parties involved to develop some requirements and start evaluating (ideally no-cost) options. This is not an emergency, we can take our time, I just want to start rolling the ball forward. I view it as an opportunity to improve internal communications and potentially improve some workflows, maybe even saving some time by making fix histories available easily.

One last thing. I am also going to suggest that until we get a helpdesk system in place that we ensure all break/fix discussions are shared openly. Unless there is a reason for privacy sharing the process helps everyone. There is already a red/yellow tag section, maybe if we formalize that all discussions happen in one place so we can shine a little more sunshine into the process.

2 Likes

I’m definitely interested in options. I looked into it myself a couple times but never got anywhere useful - there are just too many options and I know basically nothing about the space other than licensing JIRA or standing up our own Bugzilla or Request Tracker instance.

One complication we’d like to avoid is asking people to make more logins, so being able to authenticate against something we already use (Google?) would be a must.

I’d prefer not to self-host but we could do so for a really compelling solution.

A rich API for programmatically interacting with tickets would be a strong positive if not table stakes. Slack and/or Discourse integrations would be nice.

I’d love a widely available tool status dashboard (e.g. Tools Status Board - DMS)

We’d want to be able to automatically generate maintenance tickets based on time or hours run (which we’ll be able to obtain from other infrastructure sometime this year). Ideally it’d be able to maintain live to-do lists (problem reports to triage, maintenance and cleaning tasks to perform, etc) that make it easy for volunteers to keep track of what needs doing any given afternoon they might show up.

Awareness of parts/consumables inventory (and ability to flag replenishment needs) would be a nice plus, but I could also see that being a separate system further down the road.

2 Likes

Thanks for the detailed feedback, I guess I am not alone. I think you have been down this lonely road before as well! Couple notes,

Among other products, I ran instances of Jira and other Atlassian products for years, and if we can avoid self hosting I would love it as well. I think I may know someone over there if we like that platform.

I agree on the logins, SSO across the organization would be ideal, and being tied to a common platform like Google could be handy, we should gather feedback on peoples preferences. One Single Sign On (SSO) platform with multiple authentication providers (including a local one) so members can choose would be ideal, imho.

Thanks for the Tool Status Board link, that is a great example and something we should aim for. Maybe we should ask them what they do - and “borrow” it… :rofl:

Something I’m aware of is the lack of total transparency of issues and their status. We try with Discourse here and a internal slack communication, however it isn’t great.

I’m still evaluating and settling in a maintenance focused software (MaintainX) to maintenance and other down machines. It might be able to help automate some of the discourse notices, but it doesn’t offer a good solution for a list of current issues for the masses.

Thank you for the insights on all of this and if there’s a good solution it’d be great to use.

1 Like

In the metal shop, one of my stewards volunteered to follow up on the problem report channel, contacting the people making reports and giving them updates. This is new; I’m going to check in with them about how this is working soon.

And I’ve been telling people in classes that reporting via the red QR code may not give them immediate feedback, but it is definitely being seen almost immediately. But a better overall system is probably a good idea.

4 Likes

That sounds like a really good way to keep things going. Please let us know how that is working out, Ethan!

Interesting, I have not seen MaintainX before; has it been implemented yet? Do you mind if I chat with you a little about your thoughts on where you would like to take the platform? It sounds like I raised my hand at just the right time, many of the tasks are similar and implementation is the normally the best time to integrate because there is no data to integrate.

I think one by product that you may be over looking is that there are members that are willing to help in many ways but do not want to be stewards, be micromanaged or questioned or keeping up with a “system” so to put things out in the open could benefit Asmbly in many ways with some members coming in for one hour or just to fix this or that. Right now, people take the time to report problems, and since there is little or no feedback at one point, they ignore problems they see as Asmbly in a way doesnt even thank them to take the time to report it.

Physical tags, QR codes, we can probably keep much of what the members see but supplement it with a dashboard like in Dallas and a web interface where members could check the status of public tickets. To me that would be ideal, keep what is familiar and works and supplement with stronger tools on the backend.

I think the other piece, the communications, is going to be a little harder because we would be asking people to change their habits. I am under no illusions, I am sure some people won’t agree with everything I am advocating, but that is what a consensus gathering process is for… :peace_symbol:

Personally, my philosophy is pretty open…

  • From my perspective all technical tickets related to machine problems should be public. I have a variety of reasons, but if I had to pick one it is because I have been humbled by the number of truly amazing makers at Asmbly. Every single person is bringing a different set of experiences and skills to the table - why would we not take advantage of that? See my example at the bottom.
  • We are losing institutional knowledge every time we keep the technical discussions private. If someone or a small group of people troubleshoot a problem and fix it - but don’t share with the rest of us I view that as a loss for Asmbly. The next time that same equipment breaks we have to figure out who fixed it last time, if they are still available, or else we will have to re-learn those lessons. That is inefficient and not a system I would chose for shared organization.
  • An honest discussion about what each platform is for - and what it is not for would be helpful. This isn’t to pick on one platform or department, just a view that we should be deliberate about what each platform is for. Platforms that are not public should only be used for private topics and stewards should be moving private conversations that should be public to Discourse actively, in my opinion. The bias should be towards sharing technical discussions.
  • We might consider pushing group emails into the helpdesk as well so that those requests can be tracked. Not all of them obviously, but for a while people have been told “just email abc@asmbly.org if you have a problem”. Trying to get members to change habits would be a losing game so we shouldn’t fight it. I would imagine a lot of those emails should actually be tickets and shared.
  • We should be looking for ways to capture the knowledge we create, like break fixes, and making that information broadly available. I love the Wiki, it should be expanded with info from the helpdesk regularly. Many helpdesk platforms include wiki functionality so we might be able to explore that as well.

A good recent example of open collaboration to resolve an issue is the discussion around head strikes on Tarkin. A member reported an issue and several members, including the OP and the shop stewards went back and forth, sharing pictures and ideas until they found a solution. It was collaborative and informative. I learned a lot, as I am sure many others did just by reading the thread. That is the level of transparency I am arguing for.

1 Like

I have to thank you. Stephen, the monkey you’re taking on is not easy, but it seems in very few paragraphs you have the scope of the problem figured out and the way it sounds you’re already implementing a solution. Please dont give up. i can tell you people for some reason get to talk to me, and one topic that always comes up is no feedback or no way to check if it was even read (im not sure why they think i can fix that). In many ways i feel bad because i dont have an answer for them and because i have given up in that part too, i dont make reports to the system. I do tell James, Shane, David, and now Robert and sometimes i post it here. Anyway, the interest is there in many people wanting to help such as "can i buy the parts or supplies and donate them? Can i get trained in ??? And ill keep up with that part? Etc. But the stuff has to be in the open for people to find a way. So please make it happen and thank you, thank you, thank you!

1 Like

Echoing Jose here. This is a great topic to dive into and one that can make “quality of life” at Asmbly pretty darn good.

Certainly I’d like to chat with you soon about your thoughts. If I read your post right you’ve got some experience with the Dallas Makerspace? I’m not suggesting a complete turn to another system, but I’d be very interested to know how another similar and larger organization operates.

In a nutshell, I agree with all your points. The only color I’d add is that there’s a bit of functional overlap between Slack and Discourse, and folks tend to use the one they prefer for whatever reason. We did experiment briefly (and inconclusively) with Discourse real-time chat, but even if that took off it wouldn’t fill the role Slack plays for quick voice calls among staff/leaders/stewards.

An ideal solution might be a way to associated a trouble ticket with a Slack thread. That way Slacky folks can discuss problems like they usually do, but the commentary stays associated with the initiating problem report and visible to other folks and posterity. I’d guess that any random ticket solution would be more likely to integrate with Slack than Discourse.

(Context, for the record: Problem report form submissions show up as posts in a Slack channel, which is where discussion about work and resolution usually happens. Problem reports on Discourse usually get discussed here. Inertia wins most of the time.)

Hi Jon,
Thanks for the information, that helps explain a lot. From the outside it seems like the Slack integration might be working against the interest of the members. For things that don’t require feedback or followup (requesting supplies I guess) I am sure it would work fine, but for helpdesk tickets we have created a two tier system with a one way connection. Regular members can’t see updates and are wholly dependent on stewards reaching back out to share status. I have only been here a few months and heard grumbling about lack of updates numerous times. Further, any troubleshooting steps are not shared and members lose the opportunity to learn from the process. Given the type of organization we are I would assume transparency, communication, and education are the priorities here. Call me crazy but I would consider shutting that down until we figure out a better solution.

I have been thinking about this and want to throw a level setting question out to everyone: who is the customer of the helpdesk system? It’s a fundamental question I think should be at the front of this discussion. It seems pretty obvious to me that the members are the customers and making the process work for them should be the priority - and anything which makes that more difficult should be examined closely.

I agree many of the comments in this thread. I think it would be particularly great to have a dashboard.

@xman2000do you have a suggestion of a product that would work based on your experience and the feedback Jon and others provided? I understand that you want some more public forum to discuss these issues, do you have a suggestion what products should be investigated?

I have run requirements processes many, many times and once we get beyond initial feedback I wanted to do a relatively quick requirements process, identifying key stakeholders, documenting requirements and concerns, and building a set of shared requirements. I am thinking a week or two for timeline, assuming everyone is around, mostly through email. I have started going out and poking around, but it is early. I also want to follow up with Asmbly leadership and see if we have anyone who does grants. I worked for non-profits for a long time and I want to see if we can identify a technology grant or something similar to support the process. Free is nice, but a budget is better.

Members (folks submitting the tickets who want to see status) and Volunteers (folks around the shop doing work) are equally important audiences for this solution. It’s not like a business where we can fire a tech if they don’t bother updating their tickets - if any solution is annoying to interact with on the “working” side, it simply won’t get used and we’re right back where we started that problem reports never have a current status.

The reason we have the problem report form is a lot of members never bothered reporting problems on Discourse or via email, which led to seldom-used machines being broken or janky or otherwise offline for long periods of time before a volunteer willing and able to remedy the situation found out about it. It’s probably true we could have set it up to post to Discourse instead of Slack, but this way was a shorter route to a working solution (there are a lot more examples floating around for Slack integrations than Discourse) and like on any ticket system, tier-0 problem report traffic is noisy. There are several a day, which would cause most anyone to tune out of a Discourse topic about them.

Members’ lack of visibility to problem status is definitely an issue, but I feel it’s a less acute issue than volunteers’ lack of visibility to existence of problems. We’re moving up the hierarchy of needs here.

It’s possible the current system is too biased toward convenience for volunteers, but for better or worse it’s a stake in the ground against which any new solution will be judged by the folks using it.

We do have some folks working on grants, and we’re not afraid to pay out of pocket for the right solution. It’s tough to set a budget on this from a management side since we have no idea what kind of numbers we might be talking. A couple thousand a year might be doable, a couple thousand a month probably not. I’d be nervous about depending on a grant for operating expenses, due to the risk of losing a tool we rely on at grant renewal time.

We could implement a multi-level report management system in Discourse or between Slack and Discourse, but it’d be a fair amount of work for what’d ultimately still be kind of kludgey. Just forgetting about the whole thing and migrating wholesale to a better system is surely preferable, but we need a new solution to be able to do that :slight_smile:

ps: on reinventing wheels: We all like to make things ourselves, but for infrastructure things we need to be mindful of sustainability. Making a cool new tool can be a fun project, but creating a system that survives loss of its initial champion is often less so. Openpath, for example, replaced a trashcan full of semi-custom hardware running homebrew software that was always an administrative nightmare.

pps: on requirements gathering: It sounds like I don’t need to tell you this Stephen, but for others who might be engaging: When a stakeholder gives a requirement, you often have to ask “why?” a few times to find out what they’re really getting at. For example, when I said Slack integration would be nice, the actual requirement I’m getting at would be better stated as It should be really convenient to see and interact with tickets from my phone in real time, preferably without installing yet another app.

2 Likes

@xman2000 In case you haven’t seen it yet, this page might be informative for the requirements process

1 Like

Hi Jon,
Again, thanks for the great feedback. I apologize, I should have been more clear. I love the QR codes and the reporting forms. Not suggesting we get rid of them. I am suggesting that we should meet customers where they are, allow them to submit concerns using whatever tool they want, but if the issue is an actual technical issue with a piece of equipment it is my opinion that the troubleshooting thread should exist where everyone can see it for the reasons I have mentioned.
Curious, have we considered going the other way, give more members Slack if they want it? I am not biased towards one solution, I am hoping we can make the process better for everyone involved. I don’t want to take anyone’s favorite tool away, I promise!

Definitely agree on your points about solution sustainability, using grants to cover operating expenses, and your requirements feedback. Like I said, IT management in non-profit for years, those are well covered topics and we can break those out separately, thank you for raising them.