<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.10 (Ruby 2.6.8) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-shmoo-hackathon-06" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.12.8 -->
  <front>
    <title abbrev="ietf-hackathon">Running an IETF Hackathon</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-shmoo-hackathon-06"/>
    <author initials="C." surname="Eckel" fullname="Charles Eckel">
      <organization>Cisco Systems</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>eckelcu@cisco.com</email>
      </address>
    </author>
    <date year="2022" month="June" day="13"/>
    <area>General</area>
    <workgroup>Stay Home Meet Occasionally Online</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>IETF Hackathons encourage the IETF community to collaborate on running code related to existing and evolving Internet standards. This document provides a set of practices that have been used for running IETF Hackathons. These practices apply to Hackathons in which both in-person and remote participation are possible with adaptations for Hackathons that are online only.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Stay Home Meet Occasionally Online Working Group mailing list (manycouches@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/manycouches/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/eckelcu/draft-ietf-shmoo-hackathon"/>.</t>
    </note>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>IETF Hackathons encourage the IETF community to collaborate on running code related to existing and evolving Internet standards. IETF Hackathons aim to:</t>
      <ul spacing="normal">
        <li>Advance the pace and relevance of IETF standards activities by bringing the speed and collaborative spirit of open source development into the IETF</li>
        <li>Bring developers and young people into IETF and get them exposed to and interested in the IETF</li>
      </ul>
      <t>IETF Hackathons are free to attend and open to everyone. Software developers are the primary audience, but participation by subject-matter experts who are not necessary developers is encouraged and very important as well. Similarly, while the Hackathon is meant to attract newcomers and those who do not typically view themselves as standards people, long time IETF contributors, including Internet-Draft authors, working group chairs, and subject-matter experts, are key participants as well. Group dynamics and blending of skillsets and perspectives are extremely valuable aspects of IETF Hackathons.</t>
      <t>In addition to the running code created and improved as a result of each Hackathon, the exchange of ideas, extensions of human networks, and establishment of trust, respect, and friendships are some of the most valuable outputs of each Hackathon. Code written in a programming language can be more illustrative and less confrontational than opinions expressed during a meeting or in an email. Working together to find common understanding of proposals, concerns, and solutions that result in improvements to evolving Internet standards is as important as the development of running code that implements or validates the correctness of these same proposals.</t>
      <t>Consequently, IETF Hackathons are collaborative events, not competitions. Any competitiveness among participants is friendly and in the spirit of advancing the pace and relevance of new and evolving Internet standards. IETF Hackathons are inclusive, not only in terms of who can participate but also in terms of the projects included in each Hackathon. All projects should be related to existing or proposed Internet standards in some way. Examples include, but are not limited to, interoperability of implementations, proof of concepts, and tools.</t>
      <t>IETF Hackathons foster an open environment, with much of the code being open source and projects results typically shared publicly. The Hackathon operates under the <xref target="NOTE-WELL"/>; however, the rules and terms around code are those of the license associated with the code. Although code is often and preferably open source, it may be proprietary as well.</t>
      <t>This document provides a set of practices that have been used for running IETF Hackathons.</t>
    </section>
    <section anchor="timing">
      <name>Timing</name>
      <t>The first IETF Hackathon was held the weekend before the start of the IETF 92 meeting. The rationale was to avoid conflicts yet make it relatively convenient for those attending the IETF meeting to participate in the Hackathon as well. Holding the Hackathon on the weekend was also viewed as making it more accessible to non IETF meeting participants, including students and working professionals who would have other commitments during the week. The weekend before was viewed as better than the weekend after so that things learned during the Hackathon could be shared and discussed with the rest of the IETF community during working group sessions and the like. This worked well at IETF 92, was repeated at IETF 93, and quickly became an established norm with the IETF meeting being officially extended to include the Hackathon at the start. An additional benefit of this timing noted and appreciated by participants is that it serves as a more informal and social way to physically and mentally acclimate to changes in time zones and surroundings.</t>
      <section anchor="agenda">
        <name>Agenda</name>
        <t>The IETF Hackathon is a strenuous event. Though not a competition, participants want to make the most of their time together, much as with the IETF meeting in general. Competitive Hackathons typically run non-stop for on the order of 40 hours. There is a strict deadline and teams are judged and winners declared at the end. Afterward everyone is wiped out and heads off to briefly celebrate or commiserate, but mainly to recuperate. As the IETF Hackathon serves as the start of the overall IETF meeting, we aim to strike a compromise that provides enjoy time to get valuable work accomplished without exhausting themselves before the main IETF meeting even starts. While some people participate in the Hackathon only, the majority of people remain and plan to be actively engaged in the rest of the IETF meeting.</t>
        <t>The typical agenda is as follows:</t>
        <artwork><![CDATA[
Saturday before IETF meeting week
    08:30: Room open for setup by project champions
    09:00: Room open for all - Pastries and coffee provided
    09:30: Hackathon kickoff
    09:45: Form Teams
    12:30: Lunch provided
    15:30: Afternoon break - Snacks provided
    19:00: Dinner provided
    22:00: Room closes

Sunday before IETF meeting week
    08:30: Room opens - Pastries and coffee provided
    12:30: Lunch provided
    13:30: Hacking stops, prepare brief presentation of project results
    14:00: Project results presentations to other participants
    15:45: Closing remarks and opportunities for next time
    16:00: Hackathon ends
    17:00: Tear down complete
]]></artwork>
        <t>The time on Saturday morning provides team champions time for setup and participants time to socialize and learn more about projects and team they might want to join. The kickoff presentation and formalities are kept to minimum to leave as much time as possible for team to work together with their team on their projects. The proximity of teams to each other fosters communication and collaboration across teams as well.</t>
        <t>Lunch and dinner are provided as a convenience and an incentive to remain at the Hackathon. Participants are free to come and go as they like. It is well understood and accepted that there are other things vying for time and that meeting with friends and colleagues outside of the Hackathon is an entirely reasonable thing to do.</t>
        <t>The room closes Saturday evening to give hotel staff unfettered access to the room and to encourage people to pace and take care of themselves. There are no rules against continuing work on projects outside of the Hackathon room. Similarly, working on projects long before and after the Hackathon is allowed and encouraged.</t>
        <t>The end of the Hackathon on Sunday is driven by other IETF meeting events. There typically are Newcomer events that start at 16:00. The IETF Hackathon typically includes many newcomers in its list of participants and it is important to provide them time to participate in the Newcomer events. The opening reception for the IETF typically start at 17:00, and we want to make it easy for all Hackathon participants to join that as well.</t>
        <t><xref target="hackdemo-happy-hour">Hackdemo Happy Hour</xref> and the <xref target="code-lounge">Code Lounge</xref> exist to facilitate ongoing discussion and work on projects beyond the official end of the Hackathon weekend.</t>
      </section>
      <section anchor="hackdemo-happy-hour">
        <name>Hackdemo Happy Hour</name>
        <t>Hackdemo Happy Hour provides an opportunity for more in depth sharing and discussion than is possible within the time constraints of the result presentations that occur at the end of the Hackathon. This opportunity is made available to all teams. As with the results presentations, participation is optional.</t>
        <t>Initially, we did something similar as part of Bits and Bites. This worked well for the Hackathon but the Bits and Bites event was eventually abandoned for other reasons. Hackdemo Happy Hour was created as a low cost, informal event to provide a venue for the IETF community to engage with the Hackathon teams in more in depth discussions related to their projects.</t>
        <t>Hackdemo Happy Hour is typically Monday evening, roughly from 18:00 - 19:30, often overlapping a bit with the last working group session of the day but continuing long enough to allow everyone an opportunity to join. The goal is to make it convenient to attend by not conflicting with other meetings but also no running too late into the night.</t>
        <t>Light snacks and beverages are provided, and a cash bar is available to align with the spirit of a happy hour.</t>
      </section>
      <section anchor="code-lounge">
        <name>Code Lounge</name>
        <t>The Code Lounge provides space for groups to gather and continue to collaborate on running code after the Hackathon. It is typically in the IETF Lounge and open the same hours as the IETF Lounge. Champions are encouraged to look at the final agenda and determine time slots best suited to ensure attendance of Code Lounge sessions as well as any related working group sessions. It is okay for multiple teams to sign up for the same time slots. This is in fact encouraged for work that spans multiple working groups or projects.</t>
      </section>
      <section anchor="code-sprint">
        <name>Code Sprint</name>
        <t>The IETF <xref target="CODE-SPRINT"/> develops tools that support the work of the IETF. The Code Sprint existed long before the Hackathon and benefitted from being a focused event in a quiet space with few interruptions. However, there is a great deal of synergy between the Code Sprint and the Hackathon, and they attract some of the same participants. For example, some Hackathon projects, such as those related to YANG model validation, involve the creation or modification of IETF tools. It is therefore advantageous to colocate these two events when practical, and when separate space is deemed helpful, to allocate spaces that are physically close to each other to make it easy for participants to switch back and forth between the two events.</t>
      </section>
      <section anchor="online-only">
        <name>Online Only</name>
        <t>The IETF 107 Hackathon was originally scheduled to be the weekend at the start of the IETF meeting in Vancouver. When COVID-19 hit and it became clear the IETF meeting could not occur in person, the Hackathon already had 23 projects and 176 registrations. With only 10 days until the anticipated start of the Hackathon, a <xref target="SURVEY"/> went out to the Hackathon community, including all project champions and registered participants, to see if they wanted to participate in the Hackathon exactly as planned except with everyone participating remotely rather than in person. A relatively small number of people expressed interest in participating, with even fewer wanting to continue to champion their projects. The fact that the Hackathon was planned for the weekend before the IETF meeting and in the local time zone, both of which were historically very convenient and attractive to Hackathon participants, suddenly became huge obstacles. Consequently, the IETF 107 Hackathon was cancelled.</t>
        <t>We knew more in advance that IETF 108 would be an online only meeting. We moved and expanded the schedule to run the entire work week before the rest of the IETF meeting. The Hackathon kickoff was set for Monday, the closing for Friday, with all the time in between left for individual project teams to arrange to meet how and when was most convenient for them. The kickoff and closing sessions were schedule to align with the time frame established for the IETF 108 meeting. All of this was, of course, not ideal, and it worked much better for some people than for others, but at least everyone knew the plan and corresponding time commitment well in advance and had the ability to plan accordingly.</t>
        <t>We ultimately had 19 projects and almost 300 registrations. It is hard to say how many people actually participated and for how long, but many projects were able to get substantial work done. For the closing, 10 teams produced and shared presentations summarizing their findings and achievements. All results presentations as well as the agenda and a recording of the closing session are available via the <xref target="IETF-108-HACKATHON-WIKI"/>. This level of participation was strong enough to be considered a success and justify including the Hackathon in future online only IETF meetings.</t>
        <t>Hackdemo Happy Hour and the Code Lounge are not applicable for online only Hackathons.</t>
      </section>
    </section>
    <section anchor="funding">
      <name>Funding</name>
      <t>The Hackathon requires funding, and that funding increases with the number of participants. Participating has always been free; therefore, funding from other sources than participant fees is required.</t>
      <section anchor="sponsorship">
        <name>Sponsorship</name>
        <t>The initial funding model was to have Hackathon sponsors sign up to sponsor and fund the Hackathon for one year. As part of starting the Hackathon, Cisco volunteered to sponsor and fund the Hackathon for its first year (i.e., three Hackathons, one at each IETF meeting during a calendar year). This sponsorship was to rotate. Huawei volunteered to sponsor the second year of the Hackathon. After the second year, a sponsor for the 3rd year was not found. However, the Hackathon had become a proven success. Consequently, the IETF decided to fund the Hackathon as part of the IETF meeting, with Hackathon sponsorship being on a best effort basis.</t>
        <t>Online only Hackathons in response to the COVID-19 pandemic, and increased remote participating in general, result in increased cloud infrastructure requirements that make Hackathon sponsorship more attractive to cloud infrastructure providers.</t>
        <t>Hackathon sponsorship is available at different levels as part of being an <xref target="IETF-RUNNING-CODE-SPONSOR"/>.</t>
      </section>
      <section anchor="expenses">
        <name>Expenses</name>
        <t>The primary expenses associated with the Hackathon are those for hosting an in-person event, e.g., meeting space, food and beverage, etc. It is often challenging to quantify the portion of this associated with the Hackathon from that incurred for the IETF meeting overall.</t>
        <section anchor="in-person-event-expenses">
          <name>In-person Event Expenses</name>
          <t>The following expenses are associated with in-person participation in a Hackathon. When the IETF meeting is online only, these expenses are eliminated.</t>
          <section anchor="meeting-space">
            <name>Meeting Space</name>
            <t>The meeting space for the Hackathon is sometimes included as part of the overall contract for the IETF meeting. Other times, additional expense is incurred to secure a large enough space earlier than would otherwise have been required. Typically, the space is needed for setup from Friday afternoon before the start of the IETF meeting until Sunday afternoon. After the Hackathon, the space is typically repurposed for the IETF Lounge. If the size of the Hackathon continues to increase, it might be necessary to use the same space as is later used for the IETF plenary.</t>
          </section>
          <section anchor="food-and-beverage">
            <name>Food and Beverage</name>
            <t>Some portion of the food and beverage expense is often included as part of a minimum spend the IETF is obligated to make. When a Hackathon sponsor is identified, funds resulting from this sponsorship are typically used to offset food and beverage expenses, or to increase the food and beverage budget.</t>
            <t>The minimum food and beverage for the Hackathon has been,</t>
            <ul spacing="normal">
              <li>coffee, tea, and water Saturday and Sunday morning</li>
              <li>lunch Saturday and Sunday</li>
            </ul>
            <t>Additional items, in order of importance, include,</t>
            <ul spacing="normal">
              <li>beer Saturday evening</li>
              <li>dinner Saturday evening</li>
              <li>continental breakfast Saturday and Sunday</li>
              <li>afternoon snacks Saturday and Sunday</li>
            </ul>
          </section>
          <section anchor="t-shirts">
            <name>T-shirts</name>
            <t>Hackathon t-shirts are an important part of the Hackathon. They have been provided for all in-person Hackathons and greatly appreciated by many participants. They also serve as great advertising for the IETF, the Hackathon, and sponsors. Cisco or other event sponsors have often covered expenses associated with t-shirts. The current model is that the secretariat covers the expenses using whatever funding is available.</t>
            <t>The number of size distribution of t-shirts for IETF 107 is provided here as an example.</t>
            <ul spacing="normal">
              <li>
                <t>380 t-shirts at a cost of roughly $10 USD / t-shirt with shipping to the Secretariat included
                </t>
                <ul spacing="normal">
                  <li>50 Small</li>
                  <li>120 Medium </li>
                  <li>110 Large</li>
                  <li>75 XL</li>
                  <li>25 XXL</li>
                </ul>
              </li>
            </ul>
            <t>The t-shirts are all standard cut. We previously tried providing fitted cut t-shirts as an option for Hackathon participants, but these were not well received.</t>
          </section>
          <section anchor="stickers">
            <name>Stickers</name>
            <t>Laptop stickers are popular with developers. Stickers have been made available at the Hackathon for those that want them. Expenses have been covered by the IETF LLC, Director of Communications and Operations.</t>
          </section>
        </section>
        <section anchor="remote-participation-expenses">
          <name>Remote Participation Expenses</name>
          <t>The following expenses are associated things done primarily to facilitate remote participation in a Hackathon. This includes participation when the Hackathon is online only as well as remote participation when the Hackathon is in-person.</t>
          <ul spacing="normal">
            <li>Meetecho: cost associated with Hackathon kickoff and closing</li>
            <li>Gather: costs associated with premium service, required to enable more than 25 concurrent users. This has not been necessary, but will almost certainly be if Gather becomes a valuable way for Hackathon participants to meet within and across teams.</li>
            <li>Webex: IETF Webex accounts are made available to champions for the duration of the Hackathon and some period beyond that encompasses at least the rest of the IETF meeting. These accounts are available at no additional cost to the IETF at present</li>
            <li>Network: setup and support of the IETF network, and remote access to it</li>
          </ul>
          <t>The change in timing and extended duration of the Hackathon at an online only IETF meeting increases the duration and use of remote participation facilities from 7 days to 12 days. This may result in increases to the cost of providing these facilities.</t>
        </section>
      </section>
    </section>
    <section anchor="project-presentations">
      <name>Project Presentations</name>
      <t>Project presentations are an important mechanism for capturing what each team intends to accomplish, what they actually accomplished, and sharing the results and findings with the IETF community.</t>
      <t>For the first few Hackathons, we had two very distinct types of presentations:</t>
      <ol spacing="normal" type="1"><li>Presentations that served as project pitches at the start of the Hackathon</li>
        <li>Presentations that summarized results at the end of the Hackathon.</li>
      </ol>
      <section anchor="project-pitches">
        <name>Project Pitches</name>
        <t>The project pitches were 5-10 minute presentations by a champion of a project describing what they wanted to do and how they proposed to accomplish it. This gave everyone in the room a better understanding of all the projects and helped participants match themselves with appropriate projects. This worked well when we had few projects, but it became unwieldy as the number of projects increased. As knowledge of the Hackathon grew and advanced planning became more common, many participants knew exactly which team they planned to join and wanted to get to work as quickly as possible rather than spend time listening to presentations. Project pitches were dropped from the Hackathon. Champions are encouraged to share this type of information in advance via the <xref target="meeting-wiki">Meeting Wiki</xref> instead.</t>
      </section>
      <section anchor="project-results-presentations">
        <name>Project Results Presentations</name>
        <t>The project results presentations were brief presentations by each team of what problem they tried to solve, what they achieved, and highlights that included lessons learned, feedback to associated working groups, and collaboration with open source communities and other standards organizations. They also highlight individuals who participated in their first IETF Hackathon or first IETF event, which helps facilitate the introduction of such individuals to the IETF community. The production and presentation of results summaries is optional. Fortunately, despite the lack of awards and prizes, most teams participate.</t>
        <t>As with the project pitches, project results presentations can become unwieldy as the number of projects increases. With this in mind, the total time for all results presentations is limited to 2 hours. The maximum duration of each presentation is calculated based on the number teams that indicate the desire to present. This maximum is strictly enforced to ensure all teams have the opportunity to present their results. Maximum durations of 3-5 minutes are typical.</t>
        <section anchor="templates">
          <name>Templates</name>
          <t>Project results presentation templates provides guidance on what to cover. The use of these templates is optional. They are made available in various formats in a GitHub repo created specifically for the presentations for each IETF Hackathon, e.g., <xref target="RESULTS-PRESENTATIONS"/>.</t>
          <section anchor="pptx">
            <name>PPTX</name>
            <t>For portability, presentations that use this template should be made exported into PDF format as well.</t>
          </section>
          <section anchor="html-format">
            <name>HTML format</name>
            <t>This template should render within any browser. It can be rendered as a slideshow using <xref target="REMARK"/>.</t>
          </section>
        </section>
      </section>
      <section anchor="upload-to-github">
        <name>Upload to GitHub</name>
        <t>All project results presentations are uploaded to the GitHub repo created the Hackathon, e.g., <xref target="RESULTS-PRESENTATIONS"/>. The contents of this repo are used as the source for all results presentations at the end of the Hackathon and remain as a reference after the Hackathon.</t>
        <t>One must be a member of the <xref target="IETF-HACKATHON-GITHUB"/> organization to upload a new presentation or update/replace an existing presentation.</t>
        <t>To be added as a member, presenters are asked to:</t>
        <ul spacing="normal">
          <li>include the name by which they are known in their GitHub profile</li>
          <li>enable two-factor authentication (2FA)</li>
          <li>send your GitHub username to the Chair(s)</li>
        </ul>
        <t>Presenters are asked to do this at their earliest convenience as the Chair(s) typically get very busy as the start of presentations approaches.</t>
      </section>
      <section anchor="presenting-in-person">
        <name>Presenting in Person</name>
        <t>Presentations are run from a shared ChromeBook at the front of the Hackathon room. This Chromebook is provided by the Secretariat.</t>
      </section>
      <section anchor="presenting-remotely">
        <name>Presenting Remotely</name>
        <t>Remote presenters are welcome to run their own presentations using the screen sharing functionality in Meetecho. Alternatively, the Hackathon Chairs can share the presentation and advance slides for the presenter.</t>
      </section>
    </section>
    <section anchor="tooling">
      <name>Tooling</name>
      <t>The IETF Hackathon uses the same tooling used by the IETF community for its work and meetings.</t>
      <section anchor="datatracker">
        <name>Datatracker</name>
        <t>The <xref target="DATATRACKER"/> supports the notion of Teams that are not part of the standards development process. The Hackathon exists as one such Team. From the datatracker menu, navigate to "Other" -&gt; "Active Teams" -&gt; "Hackathon". Here exists a datatracker space for the Hackathon similar to what is available for working groups, including meeting materials, agendas, etc. Initially, there was some attempt to copy materials hosted in the <xref target="IETF-HACKATHON-GITHUB"/> to the Datatracker. Now this is done only when required for integration with other IETF tooling, including to:</t>
        <ul spacing="normal">
          <li>
            <xref target="REQUEST-SESSIONS"/> for the Hackathon kickoff and closing, and for Hackdemo Happy Hour</li>
          <li>post <xref target="AGENDAS"/></li>
        </ul>
      </section>
      <section anchor="ietf-website">
        <name>IETF Website</name>
        <section anchor="hackathon-website">
          <name>Hackathon Website</name>
          <t>The IETF website includes a <xref target="HACKATHON-WEBSITE"/>. This website contains information about the Hackathon in general as well as links to past, present, and future Hackathons. The relevant links are updated after each IETF meeting. Other content on the website is updated on a more ad hoc basis.</t>
        </section>
        <section anchor="meeting-website">
          <name>Meeting Website</name>
          <t>Each IETF <xref target="MEETING-WEBSITE"/> contains information about the corresponding Hackathon, including the dates of the Hackathon in the header and a link to the Hackathon website in the "Additional Events" section.</t>
        </section>
      </section>
      <section anchor="registration">
        <name>Registration</name>
        <t>Registration for the Hackathon is through the IETF meeting <xref target="REGISTRATION-SYSTEM"/>. Participant registration for the Hackathon is:</t>
        <ul spacing="normal">
          <li>independent of participation registration for the meeting</li>
          <li>free</li>
          <li>required</li>
        </ul>
        <t>As with meeting registration, registrants for the Hackathon acknowledge the <xref target="NOTE-WELL"/> during the registration process.</t>
        <section anchor="participant-list">
          <name>Participant List</name>
          <t>An active list of all registered participants, e.g., <xref target="PARTICIPANTS"/>, is maintained by the Secretariat. Important information displayed for each registrant includes the set of projects and technologies in which each participant is interested and an email address. This information is optional at the time of registration and may be updated or removed by editing one's registration.</t>
        </section>
        <section anchor="caps-on-registrations">
          <name>Caps on Registrations</name>
          <t>Registrations were capped for the first several Hackathons. This was done both for space and costs considerations. The cap was hit multiple times, each time resulting in temporary confusion and frustration among would be registrants, followed by the cap being increased. Currently, there are no caps enforced by the registration system.</t>
        </section>
      </section>
      <section anchor="meeting-wiki">
        <name>Meeting Wiki</name>
        <t>The <xref target="MEETING-WIKI"/> serves as the primary source of information for each Hackathon.</t>
        <section anchor="hackathon">
          <name>Hackathon</name>
          <t>A page within the meeting wiki, e.g., <xref target="IETF-110-HACKATHON-WIKI"/>, is created by the Secretariat for each Hackathon and initialized with information that is based largely on the information from the previous Hackathon. Once created, the Hackathon Chairs update and moderate this page. Champions are requested and responsible for adding information about projects for which they are a champion.</t>
          <t>Anyone can edit the wiki by logging in using their Datatracker login credentials. Credentials can be obtained by creating a <xref target="DATATRACKER-ACCOUNT"/>.</t>
        </section>
        <section anchor="lost-and-found">
          <name>Lost and Found</name>
          <t>A Lost and Found wiki page, e.g., <xref target="LOST-AND-FOUND"/>, is created by the Chairs for each Hackathon. Participants looking for a team are encouraged to add themselves to the "Skills to Offer" table, providing some information about their skills and interests. This will help others with matching needs and/or interests find them. Champions wanting help on their projects are encouraged to add their teams to the "Skills Needed" table, providing some information about the skills they seek.</t>
        </section>
        <section anchor="results-presentation-schedule">
          <name>Results Presentation Schedule</name>
          <t>A Results Presentation Schedule wiki page, e.g., <xref target="RESULTS-PRESENTATION-SCHEDULE"/>, is created by the Chairs for each Hackathon. Hackathon teams are welcome and encouraged to present their results during the Hackathon Closing. Hackathon teams add the name of their project and the name of the presenter to the table at the bottom of this page.</t>
        </section>
        <section anchor="in-person-only">
          <name>In Person Only</name>
          <t>The following wiki pages are applicable for in-person Hackathons only.</t>
          <section anchor="hackdemo-happy-hour-1">
            <name>Hackdemo Happy Hour</name>
            <t>A Hackdemo Happy Hour wiki page, e.g., <xref target="HACKDEMO"/>, is created by the Chairs for each Hackathon. Champions are welcome and encouraged to add their project by entering the project name/acronym and a contact name and email address in the table displayed on the page.</t>
          </section>
          <section anchor="code-lounge-1">
            <name>Code Lounge</name>
            <t>A Code Lounge wiki page, e.g., <xref target="CODE-LOUNGE"/>, is created by the Chairs for each Hackathon. Champions are welcome and encouraged to add their project by entering the project name/acronym and a contact name and email address in the table displayed on the page.</t>
          </section>
        </section>
        <section anchor="online-only-1">
          <name>Online Only</name>
          <t>The following wiki pages are applicable for online Hackathons only.</t>
          <section anchor="team-schedule">
            <name>Team Schedule</name>
            <t>A Team Schedule wiki page, e.g., <xref target="TEAM-SCHEDULE"/>, is created by the Chairs for each online only Hackathon. Online only Hackathons take place globally for an entire week. It is up to individual project teams to determine the preferred dates, times, and ways to meet to work on their project within the context of that week (e.g., Zoom, Webex, Slack). This page is meant to help facilitate coordination of schedules within and across teams.</t>
          </section>
        </section>
      </section>
      <section anchor="email-list">
        <name>Email List</name>
        <t>The Hackathon email list, <xref target="EMAIL-LIST"/>, is used for all email communication and announcements related to the Hackathon. All registrants are given the option to subscribe to the list. Anyone interested in staying up to date on the Hackathon is able to subscribe at any time. Once subscribed, anyone can send and respond to emails to the list. The same list is used for each Hackathon. Anyone wishing to receive email for a specific Hackathon only can unsubscribe after that Hackathon has concluded.</t>
        <section anchor="hackathon-chairs-email-alias">
          <name>Hackathon Chairs Email Alias</name>
          <t>The email alias, <xref target="EMAIL-ALIAS"/>, was created and is maintained by the Secretariat. It is used on Hackathon webpages and wiki pages to provide a single point of contact for the Hackathon.</t>
        </section>
      </section>
      <section anchor="github">
        <name>GitHub</name>
        <t>The <xref target="IETF-HACKATHON-GITHUB"/> is used to share code, presentations, and other artifacts at IETF Hackathons. The Hackathon Chairs are responsible for administering the GitHub organization.</t>
        <t>Code for Hackathon projects often exist elsewhere, which is perfectly fine. Anyone needing a place to host code for the Hackathon can request the creation of a repository for their project.</t>
        <t>A repository is created and maintained by the Chairs for each Hackathon, e.g., <xref target="RESULTS-PRESENTATIONS"/>. This repo is for participants to upload project results presentations. The contents of this repo are used as the source for all presentations at the end of the Hackathon and remain as a reference after the Hackathon.</t>
      </section>
      <section anchor="meetecho">
        <name>Meetecho</name>
        <t><xref target="MEETECHO"/> is used for the kickoff and closing sessions of the Hackathon. This provides many capabilities, including the following:</t>
        <ul spacing="normal">
          <li>allows participants to join Hackathon sessions in person or remotely</li>
          <li>validates registration of participants at time of joining Hackathon sessions</li>
          <li>enables remote presenters of project results presentations</li>
          <li>captures recording of Hackathon kickoff and closing</li>
        </ul>
      </section>
      <section anchor="network">
        <name>Network</name>
        <t>Access to the IETF network is an important aspect of the Hackathon. The IETF network provides unfettered Internet access that is not typical within many residential, corporate, and university environments. For many of IETF participants and projects, access to the Internet and each other via wireless access to the IETF network is sufficient. However, due to the nature of the work done in the IETF, wired access and special networking capabilities are often required.</t>
        <t>The NOC has graciously met the needs of the Hackathon since its inception and continues to add more capabilities over time. Champions are able to request in advance wired access and special networking functionality, including static IPv4 and IPv6 addresses, IPv6 only networking, a closed user group, NAT64, and IPv6PD. All of this, and the IETF network in general, is made available by the start of the Hackathon and in advance for setup to the extent possible.</t>
        <section anchor="remote-networking">
          <name>Remote Networking</name>
          <t>Online only meetings present both a personal networking challenge and a computer networking challenge. The NOC came to the rescue for the latter with an experimental mechanism to join the IETF network while attending a meeting remotely. This evolved into what is now known as <xref target="HACKNET"/>, a global Layer 2 VPN designed to support IETF protocol development across teams within the IETF Hackathon. A limited set of devices for connecting to HackNet are supported. In addition to layer 2 connectivity, a subset of the networking capabilities available at in-person meetings are available. Both the set of devices and the set of networking capabilities are expected to expand and evolve over time. However, it is important to note that HackNet is still an experiment and not a production service. Best effort support is available via email to <xref target="TICKET"/>.</t>
        </section>
      </section>
      <section anchor="webex">
        <name>Webex</name>
        <t>Champions can request a <xref target="WEBEX-ACCOUNT"/> they can use to schedule meetings for their team. These are similar to the Webex accounts allocated to working group chairs to be used for virtual interim meetings. An account can be requested by a team champion at any time. Accounts remain active and available throughout the duration of the Hackathon and the associated IETF meeting. A project name may be used in place of "Working Group Name" in the request form.</t>
      </section>
      <section anchor="gather">
        <name>Gather</name>
        <t><xref target="GATHER"/> facilitates virtual hallway interaction during IETF meetings. A dedicated area within the overall space is created by the Secretariat for the Hackathon. The area includes tables, identified by letters of the alphabet, that teams are free to self assign and use as and when they like. Eight to ten seats around each table facilitate group discussions within the team. A whiteboard or shared notes tablet, e.g., <xref target="HEDGEDOC"/>, at tables facilitates sharing of information within the team. The tables also facilitate collaboration across teams. One cautionary note, Gather has relative high network bandwidth and CPU requirements, and as such may not be well suited for some Hackathon participants.</t>
        <t>The Gather space remains available between IETF meetings, with incremental improvements and additions made during this time. The space is cleaned about a month prior to the start of the next meeting, removing anything left over from the previous meeting.  Hackathon teams are encouraged to make a copy of anything they want to retain within a week of the end of the IETF meeting.</t>
      </section>
    </section>
    <section anchor="statistics-and-metrics">
      <name>Statistics and Metrics</name>
      <t>Statistics for the Hackathon have been gathered informally from the first Hackathon, at IETF 92, and more formally since IETF 101. Registration is required but it is also free, which can lead to misleading statistics. Starting with IETF 101, an effort has been made by the Secretariat to validate registrations for all in-person participants by checking registrations at the main entrance to the Hackathon room. Badges similar to those issued for the rest of the IETF meeting are now issued for the Hackathon as well. There is still no good mechanism for determining the number of remote participants.</t>
      <t>Hackathon participation has grown from 45 at IETF 92 to a maximum of 406 at IETF 104. Participation tends to be slightly higher when the IETF meeting is located in Europe. Recent in-person Hackathons have had roughly 30-40% as many participants as the corresponding IETF meeting. For roughly 20-30% of Hackathon participants, the Hackathon is their first experience at any IETF event.</t>
      <section anchor="ietf-survey-results">
        <name>IETF Survey Results</name>
        <t>For each IETF meeting, there is a post event survey that often includes a question or two about the Hackathon, e.g., <xref target="IETF-106-SURVEY"/></t>
      </section>
      <section anchor="hackathon-survey-results">
        <name>Hackathon Survey Results</name>
        <t>Hackathon specific surveys have been used on some occasions to obtain more detailed feedback about the Hackathon from the IETF community. This has been especially useful for feedback on online only Hackathons. Survey have been short with most questions being optional, e.g., <xref target="IETF-110-SURVEY"/>.</t>
      </section>
    </section>
    <section anchor="roles-and-responsibilities">
      <name>Roles and Responsibilities</name>
      <t>This section provides a summary of the roles and responsibilities of individuals and groups involved in a successful IETF Hackathon. The summary provided here is not meant to be exhaustive. Some responsibilities are described entirely or in more detail throughout the rest of the document.</t>
      <section anchor="hackathon-chairs">
        <name>Hackathon Chair(s)</name>
        <t>The role of a Hackathon chair is similar to that of a working group chair. As with working groups, it is typically best to have co-chairs share responsibilities and workload. The Chairs work very closely with the Secretariat on all responsibilities. Key responsibilities include:</t>
        <ul spacing="normal">
          <li>Organize and deliver a Hackathon at each IETF meeting, soliciting help from all other roles to do much of the heavy lifting</li>
          <li>Encourage and provide guidance to champions who volunteer to lead projects</li>
          <li>Maintain the Hackathon wiki, e.g., <xref target="IETF-110-HACKATHON-WIKI"/>, and all of its child pages.</li>
          <li>Moderate <xref target="email-list">Hackathon email list</xref></li>
          <li>
            <xref target="REQUEST-SESSIONS"/> for the Hackathon opening and closing in the IETF meeting</li>
          <li>Emcee the Hackathon, including the opening and closing sessions and announcements in between</li>
          <li>Create and manage the GitHub repository used for each Hackathon, e.g.,<xref target="RESULTS-PRESENTATIONS"/></li>
          <li>Serve as main point of contact for all Hackathon questions and concerns</li>
        </ul>
      </section>
      <section anchor="secretariat">
        <name>Secretariat</name>
        <t>Key responsibilities include:</t>
        <ul spacing="normal">
          <li>Configure and manage Hackathon <xref target="registration">registration system</xref></li>
          <li>Maintain Hackathon <xref target="hackathon-website">website</xref></li>
          <li>Create and maintain web page for each Hackathon, e.g., <xref target="IETF-110-HACKATHON-WEBSITE"/></li>
          <li>Create wiki page for each Hackathon, e.g., <xref target="IETF-110-HACKATHON-WIKI"/>. This is initialized and updated at times by the Secretariat, but the Chair(s) are ultimately responsible for maintaining it.</li>
          <li>Handle venue logistics for Hackathon, Hackdemo Happy Hour, and Code Lounge (e.g., reserve room, food and beverages, AV, etc.)</li>
          <li>Internal IETF promotion (e.g., email messages to IETF community)</li>
          <li>Assist with external outreach, as needed, including finding sponsors</li>
          <li>Validate Hackathon registrations for in-person participants, including issuing badges and <xref target="t-shirts">Hackathon t-shirts</xref> when available</li>
        </ul>
      </section>
      <section anchor="sponsor">
        <name>Sponsor</name>
        <t>Key responsibilities include:</t>
        <ul spacing="normal">
          <li>Provide some funding to help offset costs of Hackathon (either per meeting or per year, depending on model)</li>
          <li>Optionally provide t-shirts or other giveaways</li>
          <li>Optionally provide support staff to assist with Hackathon</li>
        </ul>
        <t>Key benefits include:</t>
        <ul spacing="normal">
          <li>Sponsor logo on Hackathon t-shirts</li>
          <li>Sponsor logo on Hackathon signage</li>
          <li>Sponsor logo on Hackathon webpage and wiki</li>
          <li>Sponsor logo and call out in Hackathon kickoff and closing presentation</li>
          <li>Sponsor logo and call out in IETF Plenary presentation</li>
          <li>Sponsor logo and call out in Hackathon recap on <xref target="IETF-BLOG"/></li>
          <li>Recognition in IETF community for helping the IETF Hackathon remain free and open to everyone</li>
        </ul>
      </section>
      <section anchor="champions-of-projects">
        <name>Champions of Projects</name>
        <t>Champions of projects are the key to a successful Hackathon. Key responsibilities for champions include:</t>
        <ul spacing="normal">
          <li>Volunteer to lead a project at the Hackathon</li>
          <li>Serve as primary contact for the project</li>
          <li>Add and manage information on the Hackathon wiki for the project</li>
          <li>Promote the project to appropriate groups inside IETF and outside as well</li>
          <li>Welcome and organize members of the team</li>
          <li>Provide focus, guidance, and leadership for the project</li>
        </ul>
      </section>
      <section anchor="ietf-llc-director-of-communications-and-operations-was-isoc">
        <name>IETF LLC, Director of Communications and Operations (was ISOC)</name>
        <t>Key responsibilities include:</t>
        <ul spacing="normal">
          <li>Promotion outside of IETF, including web search engine ad words, social media posts, and listing on external event calendars such as <xref target="RIPE-CALENDAR"/> and <xref target="NSRC-CALENDAR"/>.</li>
          <li>Outreach to local universities</li>
          <li>Provide photographer, including optional team photos and candid photos of collaborating during in-person events</li>
          <li>
            <xref target="stickers">Laptop stickers</xref> at in-person events</li>
        </ul>
      </section>
      <section anchor="judges">
        <name>Judges</name>
        <t>The first several Hackathon involved judges who listened to project results presentations by teams at the closing of each Hackathon and identified winning teams for an arbitrary number of project categories. Prizes were made available to members of winning teams. This was done as an incentive to participate in the Hackathon and present results, and  to provide a fun yet informative end to the Hackathon that could be appreciated by the entire IETF community. Judging and awarding of prizes led to confusion regarding the nature of the Hackathon, making it appear to some overly competitive. Procurement of appropriate prizes was financially and logistically challenging. Arrangement of judges, determination of winners, and awarding of prizes all became more time consuming, especially as the number of projects and participants grew. Ultimately, it was deemed best to eliminate judging, awards, and prizes entirely. Apparently the IETF community has an innate incentive to participate and present results in the Hackathon.</t>
      </section>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>The practices described in this document have been established, used, and refined over the course of running numerous IETF Hackathons, including several at online only IETF meetings. The <xref target="GITHUB-REPO"/> GitHub repository has been used to collaborate on this document. The <xref target="github">IETF-Hackathon GitHub</xref> contains code associated with IETF Hackathons.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t><xref target="remote-networking">HackNet</xref> enables Hackathon participants to join the IETF network while attending a meeting remotely. The intent is for those connecting remotely to have as open a network as possible, just like those connecting to the IETF network at an in person meeting. A user must have a datatracker account to access HackNet and is expected to respect it just as they are expected to respect the IETF network at an in person meeting. If HackNet is exploited, it is addressed as an exploitation of the IETF network would be at an in person meeting.</t>
      <section anchor="privacy-considerations">
        <name>Privacy Considerations</name>
        <t>Participant names are displayed publicly in the <xref target="participant-list">Participant List</xref>. As part of their registration, participants may opt in to display their email address as well.</t>
        <t>The email addresses of individual champions are often shared publicly by the champions on the wiki. This is done voluntarily by individual champions to make it easier for others to contact them.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>Informative References</name>
      <reference anchor="SURVEY" target="https://www.surveymonkey.com/results/SM-9HLRXN8M7/">
        <front>
          <title>IETF 107 Hackathon Participant Survey</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="IETF-108-HACKATHON-WIKI" target="https://trac.ietf.org/trac/ietf/meeting/wiki/108hackathon/">
        <front>
          <title>IETF 108 Hackathon Wiki</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="IETF-RUNNING-CODE-SPONSOR" target="https://www.ietf.org/about/support/#running-code/">
        <front>
          <title>IETF Running Code Sponsor</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="REMARK" target="https://github.com/gnab/remark/">
        <front>
          <title>remark GitHub Repository</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="DATATRACKER" target="https://datatracker.ietf.org/">
        <front>
          <title>IETF Datatracker</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="IETF-HACKATHON-GITHUB" target="https://github.com/ietf-hackathon/">
        <front>
          <title>IETF-Hackathon GitHub</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="REQUEST-SESSIONS" target="https://datatracker.ietf.org/secr/sreq/">
        <front>
          <title>IETF Session Request</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="AGENDAS" target="https://datatracker.ietf.org/meeting/agenda/">
        <front>
          <title>IETF Meeting Agenda</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="HACKATHON-WEBSITE" target="https://www.ietf.org/how/runningcode/hackathons/">
        <front>
          <title>IETF Hackathon Website</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="MEETING-WEBSITE" target="https://www.ietf.org/how/meetings/">
        <front>
          <title>IETF Meeting Website</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="REGISTRATION-SYSTEM" target="https://registration.ietf.org/">
        <front>
          <title>IETF Meeting Registration System</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="NOTE-WELL" target="https://ietf.org/about/note-well/">
        <front>
          <title>IETF Note Well</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="DATATRACKER-ACCOUNT" target="https://datatracker.ietf.org/accounts/create/">
        <front>
          <title>IETF Datatracker Account Creation</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="EMAIL-LIST" target="https://www.ietf.org/mailman/listinfo/Hackathon/">
        <front>
          <title>IETF Hackathon Email List</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="EMAIL-ALIAS" target="mailto:hackathon-chairs@ietf.org">
        <front>
          <title>IETF Hackathon Chairs Email Alias</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="MEETECHO" target="https://www.meetecho.com/">
        <front>
          <title>Meetecho</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="HACKNET" target="https://hacknet.meeting.ietf.org/">
        <front>
          <title>HackNet</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="WEBEX-ACCOUNT" target="https://ietf.webex.com/webappng/sites/ietf/dashboard?siteurl=ietf/">
        <front>
          <title>IETF Webex Account</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="GATHER" target="https://gather.town/">
        <front>
          <title>Gather</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="HEDGEDOC" target="https://notes.ietf.org/">
        <front>
          <title>HedgeDoc</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="IETF-106-SURVEY" target="https://www.ietf.org/media/documents/IETF_106_Meeting_Survey.pdf">
        <front>
          <title>IETF 106 Meeting Survey</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="IETF-110-SURVEY" target="https://ql.tc/8K1JeZ/">
        <front>
          <title>IETF 110 Meeting Survey</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="IETF-BLOG" target="https://www.ietf.org/blog/">
        <front>
          <title>IETF Blog</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="GITHUB-REPO" target="https://github.com/eckelcu/draft-ietf-shmoo-hackathon/">
        <front>
          <title>GitHub Repository for draft-ietf-shmoo-hackathon</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="MEETING-WIKI" target="https://trac.ietf.org/trac/ietf/meeting/wiki">
        <front>
          <title>IETF Meeting Wiki</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="RESULTS-PRESENTATIONS" target="https://github.com/ietf-hackathon/ietf110-project-presentations">
        <front>
          <title>IETF 110 Hackathon Project Results Presentations</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="PARTICIPANTS" target="https://registration.ietf.org/110/participants/hackathon/">
        <front>
          <title>IETF 110 Hackathon Participant List</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="IETF-110-HACKATHON-WEBSITE" target="https://www.ietf.org/how/runningcode/hackathons/110-hackathon/">
        <front>
          <title>IETF 110 Hackathon Website</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="IETF-110-HACKATHON-WIKI" target="https://trac.ietf.org/trac/ietf/meeting/wiki/110hackathon/">
        <front>
          <title>IETF 110 Hackathon Wiki</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="LOST-AND-FOUND" target="https://trac.ietf.org/trac/ietf/meeting/wiki/110hackathon/lost&amp;found">
        <front>
          <title>IETF 110 Hackathon Lost and Found</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="RESULTS-PRESENTATION-SCHEDULE" target="https://trac.ietf.org/trac/ietf/meeting/wiki/110hackathon/resultspresentationschedule">
        <front>
          <title>IETF 110 Hackathon Results Presentation Schedule</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="TEAM-SCHEDULE" target="https://trac.ietf.org/trac/ietf/meeting/wiki/110hackathon/teamschedule">
        <front>
          <title>IETF 110 Hackathon Team Schedule</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="HACKDEMO" target="https://trac.ietf.org/trac/ietf/meeting/wiki/113hackathon/hackdemo">
        <front>
          <title>IETF 113 Hackdemo Happy Hour</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="CODE-LOUNGE" target="https://trac.ietf.org/trac/ietf/meeting/wiki/113hackathon/codelounge">
        <front>
          <title>IETF 113 Code Lounge</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="TICKET" target="mailto://tickets@meeting.ietf.org">
        <front>
          <title>IETF Support Email Alias</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="RIPE-CALENDAR" target="https://www.ripe.net/participate/meetings/calendar/">
        <front>
          <title>RIPE Upcoming Events</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="NSRC-CALENDAR" target="https://nsrc.org/calendar/">
        <front>
          <title>Network Startup Resource Center Calendar</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="CODE-SPRINT" target="https://www.ietf.org/how/runningcode/code-sprint/">
        <front>
          <title>IETF Code Sprint</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
    </references>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The IETF Secretariat, notably Alexa Morris and Stephanie McCammon, contributed significantly to the creation of the IETF Hackathon and the practices in this document. Among other things, Alexa drafted the initial breakdown of <xref target="roles-and-responsibilities">Roles and Responsibilities</xref>, and Stephanie McCammon created the initial Hackathon website and wiki. These have evolved over time and are used to run each Hackathon.</t>
      <t>Greg Wood, Barry Leiba, Michael Richardson, Benson Muite, Dhruv Dhody, Karl Auerbach, Mallory Knodel, Lars Eggert, and Robert Sparks also provided significant contributions to the Hackathon and to this document.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAHKcp2IAA9196XLbWJbmfz4FwjlLuoKUvORW7uiZkmWlrU5Z0lhyZlVn
VFSAwCWJNAgwsYhmOfwu8yzzZHO+c87dQFC2u6ojJqZ+VFogcJdzz77d2Ww2
6YquNM+SB2/6qiqqZZJWyfnZ7Y/JqzR7l3arunowSefzxtzRO4XpFrOV/yGv
sypd09d5ky66Gf/crtZ17V+aPfpukqWdWdbN7llSVIt6Mik2zbOka/q2e/Lo
0R8fPZmkjUlp+JemMk1aPphs6+bdsqn7DT286dJd8qpem+S1MV1ylWVpW9RV
Wpa75Koqi8o8mLwzO/okf5acV51pKtPNXmBBk0nbpVX+t7SsK1rkzrSTTfEs
+bWrs2nS1k3XmEVL/9qt8Y+/TiZpT0tunk2S2SSh/xVV+yw5PUrOsnem5Cey
29NV2pSmDZ7XzTKtir+nHa2Mfi/arE5udm1n1i3/btZpUT5LDD7I+j9leOEo
q9f8Y1b3VQfovK2KzuQJ7bij0etFcrI2TZGlk0lVN2sa/M48I+gRDP1fSXLz
9s3PZ395xkPZw+QTfPzoe3+KyXXadEVWbNKqS2765s7sHsgnabM0HX2z6rpN
++z4eLvdHrX8wrquCLJY53Fj2r7s2uOb17M/vrp48+fLH15/f/wA02Oq2eNH
P8xenZz+dHL76upy9sv5T+ej6/khWM8vxbviwAq6Js2OgExHBFf+6xh/Ha8J
AQhFj7f06TGN5pAsWMmbt5eX55cvZ6dXL85mN9dXlzdXb0bWYrH9tM5NcrOp
K0KHe+DhFpPO6747bvvNhtDn+KtGhpllNIws4s3Z65M3P8UzNnT8zbvkZdG9
6ufJG7Op26Ijejgw4bLoVv2cwb6s0vmxfC7Dvzi5Pbl9Q5A+G9vVi5RQh8D1
zhzaTO7f8Jvy0PNn+PL89tXb5/tzzPwJyn4+vYmYa1gw/a+3Zze3s5uzm5tz
OqSRzdyYFoRO8Pq9N233JRtqTdYct435XSY7eXl2+eJkbI7XglHJydJUefol
U1hcTPlLmSeggLPnN+e3ZyMzBgRg5oQG5nOwblVvjxXVGNMcMFuZ+PXZ2S2Q
/vC0dqNfOKnusrWH9vL8hrDvlk5sdvOXm9uz1/dM9cYsi5bgBp6ozPDAtE3w
5gArL69uz2hbFxcjE13WnaENleWBYQdEW9Hrsy29vkdJs5PT06u3l7f3U1Ry
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

-->

</rfc>
