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
The official MTC web site describes the MTC as:
"Microsoft Technology Centers (MTCs) provide everything you need — technology experts, industry leaders, and an outstanding environment — to envision, architect, and demonstrate a secure, customized solution, based on Microsoft and partner technologies. "
There are 8 of these centers in the US and another 8 outside the US. The centers mainly work with large enterprise customers to help them envision, design, plan, and validate their IT architecture for new (mostly) and existing initiatives. It's a really interesting place to work at for several reasons.
First, the people - from the management teams (small and agile), to the architects, to the supporting staff, are all people with heavy duty experience. Because of their experience and the types of positions they've held in the past, they like challenges and are genuinely interested in the customer's needs - they dig deep into the issues and offer outstanding value.
Secondly, because of the demands of the roles in the MTCs, there is the need to be up to date and deep on the technologies they support. With so many people with such depth in different areas, there is fluid collaboration between the architects - so when a customer comes in and a question comes up around a technology that is not the expertise domain of the architect working with the customer - no problem, they can leverage the right person. That's a difficult thing to pull off in most organizations.
Thirdly, being Microsoft you would imagine that there would be plenty of software at your disposal - and there is - but you do need hardware too. The MTCs work with their partners to assure that there is plenty of hardware of the caliber that you would find in the data centers of the largest companies in the world. Servers, storage, appliances, networking - you name it. Not to mention the software and services partners that also make their wares and skills available. Our partners are there when we need them to interact with the customers when appropriate and answer the tough questions. When the architectures get real, we can step up and provide the foundation to prove the solutions - this is a really important aspect of what we offer, nobody wants their project to fail - we help by proving that the tough spots can be done.
Lastly, the knowledge and insight we gain from interacting with our customers gives us a really good sense of what is going on in the technology industry - even what is going on technologically in other industries. If we were consultants, we would have a bit of a narrower view since our time with each customer would be longer (we'd have more depth in that customer's experience though) so we would see far fewer of them. At the MTC we spend a shorter time (days to weeks) but often also keep contact with the teams implementing the solutions, and we do see the same customers again for other initiatives - all this rolls up to some great insights on needs, trends, and whats on the minds of businesses and IT orgs across sectors.
So, what is this blog for? (finally, right!) The architects at the MTC in New York City thought it would be valuable to talk about the trends we're seeing in our particular ares of interest, as well as the greater spectrum of Microsoft technologies - as a video PodCast. We're calling this the MTC Technology Briefing PodCast. Currently its not available as a PodCast, but rather embedded video (Using SilverLight and SilverLight Streaming) - but that will be coming soon.
We'll talk about both the Microsoft Technology Center and the technology we're using to produce this video PodCast in future blog entries (and in the PodCast). A brief explanation of the PodCasts format is: A) We are currently using the Microsoft RoundTable video conferencing camera and Microsoft LiveMeeting to do the recordings; B) We're editing the video using Camtasia, and encoding into SilverLight using the Expression Encoder; C) We're uploading the content to the SilverLight Streaming service; and D) We're embedding the video in our MSDN blog that is built on Telligent's Community Server product.
The PodCasts format is to cover the areas of specially of the participants briefly to see what's on their mind - then delve deeper on a particular issue for the balance of the episode. We're looking to make this a 15 minute experience on a weekly basis. Now that the stage is set, let's see if we can follow through and make this real and regular.
If you have suggestions, please leave a comment.