Kathleen Dollard loves to code and loves to talk about code. Along the way she’s an architect, a “manager”, a teacher, a writer, a speaker, and hopefully still a fun person! She’s written tons of articles, a book, and spoken around the world. She’s the Director of Engineering for ROI Code, previously Real and has videos in both the www.pluralsight.com and www.wintellectnow.com.
You develop software as part of a team – some combination of other developers, managers, end-users, business stakeholders and QA. This team starts with you, the individual. You are the first step to team effectiveness and this keynote starts with a humorous look at the habits and external factors that threaten individual effectiveness. Switching gears, there’s no guarantee that great individual contributors will make a great team and in almost all cases what matters is team productivity. Scientists study this, Google explores the question, and new techniques like mob programming explicitly tackle it. Use their experience to discover ways to make your team more effective and your job more enjoyable.
You are effective with the imperative, object oriented core of Java or .NET but you look longingly at the winsome smile of functional languages. You play with your language’s functional features, never quite sure you’re getting it right or taking full advantage of them. This talk is for you because you’ll learn which code to attack with functional ideas and how to do it. The core demo (C#) takes a 100 line method with a dozen way to mess up and transforms it to 24 lines that are easy to understand, hard to mess up and straightforward to debug. Better yet, functional approaches ensure that patterns like async, logging and exception handling are consistent and transaction usage is clear. Apply these techniques while leveraging delegates, lambda expressions, base classes and generics.
Roslyn is the next generation of the C# and Visual Basic compilers, so why is there buzz around that? In an evolutionary analogy, it’s the creation of a nucleus allowing faster constructive change. But that’s a bit abstract – what can you actually expect to see and when can you expect it? This talk focuses on three of the five major ways Roslyn will change your life. First it offers stable compilers to keep C# and VB vibrant for as long as 3GL paradigms make sense. You’ll see a handful of the many language changes you’ll get along with the new compilers. Modern editors are based on an understanding of code, and Roslyn allows a common basis for Visual Studio and its tooling ecosystem to understand and evaluate code. The second way Roslyn will change your life is that things like refactoring, code rules and visualizations will become easy to create. Once the challenge of a better framework to hang them on is solved, the community will build them. That means the creativity of Open Source, your team and experienced third party vendors all applied to everyday editing. The third way Roslyn will change your life is an accessible abstraction of code which allows new approaches to the art of programming – to what code is. You’ll see this in improved metaprogramming techniques. Take a quick walk through these three areas to see how Roslyn will change your life.
The next version of your favorite language won’t have a single big marquee features. It will be a collection of small extensions and time saving enhancements. This talk walks through the most important of these new features – the ones you’ll love and the ones you might hate. You’ll learn about these from an MVP who heard many of the arguments in settling on sometimes imperfect syntax. Primary constructors, auto property initializers, getter only auto properties and better member declaration and access will make your code simpler. Features like binary literals and digit separators will make your code easier to read. Await in catch and finally, exception filters, private protected and the nameOf operator will let you do things you could not do before. IEnumerable parameter arrays and constructor inference plug holes in the language. There are over 30 language enhancements on the table, learn which ones made the cut and how to use them effectively.