Brewing Beer with Windows Azure UKWAUG

  • 1,612 views
Uploaded on

Inspired by one of the Windows Azure gods (Wade Wegner), Maarten and Panos decided to order a homebrewing starter kit. Being total cloud fanboys, they decided to hook their delicious creations to the …

Inspired by one of the Windows Azure gods (Wade Wegner), Maarten and Panos decided to order a homebrewing starter kit. Being total cloud fanboys, they decided to hook their delicious creations to the cloud. Join us and discover how you can connect a variety of devices (like *duino) and USB temperature sensors to Windows Azure to monitor brewing and fermentation temperatures. We'll show you how to do distributed brewing in this fun yet practical session on an interesting use case for the cloud: beer.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,612
On Slideshare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
10
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Maarten
  • Don’t show everythingyet. Just log in, show themaround the recipes, brewsand public recipes. Feel free to show the monitoring but no needto display the linking of sensors.
  • Show Windows Azure Web SitesShow scaling / reservedinstances
  • Show peoplearound the ACS porta. Show identities, claims andrulegroups.
  • Link a sensor to a brew. Show the effect on ACS. Show the code.
  • A couple of years ago, having a web-based application was enough. Users would navigate to it using their computer’s browser, do their dance and log out again. Nowadays, a web-based application isn’t enough anymore. People have smartphones, tablets and maybe even a refrigerator with Internet access on which applications can run. Applications or “apps”. We’re moving from the web towards apps.
  • A great example of an API is Twitter. They have a massive data store containing tweets and data related to that. They have user profiles. And a web site. And an API. Are you using www.twitter.com to post tweets? I am using the website, maybe once a year. All other tweets come either from my Windows Phone 7’s Twitter application or through www.hootsuite.com, a third-party Twitter client which provides added value in the form of statistics and scheduling. Both the app on my phone as well as the third-party service are using the Twitter API. By exposing an API, Twitter has created a rich ecosystem which drives their real value: data.
  • If you want to expose your data and services to external third-parties, you may want to think about building an API. Having an API gives you a giant advantage on the Internet nowadays. Having an API will allow your web application to reach more users. App developers will jump onto your API and build their app around it. Other websites or apps will integrate with your services by consuming your API. The only thing you have to do is expose a valuable, managed and supported API and get people to know it. Apps will come. Integration will come.
  • The mainidea of API’s is tobroadenyourreach. Youcan’tcreateappsthatcanbeused on every fridge out there, it’s way toocostly. But ifyou have a valuable service which is supported, peoplewillbuildappsaround it. Andifitmakes sense toanyonetocreate a fridge app on top of your API, itwill happen.
  • Be detailed! Usegood status code responses. 201 CREATED is probablybetterthanjust 200 OK whencreating a new entity.+ demo Fiddleragainst HTCPCP deployment out there
  • Link a sensor to a brew. Show the effect on ACS. Show the code.
  • Show peoplearound the ACS porta. Show identities, claims andrulegroups.

Transcript

  • 1. #londonazure Brewing Beer with Windows Azure Maarten Balliauw @maartenballiauwSEPTEMBER 24, 2012 | SLIDE 1
  • 2. #londonazure Who am I?  Maarten Balliauw  www.realdolmen.com  AZUG  Focus on web  ASP.NET MVC, Windows Azure, SignalR, ...  MVP Windows Azure & ASPInsider  http://blog.maartenballiauw.be  @maartenballiauwSEPTEMBER 24, 2012 | SLIDE 3
  • 3. #londonazure Shameless commercial plug  Pro NuGet: http://amzn.to/pronuget  MyGet - NuGet-as-a-Service: http://www.myget.orgSEPTEMBER 24, 2012 | SLIDE 4
  • 4. #londonazure Agenda  Brewing beer  BrewBuddy  Windows Azure Websites  Service Bus & Access Control Service (ACS)  We need an API  Q&ASEPTEMBER 24, 2012 | SLIDE 5
  • 5. #londonazure Turn water into beer BREWING BEERSEPTEMBER 24, 2012 | SLIDE 6
  • 6. #londonazure How it started…SEPTEMBER 24, 2012 | SLIDE 7
  • 7. #londonazure How it started…  MVP Summit 2011  Wade Wegner talks about his homebrewing hobby  MVP Summit 2012  Wade Wegner talks about his homebrewing hobby  Convinced!SEPTEMBER 24, 2012 | SLIDE 8
  • 8. #londonazure The process  Get your kegs clean  Add & boil ingredients  Pour in keg  Add yeast  RinseSEPTEMBER 24, 2012 | SLIDE 9
  • 9. #londonazure The process Wait for fermentation to completeSEPTEMBER 24, 2012 | SLIDE 10
  • 10. #londonazure The process  Pour into another keg  Rinse  Wait another week  Bottling time!SEPTEMBER 24, 2012 | SLIDE 11
  • 11. #londonazure Difficult part… Wait at least 6 weeks for it to ageSEPTEMBER 24, 2012 | SLIDE 12
  • 12. #londonazure Maarten… What does this have to do with Windows Azure?SEPTEMBER 24, 2012 | SLIDE 13
  • 13. #londonazure Azurifying the home brewer WWW.BREWBUDDY.NETSEPTEMBER 24, 2012 | SLIDE 14
  • 14. #londonazure BrewBuddy  View public recipes  Manage your own recipes  Manage your own brews  Monitor brew fermentationSEPTEMBER 24, 2012 | SLIDE 15
  • 15. #londonazure BrewBuddy Social brewing at a glancedemoSEPTEMBER 24, 2012 | SLIDE 16
  • 16. #londonazure Architecture Sensor Public website Windows Azure Web Sites Whatever… Database SQL Azure database Sensor data Sensor data processing Service Bus topic Windows Azure Worker RoleSEPTEMBER 24, 2012 | SLIDE 17
  • 17. #londonazure Scale-fast has just become more interesting WINDOWS AZURE WEB SITESSEPTEMBER 24, 2012 | SLIDE 18
  • 18. #londonazure Windows Azure Web Sites  Build with ASP.NET, Node.js or PHP  Deploy in seconds with FTP, Git or TFS  Start for free, scale up as your traffic growsSEPTEMBER 24, 2012 | SLIDE 19
  • 19. #londonazure Windows Azure Web Sites shared 1SHARED INSTANCES SEPTEMBER 24, 2012 | SLIDE 20
  • 20. #londonazure Windows Azure Web Sites shared 2SHARED INSTANCES SEPTEMBER 24, 2012 | SLIDE 21
  • 21. #londonazure Windows Azure Web Sites reserved 0 1SHARED INSTANCES RESERVED INSTANCE SEPTEMBER 24, 2012 | SLIDE 22
  • 22. #londonazure Windows Azure Web Sites reserved 2 RESERVED INSTANCESEPTEMBER 24, 2012 | SLIDE 23
  • 23. #londonazure Windows Azure Web Sites reserved 2 RESERVED INSTANCE RESERVED INSTANCESEPTEMBER 24, 2012 | SLIDE 24
  • 24. #londonazure A perfect ramp-up!  Start small  Web Sites are cheap  Scale to 3 reserved instances  Grow big!  Hosted Service – PaaS  Scale at willSEPTEMBER 24, 2012 | SLIDE 25
  • 25. #londonazure Windows Azure Web Sites Creating a new web site in secondsdemoSEPTEMBER 24, 2012 | SLIDE 26
  • 26. #londonazure Connecting sensors SERVICE BUS & ACCESS CONTROL SERVICESEPTEMBER 24, 2012 | SLIDE 27
  • 27. #londonazure Windows Azure Service Bus  2 features  Relay  Queues, Topics, SubscriptionsSEPTEMBER 24, 2012 | SLIDE 28
  • 28. #londonazure Windows Azure Service Bus Relay relay ClientSEPTEMBER 24, 2012 | SLIDE 29
  • 29. #londonazure Topics and subscriptions SensorSEPTEMBER 24, 2012 | SLIDE 30
  • 30. #londonazure Characteristics  Workers can scale independently  Workers can fail independently  Sensors connect to service bus directly  No layer in between  CheaperSEPTEMBER 24, 2012 | SLIDE 31
  • 31. #londonazure What about authN / authZ?  Access Control Service to the rescue!  SB authenticates clients over ACS  ACS provides “Send” claim to sensor  Claims can be granted/revoked easilySEPTEMBER 24, 2012 | SLIDE 32
  • 32. #londonazure Access Control Service Claims for authZ on Service BusdemoSEPTEMBER 24, 2012 | SLIDE 33
  • 33. #londonazure Architecture Sensor Public website Windows Azure Web Sites Whatever… Sensor management Database Access Control Service SQL Azure database Sensor data Sensor data processing Service Bus topic Windows Azure Worker RoleSEPTEMBER 24, 2012 | SLIDE 34
  • 34. #londonazure How do you link a sensor?  Every sensor has its sensor ID  Add it as an identity to ACS  Grant a “Send” claimSEPTEMBER 24, 2012 | SLIDE 35
  • 35. #londonazure Linking a a sensor with Access Control Registering sensor to a brew ServicedemoSEPTEMBER 24, 2012 | SLIDE 36
  • 36. #londonazure <french>Make everyone API!</french> WE NEED AN APISEPTEMBER 24, 2012 | SLIDE 37
  • 37. #londonazure Consuming the web  2000-2008: Desktop browser  2008-2012: Mobile browser  2008-2012: iPhone and Android apps  2010-2014: Tablets, tablets, tablets  2014-2016: Your fridge (Internet of Things)SEPTEMBER 24, 2012 | SLIDE 38
  • 38. #londonazureSEPTEMBER 24, 2012 | SLIDE 39
  • 39. #londonazure Twitter & Facebook By show of hands…SEPTEMBER 24, 2012 | SLIDE 40
  • 40. #londonazure Make everyone API (as the French say)SEPTEMBER 24, 2012 | SLIDE 41
  • 41. #londonazure What is an API?  Software-to-Software interface  Contract between software and developers  Functionalities, constraints (technical / legal) Programming instructions and standards  Open services to other software developers (public or private)SEPTEMBER 24, 2012 | SLIDE 42
  • 42. #londonazure Expose services to 3rd parties  Valuable  Flexible  Managed  Supported  Have a planSEPTEMBER 24, 2012 | SLIDE 43
  • 43. #londonazure Reach More ClientsSEPTEMBER 24, 2012 | SLIDE 44
  • 44. #londonazure ASP.NET Web API  Part of ASP.NET MVC 4  Framework to build HTTP Services (REST)  Solid features  Modern HTTP programming model  Content negotiation (e.g. Xml, json, ...)  Query composition (OData query support)  Model binding and validation (conversion to .NET objects)  Routes  Filters (e.g. Validation, exception handling, ...)  And more!SEPTEMBER 24, 2012 | SLIDE 45
  • 45. #londonazure Be detailed! Think about RFC 2324 (HTCPCP)SEPTEMBER 24, 2012 | SLIDE 46
  • 46. #londonazure ASP.NET Web API Let’s craft a quick APIdemoSEPTEMBER 24, 2012 | SLIDE 47
  • 47. #londonazure What about authN / authZ?  API access through OAuth2  Access Control Service to the rescue!  Client authorized in BrewBuddy.net  Access/refresh tokens through ACSSEPTEMBER 24, 2012 | SLIDE 48
  • 48. #londonazure What about authN / authZ? API Consumer BrewBuddy.net client_id and client_secret access API authorize Initial authorization (yes/no) API implementation access/refresh token register delegation Access Control Service Access/Refresh TokenSEPTEMBER 24, 2012 | SLIDE 49
  • 49. #londonazure Install-Package WindowsAzure.Acs.Oauth2 -IncludePrerelease Access Control Service for API’s OAuth2 delegationdemoSEPTEMBER 24, 2012 | SLIDE 50
  • 50. #londonazure TAKEAWAYSSEPTEMBER 24, 2012 | SLIDE 51
  • 51. #londonazure Keep in mind…  Web Sites start cheap / scale fast  Combine/grow at will (IaaS, PaaS, SaaS)  Service bus for asynchrony and scale  Access Control for devices  Web API & Access ControlSEPTEMBER 24, 2012 | SLIDE 52
  • 52. #londonazure Cloud Burst 2012 - Sweden  September 27 – 28, 2012  Stockholm  http://www.azureug.se/CloudBurst2012  There will be live streaming! http://bit.ly/cloudburststreamSEPTEMBER 24, 2012 | SLIDE 53
  • 53. #londonazure http://blog.maartenballiauw.be @maartenballiauw http://amzn.to/pronugetTHANK YOU!SEPTEMBER 24, 2012 | SLIDE 54