PodcastPodcast

Introduction

To help introduce this year's conference, we have selected a diverse group of past participants, organizers, presenters, and general OOPSLA advocates, for a podcast series that we are featuring on the OOPSLA Web site. We will post one or two new episodes every week until the conference first day on October 19th.

Please subscribe to the OOPSLA 2008 Podcast on iTunes or download individual episodes as they are posted below or directly access the podcast RSS feed.

We thank Daniel Steinberg of Dim Sum Thinking and Martin Lippert of Software Engineering Radio for recording and editing this year's podcast episodes.


Episode 12: Javier Gonzalez-Sanchez, professor Tecnologico de Monterrey, on the iPhone SDK kickstart tutorial

Download this episode's MP3 file or subscribe to the set on iTunes

The iPhone is hot, it's pretty, and it's fun. Anyone who has one can attest. However, can you program your iPhone? Well, that's exactly what the tutorial from Javier Gonzalez and team will be helping you achieve. They plan to give you quick intro of Objective-C, the iPhone libraries, as well as using the various advanced features of the device such as the accelerometer and the mutitouch display.

In this podcast, Javier mentions what is planned and how they plan to structure the tutorial as well what to expect after taking it. This is not going to simply be a set of lectures but Javier promises to have hands on examples and exercises. While still a kickstart tutorial the iPhone tutorial at OOPSLA promises to allow you to create your own applications for your pretty phone.



Episode 11: Rebecca Wirfs-Brock, Wirfs-Brock Associates

Download this episode's MP3 file or subscribe to the set on iTunes

Object-Oriented Design techniques have gone from being at the center stage of OOPSLA and the programming community at large, to being somewhat dismissed during the peak days of the agile movement, to now again seeing something of a resurgence.

No one questions the general value of good software design, however, there are lots of debates over how much you should do, when you should do it, and certainly how to do and come up with good design. In many ways it reflects the fact that as a meta concept, design encompasses all aspects of what we do as software architects, engineers, and managers.

Good design requires insights into the domain in question, good knowledge of the target platform and language, careful selection of frameworks and associated supporting software, and the ability to communicate succinctly with your stake holders as well as capture and incorporate their requirements and feedback before the system is completed. This is true whether your philosophy is to do design as you go, none at all, or completely up front before one line of code is written.

Additionally, any prior experiences (yours, from books, colleagues, or consultants) can also help you in this quest for coming up with the best designs for the task in question. This can especially be true to help inform you on how and when to reuse well know patterns and approaches. And if you ever wanted one person to help you with your design issues, not only from a philosophical point of view but from a very pragmatic sense then it should be Rebecca Wirfs-Brock.

While Rebecca is well known for popularizing the CRC design technique and for being an authority on software design in general, what makes her unique may be her ability to communicate without bias the trade offs for your designs as well as her intuition in understanding how to help you improve. Her keynote this year will be on the design subject and promises to help us untangle the various x-driven designs movements that we are experiencing nowadays and help us conceptually as well as practically frame them so we can refer to them intelligently when the right situation arises.



Episode 10: Luke Hoban, F# program manager, Microsoft, Corp.

Download this episode's MP3 file or subscribe to the set on iTunes

As a new .NET functional language in the tradition of Scheme, Haskell, and specifically ML, F# is fully integrated into .NET with tools for doing imperative programming as well as more domain-specific explorative programming.

Listening to Luke Hoban's podcast you get an idea of how functions in F# differ from functions in other non-functional languages, especially with respect to their gained power and flexibility as functions become first class and can be passed as arguments and manipulated by code.

The consequences of functional programming are significant, for instance, they encourage code that does not have state, somewhat immutable... This means that the code can easily be parallelized and distributed. An especially important attribute nowadays when you consider multi-core CPUs and writing programs to take advantage of lots of distributed nodes of computations.

Register for Luke's tutorial or listen to his podcast If you want to know more about functional programming for the .NET framework and especially this new statically-typed functional and object-oriented programming languages: F#. You'll get an idea of its capabilities as well as its various, sometimes appearing contradictory, though very powerful, design choices.



Episode 9: "Crazy Bob" Lee, software engineer, Google, Inc.

Download this episode's MP3 file or subscribe to the set on iTunes

For the fans of Java and statically typed languages, "Crazy" Bob Lee talks about Google's Guice: a dependency injection framework for Java. The framework makes writing factories, binding to naming directories and services (e.g., JNDI), database connections, unit tests, and various boilerplate code easier and results in programs that are generally more maintainable.

Bob gives details on how Guice achieves its magic with features from Java 1.5 (annotations and generics) while maintaining static typing. Bob's colleague Luis-Otavio will complement the tutorial by introducing GuiceBerry which helps in testing Guice-enabled applications.

Bob mentions that Guice is used across Google in many well-known and used Google applications. If you are a Java programmer and want to take advantage of runtime code injection in a type-safe fashion, make sure to register for Bob's tutorial and have a 'crazy' time with Guice.



Episode 8: Grady Booch, IBM fellow, IBM T.J. Watson Research Center

Download this episode's MP3 file or subscribe to the set on iTunes

As chief scientist for software engineering at IBM Research, Grady Booch has taken the ambitious and important task of chronicling and recording software architectures to make them available for future generations.

Grady argues that while software, in a relatively short span of time, has changed the world for the better, we have little lasting detail information of the software of the past. For instance, does the Lotus division of IBM still has the details on the architecture and source code for the original 123 spreadsheet software? The same questions could be asked of many important other software, e.g., Windows, Word, Linux, Mac OS, Acrobat, Mosaic, LaTeX, and so on.

Grady relates this quest for documenting software architectures with archeological digging, such as the ones done in Egypt to learn about the technologies, science, and thoughts of past civilizations. He also introduces one of the this year's OOPSLA keynote, Mark Lehner, an Egyptologist by training who will discuss his craft and what computer scientists and engineers can learn from archeology.

Finally, Grady gives advices and shares insights with junior engineers and scientists on what has made his career so prolific and successful. He talks about his many many books and what subjects he chooses to read next as he and his wife increase their personal library.



Episode 7: Michael Maximilien, research staff member, IBM Almaden Research Center

Download this episode's MP3 file or subscribe to the set on iTunes

In this episode we get a brief preview from a popular aspect of the OOPSLA program: the Tutorials track. This one focuses on the Ruby on Rails and Web APIs Mashups tutorial by Michael Maximilien (aka 'max') from the IBM Almaden Research Center in San Jose, CA.

Max discusses what attendees of his tutorial should expect and how the OOPSLA audience might appreciate the topic, especially since Ruby has its roots from the conference in the 90s.

Max also touches on the reasons why Ruby on Rails has become such a hot programming environment, how it compares with the Smalltalk dialect Squeak and the Seaside Web framework, and how such dynamic scripting languages and frameworks are changing the landscape of Web programming.




Episode 6: Dave Thomas, Bedarra Research

Download this episode's MP3 file or subscribe to the set on iTunes

A true pioneer of the industry and one of the original creator of the OOPSLA conference talks about what OOPSLA means to him and what goes on during and importantly after hours at the conference... Dave mentions why he continues to attend regularly and why he thinks there are still lots more industry can learn about leading edge OO research and vice versa.




Episode 5: Janos Sztipanovits, professor Vanderbilt University and director of Institute for Software Integrated Systems

Download this episode's MP3 file or subscribe to the set on iTunes

Professor Sztipanovits from Nashville's own Vanderbilt University gives a preview of his up coming OOPSLA keynote on "Cyber-Physical Systems." A relatively new concept that asks whether there are some higher level abstractions to design itself. Domain-specific modeling and languages allow an abstraction of a domain, however, can we go even higher? Can we go meta on the meta of DSMs/DSLs? This line of thinking leads to understanding the systems themselves, their potential compositional characteristics or lack thereof, the advantages to be gained or loss, and of course how to deal with system integration issues as well as quality and certification.

Sztipanovits is not simply abstractly thinking about cyber-physical systems but also relates the concepts to real-world application examples in avionics, VLSI design, and the automotive industry. He believes that the perfect storm is forming that will change how we perform engineering activities. Whether they be electrical, mechanical, or aeronautical.

Sztipanovits's keynote promises to bring you to another plane of engineering consciousness and inspiration.



Episode 4: Richard P. Gabriel, World's Most Famous Third-Rate Computer Scientist

Download this episode's MP3 file or subscribe to the set on iTunes

Last year's OOPSLA chair talks about some of the fringe (but important) activities at OOPSLA as well as exciting announcement coming for the Onward! sessions and Essays. Dick also mentions his week-long workshop on photographing conferences and how he and colleagues came up with the idea and how it relates to OOPSLA.

For an unconventional, relaxed, but important inside scoop on the conference, listen to this episode.



Episode 3: Gregor Kiczales, professor Univeristy of British Columbia, OOPSLA 2008 Research Program Chair

Download this episode's MP3 file or subscribe to the set on iTunes

OOPSLA is well known to be a venue where industry engineers and managers, consultants, students, and researchers get to mind melt. The results have produced, over the years, various advances to software engineering and computer science, e.g., Java, Design Patterns, Python, Ruby, Agile, UML, and many others.

Gregor Kiczales discusses his role as Research Program Chair and the challenges in continuing the OOPSLA tradition of connecting mainstream practitioners with leading edge researchers and students and vice-versa.

This year will be no different according to Gregor. He also gives various hints on the details of this year's program, including some of the accepted papers' topic and how they may relate with mainstream topics already common at OOPLSA.

Overall a concise but excellent overview of the research program. If you want to know the things featured at OOPSLA that will likely change Software Engineering and Computer Science tomorrow, listen to Gregor's podcast and follow his advices when attending the conference.



Episode 2: Juha-Pekka Tolvanen, Metacase, Co-organizer for the 8th OOPSLA Workshop on Domain-Specific Modeling

Download this episode's MP3 file or subscribe to the set on iTunes

Domain-Specific Modeling/Languages are experiencing a rejuvenation in recent years and are starting to go mainstream. In many ways, this is due to the fact that companies are starting to use by-products of the DSM/DSL communities. Another reason could be the fact that tooling support and major vendor support is increasing, e.g., Microsoft's DSL tooling, Metacase, and the Intentional Software Workbench.

In this episode of the OOPSLA 2008 podcast, Juha-Pekka Tolvanen of Metacase talks about the long running DSM workshop at OOPLSA and some of the trends in the DSM/DSL communities as well as an overall idea of what participants of the workshop should expect to transpire.



Episode 1: Gail E. Harris, Instantiated Software Inc., OOPSLA 2008 Conference Chair

Download this episode's MP3 file or subscribe to the set on iTunes

As general chair for this year's conference, Gail discusses the various tracks at this year's conference that she is looking forward to attend. For instance, she highlights the keynote by Marc Lehner, who is an egyptologist by training and how such a topic might be important to OOPLSA attendees as well as what was her inspiration to invite Dr. Lehner.

Gail also gives advice to students and new PhDs as well as industry participants on how to take full advantage of the conference. She highlights the different tracks, e.g., Tutorials, Onward!, and others, as well as tips for maximizing your network and activities at the conference.

A great intro if you have not attended OOPSLA in the past or want to get an idea of this year's conference key themes.