Speaker

Derek Graham

Derek Graham

Principal Developer, Sage UK

Newcastle upon Tyne, United Kingdom

I'm a Principal Software Developer working for a very popular business software company in the North East of England.

I co-organize NE Bytes, a monthly .Net community get-together hosted in Newcastle-upon-Tyne.

I am an Extreme Programmer, an Infrequent Sketchnoter, a Collector of Programming Languages, a Speaker, an Ensemble Programmer, and a Test-Driven Developer. I am a second year mentor for the "We Think Code" non-profit and a STEM ambassador specialising in micro:bit hackery.

My main areas of interest are in using agile methods to help improve what we ship, test-driven development, unit testing, continuous and deliberate learning, visual thinking, design and, of course, code.

Area of Expertise

  • Information & Communications Technology

Topics

  • sketchnoting
  • mob programming
  • pair programming
  • visual thinking
  • extreme programming
  • xp
  • tdd
  • agile
  • Test-Driven Development
  • Ensemble Programming
  • Cloud Computing on the Azure Platform

No SOLID evidence

The SOLID principles are something that everyone agrees are a Good Thing and they are definitely doing ... but few people can name all five at the first attempt and fewer still can say what they are, why each is important, or why we as developers should be using them.

In this session I want to explore the detail of each of the five principles, what they claim, and what they are actually about. I will propose some better approaches to reasoning about, designing and writing the code you deal with every day.

There won't be a quiz on the five principles but there may be a little bit of history along the way.

Hopefully not too ranty, targetted at newer developers who are sold SOLID as a thing to aspire to but don't have the experience to know what's wrong with it.

Cloudify your legacy apps with AVD

Anyone with a on-premise application looking to move it to cloud is in for a lot of rewriting and re-achitecting to make it ready. Another solution is to employ Azure Virtual Desktop (AVD) and give the application a new lease of life with the minimum of fuss. This session walks through the process of moving an application into AVD, building the infrastructure using code, and configuring AVD to suit the demands of your particular application. In addition, we will look at security and some of the gotchas involved in moving an application to the cloud.

toBe or not.toBe: JavaScript microtests and beyond

We all know how important testing your code is but how do you get started? What should you test? How best to do it?

In this session we will look at writing tests at different levels in the application, microtests, ui tests, e2e tests, all using JavaScript.

Sketchnoting for developers

As developers the one thing we can count on is that we can never stop learning. Retaining, processing and making sense of new information are all parts of what we do every day. Sketchnoting is a set of techniques you can use to support and improve your visual thinking, communication and learning. You can even use it to get more benefit from the other sessions you attend at DDD North!

In this session, I will show you how sketchnoting works, how to get started, tips and tricks to save you time and why sketchnoting is so much better than F#. I'll also cover how it can be applied beyond conferences and talks to UX/UI design, team collaboration, agile methods and your personal development.

The Elements of Style

There are always plenty of new programming languages and frameworks to learn but changing your working style in software development can sometimes have a bigger impact on you and your team's success. Under pressure to deliver, we often find ourselves pulled back to individual contribution as the correct way to do development. There are better ways of arranging ourselves to lower stress and achieve better productivity as a team and I want to explore a couple of those here. I also want to introduce you to strong-style pairing as the smallest, easiest way of improving your (and your team's) development life.

Derek Graham

Principal Developer, Sage UK

Newcastle upon Tyne, United Kingdom