CINXE.COM

OFTC - Constitution

<!DOCTYPE html> <html lang="en" data-bs-theme="auto"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <meta name="description" content=""> <meta name="author" content="OFTC"> <title>OFTC - Constitution</title> <!-- Favicon--> <link rel="icon" type="image/x-icon" href="/img/favicon.ico"> <!-- Core theme CSS (includes Bootstrap)--> <link href="/css/bootstrap.min.css" rel="stylesheet"> <!-- bootstrap icons --> <link rel="stylesheet" href="/css/bootstrap-icons.min.css"> <link href='/css/main.css' rel='stylesheet'> <!-- FOUC avoidance --> <script>0</script> </head> <body> <!-- Responsive navbar--> <nav class="navbar navbar-expand-lg navbar-secondary bg-body-secondary"> <div class="container" id="back-to-top"> <div class="col smallhero"> <a class="logo me-0 navbar-brand" href="/" aria-label="Back to Home"> <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 135.398 135.398" role="presentation"> <path d="M105.52 11.889c-11.592 0-21.04 9.445-21.04 21.037 0 11.59 9.448 21.037 21.04 21.037 4.64 0 8.894-1.562 12.378-4.121l17.022 17.154c-2.658 3.523-4.295 7.854-4.295 12.592 0 4.959 1.8 9.464 4.686 13.066l-17.1 16.938c-3.54-2.707-7.906-4.379-12.691-4.38-10.624 0-19.354 7.963-20.752 18.212H79.09c-1.399-10.249-10.129-18.211-20.752-18.211-11.591 0-21.037 9.446-21.037 21.037s9.446 21.037 21.037 21.037c10.979 0 19.93-8.503 20.855-19.248h5.47c.925 10.745 9.878 19.248 20.857 19.248 11.59 0 21.035-9.446 21.035-21.037 0-5.143-1.932-9.802-5.014-13.463l17.031-16.869a20.803 20.803 0 0 0 10.407 4.436v5.13c-10.317 1.337-18.354 10.094-18.354 20.766 0 11.591 9.446 21.037 21.037 21.037s21.037-9.446 21.037-21.037c0-10.93-8.43-19.849-19.107-20.842v-4.978c10.678-.993 19.107-9.911 19.107-20.842 0-11.591-9.446-21.037-21.037-21.037-5.19 0-9.89 1.965-13.564 5.097l-16.815-16.947c3.24-3.702 5.272-8.487 5.272-13.775 0-11.591-9.444-21.037-21.035-21.037zm0 4.613a16.388 16.388 0 0 1 16.421 16.424 16.387 16.387 0 0 1-16.421 16.422 16.388 16.388 0 0 1-16.424-16.422 16.39 16.39 0 0 1 16.424-16.424zm46.142 46.662a16.39 16.39 0 0 1 16.424 16.424 16.388 16.388 0 0 1-16.424 16.422 16.386 16.386 0 0 1-16.422-16.422 16.389 16.389 0 0 1 16.422-16.424zm-93.324 46.664A16.387 16.387 0 0 1 74.76 126.25a16.386 16.386 0 0 1-16.422 16.422 16.386 16.386 0 0 1-16.422-16.422 16.386 16.386 0 0 1 16.422-16.422zm47.182 0a16.387 16.387 0 0 1 16.421 16.422 16.386 16.386 0 0 1-16.421 16.422 16.388 16.388 0 0 1-16.424-16.422 16.388 16.388 0 0 1 16.424-16.422zm46.142 0a16.388 16.388 0 0 1 16.424 16.422 16.388 16.388 0 0 1-16.424 16.422 16.386 16.386 0 0 1-16.422-16.422 16.387 16.387 0 0 1 16.422-16.422z" color="" style="-inkscape-stroke:none" transform="translate(-37.3 -11.889)"/> <image src="/img/oftc-logo-grey.png" xlink:href=""></image> </svg> <span class="herospan">OFTC</span> </a> </div> <a class="p-1" id="skip-to-content" href="#jump-to-content" aria-label="Skip to content"><i role="presentation" class="bi bi-arrow-down-circle p-1"></i>Skip to content</a> <button class="navbar-toggler" type="button" role="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="justify-content-lg-left col navbar-nav"> <li class="nav-item" ><a class="nav-link" href="/" aria-label="Back to Home">Home</a></li> <li class="nav-item"><a class="nav-link" href="/archives/" aria-label="News archives">News</a></li> <li class="nav-item" ><a class="nav-link" href="/staff/" aria-label="OFTC staff">Staff</a></li> <li class="nav-item"><a class="nav-link" href="/documentation/" aria-label="Documentation">Documentation</a></li> <li class="nav-item"><a class="nav-link" href="/FAQ/" aria-label="FAQ and help contacts">Help</a></li> </ul> <div class="dark-mode-toggler navbar-form form-check form-switch d-lg-flex col justify-content-lg-center"> <i role="presentation" class='bi bi-sun light-mode-bi' title="Light mode"></i> <input class="form-check-input" type="checkbox" id="darkModeSwitch" checked aria-label="Toggle dark mode" data-bs-toggle="tooltip" data-bs-placement="bottom" data-bs-title="Toggle dark mode" > <i role="presentation" class='bi bi-moon dark-mode-bi' title="Dark mode"></i> </div> <div class="col align-self-end"> <form class="d-lg-flex justify-content-lg-end navbar-form" role="form" id="webchat" aria-label="Our webchat" action="//webchat.oftc.net" method="get" target="_blank"> <input class="form-control me-2" name="nick" type="text" placeholder="Nickname" data-bs-toggle="tooltip" data-bs-placement="bottom" data-bs-title="Enter your IRC nickname" aria-label="Enter your IRC nickname"> <input class="form-control me-2" name="channels" type="text" placeholder="#oftc, #moocows" data-bs-toggle="tooltip" data-bs-placement="bottom" data-bs-title="Enter comma seperated list of channels to join" aria-label="Enter comma seperated list of channels to join"> <button class="btn btn-primary" type="submit" role="button" aria-label="Go to web the client (in a new tab)">Chat!</button> </form> </div> </div> </div> </nav> <!-- Page content--> <main id="jump-to-content"> <div class="container"> <div class="row pt-5 pb-5"> <div class="col-lg-3"> </div> <div class="pl-2 col-lg-9"> <ul id="markdown-toc"> <li><a href="#mission-statement" id="markdown-toc-mission-statement">Mission Statement</a> <ul> <li><a href="#administrative-structure" id="markdown-toc-administrative-structure">Administrative Structure</a> <ul> <li><a href="#network-operations-committee" id="markdown-toc-network-operations-committee">Network Operations Committee</a></li> <li><a href="#network-operators" id="markdown-toc-network-operators">Network Operators</a></li> <li><a href="#sponsors" id="markdown-toc-sponsors">Sponsors</a></li> <li><a href="#network-representatives" id="markdown-toc-network-representatives">Network Representatives</a></li> </ul> </li> <li><a href="#inter-election-staff-changes" id="markdown-toc-inter-election-staff-changes">Inter-Election Staff Changes</a></li> <li><a href="#active-and-inactive-staff" id="markdown-toc-active-and-inactive-staff">Active and Inactive Staff</a></li> <li><a href="#change-in-staff-positions" id="markdown-toc-change-in-staff-positions">Change in Staff positions</a></li> <li><a href="#impeachment" id="markdown-toc-impeachment">Impeachment</a></li> <li><a href="#vacancy-at-the-level-of-either-chair-or-ombudsman" id="markdown-toc-vacancy-at-the-level-of-either-chair-or-ombudsman">Vacancy at the level of either Chair or Ombudsman</a></li> <li><a href="#reprimands" id="markdown-toc-reprimands">Reprimands</a></li> <li><a href="#voting" id="markdown-toc-voting">Voting</a> <ul> <li><a href="#eligibility-and-candidates" id="markdown-toc-eligibility-and-candidates">Eligibility and Candidates</a></li> <li><a href="#announcement-of-elections" id="markdown-toc-announcement-of-elections">Announcement of Elections</a></li> <li><a href="#election-dates" id="markdown-toc-election-dates">Election Dates</a></li> <li><a href="#vote-counting" id="markdown-toc-vote-counting">Vote Counting</a></li> <li><a href="#election-structure" id="markdown-toc-election-structure">Election Structure</a></li> <li><a href="#forced-elections" id="markdown-toc-forced-elections">Forced Elections</a></li> </ul> </li> <li><a href="#network-policy" id="markdown-toc-network-policy">Network Policy</a></li> <li><a href="#amendments" id="markdown-toc-amendments">Amendments</a></li> </ul> </li> </ul> <h1 id="mission-statement">Mission Statement</h1> <p>The <a href="/">Open and Free Technology Community</a> (henceforth referred to as “<a href="/">OFTC</a>” or “the Network”) was founded at the end of 2001 by a group of experienced members of the Open Source and Free Software communities aiming to provide these communities with better communication, development, and support infrastructure. Our goal is to provide stable services to members of the community in any part of the world, while listening closely to their needs and desires.</p> <h2 id="administrative-structure">Administrative Structure</h2> <p>The Administrative Structure of the Network is the system of governance the Network will use. Any action any member of Staff takes as Staff shall be recorded in the Network’s records as factually as is possible.</p> <p>The following outlines all Staff positions.</p> <h3 id="network-operations-committee">Network Operations Committee</h3> <p>The <a href="/Network Operations Committee">Network Operations Committee</a> (henceforth referred to as the “<a href="/Network Operations Committee">NOC</a>”) shall consist of no fewer than six members. The <a href="/Network Operations Committee">NOC</a> shall be responsible for deciding the policies of the Network as a whole.</p> <ol> <li><a href="/Network Operations Committee Chair">NOC Chair</a> shall be responsible for calling and chairing <a href="/Network Operations Committee">NOC</a> meetings. The <a href="/Network Operations Committee Chair">Chair</a> shall also be responsible for the appointment of Department Heads, from willing and able members of the <a href="/Network Operations Committee">NOC</a>. The <a href="/Network Operations Committee Chair">Chair</a> is responsible for announcing elections, as well as appointing three vote counters for said election.</li> <li>Network <a href="/Ombudsman">Ombudsman</a> is responsible for hearing and acting upon complaints from users or <a href="/staff">Staff</a> against any member of <a href="/staff">Staff</a> or the Network as a whole. The <a href="/Ombudsman">Ombudsman</a> has the power to issue Reprimands against any <a href="/staff">Staff</a> member for violating any <a href="/Network_Policy">Network Policy</a>, any part of the <a href="/Constitution">Constitution</a>, or for abusing any of their privileges. This reprimand may be turned over by a 3/4 majority vote of the active <a href="/Network Operations Committee">NOC</a> members. The <a href="/Ombudsman">Ombudsman</a> may also recommend to the <a href="/Network Operations Committee">NOC</a> that further action be taken against the <a href="/staff">Staff</a> member. Reprimands against members of <a href="/Network Operations Committe">NOC</a> only take effect after the following <a href="/Network Operations Committee">NOC</a> meeting in order to prevent an <a href="/Ombudsman">Ombudsman</a> from being able to unilaterally dismiss the <a href="/Network Operations Committee">NOC</a>. The <a href="/Ombudsman">Ombudsman</a> is also responsible for issuing <a href="/Commendations">Commendations</a> to <a href="/staff">Staff</a> members and volunteers who are performing exemplary service to the network, which will be reflected on the Network’s records.</li> <li><a href="/Department Heads">Department Heads</a> responsibilities are to be set by the Chair at the time of their appointment, as explicitly as is reasonable. The <a href="/Departments">Department Heads</a> shall be required to recruit <a href="/Department Staff">Department Staff</a> from willing and capable <a href="/staff">Network Staff</a>. <a href="/Departments">Department Heads</a> are strongly recommended to recruit at least one <a href="/Deputy Head">Deputy Head</a>. That <a href="/Deputy Head">Deputy Head</a> must be a member of the <a href="/Network Operations Committee">NOC</a>.</li> </ol> <h3 id="network-operators">Network Operators</h3> <p>The <a href="/Network_Operator">Network Operators</a> (henceforth referred to as “<a href="/Network_Operator">NetOps</a>”) responsibilities shall be to enforce the Network policies set forth by the <a href="/Network Operations Committee">NOC</a>. They shall also help any and all users of the Network in any way possible, without prejudice.</p> <p>Further responsibilities of <a href="/Network_Operator">NetOps</a>, and all privileges will be defined in <a href="/Network_Policy">Network Policy</a>.</p> <h3 id="sponsors">Sponsors</h3> <p><a href="/Server_Sponsor">Server Sponsors</a> are responsible for maintaining the hardware, connectivity, and operating system installation upon which our communications software runs.</p> <h3 id="network-representatives">Network Representatives</h3> <p>The <a href="/Network_Representative">Network Representatives</a> (henceforth referred to as the “<a href="/Network_Representative">NetReps</a>”) responsibilities are to assist users in any way possible and to report problems back to <a href="/Network_Operator">NetOps</a>, the <a href="/Network Operations Committee">NOC</a>, or the <a href="/Ombudsman">Ombudsman</a> for resolution if they cannot be solved without privileged intervention.</p> <h2 id="inter-election-staff-changes">Inter-Election Staff Changes</h2> <p>A member of <a href="/staff">Staff</a> who is inactive for sixty days without notice of their absence shall be removed from <a href="/staff">Staff</a>. Any member of <a href="/staff">Staff</a> who announces their resignation shall have their privileges and access removed.</p> <p>Any vacancies in <a href="/staff">Staff</a> positions shall be filled at the earliest possible time by a standard vote of the <a href="/Network Operations Committee">NOC</a>, based on candidates put forward by <a href="/Network Operations Committee">NOC</a> members and/or <a href="/Network_Operator">NetOps</a>. Candidates who are volunteers or who are already on <a href="/staff">Staff</a>, and Candidates who have Commendations, shall be favoured to fill any vacancies.</p> <h2 id="active-and-inactive-staff">Active and Inactive Staff</h2> <p>A <a href="/staff">Staff</a> member who has not logged any activity in seven days will be considered an <a href="/Inactive Staff">Inactive Staff</a> member.</p> <p>A <a href="/staff">Staff</a> member who is Inactive for a period of sixty days will be removed from <a href="/staff">Staff</a>, unless prior notice of their absence was given including an estimated time of return which has not yet arrived.</p> <p>An <a href="/staff">Active Staff</a> member is any <a href="/staff">Staff</a> member who is not Inactive.</p> <h2 id="change-in-staff-positions">Change in Staff positions</h2> <p>Any proposed change in any member of <a href="/staff">Staff’s</a> position or privileges shall be approved by a standard <a href="/Network Operations Committee">NOC</a> vote.</p> <h2 id="impeachment">Impeachment</h2> <p>In the event that a <a href="/Network Operations Committee Chair">Chair</a>, <a href="/Ombudsman">Ombudsman</a>, or any other member of the <a href="/Network Operations Committee">NOC</a> is performing poorly or in a manner detrimental to the network, it is the duty of the <a href="/Network_Operator">NetOps</a> and the rest of <a href="/Network Operations Committee">NOC</a> to bring about a vote of <a href="/No Confidence">No Confidence</a> against that <a href="/Network Operations Committee">NOC</a> member.</p> <p>Following a public discussion, the vote of <a href="/No Confidence">No Confidence</a> must get the votes of all active <a href="/Network_Operator">NetOps</a> and <a href="/Network Operations Committee">NOC</a> members. In order for an <a href="/Impeachment">Impeachment</a> to take place, a minimum of 3/4 of all <a href="/Network_Operator">NetOps</a> and a minimum of 3/4 of all <a href="/Network Operations Committee">NOC</a> members must vote to remove that member. An Impeached member will be stripped of all staff positions.</p> <p>An <a href="/Impeachment">Impeachment</a> vote must be complete within seven days of the original call for a vote of <a href="/No Confidence">No Confidence</a>.</p> <h2 id="vacancy-at-the-level-of-either-chair-or-ombudsman">Vacancy at the level of either Chair or Ombudsman</h2> <p>In the event that the <a href="/Network Operations Committee Chair">Chair</a> should, for any reason, cease to be the <a href="/Network Operations Committee Chair">Chair</a>, the staff member who was positioned immediately following the <a href="/Network Operations Committee Chair">Chair</a> in the previous election shall assume the role of <a href="/Network Operations Committee Chair">Chair</a>.</p> <p>In the event that the <a href="/Ombudsman">Ombudsman</a> should, for any reason, cease to be the <a href="/Ombudsman">Ombudsman</a>, the Chair will hold a vote of the <a href="/Network Operations Committee">NOC</a> for a new <a href="/Ombudsman">Ombudsman</a> from among the Network’s staff.</p> <p>The <a href="/Network Operations Committee Chair">Chair</a> and the <a href="/Ombudsman">Ombudsman</a> may not be the same person. In the event that the <a href="/Network Operations Committee Chair">Chair</a> is elected <a href="/Ombudsman">Ombudsman</a>, or the <a href="/Ombudsman">Ombudsman</a> ascends to <a href="/Network Operations Committee Chair">Chair</a>, that person must resign one of those roles.</p> <h2 id="reprimands">Reprimands</h2> <p>How members of <a href="/staff">Staff</a> behave in public reflects upon the Network as a whole. Therefore, any action which misrepresents <a href="/Network_Policy">Network Policy</a> may result in the Reprimand or dismissal of a member of <a href="/staff">Staff</a>. Any Reprimands or dismissals, and the reasons therefore, shall be explained in Network records.</p> <p>A Reprimand carries the following weight:</p> <ol> <li>Active Reprimands: 7 day suspension from <a href="/staff">Staff</a>.</li> <li>Active Reprimands: 30 day suspension from <a href="/staff">Staff</a>.</li> <li>Active Reprimands: Dismissal from <a href="/staff">Staff</a>.</li> </ol> <p>Appeals shall be handled by the <a href="/Network Operations Committee">NOC</a> on a case-by-case basis. The Ombudsman, who issued the reprimand, may only serve as a witness to these proceedings; they shall not participate.</p> <h2 id="voting">Voting</h2> <h3 id="eligibility-and-candidates">Eligibility and Candidates</h3> <p>In the interests of new staff not being unfairly punished during elections, no new applications will be accepted in the 30 days prior to an election.</p> <p>All voters shall also be candidates. There are no nominations. Any voter may elect any other voter for any position. A voter must also vote themselves into some position.</p> <p>In the event that an <a href="/staff">Active Staff</a> member can not vote during the scheduled voting window, provisions must be made to allow them to vote in advance.</p> <h3 id="announcement-of-elections">Announcement of Elections</h3> <p>Elections will be announced by the <a href="/Network Operations Committee Chair">Chair</a> of the <a href="/Network Operations Committee">NOC</a> on the 1st of the month in which an election is going to take place.</p> <h3 id="election-dates">Election Dates</h3> <p>Elections shall begin on the 8th and end on the 20th of every October.</p> <h3 id="vote-counting">Vote Counting</h3> <p>The three members of the counting staff (as appointed by the <a href="/Network Operations Committee Chair">Chair</a>) shall be responsible for announcing the results of elections at the completion of counting. Noone but the <a href="/Network Operations Committee Chair">Chair</a> shall know who the counters are, including the other counters, until the results are released by all counters. The votes themselves must be anonymised so that the counters can not determine which ballot came from which voter, while at the same time ensuring that no voter votes twice.</p> <h3 id="election-structure">Election Structure</h3> <p>Elections must be held in a digital medium which allows all <a href="/staff">Staff</a> members to participate if they so choose. No voter may submit ballots by proxy.</p> <ul> <li>Any outstanding issues which need to be voted on shall be listed on the ballot.</li> <li>Each voter is assigned a list of numbers, starting at 1, and ending at the total number of candidates for <em>all</em> positions.</li> <li>Each voter shall assign each candidate one number from the list of numbers. A number shall not be given to more than one candidate. All numbers must be used.</li> <li>The individual with the lowest cumulative ranking will be the <a href="/Network Operations Committee Chair">Chair</a>.</li> <li>The individuals with the first through to eighth rankings lowest will be the <a href="/Network Operations Committee">NOC</a>.</li> <li>Each voter will be given a blank area within which they can specify a <a href="/staff">Staff</a> member as <a href="/Ombudsman">Ombudsman</a>. The <a href="/staff">Staff</a> member with the most votes shall be the <a href="/Ombudsman">Ombudsman</a>.</li> <li>In the event of a tie that affects the role of <a href="/Network Operations Committee Chair">Chair</a>, if no affected candidates agree to resign to allow only one <a href="/staff">Staff</a> member to be the <a href="/Network Operations Committee Chair">Chair</a>, the highest and lowest ballot rankings of each candidate will be removed and a new tally taken affecting all candidates. If there is still no resolution, a first-past-the-poll run-off vote must be held naming all tied candidates within 7 days.</li> <li>In the event of a tie for the role of <a href="/Ombudsman">Ombudsman</a>, the lowest numerically ranked candidate involved in the tie will assume the role of <a href="/Ombudsman">Ombudsman</a>. If there is still no resolution, the procedure for <a href="/Chair">Chair</a> shall be followed for the <a href="/Ombudsman">Ombudsman</a>.</li> <li>In the event of a tie at any other level, all affected candidates shall assume the role of their ranking, even if this results in an enlarged <a href="/Network Operations Committee">NOC</a> or <a href="/Network_Operator">NetOp</a> group.</li> <li>In the event that the person elected <a href="/Ombudsman">Ombudsman</a> is also the <a href="/Network Operations Committee Chair">Chair</a>, that person must choose one position, and the next-lowest individual will fulfil the role that the lowest numerically ranked individual declined</li> <li>The individuals with the ninth- through sixteenth-lowest rankings shall be the <a href="/Network_Operator">Network Operators</a>.</li> <li>All remaining candidates shall be <a href="/Network_Representative">NetReps</a>.</li> <li>Each voter will be given a blank area within which they can ask for a specific staff member to be removed. If more than 50% of the received ballots list a person to be removed, that person will be removed.</li> </ul> <h3 id="forced-elections">Forced Elections</h3> <p>If the <a href="/Network Operations Committee">NOC</a> shrinks to below six members for more than thirty days, a new election must be held if none is scheduled within the following thirty days.</p> <h2 id="network-policy">Network Policy</h2> <p>In addition to this <a href="/Constitution">Constitution</a>, there also exists a <a href="/Network_Policy">Network Policy</a> document. The purpose of this document is to decide the day-to-day operations of the Network. It shall not conflict with any articles in this <a href="/Constitution">Constitution</a>.</p> <p>Any Policy enacted in the <a href="/Network_Policy">Network Policy</a> document shall have the same weight as any article in this <a href="/Constitution">Constitution</a>. The <a href="/Network_Policy">Network Policy</a> document may be altered by any standard <a href="/Network Operations Committee">Network Operations Committee</a> vote.</p> <h2 id="amendments">Amendments</h2> <p>Amendments to this document must be approved three quarters by all <a href="/Network Operations Committee">NOC</a> members and three quarters all <a href="/Network_Operator">Network Operators</a>.</p> </div> </div> </div> </main> <footer class="footer bg-secondary-subtle"> <div class="container"> <div class="row pt-5 pb-2"> <div class="col-lg-2"> <p class="lead" role="heading" aria-level="2">Need network support?</p> <p class="helplink"> <a href="https://webchat.oftc.net/?randomnick=1&channels=oftc&prompt=1" target="_blank" rel="noopener noreferrer"> <i role="presentation" class='bi bi-chat-right-dots pe-3 ps-3' title="IRC support channel"></i>#oftc </a> </p> <p class="helplink"> <a href="mailto:support@oftc.net?subject=Support%20enquiry:&body=I%20need%20help%20with%3A" target="_blank" rel="noopener noreferrer" title="Support email address"> <i role="presentation" class='bi bi-envelope pe-3 ps-3' title="Email icon"></i>support@oftc.net </a> </p> <p class="d-none d-lg-block d-xl-block"> <a href="#back-to-top" title="Jump back to top" aria-label="Jump back to top of page"> <i role="presentation" class='bi bi-arrow-up-circle pe-3 ps-3' title="Up arrow in circle" aria-label="Jump back to top of page"></i>Back to top</a></p> </div> <div class="col-lg-2"> <p class="lead" role="heading" aria-level="2">Review our code:</p> <p> <a href="https://github.com/oftc" title="OFTC organization on github"> <i role="presentation" class='bi bi-github pe-3 ps-3' title="Github logo"></i>OFTC on Github </a> </p> <p class="lead" role="heading" aria-level="2">Other issues?</p> <p> <a href="https://github.com/oftc/oftc/issues" title="OFTC issue tracker on github"> <i role="presentation" class='bi bi-github pe-3 ps-3' title="Github logo"></i>Public issue tracker </a> </p> </div> <div class="col-lg-3"> <p class="lead" role="heading" aria-level="2">Stay informed:</p> <p> <a href="/feed.xml"> <i role="presentation" class="bi bi-rss pe-3 ps-3" title="RSS icon"></i>Atom/RSS news feed </a> </p> <p> <a href="https://floss.social/@OFTC" target="_blank" rel="me noopener noreferrer" title="On the Fediverse"> <i role="presentation" class='bi bi-mastodon pe-3 ps-3' title="Mastodon icon"></i>On the Fediverse </a> </p> </div> <div class="col-lg-5"> <p>Founded in 2001 by members of the Open Source and Free Software communities, OFTC aims to provide those communities with better communication, development, and support infrastructure.</p> <p>OFTC is a member of <svg role="presentation" height="20px" width="40px" > <image xlink:href="https://www.spi-inc.org/logo.svg" width="40px"> </svg> <a href="http://www.spi-inc.org/" aria-label="Visit the SPI website">Software in the Public Interest</a>.<br>Contributions to SPI keep OFTC running.</p> <p class="d-block d-lg-none d-xl-none"><a href="#back-to-top" title="Up arrow in circle"><i role="presentation" class='bi bi-arrow-up-circle pe-3 ps-3' aria-label="Back to top"></i>Back to top</a></p> </div> </div> </div> </footer> <!-- Bootstrap core JS--> <script src="/js/bootstrap.bundle.min.js"></script> <!-- Core theme JS--> <script src="/js/main.js"></script> <!-- more FOUC avoidance --> <noscript><style>body { visibility: visible; }</style></noscript> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10