PDC 2008 – Los Angeles

It’s madness in Los Angeles, not the madness of some natural disaster, nor of celebration or political or social outcry – it’s a technology and caffeine fueled frenzy. A geek fest, partisan in view and driven by the needs of businesses big and small. But underneath it all there is a far deeper resolve than just a paycheck, since most of the participants represented here would be excited if they weren’t here in person cavorting with peers from far flung parts of the globe in the convention center catacombs and nearby bars and coffee shops. They’d be in chat rooms and internet forums, feeding blog posts and posting to Twitter.

There’s a certain fashion sensibility here too (Tech Fashonistas ?), not the type you might see in stylish magazines or at NY Fashion week – maybe in Wired or CoDe magazine. They come in shorts and tees with adventure sandals or Merrill sneaker-boots; Sport coat, jeans, sneakers; shaved heads, long hair; backpacks, backpacks, and more backpacks; and let’s not forget the ubiquitous logo’d shirts, pens, bags, stickers, hats, etc – logos are plentiful. Some logos supporting the event’s sponsor, and many are of their competitors. Fashion might give clues of one’s geography, position, or ambitions – Logos give reference to one’s vocation and allegiance – Would you wear logos of a company or product you despise?

The final status symbol is one’s gadgetry – phones, phones, phones … everyone has a phone. WinMo, iPhone, Blackberry, and Androids are represented and Bluetooth headsets galore – a clear indication that you are way too busy to waste a minute between sessions.  Laptops are standard issue as well. Status here can be in the power it possesses, the diminutive size, or some special feature it possesses (and consequentially, you posses). As batteries of all sorts drain throughout the day, perches near power outlets are prime real estate in the small city that is the Professional Developers Conference (PDC) 2008 – the main event for Microsoft’s developer community at-large. This is a big year, not because of the presidential race or the economic crisis, but because the announcements that will happen at this event are claimed to be game changing in their importance – important for developers now in order to assess, adapt, and embrace -  but important in the long term for anyone that uses a computer in the near future (which is all of us in one way or another).

The folks that come to the PDC are the ones that have great influence in how computer systems and applications are designed and built. They design, plan, and build the systems that do everything from  make an appliance operate the way it should, direct aircraft through the skies, diagnose medical conditions, power the militaries of the world, do your banking online, upload or watch a funny video, or renew your vehicle registration – for the most part these are business applications, some are serious hobbyists, others are entrepreneurs. Influentials for sure.

 My story is no different, but since I work for the sponsor of the PDC I’m here to understand these technologies as deeply as I can since I work with customers on the frontlines, where questions regarding the latest and greatest are common as we work through architectures and designs of many types of applications – looking through the prism at the future and devising strategies that will serve us well further down the road.

A year or two might not sound like a long time away, but a lot can change in that brief two laps around the sun, and if we don’t anticipate and select our tools and architectures correctly - what is really important from what isn’t … well, the companies we work for could suffer heavily from that poor choice, and we could be looking for a new job or career. In some cases, regular people would suffer and quite possibly die. Really.

One might think that as employees we’d know about all these new game changers early on, and to some extent we do – but between our day jobs and the rapid rate of change that happens up to the release of these technologies, there is always more to keep current on than there are hours in the day. Conferences like this help us to build a stack of items to from which we can follow along at home and keep current on developments, learn the details, and build the skills – so when it’s time, we hit the ground running.

My PDC focus was on: “Services in the Cloud” (Azure, Mesh, Live Services), Oslo, Surface, Microsoft’s Functional Language F#, and Windows 7 … Huge stuff. And there are a ton of other stories – many of which may more ready for action than some of these ones are, nonetheless - these are squarely on my radar as game changing.

I left New Jersey on a Sunday afternoon stuffed into an over-crowded train, stuck in a mile long airport security line, and stuffed into a middle seat of a plane for 6+ hours to arrive here in Los Angeles. Many of the others here have traveled much farther (some hauling larger frames in smaller seats), some at their own expense, others on their employer’s dime – all for the same purpose, to hear from the source what is next. Look into the crystal ball and see the future now.

Here is my PDC itinerary and initial thoughts regarding the sessions
(session recordings are available on
Channel9.msdn.com)

Day 1

Initial Thoughts

Keynote - Ray Ozzie, Amitabh Srivastava, Bob Muglia and David Thompson

The big Azure announcement … finally. Getting to hear Ray Ozzie speak for the first time. What’s with the  ‘Red Sneakers’ … BluHoo.com built on Azure. ‘Generva’ is a key component to Azure .. important! Eventual rolling the learning into the server product for ‘on-premises’ cloud … ?? What? I’ve been asking myself if this was a direction for sometime – cool!

A Lap Around Cloud Services Part 1 - Manuvir Das

All the core aspects of Azure and some of the mechanics – great start to understanding

“Dublin” and .Net Services: Extending On-Premises Applications to the Cloud - Jacob Avital

‘Dublin’ is the Windows Application Server. Cloud Aware + Cloud Hosted = Extending Apps to the Cloud …

Developing for Microsoft Surface - Robert Levy, Brad Carpenter

I’ve been working with Surface for a little while now, just wanted to see what and how they are showing the capabilities – great presentation! Nice demos – I liked the beat the clock creation of an app from scratch.

A Lap Around Cloud Services Part 2 - John Shewchuk

All about the ‘Services’ parts of Azure – good overview.

SQL Server: Database to Data Platform – Road from Server to Device in the Cloud - David Campbell, Zach Skyles Owens

‘Not just hosting DBs in the cloud’ – important to understand the ideas here.

 

 

Day 2

 

Keynote 1 - Ray Ozzie, Steven Sinofsky, Scott Guthrie and David Treadwell

Windows 7 …. Yes, nice, nice, nice!
Live Services, empowering the cloud …

Visual Studio built on WPF, sweet. Tesco.com ‘at home’ application – very, very cool.
Treadwell – Azure Services Platform.
Had to leave early …. Rats!

Keynote 2 - Chris Anderson and Don Box

… got back to see the big finale, kind of meaningless without the buildup though – have to watch this when it’s published.

Windows 7: Welcome to the Windows 7 Desktop - Chaitanya Sareen

Ok, how soon can I get this installed – the desktop is sweet!

Live Services: A Lap Around the Live Framework and Mesh Services - Ori Amiga

Great presenter, excellent coverage of how to use the Mesh API and services.

“Oslo”: The Language – Don Box, David Langworthy

My first Oslo exposure. Probably not a great choice, seems close to the ‘M’VC paradigm, I’m having ‘ROR’ flashbacks.

Sync Framework: Enterprise Data in the Cloud and on Devices - Liam Cavanagh

I understood Sync before, but understand it much better in a concrete way now. Excellent demos and examples.

 

 

Day 3

 

Keynote – Rick Rashid

WW Telescope is great.
Boku – kinda like Second life, kinda like a programming environment, very wild! When can I get this?
SecondLight – Surface with and extra dimension …. Very sci-fi.

Parallel Programming for Managed Developers with the Next Version of Microsoft Visual Studio - Daniel Moth

Wow! ‘Tasks’ are the new ‘Threads’ … great idea and clean implementation.

Showcase: Cloud Computing Platform Enables Next Generation Conferencing - John Shriver-Blake, Michael Conrad

Very cool – rewrite Live Meeting using Azure as a proof of concept. Excellent idea, which I’m sure we’ll see much more of.

“Oslo”: Customizing and Extending the Visual Design Experience – Don Box, Florian Voss

My second Oslo exposure … Quadrant is a wildly flexible application … Need to grok how I use this in everyday work (think I ‘understand’ the usefulness of the language more than quadrant right now (need to watch Doug Purdy’s Lap Around Oslo now)

Live Services: Mesh Services Architecture and Concepts - Abolade Gbadegesin

Great session that gave a peek under the hood of Live Mesh

.Net Services: Access Control Services Drilldown - Justin Smith

Great, Great talk – I totally get the idea and implementation around this now.

 

 

Day 4

 

WCF: Developing RESTful Services – Steve Maine

Woke up a little late, just caught the tail end of this, nice development in the building of rest services … make it look really easy!

Live Services: The Future of the Device Mesh - Jeremy Mazner

Really cool demo using a bunch of different devices, lots of drama waiting to see if everything works out ok … fun and cool.

Services Symposium: Cloud or No Cloud, the Laws of Physics Still Apply - Gianpaolo Carraro

No technology in this talk. All about the risk and probability when running commodity hardware – very interesting!

An Introduction to Microsoft F# - Luca Bolognese

I get it now …. Functional Programming!! Great presentation! Had to leave early to catch the bus though – blah!

 

 

 

The big messages from the PDC, for me, the based on my itinerary:

·         Azure (Cloud Services)

·         Oslo (Model Everything)

·         Windows 7 (The next evolution)

·         Surface (Multi-touch Natural User Interfaces for verticals)

·         Research (Huge investments reaping huge rewards)

Sure, other cloud based services exist today – even some that allow the user to choose windows – but what’s missing from the experience is the entire holistic experience: The infrastructure, management, and tooling. Azure is very well thought out, built on top of the Windows virtualization stack (Hyper-Visor), integrated with the development environment and toolset, and allows the evolution of the skills Microsoft developers already know. Using ASP.Net and WCF, extending from the enterprise to the cloud is a powerful message. This really does require a holistic vision that takes into consideration various platform based services like SQL Data Services (SDS), .Net Services (Access control, service bus, and workflow), collaboration services (SharePoint Services), an application server (Dublin), and access control services integration with existing on-premises directories – Azure includes this vision, and that’s a great start.

Coupling this with Microsoft Online Services for Exchange, SharePoint Server, Live Communications Server, and Dynamics CRM it’s easy to see how the future enterprise data center will extend into the cloud.

The presence of Oslo makes me wonder which came first, the modeling or this new cloud based platform. They certainly seem to have synergy between them. In Doug Purdy’s Oslo session he makes the point that Microsoft sees modeling as an all encompassing paradigm that will serve many, many domains – from application architectures to physical architectures, with libraries already created for some domains (and apparently more to come). He also indicated that a rational was that Microsoft uses model driven approaches to develop products and services, and wants to bring that same capability to the development community.

While I’ll certainly admit that this sounds like a huge change to the way we currently do things, and architecturally justifiable – I am really curious about how fast this might be adopted. If the toolset and guidance is there to get developers and architects over the hump, and the value is clearly expressed, the community will likely be all over Oslo. Personally, I was never a huge UML guy and haven’t really suffered from the lack there of – but there are clear benefits in Oslo that I can see already, even at this early stage.

The modeling in the ‘M’ language seems very straight forward (and a bit reminiscent of some minor work in Ruby on Rails that I did some time ago – As Doug Purdy said several times, “’M’ as in ‘MVC’”) and valuable, especially when tied to Quadrant for visualization of the models. The repository appears to be a natural storage mechanism for models. It will definitely take some time for me to hunker down and really deeply understand how all these pieces will come together and what it will mean for me in my everyday work. I’m optimistic in this regard though, and expect that the refinement of the toolset will make this even clearer.

DSL’s (Domain Specific Languages) is another story, though. I might need some more convincing on this front. While I acknowledge that there are some contexts where a DSL makes great sense - although my gut reaction is that this would not be something I would need to do too often. This might just be fear of the unknown though, and I’ll reserve judgment until I’m more educated on this front. The examples in Doug Purdy’s session had me close to saying “sure, I would do that” …. But I’m not yet fully there just yet. Granted that I knew little to nothing about Oslo before PDC.

Surface, yes Surface. What a great platform for multi-touch, multi-user interaction. I’ve grown really fond of Surface and I’m really glad to see that the cat is out of the bag and developers will have the opportunity to create great interactive immersive experiences with Surface. There were 16 Surface devices at the PDC, where attendees could get some up close and personal time with it. I never really saw a Surface unit at the MTC that didn’t have at least a couple of people around it. The SDK is very cool, with a simulation application that integrates with the dev environment to allow the developer to create surface applications without access to a Surface unit.

One premise of NUI (Natural User Interface) design is that the UI should be intuitive and not require instruction for a user to operate an application is terrific and is likely to impact software design outside the Surface venue too. I was really, really curious about how the Surface paradigms and environments would contrast with the multi-touch Windows 7 environment and was happy that this was addressed in both the Surface developer session and in the Windows 7 desktop session I attended.

Windows 7 looked fantastic – yes, fantastic. I can’t wait to load that up and start using it now. I didn’t get all the details on the entire Windows 7 architecture (since I only attended one Windows 7 session) – and sure call me a sucker for a pretty face, but to me the desktop is a very big part of my OS. It’s the part I interact with most, and having a handsome, smart desktop make my day happier – sorry, this is emotional first then technical. I’ll evaluate the technical once I get past the emotions.

Microsoft Research showed their stuff on Wednesday during the keynote (as well as on Monday evening at the exposition area). Of note were the SensorMap demo and Boku. Sensor Map displayed the tracking of these small footprint, connected temperature monitoring sensors – and tied them to all kinds of data visualization, including Virtual Earth. They showed some field data form sensors out in the environment as well as in the Keynote room itself – pretty cool stuff.

Boku was really mind blowing. A piece of software designed to allow people (kids, primarily) to program inside a graphical world without actual typing. All input is through the Xbox controller. The results were great looking, and appear to be pretty satisfying – the only flaw is that it doesn’t seem to be available ‘now’. It was also remarkable how active the Microsoft Research organization is. Rick Rashid’s discussion of how active his team is in publishing and presenting their research is great to hear, and helps to explain why they are so successful in what they do and how much and how often they affect the products that get shipped – look at the SecondLight demo for extending Surface, what an incredible idea.

One front where I surprised myself as it comes to interest in a topic was Function Programming. The F# session by Luca Bolognese was very engaging and mostly demo driven. This approach helped to clarify the power of F# and the usefulness of a functional language. I’ve read about some functional languages that are not from Microsoft before, but just wasn’t sold on them. After this session, I downloaded F# as quickly as I could – I think I might just see the light!

Let’s not forget about Live Mesh. I’ve been using Live Mesh since it was available and have been a cheerleader for it all along. As it matures and more is available for developers and users to leverage in their own applications this will be a platform to watch. Jeremy Mazner’s ‘Devices’ session, Abolade Gbadegesin’s Architecture and Concepts session, and  Ori Amiga’s A Lap Around the Live Framework and Mesh Services session were excellent in their coverage of the platform’s features and abilities.

The PDC 2008 was a great experience and I’m really thankful that I got the opportunity to attend. My interests were really well represented and I feel better able to map a course to work with the products that I’ll be engaged with as they become production products. There’s no way to take it all in while at the session, so I’ll be trolling through the session videos to pick up on the remainder of session that I ‘Have’ to see. (A Lap Around Oslo, The Future of C# )

Things are looking extraordinarily bright for the platform that coming, very exciting and interesting time ahead.

Keith Karagan
Technology Architect
MTC: New York

[Originally Posted on MTC NY Blog]

Posted 04 November 08 03:21 by kkaragan | 1 Comments   
Filed under
Training at the Microsoft Technology Centers - Nov '08 - Jan '09

The following training will be available at MTC locations for November, 2008 - January, 2009. Use the Event Info link for more information about the class and registration information. (updated)

Atlanta

 

Center Info

11/10/2008

SharePoint for Developers class - Developmentor

Event Info

Boston

 

Center Info

11/3/2008

Ted Pattison - The Great SharePoint Adventure

Event Info

11/19/2008

Pluralsight - RESTful .NET Fundamentals

Event Info

12/1/2008

Pluralsight - Applied WPF

Event Info

12/15/2008

Quicklearn Biztalk Developer Immersion

Event Info

1/6/2009

Rolling Thunder Microsoft HealthVault

Event Info

New York

 

Center Info

11/17/2008

Ted Pattison - SPA401:Professional SharePoint Server 2007 Administration

Event Info

12/16/2008

Ted Pattison - SBC301: SharePoint Brand Camp

Event Info

Bangalore, India

 

Center Info

12/15/2008

DevelopMentor: What's New in.Net 3.0-3.5 featuring LINQ, Niels Berglund

Event Info

1/5/2009

DevelopMentor: Biztalk Server, Marvin Smit

Event Info

1/12/2009

DevelopMentor: Silverlight 2, Dave Wheeler

Event Info

 

 

 

 

 

 

 

 

 

 

Posted 04 November 08 11:07 by kkaragan | 1 Comments   
Filed under , ,
Training at the Microsoft Technology Centers

The following training will be available at MTC locations around the  the US for October - December, 2008. Use the Event Info link for more information about the class and registration information. (updated!)

Atlanta

 

Center Info

11/10/2008

SharePoint for Developers class - Developmentor

Event Info

Boston

 

Center Info

10/20/2008

Ted Pattison - Developing SharePoint Workflow Templates with Visual Studio

Event Info

11/3/2008

Ted Pattison - The Great SharePoint Adventure

Event Info

11/19/2008

Pluralsight - RESTful .NET Fundamentals

Event Info

12/1/2008

Pluralsight - Applied WPF

Event Info

12/15/2008

Quicklearn Biztalk Developer Immersion

Event Info

New York

 

Center Info

11/17/2008

Ted Pattison - SPA401:Professional SharePoint Server 2007 Administration

Event Info

12/16/2008

Ted Pattison - SBC301: SharePoint Brand Camp

Event Info

Reston

 

Center Info

10/22/2008

Ted Pattison - SAB301: Building Enterprise Solutions with SharePoint Server 2007 SharePoint - Workflow Templates with Visual Studio - BAH Training

Event Info

Posted 13 October 08 01:00 by kkaragan | 0 Comments   
Filed under ,
Using SAP Data with Microsoft's BI Tools

I often get asked by organizations how they can leverage their SAP "data" investment against the Microsoft Business Intelligence suite of tools.  The set of questions usually falls into one of these four categories:

  • Ability to extract data directly from SAP R/3 modules for later reporting and analysis.
  • Ability to extract data directly from SAP NetWeaver® BI (SAP BW) for later reporting and analysis.
  • Ability to report directly off SAP NetWeaver® BI (SAP BW) data with Microsoft BI tools.
  • Ability to leverage Excel directly against SAP NetWeaver® BI 7.0 without BEx.

Well, the stock answer usually goes something like this:

Microsoft Business Intelligence (BI) provides easy-to-use, certified access to SAP data to help you make better, more informed decisions. With Microsoft BI, you can use the familiar tools in Microsoft SQL Server 2005 and the 2007 Microsoft Office system environment to create, analyze, and share your own reports and BI dashboards from all sources.

Using Microsoft SQL Server and Office SharePoint Server 2007, teams across your organization can collaborate on information coming from both the SAP and Microsoft environments to ensure everyone is on the same page when it comes to analyzing results and making critical business decisions.

Finally, our strategic relationship with SAP has gone commercial with the launch of Duet, our jointly developed product that allows you to easily and quickly interact with your SAP and Microsoft Office environments. For more information on Duet, visit the Duet for Microsoft Office and SAP page (http://www.microsoft.com/isv/sap/technology/duet.aspx).

Ok...but what does that translate into in terms of architecture and implementation choices?  Glad you asked. :-)

Here's the high level architecture on how Microsoft interacts with SAP data (at least as of today, July 8th 2008).

Microsoft BI SAP Interop

Implementation of data extracts from SAP R/3
SQL Server 2005 includes support for accessing SAP data by using the Microsoft .NET Data Provider for mySAP Business Suite (see this link for more details: http://msdn.microsoft.com/en-us/library/cc185434.aspx). This provider lets you create a package that can connect to a mySAP Business Suite solution and then execute commands on the server. You can also create Reporting Services reports against a SAP server. The Microsoft .NET Data Provider for mySAP Business Suite is tested on SAP R/3 versions 4.6C and higher. Earlier versions of SAP R/3 are not supported.

You can use the Microsoft .NET Data Provider for mySAP Business Suite in the SQL Server Import and Export Wizard, the Script task, the DataReader source, and the Script transformation that Integration Services provides, as well as the data processing extensions in Reporting Services.

You must provide a select query to specify data to be imported. The query must confirm to the semantics supported by the Data Provider for SAP. For more information about the grammar for a SELECT query for the Data Provider for SAP, see Syntax for a SELECT Statement.

Once data is extracted out of SAP R/3, the destination of that data could be any relational database (such as SQL Server), and then reports (from SSRS) and multi-dimensional cubes (from SSAS) can be created from that database data.  The resulting SQL Server reports/cubes could then be used within the Microsoft Business Intelligence delivery mechanisms, such as through Excel, SharePoint, PerformancePoint, etc.

Implementation of data extracts from SAP NetWeaver® BI (SAP BW) using Open Hub and SQL Server 2005 Integration Services
The SAP Open Hub service enables you to distribute data from an SAP BI/BW system into external data marts, analytical applications, and other applications. With this, you can ensure controlled distribution using several systems. The central object for the export of data is the InfoSpoke. Using this, you can define the object from which the data comes and into which target it is transferred, leveraging SQL Server Integration Services (SSIS) as the transfer/transform mechanism. 

SAP BI objects such as InfoCubes, ODS objects, or InfoObjects can act as open hub data sources. You can select database tables or flat files as open hub destinations, and then use those destinations as actual sources within SSIS.  To automate the extraction using SAP’s Open Hub Service, you’ll need to setup a process chain. Note that both a full and delta modes are also available as the extraction mode.

As stated already with direct extraction from SAP R/3, once data is extracted out of SAP NetWeaver® BI (SAP BW), the destination of that data could be any relational database (such as SQL Server), and then reports (from SSRS) and multi-dimensional cubes (from SSAS) can be created from that database data.  The resulting SQL Server reports/cubes could then be used within the Microsoft Business Intelligence delivery mechanisms, such as through Excel, SharePoint, PerformancePoint, etc.

Note that SQL Server 2008 Integration Services will include direct support for the NW BI 7.0 OHS - http://download.microsoft.com/download/1/7/5/175af735-edab-41db-b762-1b259ec5b362/Microsoft%20BI%20and%20SAP%20NetWeaver%20-%20SSIS.pdf.

Implementation for reporting against SAP NetWeaver® BI (SAP BW) data
Through a rich extensibility model, the report authoring and report deployment features of Microsoft® SQL Server™ Reporting Services 2005 can integrate with any number of business intelligence data sources. To answer the strong need for a rich reporting tool for SAP NetWeaver® Business Intelligence (SAP BW) and to bridge the gap between these two powerful business intelligence platforms, Microsoft has developed a new .NET Framework data provider and query designer for SAP NetWeaver® Business Intelligence.

With the release of SQL Server 2005 Service Pack 1 organizations can now take advantage of SQL Server’s Business Intelligence (BI) capabilities such as Reporting Services on SAP BW Data without purchasing independent and expensive reporting solutions. SQL Server 2005 Reporting Services is now certified to run reports on SAP BW.  Customers that already own or plan to purchase SQL Server 2005 SP1, will get two new components that provide support for reporting on SAP BW in the SP1 release:

• The 'Microsoft .NET Data Provider 1.0 for SAP NetWeaver® Business Intelligence’

• A new query designer to enable the creation of SAP-compatible queries for SAP BW

The new Microsoft .NET Data Provider 1.0 for SAP NetWeaver® BI is a standards based provider that uses standard internet protocols and XML for Analysis (XML/A) (an XML standard for Online Analytical Processing - OLAP) to communicate with the SAP server. The .NET provider enables users to directly access QueryCubes as well as InfoCubes and MultiProviders.  Since XML/A support is built into SAP BW, SAP BW reports can be authored and developed using SQL Server 2005 Reporting Services regardless of which relational database SAP BW data is stored in.  To significantly reduce bandwidth requirements and improve network performance, the Microsoft .NET Data Provider 1.0 for SAP NetWeaver® BI uses GZIP compression when communicating with the SAP BW server, enabling organizations to efficiently work with large XML docum