SlideShare a Scribd company logo
itcampro@ itcamp13# Premium conference on Microsoft technologies
Broadcasting Music from the
Cloud
Andy Cross
Windows Azure MVP
Elastacloud
@andybareweb
blog.elastacloud.com
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
CloudHuge thanks to our sponsors!
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• Real Time Web
• Social media is the new telephone
• Spotify API
• Synchronicity
• SignalR
• Windows Azure Websites
• Service Bus
• ROCK!!!
Agenda
itcampro@ itcamp13# Premium conference on Microsoft technologies
REAL TIME WEB
What is the
Any sufficiently advanced technology is
indistinguishable from magic.
Arthur C Clarke
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• A history!
– HTML
– Javascript
– Iframes
– XmlHttp
– AJAX
– JSONP
– Web Sockets
Real Time Web
itcampro@ itcamp13# Premium conference on Microsoft technologies
Facebooks’ Real Time Web
Facebook has multiple real time web features, such as the news
feed and messaging
itcampro@ itcamp13# Premium conference on Microsoft technologies
Twitters’ Real Time Web
Twitter is perhaps the ultimate in real time web opportunities, but
even it struggles with *n more tweets*
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• With great advantages
– Instant messaging
– Responsive user interfaces
– Collaboration and sharing
• Come some great problems
– Scalability
• Concurrent connections
• Server load
– Complexity of client
Real time web pitfalls
itcampro@ itcamp13# Premium conference on Microsoft technologies
SOCIAL MEDIA
If you want to share music, the 1990s were better than
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• Billions of users of facebook
• Imagine sharing music on there.
– READY. STEADY. GO!!!
• My real time is not your real time
• If we want to build engagement on
– Brand
– Concept
– Movement
• we must engage simultaneously
Social Media
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
CloudThe Real Time Web
itcampro@ itcamp13# Premium conference on Microsoft technologies
SPOTIFY
Broadcast Music to
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• Spotify is a 4 year old ‘start up’
– Streaming music
– Integrated apps
• Apps are written in HTML5 and JS
– Chromium Embedded
• Its API for apps gives every song a URI
– spotify:track:12345679abc
• We will distribute these URIs along with a
Play command
Spotify
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
function playTrack(data) {
console.log(data);
player.playTrack(models.Track.fromURI(data)).d
one(function ()
{
//this is a promise update the ui maybe
});
Example Spotify code
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• Introducing Goose
• Geese fly together.
• Geese fly in flocks.
• There is a lead goose in the flock
• The rest are tail geese.
• Geese honk
• Geese sing
• Geese flap
Using the Real Time Web to fix this
itcampro@ itcamp13# Premium conference on Microsoft technologies
SYNCHRONICITY?
But how do we achieve
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• We can send a Play command to individuals.
• How can we combine the Real Time Web
with this?
My real time is not your real time
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• We cannot just send PLAY commands
– What if we join part way through a song
– Nothing would be played until we completed the
song
• We also track the LEAD GOOSE’s position
My real time is not your real time
itcampro@ itcamp13# Premium conference on Microsoft technologies
ASP.NET SIGNALR
Technologies for the Real Time Web
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
CloudWhat does SignalR try to fix?
Here’s some data!
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
CloudHow does it fix it?
Yeah, dude!
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
CloudComponents
itcampro@ itcamp13# Premium conference on Microsoft technologies
WINDOWS AZURE WEBSITES
Scalable Hosting
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
Cloud
• Start on Free
– And continue for dev/test
• Production uses Reserved Mode
– Custom URL
– Scalable as easily as:
Not a lightweight option
itcampro@ itcamp13# Premium conference on Microsoft technologies
SERVICE BUS BACKPLANE
SignalR scale out
itcampro@ itcamp13# Premium conference on Microsoft technologies
Private & Public
CloudScaling with the Service Bus
itcampro@ itcamp13# Premium conference on Microsoft technologies
ROCK! HONK!
Enough talk!
itcampro@ itcamp13# Premium conference on Microsoft technologies
Q & A

More Related Content

Viewers also liked

ITCamp 2013 - Sergiu Damian - Beyond Software Architecture
ITCamp 2013 - Sergiu Damian - Beyond Software ArchitectureITCamp 2013 - Sergiu Damian - Beyond Software Architecture
ITCamp 2013 - Sergiu Damian - Beyond Software Architecture
ITCamp
 
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to StrengthenITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp
 
ITCamp 2011 - Sebastian Vijeu, Petru Jucovschi - Testare automata si laborato...
ITCamp 2011 - Sebastian Vijeu, Petru Jucovschi - Testare automata si laborato...ITCamp 2011 - Sebastian Vijeu, Petru Jucovschi - Testare automata si laborato...
ITCamp 2011 - Sebastian Vijeu, Petru Jucovschi - Testare automata si laborato...
ITCamp
 
ITCamp 2013 - Peter Leeson - Intelligent Evolution
ITCamp 2013 - Peter Leeson - Intelligent EvolutionITCamp 2013 - Peter Leeson - Intelligent Evolution
ITCamp 2013 - Peter Leeson - Intelligent Evolution
ITCamp
 
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code QualityITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp
 
ITCamp 2012 - Alex Gyoshev - Kendo-UI
ITCamp 2012 - Alex Gyoshev - Kendo-UIITCamp 2012 - Alex Gyoshev - Kendo-UI
ITCamp 2012 - Alex Gyoshev - Kendo-UI
ITCamp
 
ITCamp 2013 - Martin Kulov - Agile Project Management with Team Foundation Se...
ITCamp 2013 - Martin Kulov - Agile Project Management with Team Foundation Se...ITCamp 2013 - Martin Kulov - Agile Project Management with Team Foundation Se...
ITCamp 2013 - Martin Kulov - Agile Project Management with Team Foundation Se...
ITCamp
 
ITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignal
ITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignalITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignal
ITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignal
ITCamp
 
ITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp 2013 - Petru Jucovschi - Application ecosystemsITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp
 
ITCamp 2012 - Paul Roman - Hybrid solutions in Office 365
ITCamp 2012 - Paul Roman - Hybrid solutions in Office 365ITCamp 2012 - Paul Roman - Hybrid solutions in Office 365
ITCamp 2012 - Paul Roman - Hybrid solutions in Office 365
ITCamp
 
Troy roofing 888 778 0212
Troy roofing 888 778 0212Troy roofing 888 778 0212
Troy roofing 888 778 0212
hansons0588
 

Viewers also liked (17)

ITCamp 2013 - Sergiu Damian - Beyond Software Architecture
ITCamp 2013 - Sergiu Damian - Beyond Software ArchitectureITCamp 2013 - Sergiu Damian - Beyond Software Architecture
ITCamp 2013 - Sergiu Damian - Beyond Software Architecture
 
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to StrengthenITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
 
ITCamp 2011 - Sebastian Vijeu, Petru Jucovschi - Testare automata si laborato...
ITCamp 2011 - Sebastian Vijeu, Petru Jucovschi - Testare automata si laborato...ITCamp 2011 - Sebastian Vijeu, Petru Jucovschi - Testare automata si laborato...
ITCamp 2011 - Sebastian Vijeu, Petru Jucovschi - Testare automata si laborato...
 
ITCamp 2013 - Peter Leeson - Intelligent Evolution
ITCamp 2013 - Peter Leeson - Intelligent EvolutionITCamp 2013 - Peter Leeson - Intelligent Evolution
ITCamp 2013 - Peter Leeson - Intelligent Evolution
 
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code QualityITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
 
ITCamp 2012 - Alex Gyoshev - Kendo-UI
ITCamp 2012 - Alex Gyoshev - Kendo-UIITCamp 2012 - Alex Gyoshev - Kendo-UI
ITCamp 2012 - Alex Gyoshev - Kendo-UI
 
Azure licensing (not) so easy - Laurynas Dovydaitis
Azure licensing (not) so easy - Laurynas DovydaitisAzure licensing (not) so easy - Laurynas Dovydaitis
Azure licensing (not) so easy - Laurynas Dovydaitis
 
ITCamp 2013 - Martin Kulov - Agile Project Management with Team Foundation Se...
ITCamp 2013 - Martin Kulov - Agile Project Management with Team Foundation Se...ITCamp 2013 - Martin Kulov - Agile Project Management with Team Foundation Se...
ITCamp 2013 - Martin Kulov - Agile Project Management with Team Foundation Se...
 
ITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignal
ITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignalITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignal
ITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignal
 
ITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp 2013 - Petru Jucovschi - Application ecosystemsITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp 2013 - Petru Jucovschi - Application ecosystems
 
ITCamp 2012 - Paul Roman - Hybrid solutions in Office 365
ITCamp 2012 - Paul Roman - Hybrid solutions in Office 365ITCamp 2012 - Paul Roman - Hybrid solutions in Office 365
ITCamp 2012 - Paul Roman - Hybrid solutions in Office 365
 
Cluj 2030 a vision on IT - will it thrive or will it flop - Mihai Nadas
Cluj 2030 a vision on IT - will it thrive or will it flop - Mihai NadasCluj 2030 a vision on IT - will it thrive or will it flop - Mihai Nadas
Cluj 2030 a vision on IT - will it thrive or will it flop - Mihai Nadas
 
Frustration Management - Dan Danciu
Frustration Management - Dan DanciuFrustration Management - Dan Danciu
Frustration Management - Dan Danciu
 
Enforce Consistency through Application Infrastructure - Florin Coros
Enforce Consistency through Application Infrastructure - Florin CorosEnforce Consistency through Application Infrastructure - Florin Coros
Enforce Consistency through Application Infrastructure - Florin Coros
 
2016, A New Era of OS and Cloud Security - Tudor Damian
2016, A New Era of OS and Cloud Security - Tudor Damian2016, A New Era of OS and Cloud Security - Tudor Damian
2016, A New Era of OS and Cloud Security - Tudor Damian
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
Troy roofing 888 778 0212
Troy roofing 888 778 0212Troy roofing 888 778 0212
Troy roofing 888 778 0212
 

Similar to ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

ITCamp 2013 - Lorant Domokos - Chasing the one codebase, multiple platforms d...
ITCamp 2013 - Lorant Domokos - Chasing the one codebase, multiple platforms d...ITCamp 2013 - Lorant Domokos - Chasing the one codebase, multiple platforms d...
ITCamp 2013 - Lorant Domokos - Chasing the one codebase, multiple platforms d...
ITCamp
 
ITCamp 2013 - Martin Kulov - Demystifying Visual Studio 2012 Performance Tools
ITCamp 2013 - Martin Kulov - Demystifying Visual Studio 2012 Performance ToolsITCamp 2013 - Martin Kulov - Demystifying Visual Studio 2012 Performance Tools
ITCamp 2013 - Martin Kulov - Demystifying Visual Studio 2012 Performance Tools
ITCamp
 
ITCamp 2011 - Melania Danciu - Mobile apps
ITCamp 2011 - Melania Danciu - Mobile appsITCamp 2011 - Melania Danciu - Mobile apps
ITCamp 2011 - Melania Danciu - Mobile apps
ITCamp
 
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitchITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp
 
ITCamp 2011 - Mihai Tataran, Tudor Damian - Keynote
ITCamp 2011 - Mihai Tataran, Tudor Damian - KeynoteITCamp 2011 - Mihai Tataran, Tudor Damian - Keynote
ITCamp 2011 - Mihai Tataran, Tudor Damian - Keynote
ITCamp
 
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep diveITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp
 

Similar to ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud (20)

ITCamp 2013 - Lorant Domokos - Chasing the one codebase, multiple platforms d...
ITCamp 2013 - Lorant Domokos - Chasing the one codebase, multiple platforms d...ITCamp 2013 - Lorant Domokos - Chasing the one codebase, multiple platforms d...
ITCamp 2013 - Lorant Domokos - Chasing the one codebase, multiple platforms d...
 
ITCamp 2013 - Martin Kulov - Demystifying Visual Studio 2012 Performance Tools
ITCamp 2013 - Martin Kulov - Demystifying Visual Studio 2012 Performance ToolsITCamp 2013 - Martin Kulov - Demystifying Visual Studio 2012 Performance Tools
ITCamp 2013 - Martin Kulov - Demystifying Visual Studio 2012 Performance Tools
 
How # (sharp) is Your Katana (Ciprian Jichici)
How # (sharp) is Your Katana (Ciprian Jichici)How # (sharp) is Your Katana (Ciprian Jichici)
How # (sharp) is Your Katana (Ciprian Jichici)
 
The New Era of Code in the Cloud (Bogdan Toporan)
The New Era of Code in the Cloud (Bogdan Toporan)The New Era of Code in the Cloud (Bogdan Toporan)
The New Era of Code in the Cloud (Bogdan Toporan)
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
 
ITCamp 2011 - Melania Danciu - Mobile apps
ITCamp 2011 - Melania Danciu - Mobile appsITCamp 2011 - Melania Danciu - Mobile apps
ITCamp 2011 - Melania Danciu - Mobile apps
 
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitchITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
 
Developing for Windows Phone 8.1 (Dan Ardelean)
Developing for Windows Phone 8.1 (Dan Ardelean)Developing for Windows Phone 8.1 (Dan Ardelean)
Developing for Windows Phone 8.1 (Dan Ardelean)
 
Developing for Windows Phone 8.1
Developing for Windows Phone 8.1Developing for Windows Phone 8.1
Developing for Windows Phone 8.1
 
ITCamp 2011 - Mihai Tataran, Tudor Damian - Keynote
ITCamp 2011 - Mihai Tataran, Tudor Damian - KeynoteITCamp 2011 - Mihai Tataran, Tudor Damian - Keynote
ITCamp 2011 - Mihai Tataran, Tudor Damian - Keynote
 
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)
 
Everyone Loves Docker Containers Before They Understand Docker Containers - A...
Everyone Loves Docker Containers Before They Understand Docker Containers - A...Everyone Loves Docker Containers Before They Understand Docker Containers - A...
Everyone Loves Docker Containers Before They Understand Docker Containers - A...
 
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep diveITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
 
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2Elements of DDD with ASP.NET MVC & Entity Framework Code First v2
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2
 
Day One Keynote
Day One KeynoteDay One Keynote
Day One Keynote
 
Day One Keynote
Day One KeynoteDay One Keynote
Day One Keynote
 
Busy Developers Guide to AngularJS (Tiberiu Covaci)
Busy Developers Guide to AngularJS (Tiberiu Covaci)Busy Developers Guide to AngularJS (Tiberiu Covaci)
Busy Developers Guide to AngularJS (Tiberiu Covaci)
 
Data-First Online Functional Programming with F# (Adam Granicz)
Data-First Online Functional Programming with F# (Adam Granicz)Data-First Online Functional Programming with F# (Adam Granicz)
Data-First Online Functional Programming with F# (Adam Granicz)
 
Patterns for Scalability in Windows Azure Applications (Alex Mang)
Patterns for Scalability in Windows Azure Applications (Alex Mang)Patterns for Scalability in Windows Azure Applications (Alex Mang)
Patterns for Scalability in Windows Azure Applications (Alex Mang)
 
Azure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
Azure tales: a real world CQRS and ES Deep Dive - Andrea SaltarelloAzure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
Azure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
 

More from ITCamp

ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp
 

More from ITCamp (20)

ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
 
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
 
ITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing Skills
 
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
 
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
 
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
 
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
 
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
 
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
 
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
 
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
 
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
 
ITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AI
 
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
 
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
 
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
 
ITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian Quality
 
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
 
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
 
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...
 

Recently uploaded

Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 

Recently uploaded (20)

UiPath New York Community Day in-person event
UiPath New York Community Day in-person eventUiPath New York Community Day in-person event
UiPath New York Community Day in-person event
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 

ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

  • 1. itcampro@ itcamp13# Premium conference on Microsoft technologies Broadcasting Music from the Cloud Andy Cross Windows Azure MVP Elastacloud @andybareweb blog.elastacloud.com
  • 2. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public CloudHuge thanks to our sponsors!
  • 3. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • Real Time Web • Social media is the new telephone • Spotify API • Synchronicity • SignalR • Windows Azure Websites • Service Bus • ROCK!!! Agenda
  • 4. itcampro@ itcamp13# Premium conference on Microsoft technologies REAL TIME WEB What is the Any sufficiently advanced technology is indistinguishable from magic. Arthur C Clarke
  • 5. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • A history! – HTML – Javascript – Iframes – XmlHttp – AJAX – JSONP – Web Sockets Real Time Web
  • 6. itcampro@ itcamp13# Premium conference on Microsoft technologies Facebooks’ Real Time Web Facebook has multiple real time web features, such as the news feed and messaging
  • 7. itcampro@ itcamp13# Premium conference on Microsoft technologies Twitters’ Real Time Web Twitter is perhaps the ultimate in real time web opportunities, but even it struggles with *n more tweets*
  • 8. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • With great advantages – Instant messaging – Responsive user interfaces – Collaboration and sharing • Come some great problems – Scalability • Concurrent connections • Server load – Complexity of client Real time web pitfalls
  • 9. itcampro@ itcamp13# Premium conference on Microsoft technologies SOCIAL MEDIA If you want to share music, the 1990s were better than
  • 10. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • Billions of users of facebook • Imagine sharing music on there. – READY. STEADY. GO!!! • My real time is not your real time • If we want to build engagement on – Brand – Concept – Movement • we must engage simultaneously Social Media
  • 11. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public CloudThe Real Time Web
  • 12. itcampro@ itcamp13# Premium conference on Microsoft technologies SPOTIFY Broadcast Music to
  • 13. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • Spotify is a 4 year old ‘start up’ – Streaming music – Integrated apps • Apps are written in HTML5 and JS – Chromium Embedded • Its API for apps gives every song a URI – spotify:track:12345679abc • We will distribute these URIs along with a Play command Spotify
  • 14. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud function playTrack(data) { console.log(data); player.playTrack(models.Track.fromURI(data)).d one(function () { //this is a promise update the ui maybe }); Example Spotify code
  • 15. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • Introducing Goose • Geese fly together. • Geese fly in flocks. • There is a lead goose in the flock • The rest are tail geese. • Geese honk • Geese sing • Geese flap Using the Real Time Web to fix this
  • 16. itcampro@ itcamp13# Premium conference on Microsoft technologies SYNCHRONICITY? But how do we achieve
  • 17. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • We can send a Play command to individuals. • How can we combine the Real Time Web with this? My real time is not your real time
  • 18. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • We cannot just send PLAY commands – What if we join part way through a song – Nothing would be played until we completed the song • We also track the LEAD GOOSE’s position My real time is not your real time
  • 19. itcampro@ itcamp13# Premium conference on Microsoft technologies ASP.NET SIGNALR Technologies for the Real Time Web
  • 20. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public CloudWhat does SignalR try to fix? Here’s some data!
  • 21. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public CloudHow does it fix it? Yeah, dude!
  • 22. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public CloudComponents
  • 23. itcampro@ itcamp13# Premium conference on Microsoft technologies WINDOWS AZURE WEBSITES Scalable Hosting
  • 24. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public Cloud • Start on Free – And continue for dev/test • Production uses Reserved Mode – Custom URL – Scalable as easily as: Not a lightweight option
  • 25. itcampro@ itcamp13# Premium conference on Microsoft technologies SERVICE BUS BACKPLANE SignalR scale out
  • 26. itcampro@ itcamp13# Premium conference on Microsoft technologies Private & Public CloudScaling with the Service Bus
  • 27. itcampro@ itcamp13# Premium conference on Microsoft technologies ROCK! HONK! Enough talk!
  • 28. itcampro@ itcamp13# Premium conference on Microsoft technologies Q & A