Thursday, June 14, 2012

Application Integration Futures – The Road Map and what's next on Windows Azure

This presentation has hosted by Bala Sriram and Rajesh Ramamirtham

 

Blog Update: I have added a conclusion where I have provided a summary and some of my thoughts on this release.  Also, this session has now been posted so feel free to take a look at it here.  You can also add any comments that you have regarding this session at the bottom of this post.

Key takeaway from Bala: We are innovating in BizTalk!

General Update

  • BizTalk Server “R2” release will be available around 6 months after Windows 8
  • CTP expect this summer
  • Commitment to releasing server for years to come. Publicly indicating there will be at least another release beyond “R2”
  • 12k+ BizTalk customers
  • 81% of Fortune Global 100 use BizTalk
  • 79% of customers are using BizTalk 2010
  • CU delivered every quarter with product enhancements
  • Best NSAT in the industry
  • 6 of 8 largest US Pharmaceutical Companies use BizTalk
  • Continue to bet on BizTalk – We will take your investments forward!
  • Enabling new Azure based BizTalk scenarios for EAI & EDI
    • Bringing together BizTalk on-premises and in Azure

What customers are telling us?

    • Keep me current with platform, standards and LOB changes
    • Reduce time and cost of developing of Integration solutions
    • Let me focus on business challenges, not technology infrastructure
    • Cloud advantages
      • Cost-effective, scalable infrastructure for easy deployment
      • Some scenarios like b2b are amenable to cloud
    • Cloud Challenges
      • Data privacy, isolation , control more integration
      • LOB assets will continue to be on-premise
    • Phased cloud adoption on my terms
      • One size does not fit all

How BizTalk will meet these requirements?

  • Upgrade to latest MS platform
  • Improved reach for B2B customers
  • Better performance and manageability
  • BizTalk on Azure IaaS
    • Eliminate HW procurement lead times
    • Reduce time and cost to setup and maintain BizTalk environments
  • BizTalk on Azure PaaS for EAI and EDI
    • Reduce partner onboarding and management cost
    • Leverage existing BizTalk artifacts
    • Rapid configuration-driven development for common integration patterns
  • All of these working together seamlessly as one BizTalk
    • Trying to work under “one umbrella” but no naming can be implied at this time

BizTalk Server On-Premise Update

    • Platform Update
      • Support for:
        • VS 2012,
        • Window 8 Server
        • SQL Server 2012
        • Office 15
        • System Center 2012
    • B2B enhancements:
      • EDI
      • HL7 2.5.1, 2.6
      • SWIFT 2012 Message Pack
    • Better Performance
      • In Order Delivery process
        • Serialization created delays
      • Improved dynamic send ports and ESB via host handler association of Send ports
        • Can configure a dynamic send port host handler in Admin Console
      • MLLP adapter performance
      • HIS DB2 client transaction load balancing, client bulk insert (15 times faster)
    • Better manageability
      • Visualize BizTalk artifact dependencies in BizTalk admin console
      • ESB toolkit as core part of BizTalk setup and product
      • HIS Administration using Config files with application metadata stored in XML
    • Improved connectivity
      • Consume REST Services directly in BizTalk
        • WebHttpBinding will be used when calling REST Services
        • ACS support
      • Simplified SharePoint integration experience
        • No more adapter web service installs on SharePoint
      • Improvements to existing adapters (HIS, SMTP)
        • improved macros
      • Easy connectivity to Service Bus Relay, Queues and Topics
      • CICS http client connectivity to Windows

BizTalk running in Azure (IaaS)

  • Use case :

    • First step in the cloud adoption
      • Eliminate hardware procurement lead times
      • Reduce time and cost to setup and maintain BizTalk environments
      • Move applications from on premise and back
    • Create a virtual network in Azure and enable connectivity to on-premise network
      • User logs into Azure Portal
      • User creates a new VM and selects BizTalk stock image
      • User specifics BizTalk environment topology and adds them to existing virtual network
      • New VMs are provisioned for user in Azure IaaS
      • User logs into the provisioned VM which has BizTalk installed and configured and starts using it.
  • Targeting same Windows 8 timeframe
  • Microsoft will provide guidance on performance
  • MSDTC support in Azure?
    • It is supported now in IaaS and was brought in to support BizTalk
  • All features that work on premise will work in IaaS

Goals

  • Seamlessly connect with Azure artifacts
  • Enable hybrid applications that span Azure and on-premises
  • Expose LOB services both on Premise and to the cloud

Conclusion

Wow…that was a lot of content in a short 1:15 h session.  There was actually more information released related to EDI support in the EDI Services (PaaS) but I just couldn’t keep up between writing this blog and tweeting with the European BizTalk community.

What I liked:

  • REST support event if it is only Send
  • Cleaner integration with SharePoint.  A similar statement was made with BizTalk 2010 but talking with the product team members after the presentation I know that this is not lip service.  The Adapter Web Service is gone.  No more installs on SharePoint servers.  Also, no more consuming SharePoint’s legacy “Lists.asmx” web services.  Yay!
  • Ordered Delivery performance.  It will be nice to have some improved performance while maintaining sequential integrity.
  • First class ACS support in selected “cloud enabled” Adapters
  • BrokeredMessage property/BizTalk Context property support
  • BizTalk IaaS – should open new capabilities
  • I can see the symmetry between on-premises and PaaS starting to materialize

What I would love to see:

  • Exposing REST end points
  • Single Mapper/Transformation experience between On-Premises and PaaS offering
  • Support for other sterilizers than XML (JSON, C#)  - stay tuned?
  • Service Bus Connect – Receiving requests from LOB systems (SAP IDOCS)

 

Overall the tone was extremely encouraging.  Personally, I haven’t seen this much innovation come from the BizTalk team since BizTalk 2006 R2 when support WCF/WCF LOB adapters was introduced.  Yep..I said it.  The next release of BizTalk is no longer “just a platform update” .  In my opinion, this is a full release and should be named accordingly.  For those that think BizTalk is dead – better think again.  The operation was successful and the patient is still alive.

Microsoft TechEd North America 2012-Day 3

 

An Overview of Managing Applications, Services, and Virtual Machines in Windows Azure - Karandeep Anand

In this session Karandeep walked us through the new portal. The new portal does not include Service Bus endpoints like queues or topics and also does not include caching… yet.  I am told that Microsoft is hoping to have this functionality in the portal by end of the year.  However, they have enabled single sign on so you should be able to toggle back and forth between the old and new portals quite easily.

Within the portal we can get the state of:

  • Virtual Machine
  • Websites
  • Cloud Services (Web roles/Worker roles etc)
  • SQL Databases
  • Storage
  • Networks

Below I have taken a screenshot of the Azure portal.  I only have one SQL Database in the production portal but you can get a sense of the new look and feel.

image

You also have the ability to add new assets by clicking on the “+ New” link.

image

You can then specify the type of service that you would like to provision.  In the case of Virtual Machines, you need to sign up for the preview before you can actually provision a VM.

image

 

Scripting Management Support

Using the VM portal is not the only way to manipulate services in Azure.  There is first class support for scripting in Windows, MAC and Linux.  In the case of Windows admins will find comfort knowing that there is first class support for PowerShell.  These PowerShell command lets will take advantage of the same underlying REST APIs that the portal is using

 

High Availability and Service Level Agreements

Having a third party, such as Microsoft, host IT services for your organization may create some concerns within your organization.  What if your services go down?  What “skin” does Microsoft have in the game.  To put it bluntly, they have some skin in the game.  Perhaps not as much as some would like but Microsoft will be reimbursing organizations for their usage should they fail to live up to their commitments.

Here is a, very, loose break down of Microsoft’s SLA policy:

  • 99.95 uptime – monthly SLA
  • 4.38 hours of downtime per year for multiple role instances
  • 99.9 for single role instances
    • 8.75 hours per year
  • What’s included?
    • Compute Hardware failure (disk, CPU, memory)
  • Datacenter failures – network failure, power failure
  • Hardware upgrades, software maintenance – HOST OS updates
    • Planned downtime – 6 day notice, 6 hour window, 25 minute downtime

What is not included?

  • VM container crashes, Guest OS failures

Monitoring and Auto-Scaling applications

Now this was cool!  A company called AppDynamics demonstrated their monitoring solution for Azure.  Some of the features included:

  • Application performance management dashboard.  This included a graphical representation of your distributed solution and provided the latency that exists between each component.
  • You also had the ability to interrogate the stack level trace to get very granular
  • The tool also supported the ability to auto scale your application based upon different criteria sets including
    • CPU
    • Message through-put
    • errors
    • specific business hours
    • critical conditions

Since Azure supports a “Pay as you go” model I found this tool to be extremely intriguing.  Not only did it look nice, but it provides functionality can can allow you to reduce costs when your app is not very busy and also auto scale to ensure of a good user experience when your site is busy.  To read more about this company and their product for Azure, please read the following press release.

 

Building HTTP Services with ASP.Net Web API – Daniel Roth

The other session that I wanted to talk about was the Building HTTP Services with ASP.Net Web API.  For the past couple months I have been playing with MVC3, JQuery and AJAX so this session was rather timely.

What is Web API?

  • An Http Service
  • Designed for broad reach
    • browsers
    • phones
    • devices
    • set top boxes
  • Uses HTTP as an application protocol, not a transport protocol.  So what this really means is it takes advantage of existing verbs GET, POST, PUT, DELETE

Why build Web APIs?

  • Reach More Clients
  • Scale with Cloud
  • Embrace HTTP – simplify things
    • use existing verbs
  • Web API Requirements
    • Need a first class HTTP Programming model
    • Easily map resources to URIs and implement the uniform interface
    • Rich Support for formats and HTTP Content negotiation
    • separate out cross cutting concerns
    • Light weight
  • ASP.NET WebAPI is the end result

WebAPI description

If you like self documenting APIs, then WebAPI has some built in features to support this type of functionality.

  • Use the IApiExplorer Service to expose “contract”
  • Provides runtime description of WEB API
  • Renders content in a useful way
  • Shows request and response formats
    • XML, JSON, url-encoded

Hosting

  • Many options – self host(console), IIS, Azure roles, other web servers
  • MSDN code gallery and NuGet Code packages are available

Other

  • ASP.NET Web API is available as part of MVC4
  • Is part of the recent open source movement that Microsoft has been involved in
  • Product team accepts 3rd party contributions
  • Unprecedented transparency
    • When Microsoft  devs check in code, you have access to code through  GIT repository
  • Asp.net mvc4 and web api is included in Visual Studio 2012 RC
  • WebAPI is now a Visual Studio project template
    • Can also create a unit test project
  • New  MVC like map route for WebAPI
    • api/{controller}/{id}
  • JSON, XML and form-url-encoded supported out of the box for HTTP Request
    • JSON and XML natively supported for HTTP Response
  • Validation is run on the data from every request
    • Check ModelState.IsValid to see if you have a valid request
  • Support for ODATA queries
    • return IQueryable<type> Get()
    • decorate method with QueryAble

Conclusion

I realize that the release of this technology has been highly contested.  There have been people using the WCF stack that are now in a tough spot to migrate away from this technology to WebAPI.  For me, as someone new to this space I really liked how you organize your project and have clean separation from controller to controller.  You can quickly expose services without the need for heavy WSDL type contracts.

I also like how most of Daniel’s presentation was run from Fiddler.  Like he mentioned several times, WebAPI at its root is really just HTTP.  So what better tool to craft requests than Fiddler.

In closing, I do a lot of System Integration.  Primarily with BizTalk and must admit, I like contract based development where you are defining a firm contract upfront.  I have never been a big fan of loosely based lightweight services as things can quickly to to hell when doing this type of stuff for EAI.  However, I have woken up and seen the light.  I really do feel there are good use cases for this type of technology for light weight application based services.  I don’t necessarily think that this technology is a great fit for EAI, but for applications that may be surfaced using a variety of clients (mobile, web) I think this is a great way to expose back end services to front end client.

 

Stay tuned for Day 4 as I expect to have some encouraging BizTalk news to report!

Tuesday, June 12, 2012

Microsoft TechEd North America–Day 2

 

Day 2 Keynote

Day 2 opened with another Keynote this time led by Antoine Leblond.  It did address some of my concerns with Day 1’s keynote.  This time the focus was on Windows 8 and they did demonstrate the OS running on a few different devices.  The demos were nice and relevant, however they did not demonstrate it on new hardware.  They used the Samsung Series 7 slate with the Samsung Series 9 laptop.  They also demonstrated Windows 8 on a Lenovo laptop(sorry nothing cool about a Lenovo).  If they wanted to generate some excitement, and didn’t want to pull out a shiny new beta Samsung,  they should have just bought a new MacBook Pro and run Windows 8 on it.  I think Microsoft missed another big opportunity but I digress.

Line of Business Apps

They did demonstrate some good looking Metro applications on the devices.  They did provide a quick overview of the Beer Ranger app that I mentioned in a previous post.  They also demonstrated a native SAP application that is part of their Sales Automation Pipeline lineup.  The application was a nice looking app, but much like many other SAP applications, I had no idea what it was suppose to do (opps did I say that out loud).

Trackpad

My primary personal (non-work) machine is a MacBook Air that runs Windows 7.  Many people ask why I do this and how I am missing out on all of these touch gestures.  For me I love my Microsoft Arc Touch mouse and quite frankly could care less about the gestures that you can use on a trackpad.  But for those of you who like using gestures on a trackpad there is some good news for you.  Windows 8 will support “Apple like” gestures including Semantic zoom and access to the new “App bar” to name a few.

 

Developing for Windows 8

Antoine provided us with a rundown of what is involved in building applications for Windows 8.  Here are some of the highlights.

  • Windows Runtime (WinRT)
    • New API set that allows you to build apps and games
    • Supports touch, keyboard and mouse
    • Support for “contracts” so that apps can leverage OS functions like “share”.  Much like you can Share “data’  on a Windows Phone 7, you will be able to perform a similar function with your own application but hooking into these contracts.
  • Tool Support
    • new release of Visual Studio (2012)
    • C++, C#, JavaScript, css, html are all supported technologies
  • Language and platform support for inline async calls. 
    • I really like this feature.  I was never a big fan of all of the delegate spaghetti code a person previously had to write to support async methods.  In a previous post, I had to write async REST methods to support calling REST based services from a Windows Phone 7 app.  I expect it to get much  simpler now.
  • Visual Studio Simulators
    • Can simulate different types of hardware(slates, desktops, large displays, small displays etc)
    • Rotate screen
    • Higher/lower resolutions
    • Touch gestures

ARM Support

This was interesting to see as I have heard a little bit about ARM support but just have not seen it in action. 

Some of the benefits of leveraging ARM based devices include:

  • Low power consumption
  • Long Battery life
  • Trusted boot
    • Validate all code in boot path before it runs
    • Device encryption is always on
  • App model
    • Geared at making apps that don’t alter the state of the machine (Security benefit)
  • Can use same Management infrastructure to manage devices
  • Metro apps work on WinRT as well
    • An RDP client does exist so that you can log into other Windows PCs/Servers
    • Apps must be signed by known trusted authority or have appropriate cert
    • Apps must must have been run through “WAC” approval application
      • used to honor design principals about not altering the state of the machine
  • Key office applications are available

Essential Tips for the Windows Azure Startup

This was a really interesting session.  Michele Leroux Bustamante is well known in the WCF and MVP community as a person with deep technical skills.  I have seen her speak before at a previous TechEd so I thought this would be a good session to attend.  Something that I appreciate about Michele’s presentation style is that she remains composed through out the entire presentation.  Even when she runs into some issues, such as a demo not quite working out, she is able to recover with a tremendous amount of poise. I believe she is Canadian, maybe this has something to do with it.  Smile

This time around she was giving guidance on developing a Startup based upon Windows Azure.  It was a very enlightening session and it was quite evident that she “gets it”.  She has acted as a consultant to many start-ups and provided the following tips when building applications for Start up companies.  Something to keep in mind is that these principles, while applicable to Startups, also just good practices to follow even if you are a well established brick and mortar company.

  • Startups need to show some traction early on
  • Go fast, maintain quality
  • Monitor status, analytics and adjust accordingly
  • watch for conversion rates
    • do visitors create accounts

10 Essential Tips

Here they are as they were presented to the audience:

1. Design for Role Scale out

    • Needs to happen up front.  By the time you need to scale it will probably be too late or more difficult to
    • Need to design for scale, may want to segregate or isolate controllers to allow to further scale out functions that may be more popular or have more access patterns (Mobile, API)
    • Domain Mapping
      • Create a CNAME or A Record for the IP address of your production deployment

2. Use an SMTP relay service

    • Most applications require some form of email communication
      • Can use System.Net.Mail.SMTPClient
    • Write email “messages” to a queue and then dequeue and send
    • Need to use a relay service so that your “From Email” address does not get blocked/spam
    • smtp4Dev is a great tool for use in Development
    • authsmtp is a production ready email relay service that may be beneficial

3. Configuration Profiles

    • Avoid web.config for
      • settings that vary between staging, production
      • settings that require experimentation for performance
      • settings that support diagnostics and test
    • Use the Azure Service config files instead
      • ServiceConfig.Local.cscfg
      • ServiceConfig.Cloud.cscfg

4. Don’t forget to Cache

    • You don’t realize how much latency that accessing frequent data creates
      • Co-locate Cache with across roles
      • Together produce distributed cache total
      • Any role can access
    • Be careful, Cache is not durable, may not live forever
    • Use for optimization
    • Performance increases are phenomenal

5. Watch your Queuing costs

    • Costs may escalate due to the amount of polling
    • If you are polling, you are paying
    • Understand the differences between Service Bus and Azure Storage Queues 
      • Message lifetime
      • Max message size
      • Max total storage
      • Duplicate detection
      • Order guarantees
      • Dead letter queue
      • Storage metrics
      • Purge capability
      • Long polling/manual back-off polling
    • Initial decisions are about cost and agility
      • consider Storage Queues due to back-off polling

6. Collect Diagnostics

    • When writing new project, there is a lot of hacking going on because you are trying to be fast
    • Difference between getting it done and getting it done properly
    • Create a diagnostic helper and establish patterns

7. Monitor from outside

    • Azure Ping free monitoring tools
      • Sends SMS or email when monitoring
        • Storage
        • SQL
        • Queues
        • Is site running?
    • Azure Watch
      • Monitoring and alerts

8. Don’t drink the no-SQL Kool-Aid

    • VCs love “NoSQL”
      • Can be pressure from VCs to use it
      • VCs think it is cheaper to manage because you don’t need a DBA
        • Asking for trouble if you don’t understand your relational data model
    • Need people who understand SQL to look into NOSQL and report back to the group on what the pitfalls are
    • Go to NoSQL for obvious stuff
      • search indexes
      • GEO data
      • profile data (coming from social media)
    • Keep core competencies in RDBMS
    • Then reach out to NoSQL  experts to help bridge the two worlds

9. Enable Social Logins and Simplify Sign Up

    • You want conversion rates – make it dead simple then!
      • ACS facilitates this – simple to use
        • Dirt cheap per transaction
    • The more you ask from a user to register, the less likely they are to sign up
    • Keep it simple you will get conversions
      • Pinterest – only email address to sign up?

10. Estimate your costs

    • Layers of cost
      • Storage
      • Storage Transactions
      • Bandwidth (# 1 thing if you have  a lot of media)
      • Cache
      • ServiceBus
      • SQL Azure
      • Bandwidth
    • Need to run estimates
      • scenario based
    • BizSpark may offer some cost savings for new startups

Service Bus Overview – Clemens Vasters and Abhishek Lal

As usual Clemens put on a good show. This time Abhishek joined him in this presentation and provided some solid demos.  The first half of the presentation was largely a review for me as Service Bus is an area that I try to stay up to speed on.  The second half of the presentation introduced some new tooling and features as part of the June 2012 release.  Selfishly, I don’t want to go into too many details here as I would like to actually play with some of these features and then provide a more complete blog post(s) in order to provide these subjects with some additional context.   Stay tuned!

Monday, June 11, 2012

Microsoft TechEd North America 2012–Day 1

Keynote

The Keynote started off like a Keynote from another technology company.  A DJ was spinning tunes and also showed off his new ‘turntable’ that runs on Windows technology and is all the rage these days (so he says).

 

 

WP_000280

Post DJ dialog, Satya Nadella stepped up to the mic and provided some insight into the state of computing inside and outside of Microsoft.  He provided the following:

  • We are at the shift of a new paradigm.  Much like at the dawn of Client-Server, we find ourselves in a position where we need to re-invent ourselves by leveraging new technologies such as the cloud.
  • Microsoft is focused on providing Services at internet scale
    • Microsoft currently runs some of the worlds biggest apps (Xbox live, Bing, Exchange, CRM)
    • feedback loop
    • global scale, 24 x7
    • ultra-modularity.
    • 16 major Microsoft Data centers around the world
    • Bing 300 petabytes of data
    • Microsoft battle testing each piece of new technology released
    • Bing is running on top of the the Windows Server 2012 RC
      • You can’t “head fake” this type scale

Next up was Jason Zander and he was here to speak about some of the advancements in the Windows Server and System Center product space.  Jason added that datacenters, no matter on-premise or cloud, are required to be more responsive to ever changing business needs.  Much like everything, it seems, these days people want services cheaper, faster and delivered yesterday.  The advancements in Windows Server and System Center have been created to address these needs(well except the yesterday bit).

The Modern Datacenter needs to be:

  • Scalable and elastic
  • Always up, always on
  • Shared Resources
  • Automated and self service

Windows Server 2012

  • Windows Server 2012 has been designed to handle “workloads that can’t be virtualized”
    • unprecedented hardware configurations
    • 64 node clusters and 4000 VMs in a single cluster
    • If you own a SAN, using Windows Server 2012 is a no brainer
      • 10gb file copied in 10 seconds using ODX
    • 80 000 customers downloaded Windows Server RC in first week
    • ~150 TAP customers

Mark Russinovich was up next.  He wanted to discuss some of the advances that the Azure team has made in the area of supporting durable Virtual Machines in Azure.  One of the more humorous moments was when he referred to a slide that had a Linux logo on it: “no we didn’t get hacked, we do support Linux”.

Provisioning Cloud infrastructure

  • New Metro interfaces in portal
  • VMs now supported includes
    • OpenLogic
    • SUSE
    • Ubunto
    • Windows Server 2008 R2
    • Windows Server 2012 RC
  • We can deploy a new VM into a segregated “corporate network” in Azure (I assume this means what previously was known as Brooklyn")

The CIO from Aflac, an insurance company, who has deployed a SharePoint solution to Azure was brought on stage to share his experiences with Azure.  They have built a solution by provisioning VMs into Azure.  Aflac chose Azure based upon the agility and flexibility that it provides.

Cloud and Aflac (CIO)

Requirements

  • Need Agility
  • Flexibility
    • Aflac may run promotions or have peak usage periods based upon customer policy expiration dates
  • Performance
    • They have many different locals and support offices in many different regions.  They need global scale to reduce latency
      • Japan is a heavy user of their services

Solution

  • SharePoint 2010
    • Built on VMs hosted on Azure
    • One use case is to schedule customer appointments  with a Customer Service representative
      • Capture this information in Azure and then bridge it back to On Premise using VPN (Azure Connect)
  • 12 VMs support solution including
    • SharePoint App Servers
    • SharePoint Web front ends
    • SQL Server cluster
    • AD cluster
    • SCOM
  • Use availability sets to further mitigate failure points
  • Looking to use Azure for extranet and customer scenarios

The Keynote then shifted towards the Developer experience including new Azure and Visual Studio 2012 functionality.

Inside the modern Application

  • Personal App experiences are now mandatory
  • Social is something that needs to be built into application and can’t be a “bolt” on
  • Build, Measure, Learn, Move

New Tools:

  • Visual Studio 2012

Frameworks

  • .Net 4.5

Comprehensive Runtime

  • Windows Server
  • Azure

 

ASP.NET MVC4/VS 2012 RC

    • Built in support for Mobile and Web Applications
    • pluggable emulators

HTML is now supported for LightSwitch

  • You can create a Mobile Client using HTML5/Jquery/Javascript/CSS)

Keynote Summary

Having the DJ out there at the beginning was a nice touch.  I am sure they wanted to pump up the crowd and generate some excitement.  I think they hit the mark here but slowly the energy started to drain.  There were several demos that didn’t work or required a second take for them to run.  This is a bit of a let down as an attendee.  Sure “stuff happens” but it seems like there could have been more rehearsing happening before hand.

I also felt Microsoft missed an opportunity to talk about Windows 8 and consumer devices.  Arguably this is not the right time or place to do this but everyone in the building uses a computer on a day to day basis as part of their job.  I would have loved to seen some demos of some slick new tablets or ultra books running the latest offerings.  Ironically I heard more people talking about the newly released MacBook Pro today than Windows 8 devices.  I see this as suitable evidence that they missed the mark considering the “pro” Microsoft audience at this conference.

Windows Azure Today and Tomorrow (Scott Guthrie)

If you have never seen Scott speak…you are missing out.  He has this uncanny ability to take an awkward situation and make people laugh.  He did this at Summit with his “Bob” Azure site and once again today with his “Dude” Azure site.  He is very engaging and enjoys ‘pop-star’ status amongst the Microsoft loyalists.

In his presentation, he elaborated on some of the recent news that he shared at the Meet Azure event.  More specifically he focused on the new durable VM support, Azure Websites and ServiceBus.  Surprisingly he even included “BizTalk” a couple times and  he did not include the words “death, dead, soon to be dead or shot dead” in the same sentence.

General Update

  • Azure is flexible, open and solid
  • Microsoft has opened their minds to new platforms and open source
    • Linux hosted on Azure
    • SDKs being opened and hosted on GitHub
  • 99.95% monthly SLA
  • Pay only for what you use
    • Scale your resources as you grow

MSDN

Scott then reminded the attendees with MSDN that it includes Azure benefits

  • Benefits are based upon type of MSDN account (Pro/Premium/Ultimate)
  • Free trial
    • If you use MSDN your hours will be credited

Durable VMs

  • Create a new VM in seconds/minutes
  • Users have Full Admin on the provisioned server via RDP
  • Can install your own applications on the durable VMs including SQL, SharePoint and BizTalk (check out Steff-Jan’s BizTalk post here)
    • Storage is replicated to 3 locations
      • Seamless failover
    • Async  backup to another datacenter at least 500 miles away
      • Don’t have to do this if you don’t want to
  • Websites
    • Build with ASP.Net,  Node.js or PHP
    • Deploy in seconds with FTP, GIT or TFS
    • Start for free, scale up as your traffic grows
  • Shared Mode (Free)
    • 10 websites for free
    • other tenants co-hosted
  • Reserve Mode (Pay as you go)
    • Dedicated VMs
    • No other tenants
  • Charge for VMs on a per hour basis
  • Converting existing applications to cloud is easy
    • Right mouse click and select “Add Cloud Services Project”
    • Another Azure package will be added to solution
    • Create new roles
      • backend
      • front end
  • VMs are always being monitored and if a failure does exist, your application will be migrated to a new VM to ensure of business continuity
  • You have the granularity to spin up or down a particular worker role.
  • You can RDP into a Role instance as well
  • Cloud allows you to focus on apps and not infrastructure
  • Azure is great for the following scenarios:
    • Burst/bust scenarios
    • Seasonal events (tax, Christmas, Thanksgiving)
    • Dev/Test
    • Sales/Promotions
  • Many SDKs are supported
    • .net
    • java
    • python
    • php
    • node.js
  • SQL Database
    • Relational SQL Server Engine in the cloud
    • Clustered for HA
    • Fully managed service
      • backups
    • SQL Reporting support
    • Provisioned in seconds
    • Can scale to 150 gb in seconds
    • Can be accessed from ADO.Net
      • Can be accessed from on-premise/cloud, websites etc.
  • BLOB storage
    • HA, scalable and secure file system
    • Blobs can be exposed publically over http
    • Continuous geo-replication
  • Distributed Cache
    • low latency, in memory distributed cache
    • Dynamically grow and shrink cache size
    • ha support
    • memcached protocol support
    • Twitter demo went from 1.6 seconds to retrieve tweets from twitter down to .29 ms
  • ServiceBus
    • Secure messaging and relay capabilities
    • Easily build hybrid apps

Windows Azure Today and Tomorrow Summary

Overall it was a good session.  Like I mentioned before, Scott is a great speaker and I enjoyed listening to him.  Some of the content he provided I have seen at Summit, but I certainly can’t hold that against him.  I think this was a great introduction to Azure for people that have not seen it before or for those who took a look a few years back and are now interested in learning more about it.

Friday, June 1, 2012

BizTalk Book Release: Microsoft BizTalk Server 2010 (70-595) Certification Guide

I received word from Packt Publishing today that our book has officially been published.  This book has been around 10 months in the making so it is very rewarding to see this book released.

The intent of this book is to prepare experienced BizTalk developers and administrators with the tools that they need to write the exam.  It was an interesting project and different from my last book adventure. In the BizTalk LOB book we were really interested in addressing a few core concepts within a particular chapter.  For instance in the SAP chapter, I emphasized on how to send and receive IDOCs.  This time around in the MCTS book we needed to address the requirements of the exam to ensure that we provided proper coverage.  I definitely feel that we did hit the areas that we needed to hit.

Another interesting aspect of the MCTS book was our existing NDA as we all wrote (and passed) the exam before starting out on our journey.  This book is not a  cheat sheet.  You won’t find the exact questions and answers on the exam.  Overall the book is around 467 pages so there is a lot of content to cover.  If you invest the time in reading the book and working through the examples and practice tests, I am confident that you will do well on the exam.

It was a pleasure working with the other authors: Johan Hedberg and Morten la Cour.  Writing books is not always a smooth process and Johan, as the lead author, did a great job keeping the book moving.  I had not worked with Morten before the project and appreciated the professionalism that he brought to the project.

Creating a polished product like this book takes more than just talented authors.  There is a core team that is working behind the scenes that really make these projects successful.  With that said I would like to thank the Packt team for their determination in getting this project to the printers.  I would also like to thank the very talented reviewers who held us in check and increased the quality of the book.  These reviewers include:

The book is available for purchase from both Packt and Amazon websites.

 

Book

 

What’s Next?

I have already been asked by a few people, what’s next?  Do you have another book coming out?  I do not have any immediate plans to write another book.  If a topic did come up that was extremely interesting I would consider it.    Writing is a very large time commitment and has been a very positive experience but I do want to spend some time reading(and learning new things)  instead of writing. 

Monday, May 28, 2012

Book Review: BizTalk Server 2010 Cookbook by Steef-Jan Wiggers

Recently I have found myself with some time to review a book instead of writing one. This time around it was a BizTalk book written by fellow BizTalk MVP Steef-Jan Wiggers.  Steef-Jan is no stranger in the BizTalk community.  He has been very active in the MSDN forums, reviewing and writing books and has been busy on the speaking circuit in the Netherlands, Sweden, Canada and more recently Italy.

Steef-Jan has a lot of BizTalk experience so it should come as no surprise that he has written a very practical book based upon a lot of real-world experience.  This experience is demonstrated constantly through-out the book and was very refreshing.

The book itself focuses on many areas including:

  • Setting up BizTalk Environments
  • BizTalk Automation Patterns
  • Instrumentation, Error Handling and Deployment
  • Securing Message Exchange
  • WCF Messaging with BizTalk
  • BizTalk AppFabric Connect
  • Monitoring and Maintenance
  • Rules Engine
  • Testing BizTalk Artifacts

So based upon these areas of discussion it is impossible to go into a tremendous amount of depth on each topic.  However, Steef-Jan will provide a practical example and then leave the reader with links to valuable resources where you can dive deeper if you wish.

One of my favorite topics in the book included the Instrumentation, Error Handling and Deployment chapter.  I feel that this chapter introduces some of the “tricks of the trade” that can really provide some benefit  to a BizTalk developer.  In this chapter you will discover some tools like the BizTalk Benchmark Wizard and NLog.  These are both valuable tools that we have included in our BizTalk deployment at my organization.

Another area of the book that I enjoyed was the Monitoring and Maintenance chapter.  More and more we are starting to hear about Monitoring and Maintenance.  Steef-Jan discusses tools that can really provide visibility into your BizTalk environment including SCOM, BizTalk 360 and MessageBox Viewer.

All in all the book was excellent.  I can’t say there was a topic that I didn’t feel was appropriate.  I think there are probably some areas that could definitely benefit by having more details included.  But, the book is a Recipe book and I think it delivers on what is promised in the book’s overview.  Congrats Steef-Jan on putting together a great book!

You can find the book on both the Packt and Amazon websites.

image

Thursday, May 3, 2012

2012 Canadian Leadership Summit–Day 2

On day 2, the Summit contained breakout sessions that allowed us to dig into some of the topics that were introduced on the first day.  More specifically we were able to dive into topics such as Windows 8 and the Consumerization of IT, Dynamics AX 2012 and CRM “R8”.

Consumerization of IT

With worker demographics changing, employees are now placing new demands on organizations to use more modern technology or let them use their own.  For many recent College graduates, they don’t remember a time when there wasn’t an internet.  For many employees, they have more computing power and modern equipment at home than they have in the office.  These situations are creating headaches for Infrastructure managers, IT Directors and CIOs.

Windows 8 provides some tools that address some of the needs of this emerging demographic.

Windows 8 for the Enterprise

  • No compromise business tablet
    • The flexibility of a tablet with the productivity of a desktop
    • Picture Password -  No longer are you forced to remember some password with ridiculous password requirements.
    • Touch first experience – introducing touch into Microsoft’s latest Operating System is not an afterthought.  This Operating System was built with touch in mind.
    • “Always” Connected applications through live tiles.  No longer do end users have to open applications to determine whether they have received a new purchase order or be glued to their inbox for new alerts.  This information can be presented in form of a Live Tile much like you have on your Windows Phone 7.
    • When in “Windows 7 mode” applications behave the same way as in Windows 7.  Not all applications will be “Metro” ready at launch or any time soon after that.  If you have an application that will run on Windows 7, it will run on Windows 8.
    • You can dock “’Windows 8” applications beside “Windows 7” applications.  You know that feature in Windows 7 that allows you to dock applications side by side?  You can still do this in Windows 8 and can even doc a Windows 7 application with a Windows 8 application.
    • Tablets can be managed by existing infrastructure tools like SCCM
  • Innovative Devices
    • Touch
    • Long battery life
    • Thinner, lighter, faster footprints
    • Convertibles – want the traditional experience of a keyboard and mouse but the ability to detach your screen and use it as a tablet?  If so this functionality will available
    • Workers who require more durable footprints will have the ability to use ruggedized laptops.
  • Booting from a USB device
    • They showed a demonstration where they had a Windows 7 computer and they inserted a USB key that contained a Windows 8 corporate image.  They rebooted the computer and they were able to boot Windows 8 off of the USB drive.  They then showed a demo where they were playing a video from the Windows 8 computer.  They pulled the USB drive out from the physical computer.  The video freezed.  The presenter then plugged the USB drive back in and the video resumed.  If you plug the USB key in within 60 seconds life is good.  If you take longer than 60 seconds then the machine will be shut down.
    • This feature provides a lot of potential for people who want to bring their own device to work or where you have contractors who bring their own laptop but you want them to run your corporate Windows 8 image.
  • Enhanced Bitlocker support
    • Windows 7 introduced the ability to encrypt a USB key.  The problem was that you had to encrypt the entire volume of the drive.  If you had a larger USB key, like 32 GB or 64 GB, this operation took a long time.  New in Windows 8 is the ability to just encrypt the data instead of the entire volume.  This is a great balance between performance and security.
  • New Security features
    • New boot loader features will detect when OS files have been tampered with upon boot up.  If the boot loader detects malware, it will make a connection to obtain Anti malware drivers, load them and remove the malware.
  • Virtualization and management
    • VDI is a technology that allows organizations to operate a farm of virtualized windows clients.  Much like organizations can run virtualized server farms, they can also run virtual desktop farms.  Windows 8 offers a superior experience over Windows 7 VDI experience.
      • Scrolling over VDI is very fluid even when using Touch.  This is rather remarkable considering that the Server hosting the Windows 8 image has no hardware support for touch.
      • End users can pinch , zoom out and zoom in
      • Full fidelity – watching video is flawless over LAN and WAN configurations
      • USB re-direction allows you to plug in a USB device on local machine.  A signal then gets sent to the Host Server and is then rendered in the VDI session
      • Storage Pools allow administrators to manage a pool of disk instead of have hard quota set for each client
  • Windows 8 Market
    • With 525 million Windows 7 users, Microsoft has high expectations for Windows 8 adoption and plans to offer a Windows Marketplace that supports 200 locales
  • Consumerization of IT an Opportunity or Risk?
    • It can be both
    • Consumerization Device Scenarios
      • On your own (low control)
      • Bring your own (medium control)
      • Choose your own (Enterprise full control)
      • Here is your own (Enterprise Full Control
    • Microsoft has different policies depending upon the scenario
        • Classify devices and then provide the appropriate enforcements
    • Access Strategy
        • User Based: who are you (e.g.. No Access, read write, full control)
        • Device Based: How much to I trust the device (e.g. managed vs. unmanaged)
        • Location Based: Where are you? (e.g. intranet vs. Internet)

Dynamics 2012 AX

Prior to this event, I have not had a lot of exposure to Dynamics AX.  What became extremely evident is that Microsoft is very aggressive and committed to the ERP segment.  They are also not only interested in establishing a platform but are also interested in providing industry specific solutions.

 

Proactive Applications

  • Knowing where we have been is no longer enough, we now need to know what is going to happen next
  • End users need a UI based upon their role (Role Tailoring).  The CFO needs different info than the shipping clerk and the information better be populated on the front screen.
  • Workflow Inside
    • Can’t be a bolt on. Needs to be inherent in the application
  • Visualization
    • Use external data and make it apart of how you use internal data for forecasting.  For instance the weather having an impact on inventory positions.  We can use this data to compare patterns.  This will allow for additional insights from both internal and external data that has been collected.
  • Out of the Box integration with Dynamics CRM so that you have 1 view of the customer

Microsoft’s Approach

  • Simplicity and Agility
    • Business Processes are subject to change so quickly that your ERP needs to have more agility than it has had in the past
  • Cloud
    • CRM online or on-premise
    • This time next year you will be able to run AX in Microsoft’s cloud
  • Microsoft Technology
    • Dynamics is leveraging existing investments in other Microsoft technologies like:
      • Kinect
      • Office 365
      • Bing
      • Windows
      • SQL Azure
      • SharePoint
      • Windows Phone
      • Microsoft Lync

What is Dynamics 2012?

  • Core ERP
  • BI
  • Industry solutions

Cloud on your terms

  • Embrace Hybrid
  • Pay as you go and Grow
  • deliver choice

Other

  • Microsoft is working on a Metro screens of Dynamics 2012
  • Lines between AX and CRM are starting to blur
  • Around 2000 people actively work in the AX organization

CRM – What’s coming down the pipeline?

Big trends in CRM

  • Big Data
  • Social
  • Cloud
  • Mobile
  • Core CRM

CRM “R8”

  • More Mobility options
    • CRM on an IPAD will be released within the next few days
    • IPAD version has synchronization capabilities you can go online-offline.
  • Browser flexibility (support for other browsers like Firefox, Chrome, Safari)
  • Social
    • Partnerships with LinkedIn
    • Both at the company level but also at the contact level
    • News aggregation about your customers gets sucked in from external sources.
    • CRM users also have the ability to share information from CRM to LinkedIn, Twitter, Facebook, Email or the CRM Activity Feed Wall which is a internal “posting board”
  • Industry templates
    • Repetitive Intellectual Property that has been acquired from ISVs and Partners
    • Capital Markets/Wealth Management
    • HealthCare/Health Plans
    • Processed based Manufacturing
    • Certifications
      • Microsoft continues to be certify their offerings with industry standards

CRM Growth

  • CRM is one of the fastest growing business within Microsoft
  • Extensive Customer list across industries:
    • Financial Services
      • ING
      • Barclay
    • Professional Services
      • Volt
      • PointBridge
      • Hitachi Consultin
    • Manufacturing
      • Volvo
      • STAT Oil
      • Niko
    • Public Sector
      • City of London
      • Kent Fire and Rescu
    • Retail
      • Cold Stone
      • BestBuy
    • Health and life sciences
      • Pfizer
      • Novozyme
    • Travel and entertainment
      • Phoenix Suns
      • Portland Trailblazers
      • Toledo Mudhens
      • Arizona Diamondbacks

So this concludes the 2012 Canadian Leadership Summit.  Overall, there was some good sessions.  I really enjoyed seeing what is coming down the pipeline in areas of Windows 8, Dynamics AX and CRM.