Paradigms Lost, Paradigms Regained and More by Kevlin Henney

Share

ABOUT THE PRESENTER: KEVLIN HENNEY

A software architect, software design and patterns expert
 @KevlinHenney
about.me/kevlin/
kevlin

Kevlin is a software architect, software design and patterns expert. He is one of Europe’s most popular keynote speakers.
Kevlin is an independent consultant and trainer based in the UK. His development interests are in patterns, programming, practice and process. He has been a columnist for various magazines and web sites, including Better Software, The Register, Application Development Advisor, Java Report and the C/C++ Users Journal. Kevlin is co-author of A Pattern Language for Distributed Computing and On Patterns and Pattern Languages, two volumes in the Pattern-Oriented Software Architecture series. He is also editor of the 97 Things Every Programmer Should Know site and book.


Workshop:  Paradigms Lost, Paradigms Regained: Programming with Objects and Functions and More

It is very easy to get stuck in one way of doing things. This is as true of programming as it is of life. Although a programming paradigm represents a set of stylistic choices, it is much more than this: a paradigm also represents a way of thinking. Having only way to think about problems is too limiting. A programming paradigm represents a set of patterns of problem framing and solving and contains the ingredients of software architecture. As Émile Auguste Chartier noted, there is nothing more dangerous than an idea when you have only one idea.

Perhaps even more problematic than being stuck with a narrow view of paradigms, is being stuck with a dysfunctional view of each paradigm. For instance, many developers working in languages and frameworks that support object orientation lack a strong idea of the principles of interaction, data abstraction and granularity that support an effective view of OO, and instead surround themselves with manager objects, singletons and DTOs.

During the day we will explore the strengths and weaknesses of different programming styles, patterns, paradigms, languages, etc., with examples and opportunity for discussion.

 

Register: Sydney Nov 28  | Melbourne Dec 5