<<

Armando Fox 446 Gates, 4-A, Science Dept. +1 (650) 723 9558 Stanford University http://www.cs.stanford.edu/~fox Stanford, CA 94305-9040 [email protected]

Education and Appointments 1999-present: Assistant Professor, Stanford University Dept. Research interests: applying specific systems research experience from systems to the areas of system dependability and ubiquitous and service-based computing. 1994-98: Ph.D., Computer Science, University of California at Berkeley, Dec. 1998 (Advisor: Prof. Eric A. Brewer). PhD thesis: A Framework For Separating Server Availability and Scalability From Internet Application Functionality. Architecture, design, and prototype of scalable and highly-available Internet server clusters, with their application to mobile computing and interactive Internet applications used as a vehicle to illustrate separation of application logic concerns from scalability and failure management. 1992-94: MSEE, University of Illinois at Urbana-Champaign, May 1992 (Advisor: Prof. Seth Hutchinson). MS thesis: Exploiting Visual Geometric Constraints in Robot Motion Planning With Uncertainty. Extension of Erdmann backprojection algorithm for motion planning under uncertainty to include visual constraints induced by fixed cameras. 1986-90: BSEE, Massachusetts Institute of Technology, June 1990 (Dr. Jonathan H. Young, Research Associate). SB thesis: Runtime memory management on the MONSOON dataflow multiprocessor. Comparison of the performance of several heap-management algorithms on a tagged-token dataflow machine.

Research Distinctions 2004: IBM Faculty Award for proposal Applying Statistical Learning Techniques to Fast Failure Detection and Recovery. 2003: “Scientific American 50” Research Leader for work on Recovery-Oriented Computing. 2002: IBM Faculty Award for proposal Minimizing Recovery Time in Component-Based Internet Services. 2001: NSF CAREER award for proposal Capturing the Lessons of Internet Services: Recovery-Oriented Computing 1999: Family Faculty Scholar, Terman Fellow. 1994: UC Berkeley Chancellor’s Predoctoral Fellowship (three-year merit-based renewable award). 1994: Division Award (four awardees per year for 400+ engineers), Departmental Recognition Award, and Internal Skunkworks Award for creating novel tools for interactive RTL debugging, which advanced Pro tape-out by 3 to 6 months according to senior management estimates. 1989: Winner of MIT 6.004 contest. (Old news, but still one of the things I’m proudest of.)

Teaching Distinctions 2004: Stanford Tau Beta Pi Award for Excellence in Undergraduate Teaching (1 per year in the School of ) 2004: Society of Women Engineers (Stanford chapter) Professor of the Year 2001: ASSU (Associated Students of Stanford University) Teaching Award (one of 2 awardees from among 40 faculty nominated by students, University-wide). 1998: UC Berkeley Cal VIEW Fellow, for demonstrated excellence in teaching and mentoring of adult learners through Cal VIEW (Video Instruction for the Engineering World) distance learning program.

Teaching and Mentorship Activities Courses taught at Stanford (1999-present): CS99R (now CS74N), Digital Dilemmas freshman seminar on Internet/computer technology and public policy. Fall 2004 offering taught jointly with David Dill and including material on e-voting and the 2004 election. CS241 (formerly CS444I), Internet Services. Principles and practice of building large interactive Internet applications, including scalability, dependability, mass customization, economics; substantial student projects, many of which have led to conference publications or successful startups. CS 444A, Recovery-Oriented Computing and Dependable Systems. Originally an experimental course taught with Prof. David Dill to survey best techniques for reliability of critical software from both the systems world and formal verification world. Re-offered in Fall 2001 and again in Fall 2004 with Prof. David Patterson (UC Berkeley) as graduate project course, focusing on systems-centric view of “recovery-oriented computing”. Course is tied to my Recovery-oriented computing research program. EE 182, undergraduate computer architecture CS 471/T376, E-business Process Foundry. Experimental course with Prof. James Patell, Stanford Graduate School of Business, and Dr. Sian Tan, Stanford PhD ’00 and Partner, ATC2 GmbH (www.atc2.de). Application of business process theory and Internet technology to crisis-management scenarios. Enrollment approx. 40% CS, 60% GSB. Offered in Winter 2000 and Winter 2001 with additional offerings planned. Joint participant in: CS 444N (with Prof. Mary Baker), Mobile Computing; CS 206, Fundamentals of E-commerce (w. Profs. D. Boneh, J. Ullman and Y. Shoham), undergraduate overview of selected topics in E-commerce. Courses taught at UC Berkeley (1994-99), Intel (1992-94), and Univ. of Illinois (1990-92) (1998) CS 294-6, Internet Services, with Prof. Eric Brewer. Graduate survey of structure and implementation of current and next-generation interactive Internet applications, with focus on application semantics, scalability, high availability, and modular application structure. (1997-98) CS 39C, From Smoke Signals to the Internet, From Abacus to Handheld PC, freshman seminar on the history of communications infrastructures and computing. With Prof. Randy Katz and graduate student Steven Gribble (1992) UIUC LAS 295, and Thought. Honors Program undergraduate survey of research in cognitive science, artificial intelligence, and computability. (1993) Intel Corp, Intro to GNU Emacs and GNU Emacs for Power Users. Developed and taught these internal courses, including the use of Emacs extensions I wrote for the HDL design environment. Teaching assistantships, course consultant or course developer for UCB CS252 (Graduate Computer Architecture) through Cal VIEW (Video Instruction for the Engineering World) distance learning program; MIT 6.004 Computation Structures (lab TA); UIUC ECE 290 Computer Architecture (TA).

Major Research Projects and Support (see http://swig.stanford.edu for complete details) Recovery-Oriented Computing. Application of Internet-service dependability techniques to other complex software systems, and identification of structural properties of software that allow the application of such techniques. Crash-Only Software (funded by Usenix fellowship, SNRC, and NSF CAREER) focuses on multi-level reactive and prophylactic restarts as a structured method of realizing high availability, and investigates what software structure and software engineering practices are necessary to support software whose default shutdown method is crashing; since CS has had limited success in applying formal proofs of software invariants to complex systems, this approach permits us to enforce invariants “from the outside” of components by allowing a predictable and simple-to-reason-about failure and recovery model. We are exploring crash-only design in the context of both purpose-built subsystems (how do you build crash- only applicatiosn?) and generic applications running on popular middleware (how much can you do for unmodified applications by modifying only the middleware?). Recent research results from this effort are being integrated into commercial prototypes or products at Sun Microsystems, Amazon.com, and eBates.com. As a side project, Satellite IP infrastructure (joint work with Stanford Space Systems Development Lab, funded primarily by NASA Glenn Research Center and NASA Graduate Fellowship) applies these techniques specifically to the design of a robust, affordable federation of autonomous Satellite Ground Stations. Supported by: NSF CAREER Award $750,000 2000-2005 NASA Research Grant NAG3-2579 471,400 2001-2004 Gifts from Microsoft Corp. 70,000 2002-2003 IBM Faculty Award 2x 40,000 2003-2004

Ubiquitous Computing/Interactive Workspaces. Interdisciplinary project with Profs. Patrick Hanrahan (Graphics) and Terry Winograd (HCI). We are developing a programming model, software infrastructure, and implemented prototype for ubiquitous computing spaces such as technology-enhanced meeting rooms with large displays. A recent key result is the identification of a tuplespace-like coordination model as the most appropriate programming model for such spaces that meets the relevant design constraints, exhibits robustness worthy of infrastructure software, and can be implemented with adequate performance. Prototype was deployed at 4 Stanford sites as well as KTH Royal Inst. of Tech. (Stockholm, Sweden) for regular use, and sporadically at other research labs (about 100 downloads total); more mature version is being deployed now (Winter 04) in Meyer Library for use by all Stanford students and for continued user studies on how students use interactive collaborative spaces. Supported by: Wallenberg Global Learning Network $600,000 (for 3 PI’s) 2000-2003 Stanford Networking Research Center 110,000 2000-2002 Stanford Networking Research Center 70,000 2002-2004 Gifts from Hewlett-Packard Co. and Intel Corp. 50,000 2001-2002 Hewlett-Packard Corp. Sponsored Grant 75,000 2002-2003

Selected Recent Publications in Recovery-Oriented Computing (excluding current submissions) The underlying theme in my work in this area may be summarized as follows. Decompose the hard problem of generic failure detection and rapid recovery into two composable subproblems: first, engineer the system to expose a generic, low-cost, and fine-grained corrective mechanism (“micro-recovery”) that is safe and inexpensive to try, likely to be salubrious, and will at least do no harm; second, map the structure of the system onto models that allow the use of well- known rigorous techniques to characterize system behavior and localize failures so that ‘microrecovery’ can be applied. Althuogh each idea is useful, their combination is particularly appealing because inexpensive recovery allows the use of well-understood formalisms to characterize system behavior and localize failures, despite the fact the mapping between the formalism and the system is highly imperfect. Our position paper and initial proof-of-concept [1] [2] argued for fine-grained and coarse-grained rebooting as a well- understood recovery mechanism with salubrious properties, and proposed that the disadvantages associated with rebooting (long latency and possible state loss leading to correctness problems) should be addressed by rethinking system design to tolerate rebooting better. Our overall proposal combines crash-only design [4] (which includes application-generic fine-grained rebooting) with generic failure detection and localization. The latter problem is difficult because it requires characterizing the behavior of a complex system of black boxes; it is well-accepted that our understanding of the behavior of such systems is coarse at best. Hence we investigated statistical methods of localizing failures in generic componentized applications [3] , using dynamic fault injection to characterize failure propagation in componentized applications [5] , addressing workload-surge-related failures using free-market auction techniques [7] All of these approaches map system properties onto well-known rigorous frameworks with substantial literatures, but since the mapping is imperfect, they rely on the simplified failure management afforded by low-cost micro-recovery. Since preserving correctness in crash-only design requires separation of data recovery from process recovery, we extended previous literature on consistency/availability tradeoffs to design persistent-state storage systems optimized for fast safe reboot as the only recovery technique. We demonstrated that fast recovery in these systems can indeed be exploited to simplify failure management using well-understood pattern recognition algorithms [8] [15] . We subsequently combined these with a microrebootable generic application server [12] to obtain a true crash-only platform as we had originally proposed, showing that the low recovery cost of crash-only design makes it possible to combine it with aggressive statistical anomaly detection despite nontrivial false positive rates [14] . (Note: HotOS and WIAPP are highly selective standalone workshops with refereed published proceedings that are regularly cited. HotOS solicits papers describing highly innovative directions with initial results; WIAPP solicits papers with more substantial results.) [1] G. Candea, A. Fox. Recursive Restartability: Turning the Reboot Sledgehammer into a Scalpel, by George Candea and Armando Fox. In Proceedings of the 8th Workshop on Hot Topics in Operating Systems (HotOS VIII), Elmau, Germany, May 2001. [2] G. Candea, J. Cutler, A. Fox, R. Doshi, P. Garg, R. Gowda. Reducing Recovery Time in a Small Recursively Restartable System. Proceedings of the International Conference on Dependable Systems and Networks (DSN-2002), Washington, D.C., June 2002. [3] M.Y. Chen, E. Kiciman, E. Brewer, A. Fox. Pinpoint: Problem Determination in Large, Dynamic Internet Services, by Mike Chen, Emre Kiciman, Eric Brewer and Armando Fox. Proceedings of the International Conference on Dependable Systems and Networks (DSN-2002), Washington, D.C., June 2002 [4] G. Candea, A. Fox. Crash-Only Software. Proceedings of the Proc. 9th Workshop on Hot Topics in Operating Systems (HotOS IX), Lihue, HI, May 2003. [5] George Candea, Mauricio Delgado, Michael Chen, Armando Fox. Application-Generic Failure-Path Inference. In Proc. 3rd IEEE Workshop on Internet Applications (WIAPP-2003), San Jose, CA, June 2003. [6] A. Fox and D. Patterson. Self-Repairing Computers. Invited article, Scientific American, July 2003. [7] K. Coleman, J. Norris, G. Candea, A. Fox. OnCall: Defeating Traffic Spikes With a Free-Market Cluster. Proceedings of the First IEEE Conference on Autonomic Computing (ICAC 04), New York, NY, May 17-18, 2004. [8] B. Ling, E. Kiciman, A. Fox. Session State: Beyond Soft State. Proceedings of the 1st USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI 2004), San Francisco, CA, March 29-31, 2004. [9] M.Y.Chen, A. Accardi, E. Kiciman, A. Fox, D. Patterson, E. Brewer. Path-Based Failure and Evolution Management. Proceedings of the 1st USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI 2004), San Francisco, CA, March 29-31, 2004 [10] G. Candea, J. Cutler, A. Fox. Improving Availability with Recursive Micro-Reboots: A Soft-State System Case Study. Extended version of [2] with additional results. Performance Evaluation Journal, 56(1-3), March 2004. [11] E. Kiciman and A. Fox. Detecting and Localizing Application-Level Internet Service Failures. In submission to IEEE Trans. on Neural Networks. [12] G. Candea, S. Kawamoto, Y. Fujiki, G. Friedman, A. Fox. A Microrebootable System --- Design, Implementation, and Evaluation. Proceedings of Fifth Intl. Conference on Operating Systems Design and Implementation (OSDI ’04), San Francisco, CA, December 2004. [13] G. Candea, A. Brown, A. Fox, D. Patterson. Recovery-Oriented Computing: Building Multi-Tier Dependability. Invited article, IEEE COMPUTER (to appear Nov. 2004). [14] G. Candea, E. Kiciman, S. Kawamoto, and A. Fox. Autonomous Recovery in Componentized Internet Applications. Journal of Cluster Computing (to appear, Nov.-Dec. 2004). [15] A. Huang and A. Fox. Cheap Recovery: A Key to Self-Managing State. ACM Transactions on Storage 1(1), December 2004.

Selected invited presentations: Keynote: Why Recovery Should Be Free, and Often Can Be, at First IEEE Conference on Autonomic Computing (ICAC 04), New York, May 2004. Toward Recovery-Oriented Computing, VLDB 2002, Hong Kong, July 2002.

Selected Recent Publications in Service-based and Ubiquitous Computing My ubicomp work focuses on identifying and providing the “right” software abstractions for building collaborative applications for interactive workspaces (“iRooms”), which are shared spaces with large public displays. “Right” comprises three elements: portability (applications are not tied to the physical environment for which they are developed); extensibility (new software and hardware elements can be rapidly integrated, to avoid quick obsolescence and allow for flexible evolution with no “flag days”); and robustness (frequent hardware and software failures are facts of life in a heterogeneous and dynamically-changing environment, and the software must treat these as normal rather than exceptional cases). Although various previous systems addressed one or sometimes two of these, none addressed all three effectively. Our initial ideas were developed in the context of bringing handheld devices into our testbed iRoom [16] and subsequently developing the EventHeap, a set of general extensions to the tuplespace model to facilitate a more general coordination mechanism for entities in an iRoom [18] . Building on the EventHeap allowed us to investigate a quintessential ubicomp problem in the context of the iRoom, namely the rapid integration of new services and the ability to quickly generate human interfaces for those services on a broad range of UI devices; we developed a flexible framework called iCrafter for doing this [17] and later extended it for the case in which users want to bring their preferred UI’s with them as they roam across different iRooms [20] . Following a similar methodology, we subsequently developed the PatchPanel [22] [27] , which does for physical interaction devices what iCrafter does for software services and also provides a general finite-state-machine model for expressing sophisticated physical interactions and translating them to actuators on existing iRoom services. Extensive experimentation with the EventHeap and the services built on top of it allowed us to quantitatively demonstrate meeting our goals of portability, extensibility, and robustness [25] . We then distilled these lessons into a portable “appliance” version of the iRoom that combined the most commonly used iRoom features with support for nomadic users [24] ; this is the basis of the Meyer TeamSpace which has now been deployed for general student use at Stanford as a computer-aided collaboration facility. The service-interoperation work also led to the investigation of interoperation for more general network services [19] [23] [29] and of higher-level abstractions for expressing compositions of such services [28] , both of which extend existing work in software engineering and data integration with the lessons learned from ubiquitous-computing service interoperation.

Note: WMCSA is standalone high-quality workshop with published proceedings, a 25% (typical) accept rate, and a focus on work significantly underway rather than position papers.

[16] A. Fox, B. Johanson, P. Hanrahan, T. Winograd. Integrating Information Appliances into an Interactive Workspace . IEEE Computer Graphics & Applications Magazine, May/June 2000 [17] S. Ponnekanti, B. Lee, A. Fox, P. Hanrahan, T. Winograd. ICrafter: A Service Framework for Ubiquitous Computing Environments. Proc. Ubiquitous Computing Conference (UBICOMP), 2001 [18] B. Johanson and A. Fox. The Event Heap: A Coordination Infrastructure for Interactive Workspaces. Proc. 4th IEEE Workshop on Mobile Computing Systems and Applications (WMCSA 2002), Callicoon, NY, June 2002 [19] Shankar R. Ponnekanti and Armando Fox. SWORD: A Developer Toolkit for Web Service Composition. Proc. Eleventh Intl. World Wide Web Conference, Honolulu, Hawaii, May 7-11, 2002. [20] S. Ponnekanti, L.A. Robles, A. Fox. User Interfaces for Network Services: What, from Where, and How. Proc. 4th IEEE Workshop on Mobile Computing Systems and Applications (WMCSA 2002), Callicoon, NY, June 2002. [21] B. Johanson, A. Fox, T. Winograd. The Interactive Workspaces Project: Experiences with Ubiquitous Computing Rooms. IEEE Pervasive Computing Magazine 1(2), April-June 2002. [22] J. Borchers, M. Ringel, J. Tyler, A. Fox. Stanford Interactive Workspaces: A Framework for Physical and Graphical User Interface Prototyping. IEEE Wireless Communications Magazine, special issue on Smart Homes, December 2002. [23] S. Ponnekanti and A. Fox. Application-Service Interoperation without Standardized Interfaces. Proc. IEEE International Conference on Pervasive Computing and Communications (Percom 2003), Dallas-Fort Worth, TX, March 2003 [24] J.J. Barton, T. Hsieh, V. Vijayaraghavan, T. Shimizu, B. Johanson, A. Fox. The MeetingMachine: Interactive Workspace Support for Nomadic Users. Proc. Fifth IEEE Workshop on Mobile Computing Systems and Applications (WMCSA 2003), Monterey, CA, October 2003. [25] S. Ponnekanti, B. Johanson, E. Kiciman, A. Fox. Portability, Extensibility and Robustness in iROS. Proc. IEEE International Conference on Pervasive Computing and Communications (Percom 2003), Dallas-Fort Worth, TX. March 2003. [26] B. Johanson and A. Fox. Tuplespace-based Coordination Infrastructures for Interactive Workspaces. Journal of Systems & Software 69(3): 243-266, 2004. [27] R. Ballagas, A. Szybalski, A. Fox. The PatchPanel: Enabling Control-Flow Interoperability in Ubicomp Environments. Proc. Second IEEE Intl. Conf. on Pervasive Computing and Communications (Percom 2004), Orlando, FL, March 2004 [28] L. Melloul and A. Fox. Reusable Functional Composition Patterns for Web Services. Proc. Second International Conference on Web Services (ICWS04), San Diego, CA, July 6-9, 2004. [29] S. Ponnekanti and A. Fox. Interoperability Among Independently-Evolving Web Services. Proc. 5th ACM/USENIX IFIP Middleware Conference (Middleware 04), Toronto, Canada, Oct. 2004. [30] Book chapter: Interactive Workspaces, by A. Fox and T. Winograd. To appear in S. Lahlou (ed.), Designing User Friendly Augmented Work Environments, published under auspices of RUFAE, an international organization of labs doing research in user-friendly augmented environments.

Selected Publications in Internet Services and Mobile Application Support Archival journal: B.R. Badrinath, Armando Fox, , Gerald Popek, Peter Reiher, and M. Satyanarayanan. A Conceptual Framework For Network Adaptation. IEEE Mobile Networks and Applications (MONET) 5(4), pp 221-231, 2000. Conference: Armando Fox, Ian Goldberg, Steven D. Gribble, David C. Lee, Anthony Polito, and Eric A. Brewer. Experience With Top Gun Wingman, A Proxy-Based Graphical Web Browser for the USR PalmPilot. Proceedings of the IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing (Middleware 98), Lake District, UK, Armando Fox, Steven D. Gribble, Yatin Chawathe, Eric A. Brewer, and Paul Gauthier. Cluster-Based Scalable Network Services, by. In Proceedings of the Sixteenth Int'l. Symposium on Operating Systems Principles (SOSP-16), St.-Malo, France, October 1997 Armando Fox, Steven D. Gribble, Yatin Chawathe, Anthony S. Polito, Andrew C. Huang, Benjamin Ling, and Eric A. Brewer. Orthogonal Extensions to the WWW User Interface Using Client-Side Technologies. Proc. 10th Annual Symposium on User Interface Software and Technology (UIST 97), Banff, Canada, October 1997. Armando Fox, Steven D. Gribble, Eric A. Brewer, and Elan Amir. Adapting to Network and Client Variability via On- Demand Dynamic Distillation. Proc. Seventh Intl. Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-VII), Cambridge, MA, October 1996. (ps.gz | html slides) Armando Fox and Steven D. Gribble. Security On the Move: Indirect Authentication Using Kerberos . Proc. Second ACM Conference on Mobile Computing and Communication (MobiCom 96), White Plains, NY, November 1996. Armando Fox and Eric A. Brewer . Reducing WWW Latency and Bandwidth Requirements via Real-Time Distillation. Proc. Fifth International World Wide Web Conference (WWW-5), Paris, France, May 1996. Magazine: Armando Fox, Steven D. Gribble, Yatin Chawathe, and Eric A. Brewer. Adapting to Network and Client Variation Using Active Proxies: Lessons and Perspectives. IEEE Personal Communications (invited submission), August 1998

Selected Miscellaneous Publications E. Brewer, P. Gauthier, A. Fox, A. Schuett. Software Techniques for Improving MPP Bulk Transfer Performance. Proc. Intl. Parallel Processing Symp. (IPPS '96), April 1996, Honolulu, HI A. Fox and S. Hutchinson. Exploiting Visual Geometric Constraints in Robot Motion Planning With Uncertainty. IEEE Trans. on Robotics and Automation 11(1), Feb. 1995; also appears as book chapter in Latombe & Goldberg (eds.), Algorithmic Foundations of Robotics, Kluwer Academic Publishers, 1995. A. Fox. Space Warp—A Graphics Space Game. SYNC (The Magazine for Sinclair ZX80 Users) 2(3), May/June 1982

Technology Transfer and Industrial Experience Technical Advisory Boards: Palo Alto Research Center (2002-2004), IBM E-Business On Demand Institute (2002), Intel Research Labs (2000); Tidebreak Inc. (2004); CampAmelia Technology Literacy Group, Inc.(2004) (2004) Meyer TeamSpace, based on Interactive Workspaces (“iRoom”) technology, deployed at Meyer Library in Fall 2004 for use by all Stanford students. Also to be deployed at KTH Royal Inst. of Tech., Stockholm, Sweden. (2003-2004) Path-based failure diagnosis techniques (NSDI ’04) being deployed at eBay, Tellme Networks, Amazon.com, and Google (1998-2000): commercialization of proxy-based computing model that was the focus of my research at Berkeley. I served as CTO and then Chief Scientist of ProxiNet, Inc., which was acquired by Pumatech in 1999. (1996) Part-time technology transfer positions at Wink Communications, Alameda, CA; and Geoworks Inc., Alameda CA, prototyping my PhD research in (different) environments and ultimately persuading Wink to become a sponsor of the BARWAN project. (1992-94) Intel Corporation, Hillsboro OR, Design Engineer and Architectural Validation, (Pentium Pro) Architecture group. Creation of validation tools that accelerated P6.0 tapeout by 3-6 months.

Professional activities, service to the research community and the University (2/2005) Guest editor, IEEE Internet Computing special issue on Recovery-Oriented approaches to Dependability (7/2004) Guest editor, IEEE Pervasive Computing special issue on System Software for Ubiquitous Computing (2004) Technical Advisory Board member for CampAmelia Technology Literacy Group , a 501(c)(3) nonprofit working to bring technology literacy to underprivileged children. (2003) Steering Committee for WMCSA (Workshop on Mobile Computing Systems and Applications), a standalone high-quality workshop with published proceedings and typically 25% acceptance rate. (2003) Technical Program Chair, WMCSA 2003 (2001-2004) Founding editorial board member of IEEE Pervasive Computing magazine Program committees include ACM Multimedia 99 (Systems track co-chair), Mobicom 1999 and 2000, WIAPP 2001, ASPLOS-IX, WWW 9 and 10, WMCSA 2000, 2002, 2003, MobiSys 2004, DSN 2004, USENIX 2004, PerComm 2003. (2003) Workshop organizer, Self-managing Systems Workshop at FCRC’03 (2002) Workshop organizer: UbiSys (Ubiqutious Computing System Software) workshop at UbiComp 2002 (1999-present) Service to Stanford CS Dept. includes Distributed Systems seminar series, WICS summer short- course on Dependable Internet Services, MSCS Committee & Admissions, MSCS Advising, Systems Software Comprehensive Exam, Systems Qualifying Exam (Networks & Distributed Systems portion), and proactively encouraging Stanford/Berkeley CS collaboration including joint course taught w/David Patterson (see Teaching, CS444A) and joint Recovery-Oriented Computing project. (1997) UC Berkeley EECS Dept.: created Clearinghouse of Opportunities for Research Experience (CORE), a Web-based clearinghouse of research positions for undergraduates and incoming MS students. Reference: Dr. Sheila Humphreys [sic]. (1997) UC Berkeley CS Division, Ad Hoc Committee on the TA Requirement and Teaching Minor. Worked with Profs. Jitendra Malik, Michael Clancy, and John Canny, and graduate student Dan Garcia, to propose, design, and implement a Departmental Minor in Teaching for CS PhD students. (1997) With Ursula Sexton (NSTA National Science Teacher of the Year, 1998; now Sr. Research Associate, WestEd Corp.), presentation to teachers of San Ramon Valley K-12 Unified School District, San Ramon, CA, on history of and how to integrate this material into the K-12 science curriculum. (1996) The Computer Museum, Mountain View, CA, volunteer and docent. (Reference: Dag Spicer )

Other Service, Personal Interests and Background Other community service. Volunteer for Bay Rail Alliance (pro-transit advocacy group) and planning committee of Glen Park Neighborhood Association. Background. Born and raised by Cuban-American parents in ; bicultural (first generation) and trilingual (English/Spanish/French) Music. 30+ years musical experience, including classical and jazz piano, organ, drums, choir, chamber music, music theory, composition, arranging/orchestration. Certificate Program at Mannes College of Music (Preparatory Division), New York, 1980-1986. Music Director and/or arranger for Contra Costa Civic Theater (www.ccct.org), Altarena Playhouse (www.altarena.org), Baker House Productions (MIT), Haste Street Players (Berkeley). Part-time orchestra pianist for Pacific Mozart Ensemble, Stanford Rams Head Theatrical Society and Stanford StageOne Productions. Guest artist at Ramas and Raíces (Roots of Cuban Music) concerts (www.asi-son.com). Drummer and keyboardist for two-time MIT Battle of the Bands finalists Spoon and More At 11. Other personal interests include downhill skiing, travel, musical theater, salsa and swing dancing, model railroading and railfanning, and The Simpsons. I won Ben Stein’s money: Episode 4.134 (5/12/01), Ben beat me by only one question in the best-of-10 round.