Speaker

Carl Sargunar

Carl Sargunar

.NET developer and fan of learning new things, then sharing that knowledge

Bristol, United Kingdom

Carl has been building websites and apps for various clients for the last 20 years, from running agencies to direct clients, and generally integrating the heck out of systems. He enjoys learning new things and sharing what he has learned.

Area of Expertise

  • Information & Communications Technology

Topics

  • .NET
  • .net framework
  • .NET MAUI
  • ASP.NET
  • Raspberry Pi
  • IOT and Android Things
  • Microsoft (Azure) IoT
  • Azure
  • Azure Active Directory
  • Azure DevOps
  • Docker
  • Kubernetes
  • GitHub
  • GitHub Actions
  • Github Copilot
  • Umbraco
  • DevOps
  • Software Development
  • iOS Software Development
  • Cloud & DevOps

Umbraco + .NET Maui : A unified CMS for your website and app

What's the easiest way of expanding your reach with your audience, especially if you already have a website? A smartphone app!

Umbraco CMS, which now has multi-platform friendly features like the Content Delivery API, and support for webhooks make it easier for you to easily and simply add new content channels to your website. In this talk I'll go through how you can easily build and extend cross-platform mobile apps with .NET MAUI, the Multi-platform App User Interface, Microsoft's latest framework for mobile development.

I'll cover how to use the content delivery API and webhooks to handle communication between your CMS and the mobile app, both pulling content via the API, and pushing via webhooks.

There will be demos, there will be a public demo repository on github where you can see the code from this talk and there will be a general feel of Awesomeness and inspiration!

Umbraco 9 microservices with Docker and a cluster of Raspberry Pis

Traditional websites are frequently built on a monolithic architecture, where a content management system like Umbraco is the foundation for the content and the presentation layer, user management, permissions, and everything in between. Hosted on IIS server and attached to SQL server, you have everything you need for a website.

As they get more complicated and require additional services and more features the approach is frequently to bolt more and more onto the monolith - adding web APIs, search indexes - all wrapped up into one big architecture which must be deployed at the same time, and with a high level of interdependence. That adds a huge overhead of testing each time a new feature is added, and increases development time.

The Microservices approach is to add new features entirely self-contained but with the ability to interact with the main application in some way - frequently with a common database, or a message queue or some other common backbone. This allows new features to be tested entirely in isolation, and deployed independently of anything else, which means new features can be added with minimal impact on the rest of the application, and changes can be deployed quickly and easily.

To illustrate that approach I’ll be showing how to host a sample microservice application built around the Umbraco CMS but with additional features built on separate containers. The entire application will be hosted on Linux on a series of Raspberry Pis to imitate a high performance hosting platform on multiple servers but at a smaller scale and at a fraction of the cost.

This is more of a demonstration exercise, since nobody in their right mind would actually host an application on a Raspberry Pi, but the great thing about containers is that the same application can be deployed to a cloud like Azure with minimal changes. This is a low cost way of replicating what a production hosting environment would look like but using small, low power but still awesome devices!

The audience will learn a little about
- Networking setup for application hosting
- firewall setup (not the standard home-router)
- Docker
- Linux
- Microservices vs Monolithic architecture
- Architecture differences Arm vs x86
- Umbraco 9 running on .net 5 (6 if Umbraco upgrade)
- Message queues

Umbraco + .NET Maui - Multi-platform apps powered by your CMS

In this session I'll be using the latest Umbraco Content delivery API with a cross platform app built with .NET MAUI to showcase how content delivered headlessly can be consumed by a mobile app on windows, iOs and MacOs as well as Android.

We'll consider the strengths and weaknesses of the content delivery API as well as looking at some of the alternatives available to it.

Almost OSS Nirvana : Running Umbraco on Linux for fun and profit

With the v9 version of Umbraco on .NET 5 due to be launched, this talk explores what infrastructure changes we need to make to switch form hosting sites on Windows using licensed software to using Linux.

Aimed at developers who have been exclusively windows users, we will be exploring in brief how to host Umbraco on a linux environment, the changes to processes required for publishing websites on Linux. We’ll also address using Linux (or Mac) as a development environment for building Umbraco sites with v9.

As part of this we’ll also look at some performance metrics of hosting on Linux vs Hosting on windows - both in terms of raw performance and performance per Euro/Dollar/Pound.

Finally we’ll also touch on the pros and cons of using containers to host Umbraco, both in a development and production environment and what that means for you.

The detail covered will be in broad strokes to fit into 30 minutes, focusing on showing “what” first and then showing “how” later, with supporting demos and code samples, scripts etc on Github.

Github Actions : Continuous Improvement / Continuous Delight

Everyone wants an easier life, right? It's a common phrase used in development circles : If you do something more than once, automate it. Your future self will thank you! One way to do this is with Github Actions.

Github actions allow you to build, test, package and deploy your code easily and quickly - It's a straight forward process, there's a great community around it and it's free (within certain contstraints). In this talk I'm going to automate building a simple contact form package, publish it to nuget. Once it's on there, I'll use it in a sample website, and show how to deploy that website to Azure using Github Actions.

The code for all this will be made available open source after Codegarden so you can go away and try this for yourself, and you can use the actions to build your own libraries, packages, and deploy your own sites. The only problem left will be choosing which awesome project you work on next with all the time you save :)

Docker is a gateway drug - New tricks learned by an old dog

As an old-school dotNET developer, who had spent a lot of time building web applications on IIS - first using WebForms and then MVC, and when Docker came along, although I though it was cool, I largely ignored it for many years. Until one day I didn't ....

In this talk I go through my journey of discovery - learning about docker, about micro-service architecture and container architecture, about how it can help the local development process, how it helps teams, and some of the really cool things it can do.

In 10 tips and tricks, I'll go through some of the things I've learned, that have helped me, and that I think are just plain cool. Without giving away too many spoilers it will involve linux, raspberry Pis, and and a certain mid 90s first person shooter, although not all at the same time.

I've given a version of this talk previously at ddd south west and received generally good feedback from developers inexperienced with docker and those familiar with it.

Demonstrating a Microservice application built around the Umbraco CMS v9 on Docker On Raspberry Pis

Umbraco is an open source content management system which was previously built on the .NET Framework and used for traditional monolithic websites. With the latest version released on .NET 5 (soon v6) this opens a whole new set of possibilities for how to use this CMS.

To illustrate that approach I’ll be showing how to host a sample microservice application built around the Umbraco CMS but with additional features built on separate containers. The entire application will be hosted on Linux on a series of Raspberry Pis to imitate a high performance hosting platform on multiple servers but at a smaller scale and at a fraction of the cost, and that you can run from your own home.

There will also be a sprinkling of fun with this involving RGB LEDs, as it’s more of a demonstration exercise, since nobody in their right mind would actually host an application on a Raspberry Pi, but the great thing about containers is that the same application can be deployed to a cloud like Azure with minimal changes. This is a low cost way of replicating what a production hosting environment would look like but using small, low power but still awesome devices!

The audience will learn a little about
- Networking setup for application hosting
- firewall setup (not the standard home-router)
- Docker
- Linux
- Microservices vs Monolithic architecture
- Architecture differences Arm vs x86
- Umbraco 9 running on .net 5
- Message queues

Containers and Umbraco - using Docker to host a load balanced Umbraco website

In this workshop I'll be looking at how to use Umbraco in a load-balanced container-based application. Containers have revolutionised how modern scalable cloud-hosted applications are build, and this will give the audience a good foundation on the technology used and the applications for it.

Docker is a tool that's revolutionised cloud based application development and is used to build some of the biggest scalable, fault-tolerant cloud based applications.

I'll cover some of the concepts of what containers are, how they work, and how micro-architecture based applications allow for some pretty awesome scalable and robust application architectures.

During the workshop we'll create and host a container application using the latest Umbraco version and run it on a local Docker Desktop environment.

But what does a site build with Docker ACTUALLY look like?

It's really easy to get started with Docker, but it's not always easy to see how it can be used in a real world scenario. A lot has been made of the MACH architecture, but what does it actually look like in practice (besides it's literal meaning of Microservices, API first, Cloud hosted and Headless CMS)?

Introducing UmbCast - a fictional podcast and blog site, built on a headless Umbraco CMS, a restful API, a front-end website, and a separate cached RSS podcast feed. All individual server-hosted parts will be built into individual containers, and then deployed to Azure, and in this talk I'll go through how it's all set-up and deployed.

I'll look at the challenges and pitfalls faced along the way, how the different parts work together and how it's all deployed. All the code for this will be available open source so you can try the solution for yourself, see how all the pieces fit and use it as a template for your own MACH architecture sites.

Carl Sargunar

.NET developer and fan of learning new things, then sharing that knowledge

Bristol, United Kingdom

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top