Thu May 8, 2008, 4:15-5:30, 3400 Boelter Hall Network Serviced Programming: Can we Cure the Curse of Compatibility? Gilad Bracha Cadence Design Systems The greatest challenge facing software developers today is not how to add new features; it is how to change or remove existing ones. In a widely distributed software platform, such as Java or Windows, any change, even a seemingly innocuous bug fix, is an incompatibility. Someone is relying on the existing behavior, however unintentional. Consequently, software systems can only grow, accreting new features without the ability to "clean house". Network-serviced programming seeks to leverage today's global connectivity so that all uses of a software component can be tracked and migrated as the component evolves, allowing it to shed excess features and misfeatures on an ongoing basis. The immediate benefits of Network-serviced programming are more pragmatic: the ability to combine the advantages of traditional client applications and web services. In this talk, we introduce the key ideas of Network-serviced programming, starting with basics and moving on to the vision of a world without software releases. About the speaker: Gilad Bracha is a Distinguished Engineer at Cadence Design Systems. Previously, he was a Computational Theologist and Distinguished Engineer at Sun Microsystems. He is co-author of the Java Language Specification, and a researcher in the area of object-oriented programming languages. Prior to joining Sun, he worked on Strongtalk, the Animorphic Smalltalk System. He received his B.Sc in Mathematics and Computer Science from Ben Gurion University in Israel and a Ph.D. in Computer Science from the University of Utah. Host: Todd Millstein