Securely Aauthenticating to Azure Services with Managed Service IdentitySam Cogan
Having your application communicate with other services in Azure can be a painful experience, especially when it comes to authentication, you end up storing secrets in your application settings or messing around with certificates for hours. In this session we'll explore the new Azure Manged Service Identity (MSI) feature that allows the service hosting your application to assume an identity and use this to seamlessly authenticate with other services. We'll explore what MSI is, how it works and where it is useful, followed by some demos of using MSI to provide identity to virtual machines, app services and Azure functions.
Hunting typosquatters with F#
Better Contract Testing with Pact
[First Time Speaker] Contract testing shows some promise when testing microservice architectures. Why setup integration tests? They are often slow and hard to maintain, as the QA environments they rely on ultimately break. Instead, services can be mocked out and teams owning the mocked services can run and maintain Contract tests. Validating the shape of data returned hasn’t changed between releases. With these Contract tests in place Integration tests are less useful. It is a nice idea but there is one big problem. Contract tests go out of date even with the best of intentions! There is often a disconnect between the service providers and consumers which causes Contact tests to drift from reality. Something I have witnessed first hand. This talk will introduce Pact, a contract testing framework with a difference. You will see how to avoid out of date Contract tests. By letting your service consumers drive your Contract test definitions instead. Saving your teams time and creating a more reliable Contract test suite.
Industrial IoT using AzureEldert Grootenboer
In this session we will dive into the IoT stack provided by Azure, using IoT Hub and IoT Edge. During this session we will see how to use Azure to incorporate and manage our devices, deliver end to end messaging using IoT Hub, and how to extend our solutions to the Edge. Using the Azure iPaas platform, we expand on this solution to Dynamics 365 using Connected Field Services so we can control the devices, visualize our readings and deliver proactive maintenance.
Continuous Delivery - A continuous improvement journeyColin Mackay
A lot of people look at continuous delivery and think that's a big step, and back away from it. It doesn't have to be that way. It isn't as insurmountable as it first looks. 4 years ago I had never done any automated deployments at all. Today I have three projects that can deploy quickly at almost any time with minimal downtime, one of which has zero downtime. And all this is from a simple button click on the build server. This didn't happen all at once. It was through a series of incremental steps that we got here. Not all the steps we took worked out, some introduced new pain points for us that we had to deal with, but on the whole we managed to improve a little each time. We're not finished either, there is still more we can do, and the projects are always changing to meet the changing needs of the business which presents new challenges. In this talk I'll show how we started with a Continuous Improvement Theme as a way to help break down the problem, and then move forward in smaller baby steps, occasionally falling down and having to pick ourselves up, slowly gaining confidence until we were walking confidently with our understanding of what we were doing. Although some specific technologies will be shown or mentioned, the ideas presented are not technology specific.
Pilot Critical Decision ManagementClifford Agius
This talk explores Clifford's experience as a Boeing 787 Dreamliner Pilot and the critical decision management skills required therein.
As an Airline pilot, you may be required to make a decision often quickly to react to a situation as it presents itself and you will discover a way to achieve this called TDODAR. This model ensures that you achieve a safe outcome for all on board and Clifford often finds himself using the same model when facing a problem whilst wearing his Dev hat and it's yet to fail him.
Keep calm and easilly manage a gazillion services in Azure!Jan de Vries
Creating an infinitily scalable solution is easy to do with all of the serverless offerings nowadays. But having thousands of service instances running all of the time can make your life quite hard when running in a devops team.
Let me show you how you can keep your head calm and make sure you can track & monitor all requests and information flows with ease! Create a flowing architecture, utilizing Azure monitoring services and of course with a touch of Application Insights. I'll provide you with all the knowledge you need to implement your own serverless architecture ready for production!
Creating serverless applications using Azure's holy trinityEldert Grootenboer
With the addition of Azure Event Grid, we now have the holy trinity of serverless in Azure. We have Azure Functions to run our custom code, Logic Apps for our workflows and easy integration, and finally Event Grid for our messaging needs. And all this truly serverless, meaning highly available, dynamic scale and allowing us to focus on logic instead of infrastructure.
Azure In Action - CosmosDB, Functions and ServiceBus in Perfect HarmonyJoel Hammond-Turner
There's so many parts to Azure, it's sometimes hard to decide what to use and when. Do I use TableStore or CosmosDB? Would BlobStore be better? Should I host a full-fat .Net service in a VM, or stand up an ASP.Net Core WebApi? What about functions? The choices are myriad.
In this talk I'll describe how at Landmark we made these kind of decisions as we implemented some new features in our product. I'll talk about the questions you need to ask to make those decisions, where we went wrong, and how we succeeded in the end.
I'll describe in detail how we used CosmosDB, Azure Functions and Service Bus together to provide a Compliance Audit trail feature that would scale properly, work reliably, be trivial to use, and that wouldn't break the bank.
Am I doing deployments right?Matteo Emili
Kubernetes .NET and AzureShahid Iqbal
Everyone seems to be talking about Kubernetes with companies seemingly tripping over themselves to support or adopt it.
In this talk we'll introduce Kubernetes, discuss the key concepts of the platform, it's high level architecture and how to get a Kubernetes cluster up and running in minutes.
We'll talk about and demo deploying .NET applications to Kubernetes and we'll finish with a discussion of the future where you can deploy both legacy and modern .NET applications to the same platform.
If you're interested in Kubernetes and you're not a .NET developer this session still has something for you
Deploying Functions to Azure with OctopusDeployJoel Hammond-Turner
Azure Functions are the basic building blocks of "serverless" computing in the Azure stack. But whilst the technology provides a (fairly) smooth path for developers to play with it, in the enterprise you still can't just deploy to PRD from the desktop.
And even deploying from a GIT repo isn't necessarily enough control for your business - just as with traditional software and services you need reliable, repeatable deployments.
At Landmark, this is exactly what we need to do, and so in this talk, I'll show how we can use our old favourite, OctopusDeploy, to take an Azure Function from our build process and deploy it in just the same way as we do for other software.
Don't let your serverless solution become the frontpage news!Jan de Vries
Designing a highly distributed system is great of course, but also opens up a lot of possibilities for attackers!
Are your endpoints secure, is your code fortified, how about your infrastructure?
Lot's of stuff to think about and if that's not all, there's also the question on how to do all of this in a serverless world?
I'll show you some of the best practices there are at the moment and will give you some advice on how to design and develop a system which is fast, can scale infinitely while still being secure! There will be a lot of code, diagrams and configuration, so brace yourself for this session!
What did I learn trying to migrate teams from legacy to modernMatteo Emili
Your First Alexa Skill with .NET CoreSteven Pears
Voice is being used more often in daily lives, in our homes devices such as the Amazon Echo are becoming smarter and are a convenient way of performing tasks and asking questions – but they don’t always do exactly what you want. As developers, we can create our own skills for Alexa that allow us to fill that gap. In this session we learn how to write our first Alexa Skill. Using AWS Lambda and .NET Core we learn the concepts that allow us to build conversations; finding out what our users are asking for and giving them back information with Alexa’s voice – without them ever having to lift a finger.
Product Management and Continuous Delivery - a happy marriage?Matteo Emili
Analyzing flight data in real time using Cosmos DB, Azure Functions and Power BI
Cosmos DB is redefining the database in the age of cloud; globally-distributed, secure, PaaS, multi-model, multi-API database with a choice of consistency models, enterprise SLAs, encryption and guaranteed latency. This session will cover Cosmos DB’s main features in the context of an Aircraft tracking use-case developed by endjin. We will cover the benefits that made Cosmos DB the right choice to support a global, mission-critical application. There will be a live demo of the solution architecture, operational system, example queries, and performance optimisation strategies. We will also show examples of how we integrated with Azure Functions and Power BI to create real-time analytics over the ingested flight data.
Azure Machine Learning for DevelopersSteve Spencer
As a developer I wanted to get an understanding of machine learning and with the arrival of Azure Machine Learning I got my chance. This talk will go through from a developers perspective the highs and lows of machine learning. I will introduce the tools, show how easy it is to use and then talk about what us as developers can add to the process
You're the Tech Lead - you fix it!Joel Hammond-Turner
Over the last couple of years, I've presented 20 tricks and tips that I've found invaluable as a Tech Lead. But in this session, I want to turn things around and look at applying some of those to solving specific issues that are common within many software development teams.
I'll be taking lessons learned from the last 2 years of a major development project and using them to illustrate my points.
We'll look at managing your BAs and PMs and how to balance their need to understand exactly how long everything takes versus your team's need to not be over-pressured by artificial deadlines.
We'll see how a structured approach to analysing problems encountered in LIVE can make everyone's life easier, and how to prove whether the problem is (or is not) the fault of your software. And how to handle that inevitable case where it is.
And we'll look at the problems of implementing uniformity across multiple code-bases and multiple teams delivering multiple releases of multiple features... and where getting your tooling right can give the biggest benefits.
Amongst other things...
Introduction to SharePoint Framework (SPFx)Gosia Borzecka
SharePoint Framework (SPFx) is the new framework for creating customizations for SharePoint using only client-side code.
In this session, we will better understand how the SharePoint Framework is working, what tools we need and how easy we can develop new Web Part and Extensions and next deploy them on Azure and SharePoint.
Deploy IoT Edge in 45 minutes (and live happy)Marco Dal Pino
Do you want to build hybrid solutions for the IoT? Want to bring the power of the cloud locally? Do you need to install and run applications for artificial intelligence in even disconnected situations? Or do you still run Azure services and custom applications directly on IoT Cross platform devices? And maybe then check everything centrally from the cloud using Microsoft services and security? Then you need Azure IoT Edge!
Navigating the HttpClient minefield with HttpClientFactorySteve Gordon
A simple requirement can quickly become complicated! You want to make a HTTP request from your application to an external service. Simple you say! Grab the good old HttpClient and off we go! But it's not that simple; first we have to worry about socket exhaustion. That's okay, we can solve that; singleton HttpClient, here we come. But now we have a new problem; DNS TTL is not respected and if that external service moves, we're done for! So what now?
Enter HttpClientFactory, a new feature in ASP.NET Core 2.1 which provides an (opinionated) approach to help navigate the minefield. In this talk Steve will explore the problems that HttpClientFactory helps solve before looking at demos of how we can use HttpClientFactory in our code. We'll explore the most basic usage, through to more advanced named and Typed clients. We'll then explore how to add and write outgoing request "middleware" handlers, similar to the incoming ASP.NET Core middleware pipeline. We'll wrap up by looking at the integrations with the popular resilience and transient-fault-handling library, Polly, which provide powerful policies to build reliable services.
If you're building cloud native (micro) services or libraries that need to communicate over HTTP, this talk is for you! It's time to start leveraging the power of HttpClientFactory.
A case for on-premise: why you can do brownfield DevOps tooMatteo Emili
Databases and DevOps - can they be friends?Matteo Emili
Automating business processes using Microsoft Flow and Logic AppsSteve Spencer
As part of the Office 365 suite of applications Microsoft Flow provides a great tool set that give semi technical people the ability to build their own personal automation. This talk will explore some of the features of Flow, its relationship with Azure Logic Apps and discuss how a flow can be operationalised and controlled as part of a DevOps process
Finding your service boundaries - a practical guideAdam Ralph
We know it's useful to split up complex systems. We've seen the benefits of modular deployment of microservices. Dealing with only one piece of code at a time eases our cognitive load. But how do we know where to draw the service boundaries? In complex business domains, it's often difficult to know where to start. When we get our boundaries wrong, the clocks starts ticking. Before long, we hear ourselves say "it would be easier to re-write it". Join Adam for practical advice on discovering the hidden boundaries in your systems. Help tease out the natural separation of concerns in a sample business domain. During 20 years of developing complex systems, Adam has had plenty of time to get things wrong. Learn to avoid the common pitfalls that can lead us down the path to "the big re-write".
Spot the difference; automating visual regression testingViv Richards
This session looks at common issues with just relying on end to end automation testing tools, using examples to demonstrate common pitfalls and how visual testing can help add another tool to your tool belt.
The talk looks at why we automate tests, the issue with just manually testing, common end to end automation pitfalls, a brief introduction to visual testing and finally a look at common issues with visual testing and ways to overcome them.
Through the use of interactive examples the audience will gain an understanding of why relying on just manual testing can become an issue and how too much automation has a negative impact by looking at testing anti-patterns. The audience will also learn what visual testing is, what tools are available, some of the common pitfalls of using visual testings as well as tips on ways to overcome them based on experience of creating a custom visual test framework at my current employer.
Introduction to Windows Mixed Reality development using Unity and the Mixed Reality Toolkit
Mixed reality is the result of blending the physical world with the digital world. It is the next evolution of human, computer, and environment interaction and unlocks possibilities that before now were restricted to our imaginations. The Mixed Reality Toolkit is a collection of scripts and components intended to accelerate development of applications targeting Microsoft HoloLens and Windows Mixed Reality headsets. In this session, we will explore how to fast-start Windows Mixed Reality development using Unity, the Mixed Reality toolkit and the Universal Windows Platform.
Code on the roadAdam Ralph
Last summer, not content with only working from home, Adam turned the remote working dial up to eleven. He bought a camper van, a couple of EU SIM cards, and... hit a traffic jam near Basel. Seven months and seven countries later, he realised the ski season was starting. Back home to Switzerland it was, to reflect on his experience over a pot of hot cheese. Join Adam as he shares the gory details of the challenges he faced on his journey. Discover the tips and tricks he learned to overcome them. And finally, get the answer to the big question: Would he do it again?
Databases and DevOps - can they be friends?Matteo Emili
Introduction to Managing SharePoint Online using PowerShell
SharePoint Online management using PowerShell provides powerful capabilities to automate common tasks. This session covers getting up and running with PowerShell for SharePoint Online, including installation of the required components, pros and cons of the available options and some sample scripts to perform common actions. If you're a newbie to SharePoint Online automation with PowerShell, this is the session for you!
ASP.NET Core loves Docker: from 0 to Azure in 60 minutes
When talking about containers, people usually think about them from the DevOps standpoint. This talk, instead, is containers for developers, because containers are going to revolutionise also the way we craft applications. During this talk, we'll port a non-trivial ASP.NET Core solution to Docker. After executing it locally on our machine, we'll explore which options we have to run it on the cloud and we'll deploy it to AKS (managed Kubernetes) in Azure.
Developer Productivity!Dan Clarke
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, 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!
Microservices and Containers: How Service Fabric can help build your distributed applicationSteve Spencer
Whether you have existing services or containers or whether you are building a new system from scratch there are numerous ways in which you can deploy. Managing and deploying your microservices application can be complicated. This talk introduces the Azure Service Fabric and shows how you can take existing services and containers and deploy then on your own infrastructure, in Azure or another cloud provider and how you can manage these applications and build new services to take advantage of the Service Fabric platform.
Building your first dashboard with Azure PowerBI EmbeddedJoel Hammond-Turner
Users love dashboards… Dashboards give them that warm fuzzy feeling that they can see into your software and watch it working perfectly… And dashboards give you the same insight into what's actually going on. But why are they so hard to implement? Why are they so often a last-minute add-on to the software you develop?
Microsoft's Azure PowerBI Embedded product lets you capture data, analyse it and present it on dashboards that live within your application - easily.
In this session, I'll take an existing instrumented application, pipe the data into Azure and demonstrate just how easy it is to create a rich dashboard to monitor the application. And I'll show how to use Power BI to get deep insight into your software - and deliver that insight to your users.
Open Source isn't Scary!Steve Gordon
In this talk Steve will take you on a journey from Open Source newbie, to core contributor and project maintainer. Steve will share his personal experience and along the way impart some practical Git and GitHub advice, discuss etiquette, look at pull requests and dive into why contributing to Open Source can be great for your career and the community!
During the talk Steve will focus on his contributions to the allReady project, run by the Humanitarian Toolbox. This is an example of how open source software and its contributors can help organisations save lives, by "coding for the greater good". Steve made his first ever pull request to allReady in 2015 and since then has made over 180 more as his passion and confidence has grown.
Open Source can be intimidating for newcomers, but it needn't be. There's a great community of people who work together to build great software. Everyone has a place and can contribute. By working on open source projects you can learn new skills and experience new technologies on your way to furthering your career and mastering your trade. You'll leave this talk inspired; ready to clone some source code and excited to make your first pull request.
What sorcery is this? Xamarin Forms in the web browser
User Storymapping for BeginnersColin Mackay
Sometimes it is difficult to work out how to prioritise the backlog and effectively work iteratively. What do you put in your MVP (Minimal Viable Product)? What then goes in each incremental release to give your users more and more useful functionality? Storymapping is a technique for solving this problem and getting your solution to your users faster.
In this highly interactive session I'll explain how you go about creating a story map and I'll get you to create one. Lots of sticky notes later you should have a fairly good grasp and be able to use the same technique on your own projects to better manage your backlog.
Building stateful serverless services using Azure Durable FunctionsEldert Grootenboer
With the addition of Azure Durable Functions we can now create long running and stateful function orchestrations.
This is a great addition to Azure's serverless services as it allows us to easily implement function chaining and fan-in/fan-out messaging scenarios. In this sessions we will dive in to the possibilities and inner workings of this new technology, and will find out how we can use it to make our applications even better.
Logging and Alerting with Azure Log AnalyticsSteve Spencer
This talk will explore some of the built in features of Azure that allow you to monitor your applications as well as integrating your own logging and metrics to provide insights into the health of your applications and who is using it.
Getting the first PR into .NET and other tales from an OSS contributorAdam Ralph
The world of open source software has never been more exciting than it is right now. Communities spanning all platforms are thriving and more inclusive than ever. Even Microsoft have transformed their strategy, becoming the "number one" GitHub organisation. Why the big change? What's wrong with the "old" way of doing things? In November 2014, I became the first community member to have a pull request accepted for .NET Core. With my 15 minutes of fame now over, I'd like to reflect on the journey that took me there. How did 'that Czechoslovakian guy' go from a curious OSS onlooker to a passionate OSS advocate? We'll discover what OSS is, why it works and how easy it is to get involved. OSS is not only about coding and there are plenty of other ways to contribute. Even if you're not a coder, this talk is still for you.
Using Domain-Driven Design with Entity Framework CoreJon P Smith
Microsoft's Entity Framework Core (EF Core) provides a number of features that allows you to apply a Domain-Driven Design (DDD) philosophy to the classes that EF Core maps to the database. This session is about why DDD is useful when dealing with a database, and how you can implement DDD with the EF Core library.
This session will be useful to anyone that uses Entity Framework for database access and wants to see if DDD is a useful approach to adopt. Jon show how to build an EF Core class in a DDD style, and why that is useful. Jon also covers how to build business logic using the DDD philosophy, with worked examples.
Docker for .NET DevelopersSteve Gordon
Is Docker forever on your list of things to explore? There's no better time than now…
In this talk Steve will introduce you to Docker, an application packaging and containerisation technology that opens new possibilities for development and deployment of your ASP.NET Core and .NET Core applications. Steve will share with you the Docker journey that his team are on, exploring their motivations for using Docker, the benefits they've achieved and the workflows they have developed.
We’ll learn about the core terminology and concepts that .NET developers need to understand in order to begin working with Docker. Steve will share demos which show how easy it is to start leveraging Docker in your own ASP.NET Core projects. Finally, we’ll look at a complete CI-CD pipeline using Docker and Jenkins. Steve will explore the AWS Elastic Container Services (ECS) architecture Madgex have built to enable rapid, continuous delivery of their microservices.
You’ll leave this talk with the knowledge you need to get started using Docker in your .NET Core projects and excited about the value that Docker can add to your workflows and deployments.
Integrating life with cognitive servicesEldert Grootenboer
In this session, we will see how we can get data from the real world, and use this to drive our business. Thanks to Microsoft Cognitive Services we can easily work with data from the real world, like text, images and videos. By integrating this data into our processes we can make even more engaging and better solutions.
An introduction to how Entity Framework Core works insideJon P Smith
Entity Framework (EF) is Microsoft’s recommended database access library, with Entity Framework Core (EF Core) being the latest version. EF Core is very similar on the outside to the original 6.x version of EF, but very different underneath. In this talk Jon P Smith will describe how to use EF Core and what is going on inside the library. The session contains lots of diagrams showing the inner workings of EF Core and live code examples to see EF Core in action.
Both newcomers to EF and developers that already know EF will find this session useful. Newcomers will get an overview of what EF Core can do as the session looks under the hood of EF Core, while seasoned users will see gain deeper insights to how EF Core works, and what is different in EF Core to the original EF6.x version.
The Code Behind The VulnerabilityBarry Dorrans
I know it's hard to believe, but sometimes Microsoft makes security mistakes. Despite his best efforts to stop this in .NET Barry is here to share stories about the things that turn his hair grey. We're not talking OWASP listed mistakes (well, OK, there's two we're going to discuss that are on the OWASP Top Ten, which is embarrassing), we're going beyond SQL injection covering some of the code behind now fixed .NET vulnerabilities which ended up in Patch Tuesday updates.
By the end of the session you should be able to pour through your own code looking for problems with dictionaries, compression, encryption and more.
Introduction to Cognitive ServicesGosia Borzecka
Machine Learning, Data Science, Artificial Intelligence. These all subjects coming to our business really quickly - but do you really need to master them all to make your application intelligent?
Microsoft created a simple API's that any developer can use and integrate into their applications quickly.
This session will focus on various API's and show the few demos how to add them to your apps such as ASP.NET Core, SharePoint Framework and Flow.
From NT4 to .NET Core: Two Decades of Continuous ImprovementDylan Beattie
Dylan Beattie started building data-driven web applications on Microsoft Windows way back in 1997, when IIS was part of the Windows NT 4.0 Option Pack. Two decades later, the web has completely transformed the world we live in, and the software industry has changed almost beyond recognition. Agile, devops, virtualization, JSON, cloud, NoSQL, mobile apps - and Dylan is still building data-driven web applications on Microsoft Windows. In this talk Dylan will share lessons and experience from two decades of building web apps on Microsoft platforms, but this is more than just a walk down memory lane. As each new generation of developers enters our industry, they're starting out a journey of their own - and maybe there's some insight from the last two decades that we can share to make their journeys easier. How can you stay focused on solving the important problems when there's so many exciting new patterns and frameworks you should be investigating? How can you spot the difference between genuine innovation and a passing fad? How can you tell when a new technology is mature enough to start using on production systems? We'll talk about source control and collaboration patterns. We'll talk about things like continuous integration, monitoring and infrastructure, and look at some of the timeless challenges of software development.
Headless UI testing with Chrome and PuppeteerRichard Wilde
Wouldn't it be nice to be able to UI test your code changes before you check into source!
Unit testing helps us when writing any sort of application, however we often end up writing unit tests for small pieces of logic that don't really matter and sometimes miss out on the bigger picture. As a developer we tend to shy away from Web UI testing as the feedback loop is just too slow.
In this demo led presentation we will take a look at a toolset that gives us far faster feedback. I will cover :-
- how to get up and running
- show how we can take screen grabs and generate PDF's
- show some basic testing scenarios using a SPA (including image comparisons)
- show how the page object pattern is useful
Welcome to Chrome(ium) and Puppeteer!
Puppeteer is a Node library which provides a high-level API to control headless Chrome (AKA Chromium) over the DevTools Protocol. It can also be configured to use (non-headless) Chrome.
CI/CD of .NET applications to KubernetesShahid Iqbal
Kubernetes is rapidly becoming the industry standard platform for application development/hosting. Coming from the Linux world Kubernetes can be a little daunting for .NET developers, especially as we have a world with both Windows only full .NET framework applications along with new .NET Core applications. This talk will cover: Fundamental concepts around Kubernetes Discuss the options available to .NET developers for containerising their .NET applications Demonstrate building a CI/CD pipeline to deploy .NET applications to a Kubernetes cluster
Containerise "legacy" .NET applications for a new lease of lifeShahid Iqbal
As our applications evolve we are often faced with difficult choices of how we support our older systems whilst taking advantage of newer platforms. With the advent of .NET core many companies are looking to write all new projects in .NET core and target Linux using containers. However what about their existing full framework .NET applications, do they need to maintain two totally different build & deployment and production systems to support both old and new applications? This talk will cover the following areas:
Introduction to Windows containers.
How to choose which container variant to use.
How to containerize legacy applications.
Vision of a unified build/deploy and production platform with both Windows and Linux applications running alongside each other.
Microservices - What I’ve learned after a year building systemsNathan Gloyn
This talk goes into my experience during the last year as part of a team building a system that is based on microservics architecture.
Whilst I'll mention the technology used this talk won't be about the technology more about the lessons I've learnt.
I'll cover how we built the system, deploying the code & most importantly how to support the system.
Apps, algorithms and abstractions: decoding our digital worldDylan Beattie
Picture the scene: you’re on a train, your phone goes ‘ping’, you take it out of your pocket and hey — someone sent you a message! It’s a picture of a cat doing... daft cat stuff? You send back "LOL", you put your phone back in your pocket… but have you ever stopped to think about what’s actually involved in making that happen? Inside even the most basic smartphone there are literally hundreds of innovations, algorithms and inventions — but how do they really work? How were they developed? And what’s the next generation of algorithms and applications going to look like? In this talk, we’ll take a deep dive into the technology behind those everyday experiences, and demystify the algorithms and abstractions that make our digital world go round. We’ll look at everything from network addressing algorithms, frequency-hopping cellular data networks and shortest path optimisation, to wavelet compression, Fourier transforms and media encoding schemes. Whether you’re a programmer, a product owner or just somebody who loves using the latest tech, after watching this talk you’ll never look at your phone quite the same way again.
TPL Dataflow - The Best Little Async Library You've Never Heard OfJoel Hammond-Turner
From the docs:
> The Task Parallel Library (TPL) provides dataflow components to help increase the robustness of concurrency-enabled applications.
What it actually does is give you the tools to create in-process async pipelines in a simple, structured manner.
And I'm betting that like me (until recently), this is a library you'll never even have heard of.
I'll cover the basics - Sources, Targets and Blocks - and how to link them together into useful **asynchronous** and **parallel** pipelines within your programs. We'll handle error conditions, cancellation and how to control the degree of parallelism - with samples that give you a bit more than "Hello World".
It's not all Debug.WriteLine
A rapid tour through learning how to use Visual Studio to debug applications, starting from the classic logging to the console and moving on to using the power of the integrated debugging tools. While this session will use C#, the techniques are widely applicable to other languages. Among other things, we will learn how to use features such as conditional debugs, debug single threads in multi threaded applications, using edit and continue. See how Data Tips can make your life much easier, and how you can use them to your advantage. For the XAML devotees, we will also look at how to use the live visual tree and live property inspector to debug XAML apps at run time as well.