Chief Scientist Martin Fowler, Loud-mouth on Object Design

Chief Scientist Martin Fowler

Biography: Chief Scientist Martin Fowler

Martin Fowler is an author, speaker, consultant and general loud-mouth on software development.

He concentrates on designing enterprise software - looking at what makes a good design and what practices are needed to come up with good design. He has pioneered object-oriented technology, refactoring, patterns, agile methodologies, domain modeling, the Unified Modeling Language (UML), and Extreme Programming.

He's the Chief Scientist at ThoughtWorks - an international application development company, and has written five books on software development: Analysis Patterns, UML Distilled (now in its 3rd edition), Refactoring, Planning Extreme Programming (with Kent Beck), and Patterns of Enterprise Application Architecture. I also write articles regularly on my site at Martin Fowler.

Workshop: "Domain Specific Languages"

Track: TRAINING: LANGUAGES AND PLATFORMS / Time: Thursday 09:00 - 16:00 / Location: Musikhuset: C103

Domain Specific Languages (DSLs) are an old technique in software development that's getting a recent resurgence in interest. Most developers run into them regularly - as XML configuration files, regular expressions, query languages or build scripts. However they haven't been given the attention they deserve and there is very little information out there to help developers build them effectively. We find that few people have done much to build their own DSLs and even fewer have a broad appreciation of the various techniques involved.
 
With this tutorial we'll give you a broad introduction to ways in which you can build DSLs yourself, using tools that go back to the ancient egyptians (or at least their software equivalents). We'll explain the two main varieties of DSL today: internal and external, providing patterns to help you build them in order to give you enough understanding about which of the two you might want to use on your future projects. We'll also indoctrinate you on the importance of building an underlying Semantic Model, thus explaining why DSLs are less important than you might think. By the end of the tutorial you should have a good picture of where DSLs fit into the software development ecosystem and a map of first steps you'd take in building them yourself.
 
Our material is based heavily on Martin Fowler's upcoming book on DSLs, which we hope will actually be physically available by the time we speak.
 
Keywords: DSL, Domain Specific Language, Java, Groovy, Ruby, Intentional Software, MPS, C#, Languages, Hot topic, Patterns

Target audience: Any developer interested in the current thinking and state of the art in Domain Specific Languages. This tutorial encourages thinking beyond frameworks and API's, starting to think about fluency in computer languages, from both theoretical and practical standpoints.

See training location on a map