A New Abstraction for Software Design
For the last few years, I have been exploring a new abstraction that can shape how we think about software applications and systems, and that provides a way to organize behaviors, encapsulate reusable ideas, and evaluate designs.
In this talk, I’ll define this abstraction and show how it can be used to explain a variety of flaws in familiar applications. I’ll also present some general principles that attempt to capture some key aspects of good software design.
Bio: Daniel Jackson is a professor of computer science and MacVicar teaching fellow at MIT, and associate director of the Computer Science and Artificial Intelligence Laboratory. His research has focused primarily on software modeling and design, most notably the Alloy modeling language. He is also a photographer whose most recent project brings to light the experiences of those with depression and other mental health issues (http://portraitsofresilience.com).
Lunch for talk attendees will be available at 12:00pm.
To request accommodations for a disability, please contact Emily Lawrence, firstname.lastname@example.org, 609-258-4624 at least one week prior to the event.