<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.12 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>

<rfc ipr="trust200902" docName="draft-eckel-shmoo-ietf-hackathon-01" category="info">

  <front>
    <title abbrev="ietf-hackathon">Running an IETF Hackathon</title>

    <author initials="C." surname="Eckel" fullname="Charles Eckel">
      <organization>Cisco Systems</organization>
      <address>
        <email>eckelcu@cisco.com</email>
      </address>
    </author>

    <date year="2020" month="November" day="18"/>

    <area>General</area>
    <workgroup>shmoo</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>IETF Hackathons encourage developers to collaborate and develop utilities, ideas, sample code and solutions that show practical implementations of IETF standards. 
This document provides a set of practices for running IETF Hackathons.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t>IETF Hackathons encourage the IETF community to collaborate and develop utilities, ideas, sample code and solutions that show practical implementations of IETF standards. IETF Hackathons aim to:</t>

<t><list style="symbols">
  <t>Advance the pace and relevance of IETF standards activities by bringing the speed and collaborative spirit of open source development into the IETF</t>
  <t>Bring developers and young people into IETF and get them exposed to and interested in IETF</t>
</list></t>

<t>IETF Hackathons are free to attend and open to everyone. Software developers are the primary target 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, draft authors, working group chairs, etc., are key participants as well. Group dynamics and blending of skillsets and perspectives are extremely valuable aspect of IETF Hackathons.</t>

<t>In addition to the running code created and improved as a result of each Hackathon, the exchange or 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 sometimes be more illustrative and less confrontational than text in a draft or an email. Working together to find common understanding of proposals, concerns, and solutions that result in improvements to evolving internet drafts is as important as the development of running code that implements or validates the correctness of these same drafts.</t>

<t>Consequently, IETF Hackathon 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.</t>

<t>This document provides a set of practices for running IETF Hackathons.</t>

</section>
<section anchor="conventions-and-definitions" title="Conventions and Definitions">

<t>The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”,
“SHOULD NOT”, “RECOMMENDED”, “NOT RECOMMENDED”, “MAY”, and “OPTIONAL” in this
document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/>
when, and only when, they appear in all capitals, as shown here.</t>

</section>
<section anchor="funding" title="Funding">

<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" title="Sponsorship">

<t>The initial funding model was to have Hackathon sponsors that 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>

</section>
<section anchor="expenses" title="Expenses">

<t>The primary costs associated with the Hackathon are for the meeting space and for food and beverage. It is often challenging to separate out the cost of the Hackathon.</t>

<section anchor="space" title="Space">

<t>The space for the Hackathon is sometimes included as part of the overall contract. Other times, additional costs are incurred to secure a large enough space earlier than would otherwise have been required. Typically, the space is needed from Friday afternoon for setup until Sunday afternoon. The space is typically repurposed for the IETF Lounge. If the size of the Hackathon continue to increase, it might be necessary to use the same space as is used for the IETF plenary.</t>

</section>
<section anchor="food-and-beverage" title="Food and Beverage">

<t>Some portion of the food and beverage cost is often included as part of a minimum spend the IETF is obligated to make. When a Hackathon sponsor is identified, the money is typically used to offset food and beverage costs, or to enhance the food and beverage that is made available versus what would have been made available if no sponsor existed.</t>

<t>The minimum food and beverage for the Hackathon has been,</t>

<t><list style="symbols">
  <t>coffee, tea, and water Saturday and Sunday morning</t>
  <t>lunch Saturday and Sunday</t>
</list></t>

<t>Additional items, in order of importance, included when funding is available include,</t>

<t><list style="symbols">
  <t>beer Saturday evening</t>
  <t>dinner Saturday evening</t>
  <t>continental breakfast Saturday and Sunday</t>
  <t>afternoon snacks Saturday and Sunday</t>
</list></t>

</section>
<section anchor="t-shirts" title="T-shirts">

<t>Hackathon t-shirts are an important part of the Hackathon. They have been provided for all in-person Hackathons and greatly appreciated by most participants. The also serve as great advertising for the IETF, the Hackathon, and sponsors. Cisco or other event sponsors have typically covered the cost of t-shirts. The current model is that the secretariat covers the costs using whatever funding is available.</t>

<t>TBD: include size and cost info?</t>

</section>
<section anchor="stickers" title="Stickers">

<t>Laptop stickers are popular with software developers. Stickers have been produced made available at the Hackathon for those that want them. The cost of producing these and making them available has been covered by the IETF LLC, Director of Communications and Operations.</t>

</section>
<section anchor="online-only" title="Online only">

<t>When the IETF meeting has been online only, all costs in this section are eliminated. Some potential costs associated with running the Hackathon online an entire week before the rest of the IETF meeting include the following:</t>

<t><list style="symbols">
  <t>Meetecho: costs associated with Hackathon kickoff and closing sessions on Monday and Friday.</t>
  <t>Gather: costs associated with premium service, required to enable more than 50 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.</t>
  <t>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 at present available at no additional cost to the IETF.</t>
  <t>Network: the IETF network, and remote access to it, need to be available an additional week.</t>
</list></t>

<t>Online only Hackathons, and increased remote participating in general, result in increased cloud infrastructure requirements that make Hackathon sponsorship more attractive to cloud infrastructure providers.</t>

</section>
</section>
</section>
<section anchor="timing" title="Timing">

<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 attendees, 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, surroundings, and subject matter.</t>

<section anchor="agenda" title="Agenda">

<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>

<figure><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
    14:00: Project presentations to other participants
    15:45: Closing remarks and opportunities for next time
    16:00: Hackathon ends
    17:00: Tear down complete 
]]></artwork></figure>

<t>The time on Saturday morning provides team champions time to 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 or 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 Hackathon 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. It is important to provide them time to participate in the Newcomer events. The opening reception typically start at 17:00, and we want to make it easy for all Hackathon participants to join that as well.</t>

<t>Hackdemo Happy Hour (ref) and the Code Lounge (ref) exist to facilitate ongoing discussion and work on projects beyond the official end of the Hackathon weekend.</t>

</section>
<section anchor="hackdemo-happy-hour" title="Hackdemo Happy Hour">

<t>Hackdemo Happy Hour provides an opportunity for more in depth sharing and discussion than is possible within the time constraints of the result presentation that occur at the end of the Hackathon. This opportunity is made available to all teams. As with the results presentation, 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 non alcoholic beverages are provided, and a cash bar is available to align with the spirit of a happy hour.</t>

</section>
<section anchor="code-lounge" title="Code Lounge">

<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 successful attendance of Code Lounge sessions as well as any traditional 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" title="Code Sprint">

<t>Some efforts were made to have the Hackathon and the Code Sprint work together or potentially be combined into a single event focusing on the development of IETF protocols and IETF internal tools. There is some concern that the events currently compete for resources. There is also a great deal of synergistic potential. Several Hackathon projects, such as those related to YANG model validation, involve the creation or modification of IETF tools.</t>

<t>The Code Sprint existed long before the Hackathon and has its own identity and way of doing things. The Code Sprint organizers are against combining the events and potentially losing this identity the benefits of a customized event. The practice that exists today is to locate the events physically close to each other to facilitate switching back and forth between the two events.</t>

</section>
<section anchor="online-only-1" title="Online Only">

<t>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 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>The response was great. 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 presentations as well as the agenda and a recording of the closing session are available via the IETF 108 Hackathon <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/108hackathon">wiki</eref>.</t>

<t>Hackdemo Happy Hour and the Code Lounge are not applicable for online only Hackathons.</t>

</section>
</section>
<section anchor="project-presentations" title="Project Presentations">

<t>Project presentations are an important mechanism for capturing what each team accomplished and sharing this with the IETF community.</t>

<t>For the first few Hackathons, we had two very distinct types of presentations,</t>

<t><list style="numbers">
  <t>Presentation that served as project pitches at the start of the Hackathon</t>
  <t>Presentations that summarizes results at the end of the Hackathon.</t>
</list></t>

<section anchor="project-pitches" title="Project Pitches">

<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 was fantastic when we had a small number of 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 a couple hours listening to presentations. Project pitches were dropped from the Hackathon. Champions are encouraged to share this type of information in advance via the Meeting Wiki instead.</t>

</section>
<section anchor="results-summaries" title="Results Summaries">

<t>The project presentations are brief summaries by each team of what problem they tried to solve, what they achieved, and highlights that include lessons learned, feedback to associated working groups, and collaboration with open source communities and other standards organizations. We also highlight individuals who are participating in their first IETF Hackathon or first IETF event to facilitate their introduction into 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, results presentations can become unwieldy as the number of projects increases. The formula used is to limit the total time for all presentations to 2 hours and allocate time slots based on that. Time slots of 3-5 minutes are typical.</t>

<t>All presentation are uploaded to a GitHub repo created specifically for each IETF Hackathon (e.g., <eref target="https://github.com/ietf-hackathon/ietf108-project-presentations">https://github.com/ietf-hackathon/ietf108-project-presentations</eref>). The contents of this repo are used as the source for all project presentations at the end of the Hackathon and remain as a reference after the Hackathon.</t>

<t>A project results presentation template in PPTX format provides guidance on what to cover and is available for those that want to use it. For portability, presentations are requested to be uploaded in PDF format. PDF is not ideal for uploading to GitHub and version control. HTML and Markdown are alternative formats worth considering. TODO - Provide a template in Markdown as well. TODO - Investigate GitHub’s <eref target="https://github.blog/2019-06-06-generate-new-repositories-with-repository-templates/">template mode</eref>.</t>

<t>One must be a member of the IETF-Hackathon GitHub org to upload a new presentation or update/replace an existing presentation.</t>

<t>To be added as a member, presenters are asked to</t>

<t><list style="symbols">
  <t>include the name by which they are known in their GitHub profile</t>
  <t>enable two factor authentication (2FA)</t>
  <t>send your GitHub user name to the Chair(s)</t>
</list></t>

<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 anchor="presenting-in-person" title="Presenting in person">

<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" title="Presenting Remotely">

<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>
<section anchor="tooling" title="Tooling">

<t>The IETF Hackathon makes use of the same tooling used by the IETF community for its work and meetings.</t>

<section anchor="datatracker" title="Datatracker">

<t>The <eref target="https://datatracker.ietf.org/">datatracker</eref> supports the notion of Teams that are not a 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 <eref target="https://github.com/ietf-hackathon">GitHub</eref> to the datatracker. Now this is done only when required for integration with other IETF tooling, including:</t>

<t><list style="symbols">
  <t>requesting <eref target="https://datatracker.ietf.org/secr/sreq/">sessions</eref> for the Hackathon kickoff and closing, and for Hackdemo Happy Hour</t>
  <t>posting <eref target="https://datatracker.ietf.org/meeting/agenda/">agendas</eref></t>
</list></t>

</section>
<section anchor="ietf-website" title="IETF Website">

<section anchor="hackathon-webpage" title="Hackathon Webpage">

<t>The IETF website includes a dedicated page for the Hackathon <eref target="https://www.ietf.org/how/runningcode/hackathons/">webpage</eref>. This page 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 page is updated on a more ad hoc basis.</t>

</section>
<section anchor="meeting-webpage" title="Meeting Webpage">

<t>Each IETF meeting <eref target="https://www.ietf.org/how/meetings/">webpage</eref> contains information about the corresponding Hackathon, including the dates of the Hackathon in the header, a link to the Hackathon webpage in the “Additional Events” section.</t>

</section>
</section>
<section anchor="registration" title="Registration">

<t>Registration for the Hackathon is through the IETF <eref target="https://registration.ietf.org">meeting registration</eref> system. Participant registration for the Hackathon is</t>

<t><list style="symbols">
  <t>independent of participation registration for the meeting</t>
  <t>free</t>
  <t>required</t>
</list></t>

<t>As with meeting registration, registrants for the Hackathon acknowledge the <eref target="https://ietf.org/about/note-well/">Note Well</eref> during the registration process.</t>

<section anchor="attendees-list" title="Attendees List">

<t>An active list of all registered attendees (e.g., <eref target="https://registration.ietf.org/109/participants/hackathon/">https://registration.ietf.org/109/participants/hackathon/</eref>) is maintained by the Secretariat. Important information displayed for each registrants include 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 ones registration.</t>

</section>
<section anchor="caps-on-registrations" title="Caps on Registrations">

<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="wiki" title="Wiki">

<t>The meeting wiki serves as the primary source of information for each Hackathon.</t>

<section anchor="hackathon" title="Hackathon">

<t>A page within the wiki (e.g., <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon">https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon</eref>) 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 the wiki. 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 <eref target="https://datatracker.ietf.org/accounts/create/">requesting</eref> a new datatracker account.</t>

</section>
<section anchor="lost-and-found" title="Lost and Found">

<t>A Lost and Found wiki page (e.g., <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon/lost&amp;found">https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon/lost&amp;found</eref>) 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" title="Results Presentation Schedule">

<t>A Results Presentation Schedule wiki page (e.g., <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon/resultspresentationschedule">https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon/resultspresentationschedule</eref>) 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" title="In Person Only">

<t>The following wiki pages are applicable for in-person Hackathons only.</t>

<section anchor="hackdemo-happy-hour-1" title="Hackdemo Happy Hour">

<t>A Hackdemo Happy Hour wiki page (e.g., <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/106hackdemo">https://trac.ietf.org/trac/ietf/meeting/wiki/106hackdemo</eref>) 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" title="Code Lounge">

<t>A Code Lounge wiki page (e.g., <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/106codelounge">https://trac.ietf.org/trac/ietf/meeting/wiki/106codelounge</eref>) 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-2" title="Online Only">

<t>The following wiki pages are applicable for online only Hackathons only.</t>

<section anchor="team-schedule" title="Team Schedule">

<t>A Team Schedule wiki page (e.g., <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon/teamschedule">https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon/teamschedule</eref>) 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="mailing-list" title="Mailing List">

<t>The Hackathon mail list, <eref target="https://www.ietf.org/mailman/listinfo/Hackathon">hacakthon@ietf.org</eref>, is used for all email communication and announcement related to the Hackathon. All registrants and 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.</t>

</section>
<section anchor="github" title="GitHub">

<t>The <eref target="https://github.com/ietf-hackathon">IETF-Hackathon</eref> is used to share code, presentations, and other artifacts at IETF Hackathons. The Hackathon Chairs are responsible for administering the GitHub org.</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 creating of a repository for their project.</t>

<t>A repository is created and maintained by the Chairs for each Hackathon (e.g., <eref target="https://github.com/ietf-hackathon/ietf109-project-presentations">https://github.com/ietf-hackathon/ietf109-project-presentations</eref>). This repo is for  participants to upload project presentations. The contents of this repo are used as the source for all project presentations at the end of the Hackathon and remain as a reference after the Hackathon.</t>

</section>
<section anchor="meetecho" title="Meetecho">

<t><eref target="https://www.meetecho.com/">Meetecho</eref> is used for the kickoff and closing sessions of the Hackathon. This provides many capabilities, including the following:</t>

<t><list style="symbols">
  <t>allows participants to join Hackathon sessions in person or remotely</t>
  <t>validate registration of participants at time of joining Hackathon sessions</t>
  <t>enable remote presentations of project results</t>
  <t>capture recording of Hackathon sessions</t>
</list></t>

</section>
<section anchor="network" title="Network">

<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 the 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" title="Remote Networking">

<t>Online only meetings present not only a personal networking challenge but a computer networking challenge as well. The NOC came to the rescue with remote networking options to join the IETF network while attending the meeting remotely. With a Raspberry Pi 2B, 3B, or 4B, the NOC has a recipe that allow teams to be virtually connected to the IETF network with all the previously mentioned options. Best of all, this same remote networking capability can be used by remote and in-person participants of Hackathons at in-person meetings.</t>

</section>
</section>
<section anchor="online-only-3" title="Online Only">

<t>The following tooling is applicable for online only Hackathons only.</t>

<section anchor="webex" title="Webex">

<t>Webex accounts are applicable for online only Hackathons only.</t>

<t>Champions can request a <eref target="https://ietf.webex.com/webappng/sites/ietf/dashboard?siteurl=ietf">Webex account</eref> 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" title="Gather">

<t><eref target="https://gather.town/">Gather</eref> is applicable for online only Hackathons. A dedicated area of the space is created by the Secretariat. The area includes tables that are assigned to teams. Seats around the table facilitate group discussions within the team. A whiteboard or shared notes tablet (via CodiMD) 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>

</section>
</section>
</section>
<section anchor="statistics-and-metrics" title="Statistics and Metrics">

<t>Metrics have been captured for each Hackathon. Adding these metrics is on the todo list.</t>

<section anchor="ietf-survey-results" title="IETF Survey Results">

<t>https://www.ietf.org/media/documents/survey-planning-possible-online-meetings-responses.pdf</t>

<t>(From L-R: Very important, Important, Neutral, Not important, Not at all important, Score (lower score is more important))
- Hackathon 6.73% 20.20% 40.65% 19.70% 12.72% 3.11</t>

</section>
<section anchor="hackathon-survey-results" title="Hackathon Survey results">

<t>todo</t>

<section anchor="online-only-4" title="Online Only">

<t>todo</t>

</section>
</section>
</section>
<section anchor="roles-and-responsibilities" title="Roles and Responsibilities">

<t>TBD. Should this info be in its own section or inline within other sections?
It is known to be incomplete and a mix of own section and inline at the moment.</t>

<section anchor="hackathon-chairs" title="Hackathon Chair(s)">

<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>

<t><list style="symbols">
  <t>Organize and deliver a Hackathon at each IETF meeting, soliciting help from all other roles to do much of the heavy lifting</t>
  <t>Encourage and provide guidance to champions who volunteer to lead projects</t>
  <t>Maintain the Hackathon wiki (e.g., <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon">https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon</eref>) and all of its child pages.</t>
  <t>Moderate Hackathon@ietf.org email list</t>
  <t>Request sessions for Hackathon opening and closing at IETF meeting (i.e., <eref target="ttps://datatracker.ietf.org/secr/sreq/">https://datatracker.ietf.org/secr/sreq/</eref>)</t>
  <t>Emcee the Hackathon, including the opening and closing sessions and announcements in between</t>
  <t>Create and manage the GitHub repo used for each Hackathon (e.g., <eref target="https://github.com/ietf-hackathon/ietf108-project-presentations">https://github.com/ietf-hackathon/ietf108-project-presentations</eref>)</t>
  <t>Main point of contact for all Hackathon questions and concerns</t>
</list></t>

</section>
<section anchor="secretariat" title="Secretariat">

<t>Key responsibilities include:</t>

<t><list style="symbols">
  <t>Configure and manage Hackathon registration system</t>
  <t>Maintain Hackathon <eref target="https://www.ietf.org/how/runningcode/hackathons/">web page</eref></t>
  <t>Create and maintain web page for each Hackathon (e.g., <eref target="https://www.ietf.org/how/runningcode/hackathons/109-hackathon/">https://www.ietf.org/how/runningcode/hackathons/109-hackathon/</eref>)</t>
  <t>Create wiki page for each Hackathon (e.g., <eref target="https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon">https://trac.ietf.org/trac/ietf/meeting/wiki/109hackathon</eref>). This is initialized and updated at times by the Secretariat, but the Chair(s) are ultimately responsible for maintaining it.</t>
  <t>Handle venue logistics for Hackathon, Hackdemo Happy Hour, and Code Lounge (e.g., reserve room, food and beverages, AV, etc.)</t>
  <t>Internal IETF promotion (e.g., email messages to community)</t>
  <t>Assist with external outreach, as needed, including finding sponsors</t>
</list></t>

</section>
<section anchor="sponsor" title="Sponsor">

<t>Key responsibilities include:</t>

<t><list style="symbols">
  <t>Provide some funding to help offset costs of Hackathon (either per meeting or per year, depending on model)</t>
  <t>Optionally provide t-shirts or other giveaways</t>
  <t>Optionally provide support staff to assist with Hackathon</t>
</list></t>

<t>Key benefits include:</t>

<t><list style="symbols">
  <t>TODO</t>
</list></t>

</section>
<section anchor="champions-of-projects" title="Champions of Projects">

<t>Champions of projects are the key to a successful Hackathon. Key responsibilities for champions include:</t>

<t><list style="symbols">
  <t>Volunteer to lead a project at the Hackathon</t>
  <t>Serve as primary contact for the project</t>
  <t>Add and manage information on the Hackathon wiki for the project</t>
  <t>Promote the project to appropriate groups inside IETF and outside as well</t>
  <t>Welcome and organize members of the team</t>
  <t>Provide focus, guidance, and leadership for the project</t>
</list></t>

</section>
<section anchor="ietf-llc-director-of-communications-and-operations-was-isoc" title="IETF LLC, Director of Communications and Operations (was ISOC)">

<t>Key responsibilities include:</t>

<t><list style="symbols">
  <t>External (outside world) promotion</t>
  <t>Outreach to local universities</t>
  <t>Provide photographer</t>
  <t>Laptop stickers</t>
</list></t>

</section>
<section anchor="judges" title="Judges">

<t>The first several Hackathon involved judges who listened to summary 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="security-considerations" title="Security Considerations">

<t>None.</t>

<section anchor="private-considerations" title="Private Considerations">

<t>Participant email addresses are displayed publicly. Registrants optionally include these are part of their registrations.</t>

<t>The email addresses of individual champions are often shared publicly by the champions on the wiki.</t>

<t>The email addresses of the Chairs are shared publicly by the Chairs on the wiki and via GitHub. It would probably be better to use an email alias.</t>

</section>
</section>
<section anchor="iana-considerations" title="IANA Considerations">

<t>This document has no IANA actions.</t>

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference  anchor="RFC8174" target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author initials='B.' surname='Leiba' fullname='B. Leiba'><organization /></author>
<date year='2017' month='May' />
<abstract><t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='8174'/>
<seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>




    </references>



<section numbered="false" anchor="acknowledgments" title="Acknowledgments">

<t>Michael Richardson and Benson Muite provided valuable contributions to this document.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAIu7tV8AA919eZPcyJXf//UpYE7Iy1ZUdbM5l6Yda22zSWro5WU2pfGa
oXCggKyuVKOAMo4ulhTz3ff93nt5AWgOqZHtDTMmYqqrgDxevvvK1Wq16G1f
mYvswbuhrm19k+V19uLZ++fZj3lxm/fbpn6wyNfr1tzRM9b0m9U2/FA2RZ3v
6O2yzTf9yhS3plp1213TrNJHV4/OF0Xem5umPV5ktt40i4XdtxdZ3w5d//jR
ox8ePV7krckvsj+Y2rR5tTg07e1N2wz7i4xHXNyaI31XXmQv6t60telXTzHr
YtH1eV3+r7xqalrJ0XSLvb3IPvRNscy6pu1bs+no03GHD39eLPKBVtReLLLV
IqN/tu4usqvT7BkWz9/Ilq62eVuZLvq+aW/y2v41721T0++2K5rs+tj1Ztfx
72aX2+oiYygUw78UeOC0aHaLRd20O3rtztCs2bvnV4/Pz3+4IAgQHPwP9G+1
WmX5uuvbvKBtpafQZaYumqHNb0xWmjtTNXvTdlnfZEVTVfm6aQm8dHil+zUb
elvZ3hravC1NDhjku31l6IVSnuyaasBmaJht3hOYm0O2x+S2yKvM4uGdqftc
nmk2ghgM7rwtu9Ns8X5ru4ywYMBz9G5zR1N1WZ51pscLOhp9RTvNWkWx0c5O
Zec7W5aVWSy+wgG3TTkUmPdTcOi3RsYiIO+G2vbH/8fwGC81tztaEZ3tb7PL
8i6vC1nzPi9kwtZURr6eDJZh2jteb7Y+ZuuWAAfY4f1ub0zJA4S9Eg7R97a1
DHdCjpq2M7SFxxY+IVsTgBzYaFVPMGyMTxj02Az05d40AA6/wUvDTzd0rPT6
LjMf901Hi6Af8b0FSRoiBXyUwSfnRuSdbVpj+J2+N7VsgZdKX9Ea2iOR8Gl2
3Wz6A56O19Uq6Fq7y1s657zFWvKhtIQPZpmtB8K/vKWjsns+IECtG9Z/MUWf
7TBfi0Wbtu+yw7bhAeumz2pD2NlhyGg2G2GZrBKLAwYQP8kJjjkNYqqK1mp3
tiJGcVzSqLaSRfpNY6CdwQuyZ+ASzXggfHXApsc6wysqG15Qf9wD3apjdmfN
gaHdmeoOVNVF6CHHs8yI6xFS2J2nBKIdS8BoWkJwZsuZMDz6EywV581sNSu2
ucW3pi9OlwwP4rABhnXfhW3+gd8oj8QabSELX1d0ghiN0K27tVVFJC+/AIR7
A/Q1cnDmIzHhncGW8mrI6U0aGU94tI+YQUaYU2d5WVo+RcVXxzqYVgsSFL0e
DJ0JcR38AbZDODhUPKzJi20YdsmDmI+055oYB/EiZQG0NFN3jp63w47EH4kW
QIp+xQSE1bRiSzIIBEQPschaYipsQR7atISGZbe1e9lxRwfMz9Ksu6brw8ab
od8PfTdd4ml2hb0diIJpSSCjHAz1ps13O+y8opUP4HpFXvP4OHTiDZiAZqQD
GCA5mBFgSSS7OqDDpm2UZREPI75GIKVNy/iCHwQN+pal12n2k+JI3xB9bYlo
6AA2llnNbkfnMdQlHS/QUM+e1kisIK8IXDRbQZJZATfipno0NK8eGeDZCeU3
1R1GsyrYZV1MhnSqCdUBoDFDowUkqMFTeU7dYW8EelsSvsjLRdO2dGw1oCMH
RORHgsDopMC/K1q0+d8DDQC6ThGUjzdlu7QcmmrJ1EtQ2tPJ8L5Ps8v6GL6h
pzBpvgPFJmRG+xQEIgoRbqps3rHznIWHY//z4oPYiuDrBJqRgKLN/aNE9leE
rzV2zkeMmZ8aQhTZOqYRfgKVrcsevPrj9fsHS/l/9voNf3737L//8cW7Z0/x
+frHy5cv/Qf3xPWPb/74kn5f6Kfw5tWbV6+evX4qL9O32eirV5f/9kDQ8MGb
t+9fvHl9+fKBwNV2C797lioNaIiBtW9NL5yEIFIQGxVx9uTqbXb+Tfa3v6nm
9vPP9Pk/0R+/O//+m59/Xhy2ppa5mppOUP6kg6LD3O9N3jKtVRUR7t72TCjg
5KRc1BkRmCFYEjCfD0xRAriAbS3hoW1xGPL7UoUGYbl+Q6ODH3b0zMH2W8aQ
etitiXRxmhGenWZvg4CkF7dgmdUhP4KLEMuBcP4veJ8UZWIpSz8DsZBd1jA3
EJ2iE0YSDZ5tjGFE1gWXwJCvsus9IQPJHmKMsjNGEGJEbugdEW2VHXJmBNv8
Lt57py+rNmZviPvs8Zz+IJx3YHjE7wFvSZEgUyBviQY7XieLqR4LViqKZIOo
8kQ3A2EB7b78zEks0e6GZGjPU2UP7ak5xclDyQm0suTF0A6Y3zMh7YzhdZQD
6185oQakKY2BgU5OMybSLgDPQahtiJWTivTjkB+MvW/JzDwMceNSFqaCKBI1
lxvoQ6PnlmACOsRGh/m61TGwADC4DSmHJS2gOUBhW46gss1JMTBQb0R63UEN
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

-->

</rfc>

