Mattermost Handbook
Need help?How to spend company moneyHow to update the HandbookRelease overview
0.2.1
0.2.1
  • Mattermost Handbook
  • Company
    • About Mattermost
      • List of terms
      • Business model
      • Mindsets
    • "How to" guides for staff
      • How to set up a 1-1 channel
      • How to update the handbook
      • How to manage Handbook notifications
      • How to change mobile device
        • How to handle a lost mobile device
      • How to do a mini-retrospective
      • How to autolink keywords in Mattermost
  • Operations
    • Company operations
      • Areas of Responsibility
      • Mattermost Leadership Team (MLT)
        • MLT cadence
      • Company measures
        • Metrics definitions
        • FY23 goals board
        • MLT metrics
      • Company cadence
      • Company policies
        • Community response policy
        • Security policy
      • Company processes
        • Issue/solution process
        • Company agreements
        • Publishing
          • Public web properties
          • Publishing guidelines
            • Brand and visual design guidelines
            • Voice, tone, and writing style guidelines
              • Contribute to documentation
            • Confidentiality guidelines
          • Post-publication quality control process
      • Handbook processes and policies
        • Handbook onboarding
      • Fiscal year planning
    • Research and Development
      • Organization
        • Tech Writing
        • Data engineering
        • Delivery
        • Cloud Platform
        • Site Reliability Engineering
        • GRC
        • Product Security
        • Security Operations
      • Processes
        • Feature Labels
      • Product
        • Product planning
          • Product philosophy and principles
          • Prioritization process
          • Release planning process
          • Roadmap views
          • Release plan
          • Launch plan
          • Feature requests
        • Development process
          • Mobile feature guidelines
          • Deprecation policy
          • Mattermost software requirements process
          • Jira ticket lifecycle
          • Creating new Jira bug tickets
            • Priority levels for tickets
            • Jira fix versions
        • Release process
          • Release overview
          • Feature release process
          • Dot release process
          • Security release process
          • Mobile app release process
          • Desktop app release process
          • Release tips
          • Release scorecard definitions
        • How-to guides for Product
          • How to use productboard
          • How to record a roadmap video
          • How to update integrations directory
          • How to write a feature release announcement
        • Product Management team handbook
          • Product Management Areas of Ownership
          • Product Manager onboarding
          • Product Manager levels
          • Professional development
        • Product Design team handbook
          • Product Design levels
        • Technical Writing team handbook
          • Work with us
          • User interface text guidelines
          • Documentation style guide
          • Our terminology
          • Guidelines for PMs and developers
          • Guidelines for community contributions
          • Technical Writer levels
          • Docathon 2021
            • Getting started with contributing
        • Growth
          • A/B testing methodology
          • PQL definition
        • Analytics
          • Product Analyst Engineer levels
          • Looker
            • Dashboards
            • Explores
          • Telemetry
        • Developer relations
        • Product team hangouts
      • Engineering
        • Infrastructure engineering
          • Cloud infrastructure cost KPIs
          • Cloud data export process
          • Cloud churn process
          • Reliability Manifesto
          • Production Readiness Review
          • Infrastructure Library
        • Integrations team processes
        • Plugin release process
        • Data Engineering
        • Sustained Engineering
          • On call
        • How to go to a conference
        • Public speaking
        • Core contributor expanded access policy
      • Quality Assurance
        • QA workflow
        • QA testing tips and tools
        • Rainforest process
    • Messaging and Math
      • How-to guides for M&M
        • How to create release announcements
        • How to create screenshots and GIFs
        • How to write Mattermost case studies
        • How to write guest blog posts for Mattermost apps and services
        • How to write Mattermost recipes
        • How to compose tweets
        • How to create a split test for web page
        • How to run meetups
        • How to run executive dinners
      • Checklists for M&M
        • Blog post checklist
        • Bio checklist
      • Mattermost websites
      • Demand generation reporting
      • M&M Asana guidelines
      • Content marketing
        • How to use the editorial calendar
        • Content development and distribution
        • Video content guidelines
        • How to contribute content
    • Sales
      • Deal Desk
      • Partner programs
      • Lead management
    • Deployment Engineering
      • Overview
      • Workflows
      • Frequently Asked Questions
      • Playbook for MME Sev 1 Outages
      • Status Update Template
    • Program Management
    • Customer Success
      • Customer Support
    • Legal
      • Contracts
      • Ironclad Basics
        • Company-Wide Workflows
        • Sales Contracts and Workflows
        • Signing a Contract and Contract Repository
    • Finance
      • Budget
      • How to use Airbase
        • Access Airbase
        • Navigate Airbase
        • How to submit a purchase request
        • How to submit a reimbursement request
        • How to review a reimbursement request
        • Vendor portal guide
        • Frequently asked questions
      • Onboarding
        • Vendor onboarding
        • ROW staff onboarding
      • Staff member expenses
        • How to spend company money
        • How to spend company money: Internships
        • Corporate credit card policy
        • How to access Airbase
        • Gifting policy
        • How to book airfare and travel
        • How to reimburse the company
        • How to convert currencies
        • How to get paid
      • Arrange a Bounty Program
      • Naming files and agreements
      • Risk management
        • Mattermost U.S. consulting agreements
      • Operations playbook
    • Security
      • Policies
      • Privacy
        • Data deletion requests
        • Data subject access requests
      • Product Security
        • Product Vulnerability Process
        • Working on security-sensitive pull requests
        • Secure Software Development guide
      • Security Operations
        • User guides
    • Workplace
      • PeopleOps
        • HR cadences
        • HR systems
        • HR Processes
        • Working at Mattermost
          • Onboarding
            • Things everyone must know
            • Staff onboarding
            • Engineer onboarding timeline and expectations
            • Manager onboarding
            • Frequently asked questions
          • Learning and development
          • Mattermost communication best practices
          • Paid time off
            • Out of office email example
          • Travel
            • Business travel insurance
          • Leaves of absence
            • Pregnancy leave
            • Baby bonding parental leave
            • Jury duty
          • Workplace program
          • Relocation
          • Total rewards
        • Performance reviews
          • Formal review process
          • New staff performance review
          • Informal review process
        • Transfers and promotions
        • Offboarding instructions for managers
        • People compliance
      • People policies
      • Groups
        • Staff Resource Groups
      • Approvals and iteration
      • IT
        • IT helpdesk
        • Hardware and software purchases
        • Hardware buy back policy
        • Software systems
  • Contributors
    • Contributors
      • Equity, diversity, and inclusion
      • How to contribute to Mattermost
        • Community Content program
        • Documentation contributions
        • Help Wanted tickets
        • Localization
        • Contribution events
      • Mattermost community
      • Contributor kindness
      • Community systems
      • Guidelines and playbooks
        • Social engagement guidelines
        • Contribution guidelines and code of conduct
        • Mattermost Community playbook
        • How to run a Hackathon
        • Hacktoberfest event organizer guide for Mattermost
    • MatterCon
      • Staff information privacy management
      • Mattermost events code of conduct
      • MatterCon2021
    • Join us
      • Ice-breakers
      • Help Wanted tickets
      • Localization
      • Mattermost GitHub sponsorship
      • Things candidates should know
      • Staff recruiting
      • Recruiting cadences
        • Product Manager hiring process
      • Exec recruiting
        • EA logistics
  • Help and support
    • Contact us
Powered by GitBook
On this page
  • A. (T-minus 40 working days)
  • B. (T-minus 30 working days)
  • C. (T-minus 25 working days)
  • D. (T-minus 20 working days)
  • E. (T-minus 15 working days)
  • F. (T-minus 10 working days)
  • G. (T-minus 5 working days)
  • H. (T-minus 0 working days)
  • I. (T-plus 3 working days)
  • J. (T-plus 5 working days)
  • K. (T-plus 7 working days)
  • Tips and Best Practices

Was this helpful?

Edit on Git
Export as PDF
  1. Contributors
  2. Contributors
  3. Guidelines and playbooks

How to run a Hackathon

PreviousMattermost Community playbookNextHacktoberfest event organizer guide for Mattermost

Last updated 4 years ago

Was this helpful?

This page outlines best practices and recommended steps for running a Hackathon.

Previously, Hackathons have run twice a year with one coinciding with MatterCon. In future, Hackathons may be run three or four times a year.

T-minus counts measure "working days" (weekdays other than major holidays concurrent in US and Canada) prior to the Hackathon day. All times are based on 8:00am () unless otherwise stated.

A. (T-minus 40 working days)

  1. Decide dates for the Hackathon. Some things to take into consideration:

    • Avoid overlap with major holidays in US, Canada, Europe, or Asia (including Australia and Japan).

    • Avoid overlap with significant release dates, such as release testing or feature complete. Recommended time is starting a Hackathon within a week after feature complete.

    • Avoid overlap with significant company dates that take significant amount of developers' time, such as performance evaluations.

    • Avoid overlap with significant community dates, such as major developer conferences/events.

    • Avoid starting on a Friday - this results in a kick-off call in the late evening for Europe/Asia, effectively meaning the Hackathon starts on a weekend in those areas.

    • Previous Hackathons ran for two days with presentations on the third date. At the end of the most recent Hackathon participating developers suggested adding a third day to allow more time for polish and increased quality.

  2. Identify at least one or two developers to partner with during the Hackathon. Start by reaching out to either VP Engineering or Dev Leads to hear their recommendations.

B. (T-minus 30 working days)

  1. Put together a project plan, including task description, start date, due date, owner, and any additional notes. .

  2. Identify one or two members in Marketing to partner with, who can help with tweets, blog posts, and other marketing content to generate awareness of the Hackathon.

  3. Identify one or two members in Ops to partner with, who can help with meeting scheduling, SWAG, and other operational tasks.

C. (T-minus 25 working days)

  1. Work with Ops to decide on what SWAG to send for participation - both for contributors and staff.

  2. Create a landing page for the Hackathon, which contains all information and to which other communication items are linked.

    • All processes and documentation should be clearly included on this landing page, including a process for finding and assigning teams and project submission guidelines. FAQs can be incorporated as needed.

  3. Create a GitHub repository for submitting Hackathon projects. This can be the same as the landing page if a GitHub repository is used for it.

D. (T-minus 20 working days)

  1. Schedule a kick-off call with all Hackathon stakeholders, including

    the developer, Marketing, and Ops members identified previously.

  2. Define and set up metrics to measure impact of the Hackathon. Examples include: Number of participants (staff + community separately), number of submissions, number of submissions shipped as a core feature or as a plugin in the Marketplace.

E. (T-minus 15 working days)

  1. Publish a blog post announcing the Hackathon to the Mattermost community, which links back to the landing page for details on how to participate.

F. (T-minus 10 working days)

  1. Work with Ops team to get SWAG prizes ready and set up with Printfection.

G. (T-minus 5 working days)

H. (T-minus 0 working days)

I. (T-plus 3 working days)

  1. Hold a Hackathon demo call, scheduled for 2 hours, with an additional hour for extra time. This time is used for participants to present their project. Invite the entire Mattermost organization to the call as optional attendees.

    • Provide guidelines and best practices for creating presentations (both for staff and community).

    • Three minutes allowed per Hackathon participant. For participants with multiple submissions, five minutes total is allowed for the presentations.

    • Ask participants who can't attend to submit a demo video, which is shared during the call.

J. (T-plus 5 working days)

  1. Ask developers to hold a Hackathon retrospective and share feedback for future improvements.

  2. Hold a Hackathon post-mortem call among key stakeholders (developers, marketing, ops).

  3. Work with ops to gather a list of winners and send SWAG prizes via Printfection.

  4. Gather a list of submissions and separate them by R&D feature teams. Product Managers on the respective teams will be responsible for discussing with Dev Leads on which submissions make sense to ship as core features or plugins, and scope out remaining work.

K. (T-plus 7 working days)

  1. Publish blog post sharing insights of the Hackathon.

  2. Update this process doc for changes in running a Hackathon.

Tips and Best Practices

  1. Do not use your own Zoom link for Hackathon calls. Recommend using a company Zoom link, or one created specifically for Hackathon.

  2. In Zoom, go to Settings > Recording and set Recording consent to true. This prompts participants to consent to be recorded when recording starts.

  1. How will Hackathon presentations be handled in the future at scale? The presentations took two hours in November/2019 with 44 participants (3 minutes per presentation), and some suggested the presentations took too long.

  2. Clear process and documentation for new members (both in staff and community).

  3. Clear process for non-developers to participate, e.g. documentation, UX, QA, support. Overall, offer better cross-communication among team leads and ensure those who want to participate are able to.

  4. Promote Hackathon by using examples from previous hackathons, and tweet about them. Highlight projects that made it into the core product or as supported plugins.

  5. Nominate mentors from within staff or contributors who can provide additional guidance, talk through ideas and help get members going during the Hackathon. Mentors would ideally be contacts from different areas, e.g. mobile, plugins, webapp. Publish the list from which new members (either core or staff) can then sign up to work with.

  6. Provide more opportunities to plan projects, such as setting up meeting invites with interested people.

  7. Make it easier to get community involved in specific projects, and work with staff.

  8. Improve social aspects. For instance, incorporate physical meetups timed with Hackathon, or virtual hangouts in Discord.

  9. Activity feed. Have people talk about their projects (e.g. share screenshots or daily updates) during the Hackathon. Consider promoting in progress work in social media or other public facing sites to increase awareness of the Hackathon.

  10. Promote physical hackathons at universities and have staff or community help run them and get people involved.

  11. Clearly track next steps both for community and staff. One possibility is a shepherding program to encourage submissions to "cross the finish line" as a core feature or certified plugin where appropriate.

This can be a webpage such as or a GitHub repository such as .

Announce the Hackathon internally by posting in and sharing in the R&D weekly meeting.

Create Meetup links for Hackathon idea presentation, kick-off, and demos. For examples, see .

Share the Hackathon externally via Reddit, GitHub, Discourse, and the . For examples, see previous , and .

Schedule a series of tweets announcing and reminding community of the upcoming Hackathon. See for examples.

Hold a Hackathon idea presentation call, scheduled for 60 minutes, with an additional 30 minutes for extra time. This time is used to gather feedback about ideas and to attract others to work as a team. To see previous slides and meeting recording, see .

Hold a Hackathon kick-off call, scheduled for 30 minutes. To see previous slides and meeting recording, see .

Note that the list below contains suggestions or questions that are not yet incorporated into the above process. For developer feedback from November/2019 Hackathon, see .

Palo Alto Time
See an example
one for Feb/2019 Hackfest
one for Nov/2019 Hackathon
Private Staff Discussion channel
Mattermost Meetup page
community server
Reddit post
GitHub issue
this Google Doc
Hackathon Nov/2019 Google Drive
Hackathon Nov/2019 Google Drive
this retrospective