Adelaide .NET User Group Podcast: Recent Episodes

Adelaide .NET User Group / David Gardiner

Recordings of presentations made at monthly meetings of the Adelaide .NET User Group

View Details

Join us for a review of what's new in .NET 10.

Ryan and David will show you a few of our favourite new features across the SDK, Runtime and C# enhancements.

Mark will focus on challenges and tips for upgrading from .NET 8 to 10.

About the speakers

  • Ryan Rowston - Senior Developer, with a focus on .NET applications and APIs. LinkedIn
  • Mark Foreman - Multi-stack Developer at SA Power Networks, working in .NET and SAP on systems that support SA's renewable energy future. LinkedIn
  • David Gardiner - Senior Developer, SixPivot. Microsoft MVP (Developer Technologies). LinkedIn, Blog

View Details

AI assisted development is becoming a regular part of modern software teams. Tools like GitHub Copilot can help speed up delivery, reduce repetitive tasks, and free developers to focus on solving real problems. When used without the right practices though, they can introduce security risks, licensing concerns, and messy code that is hard to maintain.
As organisations start exploring Vibe Coding, there is a growing need for enterprise controls that guide the safe and responsible use of these tools. Before teams dive in, companies should think about compliance checks, best practice guidelines, and clear development standards. This helps ensure consistency, reduces risk, and supports quality as AI becomes part of everyday workflows.
You will leave with practical tips, real examples, and a simple checklist that will help you get the best out of AI assisted development in a safe, secure, and productive way.

Speaker links:

  • LinkedIn

View Details

For years those who wished to define their database structure in a SQL project have suffered through arcane configurations and platform specific libraries. Many despaired of ever getting a modern alternative; some even turning to Entity Framework for their database deployments.
However, there were always those of us who held onto hope for a more modern answer. This year, that hope was finally realised as SDK-style SQL projects were released.
In this talk I’ll be demoing the new SDK-Style SQL project. This will showcase how to set up, build, and deploy the project. I’ll also show off a few extra tricks that you might find helpful.

  • Ryan's LinkedIn profile

View Details

AI is no longer just for machine learning experts—it’s ready to plug into your everyday .NET workflows. In this session, you’ll learn how to build a Retrieval-Augmented Generation (RAG) chatbot using .NET, and how to implement the Model Context Protocol (MCP) to structure interactions with large language models. We’ll walk through how open-source tools like Ollama make it easy to run models locally, keep your data private, and stay in control. By the end, you’ll understand how to integrate AI into .NET apps using proven techniques and open tools—without reinventing the wheel.

Speaker links:

  • LinkedIn

View Details

.NET Aspire is an opinionated stack for building apps and wrangling their dependencies. In this session you'll learn what .NET Aspire is, why Microsoft created it, and how you can get started using it yourself. If you are already using .NET Aspire this is a great time to ask any questions you have and get an answer from one of the members of the .NET Aspire core team.

Links:

  • Mitch Denny
  • Aspire website

View Details

Never used .NET and wondering what all the fuss is about? Or are you a seasoned .NET professional curious about the parts you haven't yet explored? This session is for everyone—from newcomers to experts.

We introduce .NET, explain how it works, and showcase its capabilities across front end, back end, desktop, mobile, cloud, IoT, AI, and more.

Links:

  • .NET
  • David's Blog

View Details

SpecFlow is a framework for .NET used to create automated tests using the Gherkin Given-When-Then syntax.

In, this talk, you'll learn about how SpecFlow can be used to create BDD style tests, and also how it can be extended to be used for different testing scenarios.

Stephen and Rich will talk about their experience of using SpecFlow at HAMBS, some of the challenges they came across in the process, and how they extended the tool to meet the testing needs of HAMBS.

Specifically, they will discuss some of the practical problems that needed to be solved:

  • Customising test steps so that a tester can write tests without needing to touch the code
  • Database setup and assertions
  • Ensuring each test starts in a consistent state

Links:

  • SpecFlow
  • HAMBS

View Details

In this talk I'll share some of the lessons learned in creating and maintaining numerous build and deployment pipelines in both Azure DevOps and GitHub.

You will learn about the common traps to avoid, and simple improvements that can make your continuous integration and deployment processes more reliable and maintainable. The principles and techniques will also apply to other CI/CD toolsets.

Links:

  • David's blog

View Details

Developers often say to "design your code like LEGO". Typically, they're suggesting you separate your code into small modules with single responsibilities. However, a frequently overlooked detail is that LEGO bricks have little studs that allow you to join them together without everything falling apart. This seems like an important detail not to overlook, because I really like when my code doesn't fall apart.

View Details

In this presentation, Daniel Brown, User Group Lead of the Adelaide Microsoft Copilot User Group, will delve into developing, integrating, and extending the capabilities of Microsoft Copilot within .NET. He will explore how developers can create custom functionalities, seamlessly integrate Copilot into their existing workflows, and extend its features to suit specific project needs. Daniel will showcase practical examples, share best practices, limitations and provide insights on how to leverage Copilot's advanced tools to enhance application performance and boost productivity. We'll also touch on the different Copilots and AI platforms offered by Microsoft.

View Details

Discover how OpenTelemetry, an open-source observability framework can revolutionise the way you monitor, trace, and analyze your distributed systems.

See how you can seamlessly integrate it into your existing microservices architecture, enabling you to capture rich telemetry data and gain actionable insights into the performance and behaviour of your services.

Learn how visualise these insights through the Grafana toolstack, enabling you to detect and troubleshoot issues, optimize system performance, and enhance overall resilience.

Leave with practical guidance and best practices to empower your microservices environment with the comprehensive observability that OpenTelemetry provides.

View Details

Do you want your notifications to cut through the noise of email? With the global shift to remote & hybrid work, email has been feeling the strain, pushing more and more companies to use IM apps such as MS Teams to keep their employees in sync. With users paying less attention to their emails, the humble notification emails that your service sends to users are now getting lost at a higher rate than ever.Well fear no more! At this month's ADNUG meetup, Ben and Matt from Teamgage will be teaching you how to create MS Teams apps, specifically with a focus on using a Teams app to send high impact notifications to your users. We'll cover how to create apps, test and install them, send messages to users using your app and even the 🌶️spicy🌶️ topic of getting your app published on the MS Teams app store.

View Details

Developer experience is a crucial aspect of software development that focuses on improving the workflow, productivity, and overall satisfaction of developers. By enhancing the developer experience, teams can improve their velocity, performance, and resiliency, leading to better software development outcomes.

Join Sam for an insightful presentation on developer experience (including tester experience), where he'll explore some strategies, tools, and best practices that can help you to take your team's software development process to the next level and also to measure how effective they are. From best practices, engineering tools implementation, gauging developer experience and continuous improvement, Sam will cover everything you need to know to create a seamless and enjoyable developer experience in your teams.

View Details

If your devices have to work anywhere, satellite connectivity is really the only option.

This session is about building an Azure IoT based solution which copes with the challenges of satellite connectivity.

  1. How do you make the Azure IoT plumbing work with 20 byte messages which take 1-24 hours to be delivered.
  2. What is an "Azure Cloud Identity Translation Gateway"?
  3. Why MQTT is not the right hammer, but AMQP with connection pooling is.
  4. Integrating C# code which is compiled on demand.
  5. Using the Device Provisioning Service or a Device Connection string.
  6. Azure IoT Hub Messages vs. Methods.
  7. Azure IoT Central Integration.

A really deep dive into working with Myriota - Low cost, global satellite connectivity for Azure IoT platform applications

View Details

.NET 8 favourites speed-run, with Ryan RowstonLet's race into the next generation of .NET with a speed-run through a few of my favourite new features is .NET 8.

Blazor United, with John MerchantNot a soccer/football team, it's the latest iteration of tooling for writing web apps in .NET

What's new in C# 12, with David GardinerFind out about the 8 new language features that shipped with C# 12!

View Details

In 1971, three students from Minnesota thought they could liven up a history lecture by creating a computer game for the students to play, and after several days of work in HP Time Share BASIC, they came up with what turned out to be a significant milestone in the history of computer games - Oregon Trail.

Oregon Trail is often regarded as one of the first great computer games, as well as being the originator of a franchise that is still running to this day. It was effectively also one of the first instances of both Shareware and a Commercial home release (depending on the version).

My interest though, isn't just in historical computer games, it's also .NET and Functional Programming. I want to use this as a worked example of one of my passions - Functional Programming in C#! The challenge I've set myself is to redevelop Oregon Trail into C# using the following restrictions:

  • Near 100% unit test coverage
  • No variables can change state once set
  • No statements (for, foreach, if, where, etc.) unless there literally is no way of avoiding them

I'll also be demonstrating a few of the tricks Functional Programming can offer, like Higher-order functions, functional flows with simple Monads and Tail Recursion. There should also be a bit of retro computing fun, while we're at it.

Links:

  • Functional Programming with C# (O'Reilly Media)
  • Simon on LinkedIn
  • Simon on Twitter
  • Simon's website

View Details

An eye-opening journey into the heart of Discount Party Supplies' ERPsystem, Byblos, as we spotlight the transformative role Blazor hasplayed in pushing our business to the next level. Discover how we atDiscount Party Supplies are utilizing Blazor to help harness the powerof our unique Lot Management System, enabling the efficient running ofour 40-person-strong warehouse team. Experience innovation at work!

Links:

  • Discount Party Supplies

View Details

We have a challenge: Modern day administrators want to keep a tight rein on who can perform different actions in their systems. Join us and learn how we've evolved our authorisation patterns to grant highly granular permissions to different users, while maintaining developer-friendly patterns in code.

In this talk I'll explain how we've approached this challenge, including:

  • How we've encoded discreet permission levels as bits in a 64-bit integer using a .NET flags enum.
  • How we've used an extended Authorize attribute to allow for developer to add authorisation in one line to API controllers/endpoints.
  • How we've enabled dynamic policy generation to account for the potentially quintillions of unique permission combinations that this enables.

Links:

  • Ryan on LinkedIn

View Details

Have you ever loaded the official ChatGPT web application, entered a prompt and wondered: "How did they build that? How did they stream the response to the browser? And most importantly, how could I build it myself, using only C# and .NET"? Then this talk is for you! Especially if you are also interested in learning how leverage the new Azure OpenAI Service offering from Microsoft Azure!

This talk also features GraphQL, using the HotChocolate server and StrawberryShake client libraries.

Links:

  • John's website
  • John on Twitter
  • John on LinkedIn

View Details

Come and learn how 'DevPulse', a cloud native .NET application for delivering interactive polls at AWS community expo booths was taken from ideation into production.

In this session we will learn how .NET was used to build a cross platform application, delivering messages to an AWS IOT backend, how that backend then aggregated and stored these messages before sending on to a real-time dashboard showing the results. We'll also see what best practices you can use when approaching your next .NET application to run on native AWS services and what IAC and automation tools can be used to make updates and new features seamless. You might event learn a bit a bit about .NET MAUI, AWS Lambda, Amazon DynamoDB, AWS AppSync and Blazor Web Assembly too 😊>

Links:

  • https://dev.to/deekob
  • Derek on Twitter
  • Derek on LinkedIn

View Details

In this presentation, we will explore why gRPC is a technology worth considering for API service development in .NET. We will discuss the benefits of gRPC over RESTful APIs and provide an overview of the basics of creating a gRPC service project. We will also cover advanced topics, including server-side streaming, bi-directional streaming, authentication, and the use of interceptors. Additionally, we will demonstrate how to add a C# client project, a Python client, and a web client. Finally, we will discuss how to manage changes and conduct mock testing with gRPC. This presentation will provide you with enough information to make informed decisions about whether gRPC is the right choice for your next API project.

View Details

Hot Reload (and Edit and Continue) are reasonably amazing technologies allowing you to apply code changes on the fly, without stopping your application, or seemingly even recompiling it. Whilst a Hot Reload demo is all well and good (and I'm happy to provide one if you like), I personally find it much more interesting to talk about how it works under the hood, why some things don't work, what things might work in future, etc.

This session will be a dive into the details of .NET DLLs, how they work, how Roslyn compiles deltas for them, and how the runtime applies them. All of that wonderful information you've always wanted to know, but were too afraid to ask! You'll learn absolutely nothing about JavaScript, microservices, or anything else your company actually uses, but at least you'll have a better understanding of what's in a .NET DLL, and a better idea of ILSpy is showing you next time you run it.

Links:

  • David on Mastodon

View Details

Whether it be MAUI, WPF, WinUI, Xamarin.Forms, UWP, Uno Platform, Avalonia, or any other technology that defines UIs with XAML, there are some common complaints about working with XAML files that have been around as long as XAML has.

It can be hard to write, understand, maintain and modify. But, it doesn't have to be this way.

The solution isn't abandoning XAML entirely, adopting a new framework, or using a different pattern. The solution is treating XAML like a "real programming language."

By comparing it with how we write and work with C# and other files we compile into our applications, let me show you what we've been doing wrong, how we can do things differently, how it makes things better, and give you strategies for improving existing codebases.

Or, you can tell me why I'm wrong, and that it's still appropriate that the XAML files created today look like the ones created 15+ years ago..

Links:

  • Matt's blog
  • Matt on Twitter

View Details

You've been bashing your head against a wall for 5 hours trying to figure out what went wrong. Suddenly you remember what you were thinking when you wrote this code 2 years ago.

"But an if statement would be so easy here," you had said. "Nobody will look at this anyway," you had said.

Past you was a real jerk, weren't they?!

View Details

Running .NET inside a container has been supported for a while, but up until now, building the container image required a bunch of extra steps. Until .NET 7! We'll contrast how much easier it is to build containers for .NET apps in .NET 7, how you can customise the image to your needs, incorporate it into your CI/CD pipeline, and any limitations to be aware of.

Links:

  • Blog post announcement
  • GitHub project for SDK Container builds

View Details

Blazor is a Microsoft framework first released in 2018 that uses Razor syntax and C# instead of JavaScript for developing modern web apps. One of the exciting things about Blazor is that it enables .NET developers to utilise their existing C# knowledge and allows backend and frontend development to share much of the same code.

Stephen will take you through his experience working with Blazor for WebAssembly to develop a web app for Cashflow Manager. This will be a quick introduction to some of the core concepts, and also an honest opinion of where Blazor is at, and what are some of the benefits and downsides of choosing Blazor over competing frameworks like Angular and React.

View Details

WinUI is the new modern native UI platform of Windows. The open-source Uno Platform extends pixel-perfect WinUI experiences built with C# and XAML to all platforms. Yes. That means C# and XAML running on Web, WebAssembly, macOS, Linux, iOS, and Android. Awesome!

Nick Randolph will show you the ins and outs of multi-platform design and development. You'll see how you can create applications spanning multiple platforms and form factors, and you'll see how reusing your C# skills and XAML knowledge can let you live the write once, run anywhere dream.

Links:

  • Uno Platform
  • Nick's blog

View Details

The Distributed Application Runtime (Dapr) provides APIs that simplify microservice connectivity. Whether your communication pattern is service-to-service invocation or publish-subscribe messaging, Dapr helps you write resilient and secured microservices. Dapr provides you with APIs that abstract away the complexity of common challenges developers encounter regularly when building distributed applications. These API building blocks can be leveraged as the need arises - use one, several or all to develop your application faster and deliver your solution on time. By letting Dapr's sidecar take care of the complex challenges such as service discovery, message broker integration, encryption, observability, and secret management, you can focus on business logic and keep your code simple.

In this session, you will be introduced to Dapr, the fundamentals of the framework, its salient features, how Dapr can accelerate your Microservices development and how you can incrementally adopt Dapr in your workplace immediately. This will be accompanied with code walkthrough of a proof-of-concept prototype illustrating some of the highlighted features of Dapr and a working demonstration of the prototype containing example microservices using Dapr framework.

Links:

  • The Distributed Application Runtime

View Details

Lana (in conversation with David) takes us through some of the highlights of the recent Microsoft Build conference, including:

  • Low code apps - a game changer for small/medium businesses?
  • GitHub Copilot - AI pair programming
  • Live Previews in Visual Studio with .NET Maui
  • Microsoft Dev Box
  • SQL Server 2022 preview

View Details

Verify is a snapshot tool that simplifies the assertion of complex data models and documents with all popular .NET unit testing frameworks.

Verify is called on the test result during the assertion phase. It serializes that result and stores it in a file that matches the test name. On the next test execution, the result is again serialized and compared to the existing file. The test will fail if the two snapshots do not match: either the change is unexpected, or the reference snapshot needs to be updated to the new result.

Learn how Verify works from its creator, what kinds of problems it is best suited for, how to customise it for different scenarios, and of the many extensions that add Verify support for numerous 3rd party libraries.

Links:

  • Simon's GitHub profile
  • Verify GitHub project

View Details

Getting your .NET application running in Kubernetes, and in particular Azure Kubernetes Service (AKS) has not been the easiest of tasks, with quite a steep learning curve. That all changes with a new open source tool called 'Tugboat'.

Learn about the particular challenges of .NET apps in an AKS environment. Find out about all the features of Tugboat that will simplify the deployment and running of your .NET application in AKS.

Links:

  • Tubgoat repository

View Details

Get the most out of Visual Studio productivity and testing tools in .NET! Learn new tips to help you understand code at a glance and the tooling improvements around code style, diagnostics, refactorings, and much more! Join this session to get tips on new features that speed up your inner development flow and discover the latest in cross-platform development with remote testing on Linux and asynchronous web UI testing with Playwright.

View Details

How do we architect software that has the potential to tap out the upper limits of single cluster scaling up and out? How do we achieve unbounded scalability while maintaining architectural simplicity and flexibility? Let’s find out by exploring the various forms scalability, and by deep diving into some real world inspired coded demos.

View Details

This talk is open to anybody interested in knowing what Go is about. We will go over the basic language constructs, opinions, tooling, modules, unit testing, other bits and pieces that make Go a fun language to learn. We will start with the simplest "Hello World" and top it off by building an HTTP web service by only using the standard library packages while connecting the dots between Go and C#.

View Details

Let's dive in to the latest features of Azure Functions - the serverless compute offering for Azure. After a quick recap of what Azure Functions are and what problems they can solve, we'll find out how Functions can now run .NET 5 (and .NET 6 in preview) and cover: • What works better? • What works differently (aka breaking changes)? • Why might you choose to stick with .NET Core 3.1? • What can you do in Visual Studio versus the CLI? • How can you add OpenAPI/Swagger support? • How would you automate the deployment with GitHub Actions or Azure Pipelines?

View Details

Serverless applications are taking the Internet by storm & it's easy to see why, the idea of being able to solve your problem & deploy it then walk away without ever having to think about system updates, package updates & security is very appealing to software developers. Serverless may not solve all of our problems but it sure can solve a lot of them. In this talk I'll explain developing serverless applications in dot net core in an AWS environment & some of the tips and tricks I've picked up along the way.

View Details

Pragmatic Performance: When to care about perf, and what to do about it

As a developer you often hear both that performance is important, but also that you shouldn't worry about performance up front, so when is the right time to think about it? And if the time is right, what are you actually supposed to do?

If you're interested to hear about a pragmatic approach to performance, this talk will explain when is the right time to think about benchmarking, but more importantly will run through how to correctly benchmark .NET code so any decisions made will be based on information about your code that is trustworthy.

Additionally you'll also find out about some of the common, and some of the unknown, performance pitfalls of the .NET Framework and we'll discuss the true meaning behind the phrase "premature optimization is the root of all evil".

View Details

Logic Apps Custom connectors are a great way to abstract your APIs and plug them into logic apps using a reusable connector pattern that is developer friendly. These connectors plug right into the logic apps designer to present a seamless experience. Whilst this uses API documentation to provide help with using the operations, they also use various security techniques. Join us at the September User group where Sam will take us through all the steps involved.

View Details

With the pervasive spread of gaming through popular culture it is now more important than ever to cater to a wide audience of potential users. In this talk, Scott will discuss how you can easily consume the Cognitive Services API to add Text-To-Speech to a Unity game on a budget.

View Details

How to achieve DevOps (including security checks) by using Azure DevOps, Docker and other tooling. How to using Azure DevOps with GitFlow.

View Details

DevSecOps seems to be the flavour of the month when it comes to software security. Is this just a buzzword, an ideology that's only applicable in unicorn start-ups, or are there tools and practices that we should be using to write more secure code. In his talk, Jakob explores DevSecOps as an approach to avoiding the common issues he sees as a penetration tester, and presents a process to build out a DevSecOps pipeline.

View Details

There’s been a lot of buzz in the frontend world around various frameworks and architectures. In the midst of this explosion in experimentation, sometimes a more basic, ‘vanilla’ approach, is left on the sidelines. When is a SPA a good option? When is a jQuery-style solution appropriate? How do you manage state? These are some of the questions we’ll explore in this talk. Additionally, we’ll run through an example setup using ASP.NET & TypeScript (sans any ‘frameworks’). So, get your thinking hats on, and let’s start our quest.

View Details

There are basically two options for integrating Angular6 into an existing site that has older technologies like AngularJS or JQuery:

1) Angular Elements 2) Angular downgradeComponent

This talk looks at both of these, as well as moving from an ASP.NET MVC3 architecture to a modern SPA web application

View Details

Feature Toggles or Feature Flags are utilised by many organisations to control system behaviour without changing the code. They offer various uses and often used to manage continuous releases and rapid feature publishing without breaking branches or modifying the code. Sam will be discussing how a smart feature toggling mechanism can be implemented and some of the popular use cases.

View Details

In this demo-heavy session, Dave will demonstrate the many features we've added to Visual Studio 2017 since it first released to make .NET developers more productive—improvements to editing, refactoring, debugging, and testing your code—which previously required additional extensions. Whether you’re new to Visual Studio or have been using it for many years, you’ll learn something that will make you more efficient.

View Details

Deployments are hard: nothing runs the same in production as it does on your local machine, and orchestrating the right changes at the right time, in a repeatable and reliable way, can be really tricky, and make you fear deployment time. Octopus Deploy is a deployment automation tool that helps to ease this pain, and give you confidence that your deployments will work consistently on every release. In this talk we'll have a look at the anatomy of a deployment, and some key Octopus features to help you eliminate your deployment pains for good.

View Details

Because too much Docker is barely enough! Jack is back for the sequel to his March presentation. Drilling deep into Docker and also covering the tooling to manage all those containers.

View Details

Blockchain is the next big thing, have you ever wondered how we can incorporate this technology with mobile?

In this session, we will learn how to integrate blockchain technology with your mobile applications, and have a look at the new Azure Blockchain Workbench

View Details

F# is the third major language in .Net. It is a functional, object-oriented language suitable for most applications, and shines in large and/or technical projects.

There will be a coding demonstration and pragmatic pointers for getting started and progressing to real world projects

View Details

Firebase is an easy to use set of technologies that help us rapidly build and deploy applications. It follows a reactive approach, using Observables to supply realtime updates whenever data changes. In this talk, Darren takes us through the Firebase ecosystem, and explains how it can be used to build an Angular web application. Throughout the talk we will learn about the Firebase NoSQL data stores, how to implement security, and we will deploy an application using the Firebase CLI tooling.

View Details

OWASP recently updated their top 10 web application development recommendations. I'll walk through some of the new items in the Top 10, and discussing their implications and ways to address them.

View Details

Learn about using Docker with ASP.NET Core, Docker Compose. Find out about ASP.NET Core's built in dependency injection support. Also see how to use Swagger 2.0 with API versioning.

View Details

How does a team successfully move from an internally-hosted centralized version control system to Git running in Visual Studio Team Services? Hear how one group of developers did this by taking along the people, adapting their processes, embracing the technology, in a culture open to change.

View Details

Learn about the new 60W Power over Ethernet standard, and how you can save up to 30% on power using demand-response programs.

View Details

The way systems are hosted are changing day by day and Azure serverless technologies make it easier for us to focus on the business logic and not worry about the underlying hosting and management. Azure functions assist with transitioning from monolithic software architectures to micro services patterns while providing the same experience for developers and administrators.

Sam Fernando will step us through the basics of Azure Functions, how to develop and host functions and few integration scenarios with popular SaaS services.

View Details

Do you have a complex build process? Is your CI build not quite the same as building locally? Can you grab a fresh copy of the source code and be up and running in minutes?

Cake is a build automation system based on C#. Find out how you can use Cake to orchestrate the entire build process, from compiling, testing, package and deployment. By using C# as the build DSL, you'll feel instantly at home!

Hear about David's experiences moving from a traditional multi-step CI build process to driving the build entirely with Cake. See how you can make use of Cake's impressive built in functions and 3rd-party add-ins.

Learn how to leverage Cake's extension model to write your own addins to provide custom functionality.

View Details

Do you know that you can book your flights via Skype? SkyScanner has a bot for Skype, where you can book your next holiday via chat. You may even use the Advertiser Bot through Facebook to get your daily news digest. Bots are even making enterprises be efficient and productive by letting you focus on what you do best and let the Bot do the grunt work.

Bots are not new, but they are becoming more powerful, pervasive and acceptable in today’s society as a way to get answers, access information, buy goods and request for services. Not only chatting or texting, you could also be talking to a Bot via connectors like Cortana too.

Sam Fernando will step us through the basics of the Microsoft Bot Framework, developing bots, hosting in Azure and connecting with channels like Facebook, Skype and Cortana.

View Details

Bill will be discussing and demonstrating the features Azure API Management. Looking at the Publisher/Azure Portal, Developer Portal and demonstrating API import and the power of the API Management Policies. Bill will also discuss the different usage scenarios and benefits of Azure API Management of both Web Application and Hybrid Integration.

View Details

Just the words "Cognitive Services" can be daunting, but it doesn't need to be! In fact, what if I said you can spin up a speech to text engine that will analyse the output and tell you the sentiment behind what it contains... in under 15 minutes. That is exactly what will be shown in this session - by creating a simple application that can consume an audio file (mp3) and use the power of Azure Cognitive Services to do the rest. There are many aspects to ACS and you'll be pleasantly surprised at how easy it is to integrate into existing processes.

View Details

Xamarin Forms is a framework that allows developers to easily create cross platform production ready apps. Sean will take you through the process of creating an application using Xamarin Forms with the backend of Azure Cosmos DB. Recently at the Build developer conference, Microsoft announced some great improvements to the Xamarin platform including Xamarin Live Player - a new way continuously deploy and debug application directly on iOS and Android. Sean will show you how easy it is to set up Xamarin Live Player, allowing you to easily view your UI changes without the annoyance of having to rebuild and redeploy to your device.

View Details

A code-centric discussion on building a framework for an enterprise application, using an "onion"-style architecture.

Light on diagrams, heavy on demos, this presentation will show how we can tie together some really handy open source libraries to form a framework which lends itself to writing maintainable, production-grade code. Such libraries include FluentValidation, Automapper, log4net, MediatR, SimpleInjector and (of course) JSON.NET.

View Details

Reality – Virtual, Augmented and Mixed. Join Bronwen – Microsoft Emerging Experiences MVP and get your reality in check.

This session will cover the different types of reality experiences and focus on the mixed reality of HoloLens. Bronwen will show you the actual device and how you can start building amazing holographic experiences for this self contained device. Don’t have a device – we’ll cover how you can start today without one.

View Details

A demonstration of how to do performance testing with Visual Studio Load and Web Test Tools.We'll also investigate and compare open source and non-MS tools in this space, as well as a brief look at strategies for dealing with performance problems in web applications.

View Details

Microsoft made some huge product announcements in New York recently. In this talk we'll show off some of the new features coming in Visual Studio 2017 including:

• Live Unit Testing

• Debugging improvements

• Docker integration

• Installer and setup improvements

• Performance improvements

as well as reviewing the changes coming in .NET, .NET Core, Azure and SQL Server.

View Details

Stav and the team from A Backbone Solutions join us this month to talk about their unique approach to data security. There will be hardware to play with too. Can you hack the 'unhackable'?

We'll start with a short introduction into the philosophies of “unhackable” and “unbreakable”, and relate that to existing technologies, Blockchain and our own tech. Reviewing the logical breakdown of data ownership, and how it is important to storage and access concepts. The audience will be encouraged to participate throughout the talk; we want it to be a Socratic-type lecture. After this discussion, the audience can then decide whether to talk about logic or application.

View Details

Join Microsoft MVP & DevExpress Technical Evangelist Paul Usher, as he takes a look at the state of play for desktop development. During this frank session you will see where technologies like Electron fit into the picture, which technology should you reach for when starting a new desktop project? WinForms? WPF? Electron? Should you be targeting xplat? Is .NET Core the next big thing? Can devices like the Raspberry Pi replace some desktop functionality? It’s set to spark some interesting discussions and is one meeting not to be missed! (evening proudly sponsored by DevExpress)

About Paul

Paul Usher is a Technical Evangelist at DevExpress. DevExpress technologies help software developers build high-performance business solutions, see complex software with greater clarity, increase productivity, and create stunning applications for Windows® and the Web in the shortest possible time.

Prior to joining DevExpress, Paul ran (and still owns) an independent software development company which specialises in custom solutions for small to medium businesses, with a focus on mobile and paperless solutions. He has developed more than 100 commercial applications on Windows, OS X, iOS, and other platforms that are used worldwide covering a wide range of industries from retail, medical, construction, and various service industries. Paul is a published author, WintellectNOW instructor and speaks at industry events around the world. His blog is available at paulusher.info

View Details

IoT, Node.js (visual/flow coding) + Cloud with Jack Ni

This talk will cover:

• What is IoT?

• A background history of embedded systems to IoT

• What are the challenges

• What tools can be used

• Cloud with IoT, and why we need cloud

• Demos

About Jack

Highly skilled in the field of enterprise software solution development, mobile app (Xamarin) development , IoT(Raspberry/WinCE) development and delivery, Jack is currently working on a working on a business solution involving Raspberry Pi, Mobile app Dev using Xamarin and Azure Cloud.

Parallel Programming Design Patterns and Considerations with "Curious" George Georgiou

A taste of some design patterns, techniques and things to consider in order to increase throughput of your applications and large data processing systems with the tools available in the .NET framework.

About George

An Adelaide developer who loves .net, LINQ, computers, 3D graphics and has more than enough things he's interested in to keep him from being bored well past his 70s and by then there will most likely be even more "things to poke around with" on his to do list

View Details

This is a recording of our June 2016 meeting. First up, we have our regular What's New segment with Ryan Spears. The main speaker for this month was Basarat Ali Syed presenting on TypeScript. Basarat's presentation is also available on YouTube under the title "Adelaide .NET User Group - TypeScript with Basarat". Wrapping up this recording is an update on the latest features in Visual Studio Team Services.

View Details

This is a recording of our May 2016 meeting. First up we have a short demo from Shamsul Arifin on his Bengali language Text to Speech web app. Following this we have Anthony Borton on Build and release your applications using VSTS/TFS 2015 Update 2.

View Details

This is a recording of our April 2016 meeting. First up, we have our regular What's New segment with Ryan Spears, then we have two presentations. The first is from Duncan Greaves about "Data Encryption using .Net and SQL Server", and then finally we have Dr Tom Tilley on "Building an Army of $10 Robots with HTML 5 and Node.js"

View Details

Deploying Enterprise Applications can be an art unto itself. Sophisticated, distributed systems often have a lot of moving parts. Databases often need to be updated with schema changes and new reference data with each new release.

Octopus Deploy takes a lot of the heavy lifting out of complex deployments. Being an automated process, it removes opportunities for human error to occur during a deployment. It also integrates well with Continuous Integration servers, resulting in end-to-end automation from code commits to deployment of compiled code.

In this presentation, we'll take a look at the basics of Octopus Deploy and see how it can significantly free up developers to focus on actual development, rather than having to also worry about the deployment aspects as well.

View Details

In this presentation we’ll take a look at virtual reality technology with a focus on how to develop software using the .net stack. We’ll look back at the early days of the technology and some of the impressive accomplishments and failures of those attempts at creating virtual reality. We’ll then fast forward twenty years to review the current state of the art and some of the exciting recent developments.

Knowing where we currently stand with the hardware we’ll delve into how to write software for virtual reality using .NET. We’ll take a look at the tools used and the familiar (and not so familiar) programming principles required when developing for virtual reality.

The presentation will include code examples and of course there will be an Oculus Rift on standby with several VR applications from Novus Res ready to be experienced.

View Details

'IntelliTest' is one of the new features that shipped in Visual Studio 2015. This talk will demonstrate IntelliTest and see how it is particularly useful for creating tests for legacy code. But you don't have to just stick with what's in the box - we'll also update you on a number of other unit testing tools and libraries that can make writing unit tests easier.

View Details

This session will take a developer and architect through the steps to create complex Logic Apps with non-connector API Apps and leveraging the numerous existing connector API Apps. Attendee will learn how to use Azure Services Bus Connector, File Connector, Office 365 Connector and custom API Apps in a Logic App, which will include conditional logic, retry logic and error handling.

View Details

Buddy IoT Platform Buddy is a cloud platform for Internet of Things (IoT). Using Buddy, you can collect all of your device data with a single, clean API and send it to any analytics, marketing or visualization tool or service.

In this presentation, Habib Heydarian will provide an overview of the Buddy platform, explain how to use the Buddy API to build Internet of Things applications and describe the features & capabilities of the platform.

Web Accessibility

Accessibility is something we should all care about. Even if it doesn't affect you individually now, chances are you know someone who does (or even yourself as we all get older and our senses become less effective than they used to be) having accessible software becomes essential.

Cliff Edwards give a practical overview of making the web more accessible. He debunks common myths, highlights pitfalls and demonstrates tools and techniques to make the web a more accessible place for everyone.

View Details

The thing about Azure, as with any cloud service, is understanding what is available. Join Paul Usher as he takes us through the most common uses of Azure, Web, Mobile, Data. In this session Paul will show just how quickly you can get up to speed with Microsoft’s cloud offerings, as well as creating database, blob storage and building a simple yet powerful website in VS and deploying with a few clicks. You can also see some of the other features of Azure at work. Fast paced, lots to see and learn and of course always room for some fun.

View Details

Visual Studio 2015 Launch

Ryan and Dave go through what's new in Visual Studio 2015. Be there early for official VS 2015 'swag' giveaways.

There’s something about Roslyn

Ben Laan on Rosyln, Microsoft’s .NET Compiler Platform ‘As a Service’. This presentation attempts to answer the what, why and how of Roslyn with a high-level dip into Microsoft’s next generation C# (and VB.NET) compiler. Topics include Rosyln Overview Features and Benefits, some demos to show - Code as Data, Visual Studio Integration, Code Generation/Conversion and possibly some other interesting things along the way!