SDD 2017 Schedule
This is a rating on a scale from 1 to 5 to indicate how much demo coding the session will contain (as opposed to slides) – 1 means no code demos, and 5 means nothing but.
This is a rating on a scale from 1 to 5 to indicate how advanced the session is (in terms of the specific topic that is being covered) – 1 means that it’s introductory, and 5 means that it’s aimed at attendees who already have significant experience in the relevant area.
Monday 15 May 2017
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 programming 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 have 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.
Kevlin is an independent consultant, trainer, reviewer and writer 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, a contributor to open source software and a member of more committees than is probably healthy. He 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 97 Things Every Programmer Should Know. http://about.me/kevlin @KevlinHenney