CIS Colloquium, Nov 12, 2008, 03:45PM - 04:45PM, Wachman 447
The Changing Face of Programming
Brian Kernighan, Princeton University
The rapid evolution of languages, tools, environments and expectations presents major challenges and opportunities for programmers and for software engineering education. This is true across all kinds of programming, but is especially so for Web systems, which are now routinely written in untyped scripting languages and include Ajax, mashups, toolkits, frameworks like Rails and Django, and a profusion of interfaces, all operating asynchronously on distributed systems.
For the past 7 or 8 years I have been teaching a course on advanced programming techniques that is more and more stretched between important old material and unproven new material that might be important. In this talk I will illustrate some of the challenges and discuss ways in which we might use complexity and rapid change to advantage.
Brian Kernighan received his BASc from the University of Toronto in 1964 and a PhD in electrical engineering from Princeton in 1969. He was in the Computing Science Research center at Bell Labs until 2000, and is now in the Computer Science Department at Princeton.
He is the author of 8 books and some technical papers, and holds 4 patents. He was elected to the National Academy of Engineering in 2002. His research areas include programming languages, tools and interfaces that make computers easier to use, often for non-specialist users. He is also interested in technology education for non-technical audiences.