Resilient and Scalable : what does it means and how can Azure help?Steve Spencer
Everybody wants their web apps to be scalable and resilient. Its easy to do when you build it in but what about those existing applications.
Building web apps that are both scalable and resilient is challenging. How can you take your existing on-prem application and move it into Azure?
Azure is so big what services could I use to help me?
This talk discusses the issues around making an existing web app scalable and resilient and talks about some of the Azure services and how they can help you achieve your resilience and scalability goals
Your Handover Sucks. What’s Your Phone Number?Anthony Dang
Many years ago I was a freelancing contractor. I did a handover on my last day of a small-medium website build. The agency contacted me a few months later to ask questions about how it all worked. For the record, my code was decent, the Lead Developer saw a demo, and my handover documentation was very good.
So what went wrong?
For a start, at 5pm on my last day, I met the project manager (for the first time). He told me that the functionality was not as he expected. Let's just say that their company processes left me wanting.
For this talk I’ll be discussing why a proper development process, and incorporating knowledge sharing (built into day to day activities) effectively makes handovers unnecessary. I’ll be presenting how we at The Cogworks implement knowledge sharing and open communication as part of our processes, and how this benefits to the company as a whole.
Some of the topics I will cover are:
• Client engagement and transparency
• Pair programming, and when it’s appropriate
• Asking for help, and when it's appropriate
• Pull Requests and code reviews as a vital part of quality control
• Behavioural & Integration tests (eg. using Ghost Inspector)
• Cross functional teams, and how they improve communication & throughput
• Kanban pull based workflow and how it improves not only project throughput, but company wide throughput, and maintenance
• Scrum rituals and the importance of Sprint Retrospectives
Deploying Functions to Azure (or AWS) with OctopusDeployJoel Hammond-Turner
Azure Functions and AWS Lambdas are the new darlings of "serverless" computing. But whilst both technologies provide (fairly) smooth paths for developers to play with them, in the enterprise you still can't just deploy 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 (or AWS Lambda) from our build process and deploy it in just the same way as we do for other software.
Become a chatbot builder with Microsoft Bot FrameworkJames Mann
The way in which customers expect to be able to interact with companies is changing. We'll look at this change and how you can take advantage of it by creating chatbots using the Microsoft Bot Framework. We'll cover the basics, including what tools you can use and where to go in order to get started. Then we'll see how we can use Microsoft Cognitive Services to sprinkle AI magic on your chatbots and turn them from simple command-line pretenders to useful tools that customers will love. Come along and become a chatbot builder for your organisation today!
Making enabling apps for disabled people in XamarinDennie Declercq
Making apps for people with a disability with Xamarin tells you about making apps for people with an intellectual disability. Former, people thought people with an intellectual disability cannot read, thus a smartphone isn’t really realistic for them. But nonprofits and startups started to explore this userbase and found out a way of apps people with an intellectual disability can use.
Why is this important? Well there are two big reasons: first of all: If people with an intellectual disability can use your app, they can get info about their life-situation and that empowers quality of life. Smartphones by example uses Text-To-Speech and principal the need to “can read” isn’t there anymore.
For you as developer or startup there’s also a big benefit of apps for these people: nearly every market is discovered for mobile apps. Every market has big concurrency. But the market of apps for people with a disability is quite less discovered, so if you are good, you can rule a hole market!
Service Discovery with Consul.io for the .Net developerJoel Hammond-Turner
What can Rollercoasters Teach us About Software DesignStephen Haunts
When writing software we use Design Patterns as a way to show common solutions to common software design problems and also as a way to have a shared terminology with our fellow developers. This fun talk is about the importance of these common design problems and shared terminology, but to illustrate their importance I am going to look at a completely different industry that also has their own set of design patterns and terms.
In this talk, we are going to look at the wonderful world of Rollercoaster design and engineering and we are going to have a lot of fun at the same time.
By the end of the talk, you will know a lot of the common patterns and terms used in this fantastic industry and you will leave the room knowing about Inversions, Magnetic Lift Hills, Woodies, Steelies, Helixes, LSM Launches, Cobra Rolls, Brake Runs and much much more.
So put your hands in the air and prepare to have fun as we enter the wonderful world of Rollercoasters.
** Note to organizers, this talk works really well at the end of the day when people brains are fried **
Building a modern enterprise with UWPJames Croft
Based on experience building applications for the enterprise, this session will aim to help improve the understanding of UWP and how that can benefit your app development in the enterprise space.
In the session, you will learn what tooling is available today to migrate your classic Windows applications to the Universal Windows Platform. You’ll also learn how you can build your application’s user interface from the ground up while utilizing your classic applications code with demos to get you started.
As well as bringing your current enterprise apps to Windows 10, the session will also explore the futures for your new UWP application showcasing what companies are doing today with their enterprise customers with UWP exclusive devices such as the Surface Hub and HoloLens.
What Is The Point Of ... Microsoft ?Liam Westley
The demise of Microsoft has been predicted by many; Microsoft as a platform for software and specifically their development tools and ecosystem.
The reboot of Microsoft has been dramatic over the past few years, embracing OSS, ASP.NET vNext rewriting the core of what .NET represents, and the final promise of deployment to any platform with .NET core. Their purchase of Xamarin provides a cross platform mobile solution, and Azure is thriving even when there is no Windows Server in sight.
Liam will take a subjective stroll through where Microsoft is heading, and what the changes might mean for existing Microsoft developers and whether a .NET renaissance is about to happen.
Getting your Splunk on - a developer's guide to SplunkJoel Hammond-Turner
Successfully Decomposing Your Monolith or UpdateUser Means Nothing To MeSean Farmar
Designing a system is hard, it’s even harder to build a distributed microservices style architecture…Let's try and walk through a simplified example of carving our our entities, bounded contexts and carving out the processes on the road to building better applications.
SOA lessons learnt (OR Microservices done better)Sean Farmar
Service Oriented Architecture has been around for awhile, now Microservices is the new black, that’s cool, but can we learn from when we failed and succeeded implementing SOA? There are some really useful lessons we can take and avoid the pitfalls.
Creating Facebook Messenger chatbots with Microsoft Bot FrameworkJames Mann
In this session we look at taking advantage of Facebook Messenger functionality to enrich our channel specific experience. We will look at webviews, custom cards, quick replies and persistent menus among other interesting components which you will be able to take away and bring your chatbot to life!
The power of mentoringSimone Cuomo
It doesn’t matter what point you’re at in your career, mentoring and being mentored is the key technique for personal improvement at any stage. Knowing your weakness is a strength of its own, and mastering how to mentor will help you in achieving just that, by not only revealing your greatest strength but also your weakness. Learn how to offer help and support to others is actually the best way to help yourself.
The talk will help attendees to learn how to use mentoring not only as a skill to support others, but as a technique to achieve your goals.
Interactive APIs with GraphQLSam Hogarth
GraphQL is Facebook's language-independent technology, used to create interactive APIs. It provides an alternative approach to REST-based APIs, making your data queryable, explorable and efficient (from a networking point of view).
In this session we will develop an understanding of the motivations behind GraphQL and under what conditions the technology can be effectively deployed. We'll build a GraphQL schema and demonstrate the awesome interactivity that a GraphQL endpoint opens up!
Visual Studio Online with Git for small teams and hobby projectsDennie Declercq
This session is about creating and managing VSO projects with GIT as source control. This session is specially made for small teams and hobby projects.
Effectively Scaling in .NET - Horizontal, or Vertical?Joe Stead
Effectively scaling any application is difficult. There are dozens of different approaches you can use, but which one suits your problem best?
We'll explain the difference between horizontal and vertical scaling and when you might prefer one over the other. We'll explore different approaches and discuss the pitfalls as well as the benefits of each.
We'll go on a journey together, looking at an application that handles barely any concurrent users, to handling tens of thousands concurrently.
Scaling Agile in your Organization with the Spotify ModelStephen Haunts
Using agile methodologies like Scrum or XP has become common place in a lot of organizations, but what do you do when you want to scale your business or department in size. Just being Agile in it self won't stop the growth of your business and teams descending into chaos. In this talk, we will look at different techniques and team dynamics changes you can make to allow you to scale Agile across your business.
In this talk, we will take a look at the Spotify model that has been gaining in popularity recently and discuss how this works for consumer facing products and how you can adapt it to work in more regulated business to business enterprises. I will give examples of where I have started to apply this model to a start-up working with regulated insurance companies, that is currently going through a hyper growth stage.
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; how you can manage these applications and build new services to take advantage of the Service Fabric platform.
Teaching an old dog new tricksIsmail Mayat
In this session we will get down and dirty with clean code.
Expanding on Uncle Bob’s teachings this session will give you practical hints and tips to help you practice clean code. We will cover what clean code is, why you should be writing it and how to write it. If you’ve been a victim of “wtf code”, or even guilty of writing it yourself, then this is a must attend talk for you.
Disclaimer: there may be swearing!
Introduction to Event SourcingDuncan Jones
"Introduction to Event Sourcing" is a beginner level introduction to event sourcing, a data storage idea that works on capturing the change history of the system as a sequence of events and recreating the state from this history.
I will also show how it fits into the larger concepts of CQRS and up to domain driven design - with some discussion on how to host and use event sourcing in microservices.
Beginner's level talk (101), no code but mostly diagrams, interactive discussion and Lego.
Building (micro) services in .Net V2Sean Farmar
In this talk I will show how we can build deploy and monitor (micro) services using the .NET platform.The code and demo will demonstrate how you can decompose your domain and also show a UI Composition example.
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.
Microsoft's new Azure PowerBI Embedded product lets you capture data, analyse it and present it on dashboards that live within your application.
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 - live.
Unleash the Crypto Fairies - Advanced Secure Coding in .NETStephen Haunts
Not encrypting your data is a risky move and just relying on the hope that you won't get hacked and compromised is not a strategy.
As a software developer, you have a duty to your employer to secure and protect their data. In this talk, you will learn how to use the .NET Framework to protect your data to satisfy confidentiality, integrity, non-repudiation, and authentication.
This talk covers random number generation, hashing, authenticated hashing, and password based key derivation functions. The talk also covers both symmetric and asymmetric encryption using DES, Triple DES, AES, and RSA. You then learn how to combine these all together to produce a hybrid encryption scheme which includes AES, RSA, HMACS, and Digital Signatures.
By the end of this talk, you will be fully equipped to develop secure applications that protect your companies and customers data.
.NET Core in the real worldJoe Stead
.NET Core has dominated the hype for a while, but, what’s it
really likerunning in production, on different operating systems?
We ported our
15 year oldcodebase (you read that right) to be running on the shiniest new thing in the .NET world, and yes, we hit some problems. Luckily, we managed to solve or work around those problems successfully.
Living on the bleeding edge with our legacy application has taught us a lot. We learnt very quickly it's better to embrace the platform, and the operating system to really reap the benefits. I can pass on some more of the lessons we learned to help you decide whether or not you should make the
leap,and to ease your transition if you do.
As Easy As PiRichard Tasker
The Raspberry Pi is a small inexpensive computer, initially designed to teach children programming.
It has become the core component in many hobby projects and with subsequent releases of the credit card size device has seen it move into industry.
In this session Richard Tasker will introduce you to the Raspberry Pi, show you how to get up and running with the Raspberry Pi.
Richard will show you how to develop and deploy your code to the Pi.
Introduce you to electronics and show you how to build applications that sense the environment.
In the final section he will discuss how to go about architecting larger sensor networks, and how to interact with Azures IoT services.
User Story Mapping for BeginnersColin Mackay
Sometimes it is difficult to work out how to prioritise the backlog and effectively work iteratively while still holding on to the big picture. 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 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 and keep everyone aware of the big picture while still working on individual stories.
Sticky notes and sharpies will be supplied.
Spot the difference: Automating visual regression testingViv Richards
What if you could not only automate end to end tests which test the happy and functional paths of your applications, but also tests typically carried out by manual or exploratory testing?
What if you could pick up on minor changes to layouts, sizes of elements, colours, text etc? What if these tests were also less flaky, easier to maintain and also faster to execute.
Using Visual regression testing discover how you can gain extra value in the automated tests you create, having the ability to see and assert what the user sees and to assert the sotware UI meets our expectations.
Groove Music for DevelopersPeter Bull
Groove Music for Developers features how to power your experiences with Groove Music on any platform and on any device with access to millions of tracks using the Groove Music service
In this talk you'll learn about Groove Music for Developers - including signing up, details of the API, an overview of the SDK, and how to integrate Groove Music using the API and SDK
Hacking Humans : Social Engineering Techniques and How to Protect Against ThemStephen Haunts
Social engineering is one of the biggest threats to our organizations as attackers use manipulation techniques to coerce people into revealing secrets about our companies to allow attackers to gain access to critical systems.
In this talk, we will look at some of the techniques used in social engineering and look at how to guard yourself against them. We will cover subjects like pre-texting, elicitation and body language as techniques for manipulating people.