Since starting .NET Oxford and doing a lot of the intro talks, I quickly found public speaking very strangely addictive! The user-group was a great way to move from just doing the intro talks, to lightning talks there, to then doing full length talks both at .NET Oxford and conferences. Below are the details of all the talks I've done so far ...
"In this session, we'll be installing Kubernetes from scratch on a cluster of Raspberry Pis (yes, real hardware!). Then we'll create a basic ASP.NET Core webapp; RabbitMQ instance; and a subscribing console app to demonstrate how easy it is to spin-up this kind of 'messaging' architecture in Kubernetes. Along the way, I'll explain some of the core concepts and benefits of Docker, Kubernetes, and message queues. This talk is suitable for both those who have never used Docker or Kubernetes before; those who have and are interested in installing Kubernetes on bare-metal; or those who just like Raspberry Pis and shiny things!"
"Are you the type of developer that likes to Get Sh*t Done?
If you take a room full of developers, the deviation between each developer's productivity level is massive! A task that might take one developer half an hour, might take the next developer an entire day! Or more! And the quality of the solution will be wildly different too.
In this day of age - the developer rules in terms of productivity. We're one of the only industries where we can easily automate a lot of our menial tasks, with hardly any work. And there are so many tools already available to make us even more productive. But a surprising number of developers don't take advantage of automation or tooling, and do everything the hard way - using the standard tools that they've been using for most of their career.
In this talk, we'll be covering quite a lot of topics. From compound learning, to note taking, to tools and automation (with demos of tools like LINQPad, Resharper, etc), to using the CLI effectively, to the Pomodoro Technique, to GTD, and even more!
Join me for a fast-paced talk on the tips and tricks I've found along the way that has saved me an insane amount of time!"
Productivity tips from @dracan: keep learning, take digital notes, use headphones, Pomodoro Technique, find useful tools (eg. IDE, CLI extensions), ToDo lists & GTD (Getting Things Done), 1 thing at a time, Zero Inbox, brain nutrition, write notes for next day #DDD13 #DevProdTalk pic.twitter.com/WbJko26dqv— Peter O'Shaughnessy (@poshaughnessy) June 23, 2018
"In this demo-heavy talk, I'll be giving a high-level overview of Azure. Don't let the title put you off if you've already used Azure before though! There will be a lot of topics covered, with plenty of tips and tricks littered throughout. So whilst it's aimed at people newish to Azure, hopefully, there should be something for everyone!
At a high-level, these are the topics we'll cover:
- The various ways you can interact with Azure - eg. Portal, CLI, Cloud Shell, CI/CD, Storage Explorer, etc. (demos, not slides!)
- Terminology - eg. directories, accounts, subscriptions, resource groups, RBAC, App Services vs App Service Plans, etc, etc.
- Azure Security
- A run through of some of the popular Azure services (demos, not slides!)
- Azure DevOps"
"Azure DevOps covers a variety of things - from agile project management and issue tracking, to CI/CD, to hosting your source-code, and much more. In this talk, we'll be delving into each of the Azure DevOps "Services", explaining what each one is and how they work. This is not a high-level vague abstract talk - instead, it'll be quite demo-heavy, showing how you use it, and how it all fits together. By the end of this talk, you'll have a good understanding of how to use Azure DevOps in both your workplace and also your personal projects."
"Kubernetes has exploded in popularity lately, and with very good reason! I've recently started using it for a few of my own projects, and also with a couple of clients, and have completely fallen for it! This talk is an intro to Kubernetes aimed at people who haven't used it before. It starts off with a very lightning description of Docker and containers, then moves onto explaining the core Kubernetes concepts - eg. pods, deployments, services, kubectl, yaml - and then moves over to some live demos scaling my blog website, and showing a rolling update with zero downtime."
"Docker can be a very powerful tool even if only used for local development. The ability to quickly install, teardown, and re-create various 3rd-party components via a single command is extremely compelling. In this talk, I introduce Docker and containers, and then demo spinning up Elastic Search and Kibana containers using Docker-Compose. We then use LINQPad to demo writing to Elastic Search from .NET using Serilog, and finally visualising the data in the Kibana front end."
"A surprising number of .NET developers don't really use or understand the power of the amazing LINQPad. This short talk is a demo-heavy (minimal PPT slides!) introduction to LINQPad, it's various use-cases, and various tips and tricks to get the most of the software."
This talk was a short lunchtime grok-talk on LINQPad at the DDDEA conference in Cambridge. I needed to condense the above-mentioned 20-minute talk into a 10-minute slot - so this version was Powerpoint only, but with annotated screenshots as slides, giving it a demo feel but with slides. Having the added bonus that no-one had to watch me type!
I did this talk at the December .NET Oxford lightning talk meetup. I've uses Vi now for about 15 years, and wanted to do a talk introducing people to what it is and what it can do. This talk was not about the Vi or Vim editors themselves - but more about the Vi way of using the keyboard. Whilst I used to use Vim, nowadays I just use Vi extensions in modern editors. The demos I did in the talk were with VSCode.
This was another .NET Oxford lightning talk, which explained what dependency inversion is and why it can help you write much more testable and maintainable code. I then explained with examples, what an Inversion of Control (IoC) container is, and how it can help.
This was a lightning talk for Azure Oxford about using the CLI, Azure CLI, and also Azure Cloudshell. I also recorded a slightly extended version for the Azure Advent Calendar, which was primary a video, but also included a blog post (see links below).
This was a lightning talk for .NET Oxford. It was an intro to the Microsoft Machine Learning framework - ML.NET.