From SIPB Cluedumps

Revision as of 19:47, 8 November 2007 by Price (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

[edit] Athena Under the Hood

Date: September 10, 2007, at 4:30 PM
Presenters: Marc Horowitz (marc)
Location: 56-114
Abstract: Athena is a ubiquitous part of the computing infrastructure at MIT, often taken for granted. Its history goes back more than twenty years, encompassing the invention of a number of technologies which are widespread today. However, its development marked a time of rapid change in distributed computing. In some ways, Athena is still well ahead of a typical distributed computing environment.

I will discuss the history of Athena, its notable inventions, and give an overview of each of the network and workstation services which make up Athena today, including Kerberos, AFS, Moira, Hesiod, and the installation and update processes.

Bio: Marc Horowitz arrived at MIT in 1988, when Athena was still a funded research project. As a Watchmaker (student developer) at Project Athena, he worked on the Kerberos, Zephyr, and Moira projects. Marc was also vice-chairman of the Student Information Processing Board in 1991, and Secretary in 1992. From 1992 to 2000, Marc continued to maintain an informal relationship with Athena, working on commercial versions of technologies born there, especially Kerberos, and participating in follow-on open source development and IETF standards activities. Today, he is on leave from BEA Systems in Burlington, having worked on RFID and event server products there.

[edit] AFS

Date: September 17, 2007, at 4:30 PM
Presenters: Tim Abbott (tabbott)
Location: SPECIAL ROOM: 1-190
Abstract: AFS is the distributed filesystem product used by MIT, pioneered at Carnegie Mellon University and supported and developed as a product by Transarc Corporation (now IBM Pittsburgh Labs). It offers a client-server architecture for file sharing, providing location independence, scalability, security, and transparent migration capabilities for data.

We will describe AFS, its various components and their interactions. We will talk about how AFS works, including discussion of important design and implementation details, including many useful quirks. We will say something about Ubik (the distributed database protocol), replications, the Basic OverSeer server, afs_randomMod15(), and numerous other things that you've probably actually heard of.

This talk should cover the information necessary to take you from knowing how to use AFS (fs la, fs lq) to understanding enough to debug interesting problems, and being able to administer an AFS cell without reading too much documentation.

[edit] (no cluedump: CSAIL Student Workshop)

Date: September 24, 2007, at 4:30 PM

[edit] The Law (copyrights, etc.)

Date: October 1, 2007, at 4:30 PM
Afternotes: slides Keith's IAP 2006 class Lexis legal
Presenters: keithw
Location: 56-114
Abstract: Could MIT listen in on your phone calls and read your e-mail? Does the DMCA really authorize torture? Why did a Republican group have to pay $537 to wdaher one recent year? Do those MIT singing groups need permission to release recordings of other people's songs? How did Aimee Smith beat the rap after getting arrested for calling the MIT Police "fucking pigs"? Could you get in trouble for buying from allofmp3.com?

Keith might not be able to answer all these legal questions, but he will help you learn how to research legal issues for yourself. The cluedump will discuss American law and legal research, how to use Lexis-Nexis, and touch on topics relevant to technology, copyrights, and MIT.

Bio: Keith and co-conspirators created the qrpff six-lines-of-Perl DVD descrambler and the LAMP campus-wide on-demand music service (nyt) while he was a Course 6 undergrad and grad student, and his longtime efforts toward a serious, honest dialogue in the copyright wars may have made him the only person from "our side" to have made MPAA uber-lobbyist Jack Valenti's jaw drop in person.

[edit] Technical overview of scripts.mit.edu

Date: October 8, 2007, at 4:30 PM
Presenters: quentin, andersk
Location: 56-114
Abstract: The scripts.mit.edu web script service allows individuals and groups to put CGI scripts (perl, php, python, ruby, scheme, etc) on the web using nothing more than an Athena account. Integrating this functionality with Athena presented certain challenges that had to be overcome before the service could be launched.

In this talk, the SIPB script services' maintainers will describe the design and implementation of the services. This talk is intended to be a technical overview of the internals of the services rather than a gentle introduction to the services (for documentation intended for potential new users, see http://scripts.mit.edu).

Technical documentation about scripts is available at http://scripts.mit.edu/wiki, and the code is available via svn co https://scripts.mit.edu:1111. Our code is released under the GPL.

[edit] Exploiting the Internet (or, how to 0wn the internet in your free time)

Date: November 5, 2007, at 3:30 PM
Afternotes: See Nelson's cluedump page.
Presenters: Nelson Elhage (nelhage)
Location: 56-114
Abstract: The world has changed since Aleph One's "Smashing The Stack For Fun And Profit." Buffer overflows, while less common, are still discovered in major software almost every day. However, runtime-system countermeasures, such as non-executable stacks and stack protection or "canary" technologies, are increasingly prevalent and sophisticated. I'll start with a review of the classic "stack-smashing" attack, and then cover a variety of the methods used to defeat such attacks even on vulnerable software, as well as some of the tricks hackers have invented for getting around them.

[edit] Debian Packaging (For Sysadmins)

Date: November 12, 2007, at 3:30 PM
Presenters: Benjamin Mako Hill (mako)
Location: 56-114
Abstract: The Debian package system controls every aspect of the installation and configuration of software on Debian, Ubuntu, and other systems. For sysadmins' local software and patches it's an upgrade-friendly alternative to manual installation, for anyone writing free software it's the gateway to easy availability to (many) users, and for anyone curious how their Debian or Ubuntu box decides to do what it does it's a prerequisite to investigation. This hands-on cluedump will describe the key components of a package and the major tools for manipulating them, poke around a representative example from the repository, and build a minimal package from scratch.
Bio: Benjamin Mako Hill is a technology and intellectual property researcher, activist, and consultant. He is currently a Senior Researcher at the MIT Sloan School of Management, a Fellow at the MIT Center for Future Civic Media, and an adviser and contractor for the One Laptop per Child project. He has been an leader, developer, and contributor to the Free and Open Source Software community for more than a decade as part of the Debian and Ubuntu projects. He is the author of several best-selling technical books including The Debian 3.X Bible and The Official Ubuntu Book, and a member of the Free Software Foundation board of directors. Hill has a Masters degree from the MIT Media Lab.

[edit] Haskell: Compiler as Theorem-Prover

Date: November 19, 2007, at 3:30 PM
Presenters: Greg Price (price)
Location: 56-114
Notes: UPDATE May 2008: Jesse has a new implementation of session types, complete with a paper explaining it and prototype implementations in five other languages.

See slides, and (tarball) code examples.

For STM, see Simon Peyton Jones' gentle introduction, or a paper applying STM to lock-free data structures.

For protocol/session types, see the literature, or check out Oleg Kiselyov's work, particularly "HList", for some of the tools that make Jesse Tov's Haskell implementation, which I presented, possible. Or look at Jesse's web page to see if he's put up a paper or a new version. UPDATE: he has, see above.

For "theorems for free", see Phil Wadler's 1989 and later writeups.

For a broad overview of the Curry-Howard correspondence ("proofs are programs, programs proofs"), see more Phil Wadler, particularly his 2000 writeup.

Abstract: Haskell is the world's most *reasonable* programming language. Every language's optimizing compilers reason about programs, and every programmer reasons about the code they write ("this loop never indexes this array out of bounds"; "this resource is never accessed without holding the lock") -- but in no more mainstream language do the compiler and the programmer have an adequate medium in which to communicate about their reasoning: a rich static type system. In Haskell the programmer has in the type system a powerful theorem-prover ready at hand, and if the programmer's theorem is of the form "task X can be done", the compiler's proof can be the very code that carries out task X.

This cluedump will briefly introduce Haskell and its type system, describe the Curry-Howard isomorphism between code with types and propositions with proofs, and show you how you can make a Haskell implementation verify the units you attach to physical quantities; guarantee code to be free of side effects; write code for you to traverse a complicated data structure; and guarantee your lock-free code threadsafe with software transactional memory.

[edit] VoIP and SIP: Telephony Comes To Software Hackers

Date: November 26, 2007, at 3:30 PM
Afternotes: MIT Personal SIP accounts, to play around for yourself
Presenters: Dennis Baron (dbaron)
Location: 56-114
Abstract: Until the 1990s, if you wanted to make telephone hardware do your bidding you had to do it at the level of signal processing, EE, and physical-layer analog protocols. Now MIT and the rest of the world are switching to voice-over-IP, based on RFC-documented protocols on the familiar IETF stack, and the opportunity is opening for software hackers to work their magic on the oldest extant medium in telecommunications. A SIPB project in the scripts tradition, aiming to provide infrastructure for members of the MIT community to serve up their own innovations, is still in the early stages and welcoming new participants. This cluedump will give a technical grounding in the architecture of the protocols governing voice-over-IP and in their implementation at MIT.
Bio: Dennis Baron is a Senior Strategist for Integrated Communications at IS&T, and has worked on MIT's ongoing deployment of VoIP.

[edit] Computational Intractability As A Law of Physics

Date: December 3, 2007, at 3:30 PM
Presenters: Scott Aaronson
Location: 56-114
Abstract: In this talk, I'll ask whether the hardness of NP-complete problems would be useful to assume as a physical principle, on par with (say) the Second Law of Thermodynamics or the impossibility of faster-than-light communication. As part of discussing that question, I'll tell you the real story about quantum computing (i.e. not what you've read in the popular press): why this field is tremendously exciting, and why quantum computers could break RSA, Diffie-Hellman, and almost every other public-key cryptosystem used today, but also why we don't believe quantum computers would provide unlimited exponential parallelism.

As time permits, I'll also give a critical assessment of hypothetical computing models that try to go beyond quantum computing. These models involve (for example) closed timelike curves, spacetime singularities, nonlinearities in the Schrödinger equation, or particular many-particle entangled states left over from the Big Bang.

Bio: Scott Aaronson joined MIT this year as an Assistant Professor of EECS. Before that he received a PhD in CS from UC Berkeley, and was a postdoc at the Institute for Advanced Study in Princeton and the University of Waterloo. Within computer science he is best-known for creating the Complexity Zoo (an online encyclopedia of over 400 complexity classes) and for his widely-read blog. His research interests center around computational complexity theory and the limits of quantum computers. He was invited to speak in the SIPB Cluedump Series because of his numerous hacker credentials, including the ability to use a text editor and to program in BASIC.
Personal tools