ba4ca2017d975f8231981acb495481fcc5c60a49
[wiki.git] / projects.mdwn
1 [[!meta title="Projects and Services"]]
2
3 Getting involved in one of our projects is one of the most common ways to [[join]] SIPB. If you would like to get involved, please email the primary contact for each project.
4
5 SIPB has the resources and the expert advice to make your project to
6 improve computing at MIT (better, the world) happen!  Come by [[our office at W20-557|office]] and say hello.
7
8 __Please email the SIPB Vice Chair at [sipb-vice-chair@mit.edu](mailto:sipb-vice-chair@mit.edu)__ if you would like to get more information about projects or need help figuring out what to do (she doesn't bite, and would love to help!).
9
10 # Active Projects
11
12 * SIPB Minecraft
13      * Description: Virtual MIT in a Minecraft server!
14
15      * __Contact: [sipb-minecraft-root@mit.edu](mailto:sipb-minecraft-root@mit.edu)__ or William Moses, [wmoses@mit.edu](mailto:wmoses@mit.edu)__
16      * __Backup Contact: Shayna Ahteck, [asahteck@mit.edu](mailto:asahteck@mit.edu)__
17
18
19 * SIPB Discord
20      * Description: A project that creates discord bots that authenticate against your choice of MIT lists.
21
22      * __Contact: [sipb-discord@mit.edu](mailto:sipb-discord@mit.edu) or Alice Nguyen, [mwnguyen@mit.edu](mailto:mwnguyen@mit.edu)__
23
24 * SIPB Website
25      * Description: Keeping the SIPB website nice-looking and up-to-date
26
27      * Roles 
28           * __Webmaster__: make our website beautiful and update it with the latest SIPB happenings
29                * Prereqs: None
30
31      * __Contact: Angel Alvarez, [alvareza@mit.edu](mailto:alvareza@mit.edu)__
32
33 * Scripts
34      * Description: Scripts is SIPB's most used service, which hosts thousands of websites for the MIT community.  [scripts.mit.edu](https://scripts.mit.edu/) is a Linux/Apache web hosting platform for the MIT community.  Any Athena user or group locker can host dynamic web applications written in PHP, Perl, Python, Ruby, or any other language, or automatically install blog, wiki, and other software via the quick-start autoinstallers.
35
36      * Links: [Website](https://scripts.mit.edu), [bugtracker](https://scripts.mit.edu/trac/query), [starter tickets](https://scripts.mit.edu:444/trac/wiki/StarterTickets)
37
38      * Communication Channel: -c scripts on Zephyr.
39
40      * Roles
41           * __Support Tech__: get familiar with MIT's and SIPB's computing infrastructure by helping answer user questions and approve user requests. 
42                * Prereqs: basic experience with the Linux command line
43
44           * __Service Maintainer__: help revise and upgrade the Scripts codebase and deployed server configurations.
45                * Prereqs: basic experience with systems administration, previous use of Scripts as a user
46
47      * __Contact: Cel Skeggs, [cela@mit.edu](mailto:cela@mit.edu)__
48
49
50 * Hyades
51      * Description: The SIPB Hyades project is SIPB's next-generation computing infrastructure service, designed to eventually replace Scripts and XVM with a self-configuring Kubernetes cluster deployed on bare metal servers.  [Hyades](https://docs.google.com/document/d/1Xy-KL2VRPMPvy6fbDbrDnnZWj9euiwxU4D5gT-pW5eM) is a cluster computing management system (SIPB's internal AWS). Whether a user wants to host their website, run code for a class, or work on a side project, our service will give them a container to fit these tasks. Hyades uses exciting open-source tools like Kubernetes, etcd, Bazel, Envoy, and Ceph.  
52
53
54      * Communication Channel: the Hyades Development channel on SIPB Mattermost.
55
56      * Link: [sipb/homeworld](https://github.com/sipb/homeworld).
57
58      * Roles:
59           * __Computer Systems Engineer__: help design, implement, test, and review SIPB's cluster management software.
60                * Prereqs: previous programming experience in any statically typed language, knowledge of Python and Go or ability to independently learn them, 6.033-level understanding of computer systems, experience with Git, experience with Linux
61
62      * __Contact: Cel Skeggs, [cela@mit.edu](mailto:cela@mit.edu)__
63
64 * Hardware Operations (HWOPS)
65
66      * Description: The HWOPS team maintains the physical server rooms for SIPB: maintaining and upgrading our physical infrastructure, coordinating with IS&T and Facilities, and communicating with other SIPB projects that have or need physical computing resources.  We are responsible for the operation of the machine room in W20-575A, as well as for some operations of SIPB's servers in W91. We provide physical server space, server hardware, and server support services to other SIPB projects.
67
68      * Communication Channel: [sipb-hwops@mit.edu](mailto:sipb-hwops@mit.edu)
69
70      * Links: [hwops.mit.edu](https://hwops.mit.edu/)
71
72      * Roles:
73           * __Machine Room Infrastructure Tech__: help maintain the hardware in the SIPB machine room, including anything from racking servers to ordering hardware to reconfiguring cables to doing hardware archeology.
74                * Prereqs: basic knowledge of the Linux command line
75
76           * __Operations Coordinator__: design and implement organizational systems to help us more effectively manage our hardware. coordinate within the HWOPS team. handle inquiries and requests from external sources.
77                * Prereqs: previous experience coordinating groups of people, consistent ability to get things done on time without external intervention
78
79           * __Web Application Developer__: help maintain and upgrade the HWOPS internal and external web application.
80                * Prereqs: basic web development experience, knowledge of Python or ability to independently learn Python
81
82      * __Contact: Cel Skeggs, [cela@mit.edu](mailto:cela@mit.edu)__
83
84 * Mattermost
85      * Description: SIPB's Mattermost instance for communication. Mattermost is an open source, private cloud slack alternative hosted on XVM. By the way, a lot of SIPB communication happens on Mattermost - would recommend joining if you haven't already!
86
87      * Links: [https://mattermost.xvm.mit.edu](https://mattermost.xvm.mit.edu)
88
89      * __Contact: Fisher Jepsen, [efjepsen@mit.edu](mailto:efjepsen@mit.edu)__
90
91 * SIPB Uplink
92      * Descrption: This up-and-coming SIPB project intends to build a Mattermost-based chat service that integrates with Athena.
93
94      * Roles:
95           * __Service Developer__: work on changes to the Mattermost web application and/or help implement containerized deployment.
96                * Prereqs: basic experience with at least one imperative programming language (such as Python, JavaScript, Java, C, Go, Rust).
97
98           * __App Developer__: work on forking and upgrading the Mattermost mobile apps.
99                * Prereqs: previous experience with app development on iOS and Android or ability to learn independently. (We don't know how to do this, so we can't teach you.)
100
101       * __Contact: Cel Skeggs, [cela@mit.edu](mailto:  cela@mit.edu)__
102
103 * SIPB Mastodon
104      * Description: https://mastodon.mit.edu is an instance of the Mastodon federated social networking platform, a part of a Twitter-like communications network of independently-run servers. Anyone on any individual server can communicate with the global ecosystem of federated servers, creating a decentralized social network where no one person or corporation has control of everyone’s data.
105  
106      * Roles
107           * __System Administrator__: Keep mastodon.mit.edu up to date, perform system maintenance as needed, respond to infrequent moderator reports.
108                * Prereqs:
109                       * Comfortable using the command line
110                       * Comfortable maintaining and troubleshooting an Ubuntu web server
111                       * Comfortable using git
112                       * Willing to learn enough SQL to make (very rarely needed) small modifications to a database
113                       * Familiar with Ruby on Rails or willing to learn a little bit about it
114                       * Thoughtful perspective on online community moderation and the limitations of free speech
115
116           * __Contact: [mastodon@mit.edu](mailto:mastodon@mit.edu)__
117
118
119 * IAP Classes and Cluedumps
120
121      * Description: SIPB organizes dozens of [IAP classes](https://sipb.mit.edu/iap) each year on technical topics both serious and fun.  During the fall term SIPB also offers a series of [Cluedump talks](http://cluedumps.mit.edu), with a different topic each week.  Add yourself to <tt>cluedump-announce@mit.edu</tt> if you're interested. We're also looking for MIT students to [[help keep them running smoothly|join]].
122
123      * __Contact: Emma Batson, [emmabat@mit.edu](mailto:emmabat@mit.edu)__
124
125 * SIPB WISP
126      * Description: SIPB wants to become a wireless internet service provider! Join if you want to point antennas around and figure out how to make a secure and reliable network. We’re really all learning together on this one.
127
128      * Roles
129            * __WISP Setup__: Pointing antennas around and doing network/authentication things. 
130                  * Prereqs: None
131
132       * __Contact: [sipb-wisp-root@mit.edu](mailto:sipb-wisp-root@mit.edu)__
133
134 * CourseRoad
135      * Description: a Four-Year Planner for the MIT Undergraduate Community.  We always welcome anyone who wants to help out! More hands === more features.
136 Webdev experience preferred but not required (we use Vuejs).
137
138      * Links: [courseroad.mit.edu](https://courseroad.mit.edu/)
139
140      * __Contact: [courseroad@mit.edu](mailto:courseroad@mit.edu) or Nate Foss, [npfoss@mit.edu](mailto:npfoss@mit.edu)__
141      * __Backup Contact: Georgia Shay, [gshay@mit.edu](mailto:gshay@mit.edu)__
142
143 * SIPB Library Project
144      * Description: The Library Project aims to provide a web interface for managing the SIPB Library. This includes an administration and cataloguing UI, as well as a book scanner and checkout process. 
145
146      * Communication Channel: sipb-library channel on SIPB Mattermost.
147
148      * Links: [MIT GitHub Repository](https://github.mit.edu/sipb/sipb-library)
149
150      * __Contact: Georgia Shay, [gshay@mit.edu](mailto:gshay@mit.edu)__
151
152 * SIPB Publicity Committee
153      * Description: SIPB runs events, which means SIPB needs posters, dormspam, cool swag, and whatever else our publicity committee can imagine -- sometimes even chalking Stata!
154
155      * Roles
156           * __Publicity Committee member__:  provide SIPB events with publicity materials
157                * Prereqs: None
158       
159      * __Contact: Emma Batson, [emmabat@mit.edu](mailto:emmabat@mit.edu)__
160
161 * SIPB Social Committee
162      * Description: SIPB has a lot of cool people and we should hang out outside of meetings! We need people to remind us to do so by scheduling social events
163
164      * Roles
165            * __Social Committee member__: bring the SIPB community together by arranging food mobs, game nights, or other study breaks
166                 * Prereqs: None
167
168      * __Contact: Emma Batson, [emmabat@mit.edu](mailto:emmabat@mit.edu)__
169
170 * SIPB Documentation Project
171
172      * Description: The [[SIPB Documentation Project|doc/project]] is a project to document in written form the collective knowledge that SIPB members take for granted or use in maintaining services and projects that is not otherwise written down anywhere.
173
174      * __Contact: Angel Alvarez, [alvareza@mit.edu](mailto:alvareza@mit.edu)__
175
176 * CertAssist
177
178      * Description: Download and install your MIT personal certificate using the [CertAssist](https://certassist.mit.edu/) website, even if your browser is not supported by ca.mit.edu.
179
180      * __Contact: Anders Kaseorg, [andersk@mit.edu](mailto:andersk@mit.edu)__
181
182 * SIPB Badges
183      * Description: Recording the achievements of our members
184  
185      * __Contact: Josh Noguera, [jnoguera@mit.edu](mailto:jnoguera@mit.edu) and Rihn Hong, [rihn@mit.edu](mailto:rihn@mit.edu)__
186
187
188 * SIPB gp Athena Locker Maintenance
189      * Description: Maintaining the /mit/gp locker on Athena.  This locker 
190 contains a collection of programs for integer factorization.
191      
192      * Requisite experience: shell scripting, maybe C
193
194      * __Contact: [kenta@mit.edu](mailto:kenta@mit.edu)__
195
196
197 * ExplainMIT
198      * Description: A place where people share explanations for fundamental concepts and hard problems through blackboard videos, so no students have to struggle unnecessarily at MIT. 
199
200      * Links: [explain.mit.edu](explain.mit.edu)
201
202      * Roles
203           * We always welcome anyone who wants to help out! No coding experience is needed, we’ll teach you full-stack using ExplainMIT, so that you can then improve ExplainMIT itself!
204
205      * __Contact: [eltonlin@mit.edu](eltonlin@mit.edu)__
206
207 <hr>
208
209 # Maintained Projects
210
211 * [Debathena](https://debathena.mit.edu)<sup>1</sup> brings Athena to your Debian or Ubuntu system, and is the basis for the current
212 release of the Athena client software running on the public computer
213 labs (clusters) across the MIT campus.
214      * Links: ([Bugtracker](https://debathena.mit.edu/trac/query), [hackathon/newbie tickets](https://debathena.mit.edu/trac/wiki/HackathonTopics))
215
216 * [BarnOwl](https://barnowl.mit.edu) is a curses-based IM client with support for Zephyr, AIM, Jabber, and IRC. It is primarily used by the MIT community as a Zephyr client. BarnOwl aims to be easily extensible and customizable through a Perl plugin interface.
217      * Links: ([Bugtracker](https://barnowl.mit.edu/query), [straightforward tickets](https://barnowl.mit.edu/wiki/StraightforwardTickets))
218
219 * [XVM](http://xvm.mit.edu) offers virtual machines to the MIT community.  Start with our three-minute Debian or Ubuntu installer, or install an operating system of your choice.  Please e-mail [xvm@mit.edu](mailto:xvm@mit.edu) for help using XVM.  If you'd like to get involved, please email [xvm-team@mit.edu](mailto:xvm-team@mit.edu).
220      * Links: (Bugtrackers: [Trac](https://xvm.scripts.mit.edu/), [Launchpad: XVM](https://bugs.launchpad.net/xvm), [Launchpad: Invirt](https://bugs.launchpad.net/invirt))
221
222      * __Contact: [xvm-root@mit.edu](mailto:xvm-root@mit.edu)__
223
224 * The SIPB AFS Cell and Locker Software: SIPB maintains hundreds of useful [[programs in AFS lockers|projects/lockers]] for use on Athena.  Many popular programs are in the <tt>sipb</tt> and <tt>outland</tt> lockers, and even more have their own lockers in SIPB AFS.  SIPB's <tt>whichlocker</tt> program, located in <tt>outland</tt>, makes locker software easy to find.  (<tt>add outland; whichlocker whichlocker</tt>). The [[SIPB AFS-Moira synchronizer|projects/sipb-afs-sync]] can automatically synchronize
225 some AFS groups in the SIPB cell with Moira groups.
226
227 * [Feed](https://feed.mit.edu/) is a free RSS reader (running [Tiny Tiny RSS](https://tt-rss.org/)) available to MIT account holders.
228
229 * [SIPB Domain Name Service](https://web.mit.edu/afs/sipb/project/zoned/doc/) provides master or slave name service for personal domains of MIT affiliates. With SIPB DNS as a master name server, your domain is generated every hour from a file in your Athena home directory. It can also serve as a slave name server, providing redundancy with existing name servers.
230
231 * [etherpad.mit.edu](http://etherpad.mit.edu) is an MIT-specific installation of Etherpad, a real-time collaborative text editor.  Please email [etherpad@mit.edu](mailto:etherpad@mit.edu) with questions, comments, or suggestions.  If you'd like to get involved, send mail to [etherpad-dev@mit.edu](mailto:etherpad-dev@mit.edu).  We're looking for developers with experience or interest in Java, SQL, and system maintenance, as well as HTML, Javascript, and CSS.
232
233 [1] Debathena is currently looking for someone to take responsibility for it (it really should be an active project). Email [sipb-vice-chair@mit.edu](mailto:sipb-vice-chair@mit.edu) if this is your calling.
234 <hr>
235
236 # Inactive Projects
237
238 * [Gutenbach](http://gutenbach.mit.edu/) is a networked music jukebox implementing the Internet Printing Protocol (IPP). It allows users to queue or "print" music to a remote set of speakers or "printer".  Spawned from the original sipbmp3 (the SIPB office music player), Please email [gutenbach@mit.edu](mailto:gutenbach@mit.edu) with questions, comments, or suggestions.
239      * Links: ([Bugtracker](http://gutenbach.mit.edu/query))
240
241 * MITeX is a web app that lets users edit a TeX document (either source or WYSIWYG), using a template, and then compiles to a PDF (or PS or DVI, etc.).  This way, people can create beautiful documents entirely from the web.  You can see the current version (in development) at [http://mitex.mit.edu](http://mitex.mit.edu).  You can see the newest features that we're trying out at [http://dev.mitex.scripts.mit.edu](http://dev.mitex.scripts.mit.edu).  Please email [mitex@mit.edu](mailto:mitex@mit.edu) with questions, comments, or suggestions.
242
243 * [LAMP](http://lamp.mit.edu) (retired!) is an electronic music library for the MIT community.  Request songs from a selection of 1840 CDs at [lamp.mit.edu](http://lamp.mit.edu/) and tune in on MIT cable TV to hear your music play.
244
245 * Mailman-ACL: First steps towards improving compatibility of Mailman and Moira mailing list systems: enabling mutual access controls and building compatible command-line configuration tools for Mailman.  Our [[plan|projects/mailman-acl]] to accomplish this is in progress. 
246
247 ## Other Projects
248
249 Here's a [[list|projects/ideas]] of some other, smaller projects SIPB members would like to work on.  For (recent-)historical interest, a list of some [past projects](https://stuff.mit.edu/sipb/project-list.html) circa 2000-2007 also exists.  On December 13, 2008, [[we squashed|projects/lenny-bugs]] a [[bunch of bugs|projects/lenny-bugs-all]] in Debian Lenny.