Visiting Ms CampusDays 2012 in Cph

Notes from http://www.conferencemanager.dk/campusdays2012/

Agentda: http://server1001.dk/CampusDays2012_Udvidet_agenda_A3.pdf

PPTs: https://skydrive.live.com/?cid=ab9c883137bca84e&id=AB9C883137BCA84E%21549

These notes probably don’t have any other interest than for my own lack of memory :-)

Day 1 – 2012-10-30

D1 – 12:45 – VS tricks

@christianhelle works@commentor
Lauch apps by: Start (crtl) 5

New Proj: Ctrl shft l?

Editor

ctrl f5 – close win

close all but pinned

rc – open vertical win for c# + xaml

ctrl (shift) – : go forward/backw

ctrl å : goto block end/start

ctrl m : collapse block

shift alt arrow : block editing

ctrl e or d: ?

ctrl , : navigate to

shift f13 for finding symbols like users of interfaces
(shift) f8 : navigate search results
breakpoints
conditional debugging
when hit print
ctrl r m : extract block to method
surround with
snippets: “text” tab – tab

testr, testm: unittest

ctrl drag : moves window out of in separate window

Tools – Options – Projects and Solutions – Track Active Item in Solution Explorer.
Or by ReSharper: Ctrl + Shift + T

sln-exp

Filter in sln-exp by – in menu

f7 goto editor win

sln-exp has search bar
ctrl q: Find window – goto end for plugin selection

loose Window – ctrl dbl clik: return back
Code definition win
f12: goto code
ctrl alt l : goto sln active file
shift f10 : view menu

Ref window

when debugging
shift f9: quickwatch window

Immed window

>cls : clear scr

.load sos //works, when enabled native debugging

build diagnosticly to get detailed build info
settings – general – track active item
Command line
> msbuild sln /m : build multicore to build fast
3rd party

resharper

ctrl f12

Extensions
vs10x code map v2

D1-14:30 – AD and ID in Azure (WAAD) – in preview

Per Schou Christensen, Jimmy Tønners

Authentication:

Onprem ice / Azure VMs (IaaS)
– SSO vial NTLM/kerb
– Read AD via LDAP

Azure (PaaS)
Azure AD
– SSO via federation services
– Read AD via GraphAPI, Rest, JSON

Alt1: DMZ in Azure (Isolated AD)

Alt2: Hybrid AD
Alt2:

Azure VMs must use DHCP (since Azure will assign), but IPs are static

Azure:
Create VM
Can both be Windows and Linux
Select network

RDP to DC
kørt DCPromo

Have a server on premice
have a ADFS for using off365

What is Azure AD?
– ID as a service (Paas)

Relation AD – Azure AD
DirSync every 3h
Only claimsbased auth

Admin:
OnPremise
DsQuery
Powershell

Azure
AdminPortal
Powershell

OAuth2.0 compatible
OpenID
SAML2.0
WS-Fed1.3
GraphAPI: (Rest)
https://directory.windows.net/<mydomin>/Users(‘<user>@<mydomain>&#8217;)

– Not domains and forrests – only one domain
– No OU’s

Service account called Service principal is assigned a role (read or write)
Use off365 powershell scr for creating acc
Out: Save symmetric key and ObjectId

Add reply url to app url
Use FedUtil to config WIF
Fix audience uri’s
Edit web.config: realm:spn…..

VS:
New STS: Use existing. Add address

Read info from Azure AD via app:
Install WCF Data Svc Tools 5.1 if vs2012
Inst Azure Auth Lib via NuGet
Add Svc-ref to GraphApi (Is OData3)
You can for free create a tennant right away for developing purpose
For WIF there is an opensource plugin for making it OAuth compatible

D1-16:15 – NAV web clients

Flemming Pedersen, Kim Carrock Kobberø, Lukasz Zoglowek

AppDev – Flemming
Demo: Time Sheet feature using web client
User properties:
– Use TimeSheet
– TimeSheetOwner and Approver
Linda enters spend time
Flemming approve

Web Client – Kim

SP Client – Lukasz

…. left that session – not enough interest.

D1-16:15 – SP2013 dev platform

Morten Schioldan
Apps creates hidden subsite

http://tenant-APP1UID.example.com/GUIDAPP1
OnPremise: Make DNS WildCard

SP hosted App

24GB recommended min in dev img
or
Make free dev img free on Off365
Gives you dev site

VS2012 – Office/SP – App for SP2013
SP hosted app
Speaks w. dev site in cloud

In appmanifest.xml: Add requirements e.g. read-web
Create SP Proj with:
– SiteColumn: Speaker
– ContentType: Cols: Speaker, Folder
– List: New ContentType

Click on app on hosted site. In text it shows the app-url

VS:
Open Default.aspx
Add div for showing content and a button
Open App.js

Use SP client obj model to get list using caml

You can now debug your hosted app!!!

———
New web- JS file. Name: ClientWebPArtSessions.js – containing the js app
New Page: Hosting js in an IFrame
New Item: Client WebPart (Host web): To be added as an app on host.

Kunne have brugt SilverLight i stedet for js.

———

An .app file is a zip file, that contains manifest and wsp
———
Provider hosted web

2 projs:
– SP App
– Normal web – will be hosted out of SP

Web contains
TokenHelper.cs
On Default.aspx.cs an accessToken must be carried around

A client chrome_ctrl gets the styling from SP, so styling on the web looks as SP.
Use rest to get SP objects.

Web can use OAuth or Azure ACS for SSO aginst

Day 2 – 2012-10-31

D2-08:40 – Keynote

David Guldager

Tingene spiller sammen

8:45 Jon Billy

Secure Boot – Bitlocker
Device Mgmt – Intune – System Center – Remote Wipev – Company Hub –
OTA (OverTheAir update)
IRM (InfoRightsMgmt)
Backup

Produktivitet
Lync/Skype – in ph
PeopleHub – Contacts
Office
LOB Apps
Email/Calender – hotmail etc.
9:05 Martin Essman
Development
WP8 SDK: https://dev.windowsphone.com/en-us/downloadsdk
Native code
IE10
Wallet
NFC
Bluetooth
Maps – offline
In-apps purchase
Lenses

VS2010:
New WP app – v8
– AppResources – Title,
Add Text resource.

Blend:
Create binding for heading
————-

Portable Library
—————–
SmartDevices can communicate

App: SmartGlass – a bit like airplay, but much more – all devices can communicate
Share what you see on your screeen
– Share webpage on xbox
– Play to TV

– Remote ctrl

App: Xbox music: Intune, Spotify, etc
App: Xbox video
NFC: Wireless music transfer
Henrik Petersen – Demoed fast setup for new owner between visitors

D2-10:15 – WP8 Dev

Martin Esmann

xxx What’s new

API:
Tiles: Flip, Cycle, Iconic

LockScreen: notification

Offline Maps

Location as Win8

Speech

wallet – membershipcard

Secure payment with NFC (not totally open)

Direct3D, Unity

UI
Panorama, Pivot – performance
LongListSelector
Multi-resolution

Auto-upload of photos to cloud
autofocus for QR reading

VoIP
Winsock native
DataSence

Save to SD
Add contact to PeopleHub

File registring for your app

Sandbox Silverligth removed

Portable libraries
Use Interfaces to select platform differnces
Interop to WinRT – no PInvoke

xx Tools
Testing
Debugging
Simulation dashboard – bandwidth sim
App monitoring and profiling
Manifest fileeditor

Emulators – not with NFC
xx App Models
managed
Native
Direct3D and Xaml
Html/js – no! Via IE10 integratedctrl

xxx Build apps

VS2012:
Databound app

grid – auto for different resolutions

ViewModels
– MainVM
– ItemVM

MainPage
DetailsPage
MainVM:
Get data via WebClient
bing – F12 – steal link in source : “/search …. rss”

Ref:
Add ref to SL4 libs e.g. System.ServiceModel.Syndication

DataSenceHelper
Wifi= ID71
Could get lower resolution img

ResolutionHelper

Can add customContacts to peoplehub using ContacsStoreHelper
xxx Store
USD 8 currently for an account

deploy more xap files for like sl and wp7 and wp8 + native

D2-12:30 – Big Data – Hadoop – Map/Reduce

Stig Torngaard Hammeken, Platon
4V’s of BigData:
Volume
Velocity
Variety
Bi above
Variability – Models change too often

BigData:
Transactions: Erp
Interactions: Web logs
Bi above
Observations: Opinions, Sensors
BigData Mgmt
Adv. analytics

Diversified Info Use cases:
SmartMetering
Predict behavior
Now we need the data before we know what to look for

Source -> Hadoop (HD) -> Mart -> Cube -> FrontEnd

MS and BigData

Insight – SelfSvc, Collab, apps, Devices
DataEnrich – Discover, Combine, Refine
DataMgmt – Rela, Non-Rela, Analytical, Streaming

Marketplace – expose/sell odata
Stream Insight
Analysis svc
HDInsigt FileStream
PDW
Marketplace Apps:
Social Analytics
Data Explorer
Mahout
Hadoop (HD Insights):
Pig (script) & Hive (Sql e.g. query weblog)
Map/Reduce, Js
HDFS for MS
Scoop & Flume

D2-14:15 – Rest WebAPI

Mark Seeman @ploeh

REST REpresentational State Transfer

Richardson Maturity Model:
Levels:
3 Hypermedia controls – content negotiation using accept header
2 Verbs – for modify
1 Resources (have url) – read
0 Pox: Xml over http

Close tied to protocol – http

WCF hides protocol
– Not good for content negotiation
Get it via NuGet
Install-Package Microsoft.AspNet.WebApi

Hosting:
Asp.NET
– Mvc
– Web forms
Self:
– Network
– In-proc – not using ports
Demos

xUnit test:
Get….()
new HttpClient()

class MyCtrlr: ApiController
public HttpResponseMessage Get(){}
public HttpResponseMessage Post(){}

D2-16:00 – ASP.NET MVC

Stig Irming-Pedersen
xxx Intro
xxx course
VS2012:
New MVC 4 web
class HomeController : Controller{
ActionResult Index(){
}
}

xxx new features

Pages:
WebForms
MVC4
WebPages
SinglePages

Services:
Web API
Signal R

x Bundling and minifications
Gather files in one request

ScriptBundle
StyleBundle
@Scripts.bundle

Works, when debug = false

x Minifications:

Can be extended with
Less, Coffee- and TypeScript

Cache nvalidering
In header: Cache-Control
File Hash is added as queryparm

x Mobile Support
Mobile template using jQueryMobile

Adaptive rendering using css media queries

Feature: DisplayModes using different views
Add jQuery.mobile.mvc with NuGet

Day 3 – 2012-11-01

D3-08:30 – Azure Enterprise Integration – Hybrid cloud

René Løhde

4* 2 datacenters
Georeplication – with sister center
What is cloud more than hosting?
Pooled resource
Self-service
Elastic
Usage based

You manage
On Premise: Apps, Data, Runtime, Middleware, O/S, Virt, Servers, Storage, Networking
IaaS (Car): Apps, Data, Runtime, Middleware, O/S
PaaS (Taxi): Apps, Data
SaaS (Bus): NA

Networking:
Connect
VM
Traffic mgr – for loadbalacing
Subscriptions
Ent admin – min 1 year
sub (country/ba/envir/project) accounts
Subscriptions – a project

OrgId as account or liveid
Must be in WAAD, but first in January for ent custs

Integration: Service bus / Messaging /
ID & Security: WAAD
ACS for connect to Google, FB, Yahoo – also good for change pasw.
Needs ADFS in DMZ
ServiceMgmt API is RestApi for Mgmt/Monitor Apps
8h nedetid om året (99,999% oppetid)

D3-10:15 – Agile Dev

Jørn Floor Andersen, Commentor

Agenda
Process: WebAccess, ProdBacklog, StoryBoarding, AgileTaskBoard, FeedClient
VersionControl: New TeamExpl, Local WorkSpaces, CodeReview
Etc.

VS: ReqMgMt, SystemCenter, LabMgmt, TC Mgmt

Scrum
FeedbackClient to customers – links 2 StoryBoarding and PBI’s

New ProcessTemplate: Scrum 2.0
Will be forward upgradeable even with customizations

BugTypes shared on projects, since they are on categories

New WorkItemTypes: CodeReView, Feedback

Still no versions on WorkItems
xx WebAccess:
Now on live instead of on top of reporting svc.
Reports not in Web are lowered from 1h to 2h (less important)
xx ProdBacklog: Prio and sprint DnD
Capacity can be added on sprint level
Tasks can be added to PBIs in sprint level

New entity: Team
xx StoryBoarding
Using PowerPoint
Build UI – save on PBI

xx AgileTaskBoard
DnD of Tasks
Different views:
– PBIs in col 1, then tasks – with filter on persons
– Persons in col1, then tasks

xx TeamExpl
My Work
– Can suspend current open windows, breakpoint and make a shelfset for TFS items
– DnD WorkItems into InProgress
Searh directly without query

xx LocalWorkspaces = Modify-Merge-Commit style
Pending Changes – Excluded changes – e.g. by copy a file local

xx VC
Merge on unshelve

xx Feedback Client
Dev requests feedback to stakeholders – they receive a mail
Recorder (screenshots, notes, vid), that makes a workitem

xx GatedCheckin
Accept 5 checkins and batchbuild instead of build all.

xx AlertsEditor – replaces PowerTool

xx TE EveryWhere

xx Upgrading
Will be every 3rd month

TFS Service just came in production yesterday, so still free
Expect new services every 3rd week

D3-12:30 – TypeScript

Marcus Wendt, Composite C1

http://typescript.codeplex.com/
http://www.phpied.com/3-ways-to-define-a-javascript-class/
http://www.codeproject.com/Articles/5608/Writing-Object-Oriented-JavaScript-Part-1
https://developer.mozilla.org/en-US/docs/JavaScript/Introduction_to_Object-Oriented_JavaScript

TypeScript
– SUperset of js
– is translated to js
– has intellisence, refactoring
– OpenSource by MS people incl. Steve Lucco and Anders Hejlsberg
– can use other js libs like: prototype, knockout etc.
– can generate SourceMaps (.js.map files)

Install: Get the

xxxxx Code
//Using
/// <reference path=”Point.ts”>

//add refs to
winjs.d.ts
winrt.d.ts
jquery.d.ts
Get from http://typescript.codeplex.com/SourceControl/changeset/view/fe3bc0bfce1f#typings%2fjquery.d.ts

//Cast HTMLElement to div:
<HTMLDivElement>
//Cast to embed (with src)
<HTMLEmbedElement>

//Remove type – cast to any
<any>
//and do declare var Application

//Can use:
Class
interface
private
static
module
//Can’t use
abstract
generics

Namespaces solved with modules in
Q:
– What is prototype.js in relation to TypeScript?
– Script# or TypeScript? Maybe Script# can’t use other js libs directly?
– Convert .js to .ts? – Just rename!

D3-14:15 – Html5

Kenneth Auchenberg – works in w3c
@Auchenberg , Kenneth.io

New tech peaks in beginning, then hits a low then finds a normal

Preload
Threading
Transitions

W3C – stdbuilder
WhatWg – browser suppliers

From Spec to Recommendation to implementation – too long

The fat lady API:
Do you support this feature, browser?
– nothing, probably or maybe

Most used browsers:
Chrome, IE, FF Safari, Opera

CanIuse.com – which features where?
Don’t emulate (code for all browsers like gifs for round corners), do fall back
Mobile: Browsers don’t auto upgrade
Facebook uses iframe
Problems: unloaded styles, permissions
Has more users on Mobile web than on Apps
Kenneth: In W3C CoreMobile WebPlatform CommunityGroup

Local app Problems:
Too few frames
Unload images, compressed
Caching – too low 5MB, must invalidate all
Memory – no control
Tooling – difficult: Debugging, Blackbox

Going forward
No “One Browser”

Tooling
Fixing symptom with browser extensions – not good enough’
Remote debugging
JetBrains WebStorms – showing live in chrome what is edited in editor.

The End

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: