Senior Software Developer at Mueller Dairies
Hacking C#: Development for the Truly Lazy
ABSTRACT OF THE TOPIC
I don't know about you, but I'm a lazy developer. What do I mean by lazy? I don't mean I don't want to do my work - far from it - I mean that I hate to write out a great deal of code to get the job done. I want to accomplish my goals with as little effort as possible.
One of my pet hates is writing enhancements that involve copying and pasting blocks of code, changing a variable name, then leaving everything else the same. I hate having to consider each and every possible null reference exception, and adding in a whole ton of boilerplate to handle it. I hate having to spent ages jumping back and forth in a legacy codebase, trying to understand what it actually does!
What's the alternative? In this talk, I'll demonstrate a way of working that avoids all this unneccesary work, and gives you more time to do something more productive.
We'll look at:
* Functional Programming - what benefits does this increasingly popular paradigm bring us to cut down coding effort
* Linq & Generics - These have been a part of C# for a long time now, and are some of the most powerful features available in the language, but hardly anyone seems to be using them effectively
* MetaProgramming - break open C# and take it to the next level with code that describes how to generate code
Our goal is to write code in as few lines as possible that provides the greatest amount of impact. We also want code that's readable, and easily maintainable. We want to think smart, and think...Lazy.
I've been working as a .NET developer for nearly 2 decades now in a variety of industries including government, retail and manufacturing. But I've been hacking around with computer code since I was old enough to read my Dad's copy of the ZX Spectrum BASIC coders manual.
I've been speaking about Functional C# at various user groups and conferences around the UK, USA, Europe and Australia and am particularly interested in seeing just how far we can push C# without breaking it.
I'm currently working on a book for O'Reilly publications about functional programming with C#. Expected to appear in bookshops some time in 2023.
When I'm not coding, or running after my two small children, I have been known to enjoy the classic series of Doctor Who, Fighting Fantasy Gamebooks, Cryptic Crosswords, and rather more coffee than is probably good for me.