Microsoft DevDays agenda

 

Microsoft DevDays – agenda ja träkit

CLOUD track


Transient faults, faults that can often be corrected with a retry, are a fact of life for distributed application developers. As cloud based applications are distributed by nature, the requirement for a solid transient fault handling strategy is critical to the success of applications and services.

The Windows Azure storage client API provides basic transient fault handling out-of-the-box and will automatically retry service calls when transient faults are detected. Although this default behavior may be suitable in some scenarios, there are many cases when configuration and customization of transient fault handling will be required. The Windows Azure storage client API allows for extensive customization of transient fault handling logic allowing developers to provide a quick response to user based applications, and increased reliability to asynchronous services.

The Transient Fault Handling Application Block from the Microsoft Patterns and Practices team provides transient fault handling capabilities for many Windows Azure services. Like the storage client API this application block will allow for customization of the transient fault detection and retry strategies, allowing application developers to tailor the behavior to suit their application.

This demo intensive session will start out by explaining the theory and requirements for a transient fault handling strategy. The transient fault handling capabilities provided by Windows Azure will then be demonstrated using a range of scenarios and different Windows Azure services. The requirements and techniques for customizing transient fault handling behavior will be discussed and demonstrated.

Serving up content on the Internet is something our web sites do daily. But are we doing this in the fastest way possible? How are users in faraway countries experiencing our apps? Why do we have three webservers serving the same content over and over again? In this session, we’ll explore the Windows Azure Content Delivery Network or CDN, a service which makes it easy to serve up blobs, videos and other content from servers close to our users. We’ll explore simple file serving as well as some more advanced, dynamic edge caching scenarios.

 

Reaktiiviset järjestelmät perustuvat neljään prinsiippiin; event-driven, scalable, resilient and responsive. Esityksessä käymme läpi nämä prinsiipit kohta kohdalta ja katsomme, mitä ne tarkoittavat arkkitehtuurin, suunnittelun ja ohjelmoinnin kannalta. Käymme läpi useampia eri malleja, kirjastoja, frameworkeja ja arkkitehtuurisia tyylejä, joilla reaktiivisia järjestelmiä ja ohjelmointia voidaan tehdä. Näistä esimerkkeinä. Reactive Extension (Rx), C# async/await, actor-malli ja Microservices

http://www.reactivemanifesto.org/. http://research.microsoft.com/en-us/projects/orleans/ http://en.wikipedia.org/wiki/Halo_4

Jouni esittelee vappuna julkaistun sovelluksen, jolla ohjataan työskentelyä vilkkaassa ja äärimmäisen reaaliaikaisessa ympäristössä. Käytettyjen teknologioiden joukosta löytyy mm. Microsoft Azure, SignalR, ASP.NET MVC, Web API, HTML5, Angular.js, Azure Active Directory ja monta muuta. Tarjolla on tarinaa arkkitehtuurista, ylläpidosta, käyttökokemuksista – ja tietysti myös siitä, mikä kaikki meni pieleen.
Esityksessä esitellään Azuressa jo toimivan suomalaisen TeamUp:n varautuminen käyttäjämäärien massiiviseen kasvuun analyyttisesti käyttökustannus-skenaarioilla. Metriikkana käytetään pilvialustan kustannusten aiheuttajia: CPU/prosessointiaikaa, tietokantojen/tallennuksen määrää ja suorituskykyä, liikennettä ulospäin ja CDN-jakelua skaalautumisen elementtinä. Ratkaisumallina tarkastellaan JSON-olioiden hallittua välitallennusta, HTTP(S) protokollan cache-optioita ja käyttäjäkohtaisen tiedon tallentamista ja prosessointia jQuery-kirjastojen avulla web-selaimessa sekä täysiverisessä mobiilisovelluksessa.

TOOLS track


Kehittäjä on vuosi vuodelta vaikeampien valintojen edessä. Teknologiapolkujen määrä kasvaa koko ajan, ja avoimen lähdekoodin maailma on avautunut myös Microsoft-kehittäjälle. Mikä Azuren rooli tulee olemaan? Mihin Visual Studio kehittyy? Mitä web-kehittäjän pitää tietää alkavana vuonna? Entä muut laitteet – mobiili, Android, iOS, Windows-rauta? Tässä esityksessä luodaan kokonaiskuvaa siitä, mikä kehittäjiä koskettaa vuoden 2015 aikana.

More and more of the logic of a web application is moved to the client, and so also logging and insights into the usage flow, right? It’s probably so that things that occur on the client side never reach beyond console.log(). It’s here that Application Insight comes to our rescue. Application Insight in Visual Studio Online allows you to monitor and gather data about the flow on the client to get to know your web application in depth. You will get an introduction to how Application Insight works and how we can integrate it with AngularJS and VanillaJS.

.

JavaScript ohjelmat ovat kasvaneet parin rivin koodipätkistä monen tuhannen rivien ohjelmiksi. Esityksessä paneudutaan TypeScript kieleen, joka laajentaa JavaScriptiä erilaisilla ominaisuuksilla joiden avulla kompleksisuutta ja moni-toimija kehitystä pyritään hallitsemaan. TypeScript ei kuitenkaan rajoita kehittäjää: TypeScript käännöksen lopputulos on JavaScript tiedosto, jota voidaan edelleen ajaa jokaisessa selaimessa ja eri laitteilla. Käydään läpi kielen rakenteet, työkalut ja debuggaus kuviot.
MaestroNG on suomalainen, markkinoiden nykyaikaisin pilvipalveluna tarjottava toiminnanohjaus kaupan ja palvelun aloille. Organisaatiomme on käyttänyt Visual Studio Onlinea keskeisenä työvälineenä MaestroNG-tuotteen kehityksessä jo yli neljänkymmenen sprintin verran. VSO on tarjonnut erinomaiset keinot skaalata kehitysprosessia ja toimia ketterästi. Esittelen käytännön esimerkkien kautta kuinka VSO auttaa hallitsemaan kokonaisuutta tuotesuunnittelusta kehitykseen, laadunvarmistukseen ja tuotantoympäristön monitorointiin. Integroidulla kokonaisratkaisulla saa ohjelmistokehityksen eri sidosryhmät yhden välineen ääreen, mikä helpottaa elämää ja parantaa lopputulosta. Esimerkkinä backlogin ja taskien hallintaa, testitapausten hallintaa sekä buildeja pilvessä ja paikallisesti.

Näytän myös kuinka hyödynnämme Application Insightsin palvelinagenttiin perustuvaa monitorointia, ulkopäin tehtävää Availability-valvontaa sekä clientin instrumentointiin perustuvaa seurantaa, jotka kaikki yhdessä auttavat näkemään tuotantoympäristön sisään ja valaisemaan miten kokonaisjärjestelmä oikeasti toimii. Ei tarvitse arvailla, kun virhetilanteesta näkee yksityiskohdat koodiriviä, sen muutoshistoriaa, ajonaikaisia arvoja, palvelimen konfiguraatiomuutoksia ja performance countereja myöten.

SQL Server 2014 sisältää täysin muistinvaraisen, lukottoman tietokannan taulumallin jonka avulla on mahdollista nopeuttaa sovellusten suoritusnopeutta radikaalisti – vai onko? Muistinvaraisuus lupaa paljon mutta mitä sinun tulee ottaa huomioon muistinvaraisessa prosessoinnissa ja minkälaisissa sovelluksissa teknologiasta saadaan eniten irti? Sessio on hyvin demopainoteinen, jossa esimerkkien avulla katsomme miten teknologiaa tulee hyödyntää oikein!

  • In-Memory OLTP teoria ja rakenne
  • Nopeusdemo on-prem ja azure
  • Mitä ottaa huomioon – rajoitukset
  • Muistin loppuminen
  • Väärän tyyppiset taulut ja rakenteet
  • Taulun muokkauksen rajoitukset
  • SQL Serverin hallitsematon uudelleenkäynnistys
  • Parhaimmat hyödyntämiskohteet

MODERN track

Sovelluksia on voinut tehdä jo pitkään monenlaisille eri Windows-alustoille. Usein on kuitenkin tarve toteuttaa samoja toiminnallisia ominaisuuksia eri Windows-alustoille toteutettaviin sovelluksen versiohin. Nykyään tyypilliset kohdealustat ovat Windows 8- ja Windows Phone -alustat. Esitys käsittelee erityisesti Build 2014-konferenssissa esiteltyä uutta Universal Apps-konseptia ja mitä se tarkoittaa sovellusten rakenteen kannalta. Samalla pohditaan myös yleisemmin samaa ongelmatiikkaa – miten sovelluskoodi kannattaa jäsentää jos osa siitä tarvitaan jakaa usean eri alustalle toteutetun käyttöliittymän taustalla. Aihepiiriin kuuluvat Universal Appsin lisäksi ainakin Portable Class Library-tyyppiset projektit ja sovelluslogiikan hostaus pilvessä.

When we are talking about enterprise mobile applications there’s few topics that always raise. Authentication, Off-line support and notifications. These are the topics that are going to be tackled during this session. This sessions is going to show how to leverage Microsoft Azure Mobile Service .net for back-end and build the clients for iOS, Android, Windows Phone and Windows 8.

After this sessions you understand how to leverage Microsoft Azure when building enterprise mobile applications

 

ASP.NETin seuraava versio on suurempi mullistus kuin yksikään edeltäjänsä. Muutosten pääteemoina on vanhojen rönsyjen siivoaminen, ja sovelluskehityksen sekä tuotantoonsiirron helpottaminen. Esityksessä käydään läpi tärkeimpiä muutoksia, ja analysoidaan niiden vaikutusta kehittäjän elämään.

The requirements for APIs have changed as they are designed for native mobile applications and JavaScript applications. On these platforms using technology like SOAP is more difficult and XML is heavy as a payload. RESTful APIs are easier to consume and with ASP.net Web API they’re easy to build too. On these clients also the authentication options are limited and the common way is to use token-based authentication, in which the credentials are verified by a third party and the service and client do not have to deal with passwords. Using Azure Active Directory (AD) we can easily secure our services using a token-based authentication. In this session I present and demonstrate the technologies needed for building RESTful APIs using ASP.net and securing those using Azure AD.

.

In this session, we are going to cover relevant issues when building a cross-game authentication/identification and store platform in the Windows ecosystem. We are going to talk about creating a unified authentication system and linking multiple apps to use your store service in Microsoft Azure. We will give some brief examples of the options available as well as some information on what can and cannot be done in the current state of the constantly changing Windows ecosystem.