 |
|
| presenters | Joshua Haberman, Dominic Mazzoni |
| history | Audacity began as the personal project of Dominic Mazzoni while he was a
graduate student at Carnegie-Mellon University. From the beginning its
emphasis was being cross-platform and presenting an intuitive
interface. Since then Audacity has grown significantly, with many
regular contributors, a documentation writer, and translations into 17
languages. |
| demo | The demo will consist of two main parts: one demonstrating Audacity's
capabilities from a user's perspective, and one describing issues of
interest to developers.
The first part will demonstrate Audacity's range of features, while
highlighting some of the capabilities that make Audacity unique. A
recurring theme will be the idea that Audacity has a deceptively
simple user interface, but has lots of sophisticated techniques and
algorithms "under the hood" making very intelligent decisions that
many users never even realize are happening, without getting in the
way of advanced users that want more control over the system. The
demonstration will be focused around a scenario of a garage band who is
using Audacity to create a demo CD. Creating this CD will take
several steps that each illustrate different features of Audacity.
The second part will give an overview of the issues Audacity faces from
a developer's perspective. We will explain the challenges we have
encountered in keeping Audacity fully supported on three platforms such
as UI consistency and supporting native sound APIs. We will also
describe legal issues we have encountered: specifically, patent issues
surrounding MP3 encoders/decoders and copyright problems with our
support of VST plugins, which requires linking against a nonfree SDK.
Finally there will be a short explanation of the nontraditional data
representation scheme Audacity uses to support nondestructive editing,
and how that scheme allows for innovative features such as Josh's recent
work with lossless Ogg Vorbis editing: it allows one to import a
lossy-compressed Ogg Vorbis file, edit with cut/copy/paste, then export
to another Ogg Vorbis file without re-encoding. This work is part of a
senior thesis he is working on this semester. More information about
this work is available at http://www.reverberate.org/computers/thesis/. |
| achievements | Audacity has been downloaded over 3 million times and is being
actively used by tens of thousands of people. It is still one of
the only multimedia applications that is fully supported on
Windows, Mac OS, and Linux, open-source or otherwise. |
| claim to fame |
Audacity was featured in Eric Raymond's book "The Art of Unix
Programming" as a case study in "transparency in UI design." That
excerpt is available online at
http://catb.org/~esr/writings/taoup/html/ch06s01.html#audacity
We have heard reports of Eric praising Audacity in his speeches.
Audacity 1.0 was reviewed in the Washington Post summer of 2002.
Also that summer Audacity was mentioned on TechTV during a segment where
a caller was looking for software to remove some clicks from a sound
file. | | future plans | Audacity is on the verge of releasing 1.2. Some developers have
expressed interest in doing continued work on the 1.2 branch while
others have already begun major revision on the trunk. Major plans are
real-time effects and visualization, separating the core code into a
separate library, and implementing a scripting interface. |
|
| presenters | Bram Cohen, Ross Cohen |
| history | Around February of 2003 Bram wrote code for a novel merge
algorithm. Ross then picked up the code and has fleshed it out into a
fully functional system. |
| demo | Will show various aspects of the system including: clean merging and
conflicts; branching and merging between different servers; adds, renames
and deletes of files and directories. |
| achievements | Quite functional system with less than a year's worth
of work. |
| future plans | Performance, polish, cherry-picking individual changes. |
|
| presenters | Michael Grigoriev, David Held |
| history | FunFS was originally developed at Net Integration Technologies
as a basis for an even more ambitious project: a
massively distributed completely decentralized storage system. It has since
been made open source in hope that other people will find it
useful/contribute. |
| demo | The presentation will address the unorthodox design decisions made in FunFS,
and explain the emphasis that FunFS puts on latency. In particular, the
importance of latency applied to network filesystem implementations, and the
concept of Negative Latency will be discussed.
Both parts of the presentation will be supported by technical demos.
One of the primary design goals of FunFS is massive persistent caching. It
is currently common practice to use NFS to mount the root filesystem for
terminals and cluster machines to simplify administration. This approach,
however, does not scale well, because of the strain it puts on the NFS
server. FunFS clients are much more independent. By caching the files
locally, they minimize the dependence on the server. In fact, a system with
the root filesystem mounted using FunFS is able to remain functional even
during a complete network failure. This situation will be simulated in the
first part of the demo.
To show the real world impact of the latency reducing techniques used in
FunFS, a benchmark of FunFS vs. NFS will be used. The same set of file
operation will be performed and timed using both filesystems, while counting
the number of round trips performed and the amount of data transmitted.
While both filesystems transmit roughly the same amount of data, FunFS is a
clear performance winner. The explanation lies in the number of round trips
performed by each filesystem during the test. The latency-centered protocol
design of FunFS allows it to outperform NFS by a significant margin. |
| achievements | FunFS is currently a functional, highly network efficient, low latency,
read-only filesystem with massive persistent caching and disconnected
operation support. |
| future plans | Future plans include write support, extremely efficient and safe write back
caching through use of oplocks and, possibly, write support for disconnected
mode with sane conflict resolution. |
|
| presenters | Michel Emond, Kelly John Rose |
| history | We started with ZWiki, but it was unmaintainable. Wanted to switch to
WikkiTikkiTavi, but we missed the hierarchy and nice formatting rules.
Implemented them so we could switch. Then, because we knew the code so
well, we started adding other stuff. |
| demo | We'll start with a very brief introduction to wikis in general, then
show off our special features: super-condensed formatting syntax,
hierarchy management, google-style text indexing, version control,
highlighted diffs, SchedUlator, the Table of Contents generator. As part
of this, we'll explain the simple plugin architecture and show people
how to write a basic wiki plugin. |
| achievements | Macro plugin system,
parsing system, parenting system, search engine, simple installation,
schedulator, and an entirely PHP diff function. |
| claim to fame | Used by everyone in NITI R&D and QA - more than 25 people, with 1000+
pages. Also used on open.nit.ca. |
| future plans |
- Make better use of CSS to handle layout and feel
- Get word-diff working in the diff page, so you can see which words
changed on a modified line
- Create a configure page to allow easier configuration of the wiki settings
- Make an uninstall script that cleanly removes the wiki
- Design and implement with better access controls
- Handle plurals, and specially designated "WikiWords"
- Lots more plugins!
|
|
| presenters | Chris Eagle |
| history | This tool was developed to assist in reverse engineering shiva, an
anti
reverse engineering tool developed for Linux platforms. Initial
development
took place in September 2003 and new capabilities are constantly
being
added. The tool played a supporting role in my BlackHat Federal
presentation
detailing the reversing of shiva, but it has not been formally
presented in
its own rite. |
| demo | The tool will be used in reverse engineering demos on both Windows
and Linux
binaries with a focus on removal of anti-reverse engineering
protections
such as Shiva and UPX. |
| achievements | Used to reverse engineer Shiva in less than 2 days.
Initial release at BlackHat Federal 2003. |
| future plans | Finish implementing the entire x86 instruction set.
Add support for calls to platform specific library routines
Add support for Windows Structured Exception Handling (SEH) |
|
| presenters | Sander Temme |
| history | This project was started in the fall of 2003 and aims to enable the
Apache 2.0 web server to register its services in a Zero Configuration
networking environment as defined by the IETF working group
http://www.zeroconf.org/. There has been one limited release so far. |
| demo |
- A brief overview of Zero Configuration networking, discussing the
principles, the required protocols and where mod_zeroconf fits in.
- Demonstration of the module at work
- Walkthrough of the module architecture
- Discussion of pertinent module code
- Discussion of build-time and run-time requirements
- Q&A
|
| achievements |
- Working, demo-able code
- Developed on X86 linux
- Apache license
|
| claim to fame | Presented at 2003 Apachecon |
| future plans |
- More platforms
- More mDNS responder APIs as they become available
- Backport to Apache 1.3
- Aiming for donating the project to the Apache Software Foundation
|
|
| presenters | Jonathan Moore, Matt Chisholm, Jeremy Avnet, Steve Hazel |
| history | We began as a research group studying social networks; we needed real data
and thought of this project as an interesting way to get data. |
| demo | We will demo
- our permission model
- a system designed to eliminate the
need for writing screen scrapers
- a technique for authenticating sessions
using HMAC
- the ease of application development in our framework.
|
| achievements | We have designed a general purpose architecture for building social network
applications. We have a general data structure for social networks which
includes a permission system and a way to establish arbitrary relations
between objects. We also have an application framework that makes it easy to
deploy new applications on top of this data structure. Arbitrary relations,
or certifications, can be used to drive applications. |
| claim to fame | We don't want to be a social software company. |
| future plans | Total small world domination. |
|
| presenters | Brian Wotring, Pablos |
| history | Osiris has been actively developed since 1999 and has
gradually picked up steam. With the release of Osiris 2 earlier this
year, we offer a practical tool for monitoring host integrity on a
large number of heterogeneous systems. |
| demo | We'll demonstrate how Osiris is
installed and used to monitor remote hosts. Of particular interest to
other coders, we'll show our practical use of PKI to secure
communication between remote agents and management console. We believe
the model we've adopted can serve as a basis for other projects that
require secure communication between machines. |
| achievements | Long term project stability; cross
platform support; deployments in all kinds of interesting networks. |
| claim to fame | Well, there's the notorious "Internet Random
Mail Reader;" the Hackerbot; a kajillion stickers on laptops... |
| future plans | Package Osiris for various OS distributions; add
additional monitoring vectors; expand reporting functionality;
integrate with Nagios & OpenView. |
|
| presenters | Brian Warner |
| history | Started protocol design in summer 2003. Reference implementation can send
and receive mail as of October 2003. |
| demo | I will show how to use the PETmail local agent to send and receive mail to
other agents, demonstrating how a user publishes their contact information,
how a new sender is asked to fulfill the recipient's requirements (CAPTCHA
challenges or hashcash submission) before they can send mail, and how
recipients can put limits (rate, size, content-type) on what particular
known senders can send. Then I will show how most typical correspondence
patterns (replying to a new sender, third-party introductions) do not
require a permission-grant cycle.
Next, I will show a variety of transport mechanisms: direct TCP connections,
encapsulated SMTP messages, alt.anonymous.messages postings, and remailer
network usage (for outbound messages).
Finally I will show how a recipient who lives behind a remailer network can
automatically publish their SURBs to a Transport Server and how a sender can
establish easy communication with them despite each message requiring a
different transport path. |
| achievements | The local agent can request permission and send/receive messages. The agent
is modular, and several pieces are currently implemented with simplistic
local stubs: address lookup is done locally, encryption is stubbed instead
of forking GnuPG, and the only Transport type implemented is a direct TCP
connection to the recipient's host. |
| claim to fame | The agent includes a cute furry lamb to attract and encourage new users. |
| future plans | After implementing everything described in the paper, the next steps are to
improve the user agent (with a mozilla plugin and a webmail-based
centralized agent) and improve the various servers (by building simple
installers for the permission server, address server, and transport server).
Other directions include new transport mechanisms (delivering through
jabber, applying the same permission model to some kind of IM functionality)
and using a DHT to locate identity records (to reduce certain needs for
unique addresses and make re-naming easier). |
|
| presenters | Jon Callas, Jason Bobier |
| history | This project had as part of its inception
hallway discussions at the
first CodeCon. This is a way to take existing standards and
technologies and use them in new ways to make message security
usable by mere mortals. |
| demo | Explanation of the architecture and design.
Demo of the product on
the live
Internet. |
| achievements | Chosen for an innovation award from VAR Reseller. |
| future plans | More protocols proxied, IM to start, others
as desirable. |
|
| presenters | Mike Leahy |
| history | Full time development of Scream began in April 2003. Mike
Leahy premiered the 1st Scream module in early June at Electron Salon
7 during the SuperCollider
session. A recording of the concert is available here.
A second installation was accomplished at the Sol System 2003 Burning Man
camp. The first prototype of a parametric path
graphical panning component was utilized to control a large 8 channel sound
array via b-format ambisonics. Recent additions to the Scream framework
include graphical hardware acceleration for all GUI components, optimized
network architecture, and support for OpenGL enabled visualizations and
components. The most recent snapshot (pictures and video) of Scream
features can be viewed here |
| demo | Depending on resources available a presentation of advanced
multichannel panning may be possible. Other demos include a granular
sampler. A demo of OpenGL graphic control from Scream components will
also be an option. Discussion will include design decisions / strategies
and an overview of the SuperCollider3 DSP engine and how Scream interacts
with it. |
| achievements |
- Custom hardware accelerated GUI framework built with Java2D and JOGL
(OpenGL).
- NDimensional event system that can interoperate between multiple
components on 1D, 2D, 3D levels and beyond.
- Optimized network architecture for high volume network
transmissions. Scream communicates via the OSC network protocol to OSC
enabled software / hardware.
|
| future plans | Continued full time development of Scream with an initial
beta release planned for approximately fall 2004. |
|
| presenters | Joaquin Keller, Gwendal Simon |
| history |
In the beginning was the Metaverse (in Snow Crash by Neal Stephenson)
and Gnutella 0.4.
Three years ago, at the dawn of peer-to-peer systems, the idea of
building a serverless shared virtual reality emerged...
France Telecom is indeed a good company for this kind of projects:
France Telecom do not operate (almost) any servers, it instead operates
networks, and peer networks are networks, aren't they? |
| demo |
- run the software and have a live chat with internet users and/or the
Codecon attendees (depending on the local network config).
- While so, present the Solipsis architecture and algorithms.
- And to get feedback and support, we will present also how we envision =
the future of Solipsis (open source, standardization, colonization,...).
|
| achievements | the first shared virtual reality with no server at all |
| future plans | Short term: to make available an easy to install, .exe, installer
(hopefully before codecon'2004)
Less short term: to release, in a bazaar open source mode, a Solipsis
beta version that could be
a reference implementation for standardization at IETF (or so). |
|
| presenters | Roger Dingledine |
| history | First-generation Onion Routing started in 1996, and culminated in an
unreleased and inflexible prototype. Tor, the second-generation design,
has been funded by the Naval Research Lab since 2002, and is intended as
an update and replacement for Onion Routing. It addresses many limitations
in the original Onion Routing design, and is released unencumbered as
free software. |
| demo | I'll give an overview of the Tor architecture, and talk about what
security it provides and how user applications interface to it. I'll
show a working Tor network, and invite the audience to connect to it
and use it. |
| achievements |
- Code is usable, stable enough, portable, and small (~11k lines of C)
- Code is released unencumbered as free software
- We've written a clear byte-level specification and design paper
|
| claim to fame | Freely available unpatented Onion Routing code has been a cypherpunk
goal for more than a decade. |
| future plans |
- Location-hidden servers via rendezvous points
- Restricted-route (non-clique) network topology
- Threshold agreement between directory servers
- Widely deployed testbed network
|
|
| presenters | Kenneth C. Schalk |
| history | Vesta is the result of over 10 years of research and development at
the Digital/Compaq Systems Research Center in Plao Alto, CA. It's
been in production use by a microprocessor design group (formerly
the Alpha development group, now a part of Intel) for over 5 years.
It was released as free software in March of 2002. |
| demo | The basic usage flow (checkout, edit, build, checkin) of the system
will be demonstrated.
Differences between the Vesta paradigm and other popular
versioning/build systems will be illustrated.
The web interface will be demonstrated. |
| achievements | The implementation has gained significant stability from over 5
years of production use by a large, demanding group.
In the last three years, it's been ported to Linux on four different
CPU architectures and transformed from a corporate research project
into a free software project.
The builder provides completely automatic language-independent
dependency detection.
Because of the way the builder is designed, there's a guarantee of
precise build repeatability.
It's competitive with [expensive] commercial configuration
management systems, but it's free.
(More details at: http://www.vestasys.org/why-vesta.html) |
| future plans |
The core design has been stable for several years, and we don't
anticipate it changing much. Future plans include:
- Installable RedHat/Debian packages (probably by the time of
CodeCon).
- Secure authentication between remote repositories and encryption
of transactions.
- The ability to trigger arbitrary actions on repository changes
(e.g. sending e-mail on checkin).
- Ports to new platforms (Solaris, FreeBSD, Darwin/MacOSX, others).
|
|
| presenters | Simon P. Forman |
| history | I first conceived of this system several years ago. It has
many novel properties, so many, in fact, that I knew I'd have to provide a
working demo to convince other programmers that it could actually work.
Since then I have worked on writing such demos in my spare time, but I
haven't until now, ever fully implemented full working demo. |
| demo |
- Read in a simple c-language program and graph it's Abstract Syntax Tree
(AST)
- Edit and debug the program at the AST level
- Write the program back out both in c and in python and show that both
versions run
- Give a walkthough of the system's novel user interface
|
| achievements | Working "proof-of-concept" demo version. Can
parse c source, can graph AST's and allow editing and verification at an
abstract level, yet still "run" the software. Simple and very powerful user
interface modeled on Oberon OS. |
| future plans | Support more languages and object file formats. Grow to
encompass general human-computer interfacing. |
|
|