Lamont Harrington's Blog

Microsoft Solutions Development, Architecture, and Technology Evangelism

 

powered by

What great news!  The historic inauguration of President-Elect Barack Obama will be streamed LIVE using Silverlight, our online Rich Internet Application (RIA) and media platform, via the Presidential Inaugural Committee website on January 20th.  For those of you who followed the 2008 Olympics in Beijing, you witnessed first hand and what our Silverlight technology can do in the online media arena!  This is a great time for our country and a very exciting time for Microsoft to be able to showcase argueably the most important moment of our time using the power of the Microsoft platform!




To read my PDC recaps from Days 1 & 2, click on the links below:

Rick Rashid, Senior VP of Microsoft Research gave the keynote today.  In his keynote, he proceeded to review the MSR organization and went down a lengthy resume of MSR accomplishments, areas of investigation and research, and strategic direction moving forward.  In his opening remarks Rashid briefly discussed the history of MSR, which was founded in 1991, and started by focusing on MSR’s Mission Statement:

  • Expand the state of the art in each of the areas in which we (Microsoft) do research
  • Rapidly transfer innovative technologies into Microsoft products
  • Ensure that Microsoft products have a future

Rashid went on to discuss MSR’s organizational structure and focused on his mission to structure MSR in such a way that it is optimized to get maximum innovation from the researchers and the vast research community in which we participate.  As a part of this strategy, he highlighted the following characteristics of the MSR structure:

  • University organizational model – The reporting structure is flat with critical mass groups who work on key research areas
  • Open research environment – Rashid believes that this contributes to MSR’s ability to aggressively publish research results in peer-reviewed literature, a lot of which is posted on the Microsoft Research website.  As a part of this open environment, MSR entertains frequent visitors (researchers) from around the world from both the educational, government, and private sector. MSR also hosts daily seminars on research activities and findings
  • Strong ties to University Research – MSR has a strong reputation in the University circuit and has several partnerships with leading universities for joint research activities.  University graduate students have also come out to Microsoft campuses and have worked directly with MSR personnel on critical research areas around next generation computing and how it can have profound impact on issues that plague our society, most notably Healthcare and  the environment

Interesting MSR Facts

  • MSR consists of 850 PHD researchers
  • The 2nd largest MSR lab facility (with Redmond being the first) is in Beijing China
  • MSR also has opened large facilities in Cambridge England and Cambridge, MA (USA)
  • MSR recently opened a new lab facility in Bangalore, India
  • MSR continues to grow a strong presence in Silicon Valley
  • MSR ranks HIGHER in research than IBM, Bell Labs, and University of Washington in  the field of computer science & engineering
  • MSR has over 4000 peer-reviewed publications
  • MSR participates in community leadership activities and hold positions in professional societies and have been quoted or have written articles in leading tech journals

MSR and the Academic Community

  • MSR participates in the academic research community through extensive publications and conference participation as well as participation in professional service activities with organizations such as DARPA, NSF, and NRC
  • MSR participates in numerous joint research projects

MSRs Involvement in our Microsoft Product Strategy
Rashid went on in his keynote to talk about how MSRs research efforts drive the innovation in what we build/ship/sell to our customers.  As a part of the product strategy, MSR serves the following roles:

  • Providing focused technology transfer effort (Program management team with sole focus on technology transfer)
  • Researchers who sit on product incubation "advisory" boards
  • "Mindswaps" - joint product/research offsites
  • Joint product/research teams.  The results of these joint teams have been rather impressive.  Some of their output have included:
    • Clear Type
    • Data Mining (originally introduced in SQL 2000)
    • Natural Language and Speech (Microsoft Office)
    • Tablet PC
  • Facilitation of *Incubation* projects that have turned into shipping products.  For example, MSRs work in robotics yielded Microsoft Robotics Studio, the Concurrency Control Runtime and the Distributed Software Services Toolkit

What’s MSRs Value to Microsoft?
Rashid drove home some basic points around why Microsoft continues to invest in research.  He summarized MSRs “Business Value” in basically 3 bullets:

  • Source of IP and new product technologies - MSR generates roughly 25% of the company's patents
  • Problem solving of some of the most difficult computer science problems – MSR has the ability to bring smart people to bear rapidly on hard problems confronting products, product groups, or the company
  • Act as an early warning system – MSR provides ears to the ground in new areas across a broad range of technologies and can help steer Microsoft’s strategic directions as to what we should be focusing on over the next few years and beyond

Rashid and his team have established an ecosystem where we address key challenges affecting our future as a company, and as a society.  He summarized the challenges as follows:

  • Challenges in software engineering and system design
  • Challenges in Healthcare
  • Challenges with energy consumption and environmental issues
  • Challenges in Education
  • Challenges in natural Interaction with the PC

SLAM
As it relates to challenges in Software Engineering, Rashid focused on a number of different areas that MSR researchers have been exploring.  One project in particular that MSR has been focusing on is the SLAM project.  This project was aimed at verifying properties of software using a technique whereby a hardware or software design satisfies a formal specification, which typically (in computer science terms) is a temporal logic formula.  Not to get too deep in the weeds here, dear reader, but needless to say they’re doing some really impactful stuff as it relates to how software is/should be developed.   It’s important to note that SLAM was productized in the Windows Vista driver verifier feature and will be further enhanced in Windows 7.

MSR is also involved in research projects that help fuel our S+S and cluster computing initiatives, and were deeply involved in the creation of the Windows Azure Services platform.

Energy Efficient Computing
Feng Zhao, a Prinicpal Researcher with MSR who focuses on Sensor Networks, took the stage and discussed our investments in sensor technology, with the intent of decreasing energy consumption and promote more energy efficiency in phones, servers, and data centers.  Zhao demoed a sensor device that detects temp/humidity and monitoring environmental conditions in the LA convention facility using a "SensorMap" portal application that collected environmental data and displayed via a dynamic visual display (leveraging Virtual earth).  Data collected by sensors are stored in the cloud.  NASA has made use of the SensorMap application

MSRs Efforts in Healthcare
MSR has been involved in a considerable amount of research to help leading research institutions tackle critical areas in the area of Healthcare.  Some of these efforts include:

  • Unlocking the mystery of your genes for personalized medicine
  • Fighting HIV/AIDS through Machine Learning.  This was a pretty interesting effort because they are using the algorithms we use in detecting SPAM to predictably determine the patterns of HIV.

MSRs Efforts in Education
MSR has been involved in a number of educational initiatives around the globe.  Here’s just a few of the things they’ve been involved in:

  • MSR supports a center for collaborative technologies at U of W
  • MSR has created a Tablet-Based Computing (http://research.microsoft.com/erp/tech)
  • Robotics for the computer science classroom
    • Center for Personal Robotics in Education - Georgia Tech and Bryn Mawr College. Robots in core CS curriculum
  • World Wide Telescope (new release – “Equinox” Beta release)

Boku – Lightweight Programming For Kids
Matthew MacLaurin, Principal Program Manager at MSR, took the stage to talk about the Boku project.  He led into is presentation keying off of Rashid’s earlier comments that programming should be viewed as a “life skill”, and as such, we should look to engage our youth in software development/design and dymistify the arcane approach to software construction and relay it in such a way that our youth can easily grasp the concepts and become tomorrow’s computer scientists.

Boku is a game authoring system for children (and the childlike) centered on a novel visual programming system designed around a concurrent rule system.  The core of the Boku project is the programming user interface.  The language is simple and entirely icon-based.  Programs are composed of pages, broken down into rules.

The Boku language is designed specifically for game development.  Programs are expressed in physical terms, using concepts like vision, hearing, and time to control character behavior.  While not general purpose as classical programming languages, Boku can express advanced game design concepts in a simple, direct, and intuitive manner.

Below are some screenshots of the environment:

Game Load / Community Screen

Icon-Based Programming User Interface (e.g. Integrated Development Environment :-))


NOTE: Before you start hitting the MSR website and searching for the application, Boku won’t be available until early next year :-)

SecondLight – Interaction Beyond The Surface
One of the other key highlights of the keynote was concerning a new type of surface computer, called SecondLight, which allows for interaction above the standard Microsoft Surface unit into the *real world*.  During a rather compelling demonstration, MSR researchers demonstrated a prototype of a next generation surface unit where you could virtually “lift” objects off the surface and have them projected on other objects.  Through special infrared cameras, additional data encoded behind objects displayed on the surface table (data mind you, that was “naked” to the human eye) was shown being projected on tracing paper plastic lenses, etc being held over the unit (e.g. NOT LYING FLAT ON THE TABLE :-))  It’s rather difficult to put this particular demonstration into words.  This is just something you’ll have to see for yourself! :-)

Summary
The MSR keynote capped of a week of some very good presentations from our executive leadership.  It showcased that we are truly committed to moving computing forward with Microsoft being the leader of this “innovation movement”.




Hug a Developer



Interesting eWeek report on the 100 Most Influential People in IT.




I received an this e-mail this morning and I thought I'd share with the loyal readers of my blog.  Enjoy :-)

40 Tips for a Better Life – 2008

  1. Take a 10-30 minute walk every day. And while you walk…smile. It is the ultimate anti-depressant.
  2. Sit in silence for at least 10 minutes each day. Buy a lock if you have to.
  3. Buy a DVR and tape your late night shows and get more sleep.
  4. When you wake up in the morning, complete the following statement, “My purpose is to ___________________ today.”
  5. Live with the 3 E’s → Energy, Enthusiasm, and Empathy.
  6. Play more games and read more books than you did in 2007.
  7. Make time to practice meditation and prayer. They provide us with daily fuel for our busy lives.
  8. Spend time with people over the age of 70 and under the age of 6.
  9. Dream more while you are awake.
  10. Eat more foods that grow on trees and plants and eat less food that is manufactured in plants.
  11. Drink green tea and plenty of water. Eat blueberries, wild Alaskan salmon, broccoli, almonds and walnuts.
  12. Try to make at least three people smile each day.
  13. Clear clutter from your house, your car, your desk and let new and flowering energy into your life.
  14. Don’t waste your precious energy on gossip, energy vampires, issues of the past, negative thoughts or things you cannot control. Instead, invest your energy in the positive present moment.
  15. Realize that life is a school and you are here to learn. Problems are simply part of the curriculum that appear and fade away like algebra class but the lessons you learn will last a lifetime.
  16. Eat breakfast like a king, lunch like a prince, and dinner like a college kid with a maxed out charge card.
  17. Smile and laugh more. It will keep the energy vampires away.
  18. Life isn’t fair, but it’s still good.
  19. Life is too short to waste time hating anyone.
  20. Don’t take yourself so seriously. No one else does.
  21. You don’t have to win every argument. Agree to disagree.
  22. Make peace with your past so it won’t spoil the present.
  23. Don’t compare your life to others’. You have no idea what their journey is all about.
  24. No one is in charge of your happiness except you.
  25. Frame every so-called disaster with these words: “In five years, will this matter?”
  26. Forgive everyone for everything.
  27. What other people think of you is none of your business.
  28. GOD heals everything.
  29. However good or bad a situation, it will change.
  30. Your job won’t take care of you when you are sick. Your friends will. Stay in touch.
  31. Get rid of anything that isn’t useful, beautiful, or joyful.
  32. Envy is a waste of time. You already have all you need.
  33. The best is yet to come.
  34. No matter how you feel, get up, dress up, and show up.
  35. Do the right thing!
  36. Call your family often (or e-mail them to death!!) Hey, I’m thinkin’ about ya! :-)
  37. Each night before you go to bed, complete the following statements: “I’m thankful for _______________. Today I accomplished _______________.
  38. Remember that you are too blessed to be stressed.
  39. If you can't change your situation, change your location.
  40. Enjoy the ride. Remember, this is not Disney World and you certainly don’t want a fast pass. You only have one ride through life so make the most of it and enjoy the ride.

May your troubles be less, May your blessings be more, May nothing but happiness come through your door.




A thing of beauty...

Today, I've achieved what many in corporate america would say is "the impossible".  In my journey through the world of GTD (e.g. "Getting Things Done"), I've certainly reached that mountain top, and it feels good.  Thanks to a nifty tool called ClearContext.  The picture below says a thousand words...

I highly recommend you check out ClearContext.  It's definitely worth the $$




New Blog Home

As I mentioned on my old blog, for those who follow my blog, note that I've moved to a new location.  Don't fret, I haven't left Microsoft, just moving to a new blog home.  As a part of the move, I'll be moving some of the posts (read: not all) from my old blog to this blog.  I'm going to move the more popular posts and leave all the "legacy" behind :-).  So please update your links to my new blog.  Still working the kinks out with the latest version of DasBlog, so bear with me as I get settled :-)




Wow, October 18, 2005?  That was the date of my last post!  Well certainly a lot has happened since then!  I've had brief "blog post cameos" on my team's blog at http://blogs.msdn.com/publicsector, but I think it's about time I get back to my roots and start posting.  For those of you who've followed my blog, even back when I was on DotnetJunkies.com, you know that I joined Microsoft back in 2005 as a Technology Architect at the Microsoft Technology Center.  During my time there, I've had the opportunity to architect some of the coolest solutions on our platform.  The desire to further evangelize our platform in delivering robust solutions has landed me as an Architect Evangelist within our Public Sector Developer & Platform Evangelism team where I now work with customers to help them realize the potential of our platform in delivering compelling solutions that tackle many of the business problems that plague organizations today.  Still staying true to my SharePoint roots, I've been doing a lot of work helping customers architect Office Business Applications in efforts to exploit the power and flexibility of the 2007 Office System platform for delivering compelling business solutions.  In addition, I've also been focusing on helping customer deliver solutions using our take on SaaS (Software as a Service) methodologies with our S+S (Software+Services) initiatives, improving the web user experience with technologies our recently introduced Silverlight platform, as well as continuing to build robust, SOA-enabled enterprise applications using .NET 3.0.

I've had the opportunity to do a number of cool things that I'll be blogging about and I promise to not go on such long "blog sabbaticals" again :-)




Yeah, I know it's been AGES since my last blog post.  I'm not going to even begin making apologies or excuses.  I will say to those who've followed my blog, that I am going to start ramping up the frequency of my blogging, as I have a lot to talk about.  Upon joining Microsoft last January, I've not had much time to do a lot of things I did before I joined the collective.  Needless to say, however, that since joining Microsoft, I've gotten to see (or at least hear) about a number of new initiatives coming out of Redmond that's geared at making developer's lives a lot better.

For those of you who used to follow my blog on DotNetJunkies.com, you'll probably remember I had a series of posts on my design/development process around a custom XML-driven workflow engine I was working on (BTW, I'll be posting an archive of those posts on my new blog here).  Well, had I known then what I know now, I'd have definitely tried to get onboard our TAP (Technology Adoption Program) and gotten my customer involved with exploring Windows Workflow Foundation (formerly known as Windows Workflow Services and Windows Orchestration Engine (WinOE)) as well as pushed Microsoft in trying to support our current platform with a release of WF that'll work with v1.1 of the .NET Framework!

Windows Workflow Foundation, in a nutshell, is our new framework for building workflow-enabled applications.  It consists of a programming model, a full-blown workflow engine, and developer tools for building custom workflow solutions.  WF will sit as another namespace within our WinFX stack (System.Workflow) and will provide the necessary tools for building compelling workflow solutions for the Windows platform. Working here at the Microsoft Technology Center, one of my focuses is around connected systems and business process automation, alongside portals/collaboration of course [:)],and I've engaged with a number of customers who are searching for a solution to address their need for introducing workflow into their applications without having to resort to BizTalk Server or going with third-party workflow solutions.  With WF, we now have technology that we can position as an alternative solution that delivers rich functionality out-of-the-box for introducing workflow within their enterprise applications.

Over the course of my next several posts, I drill into Windows Workflow Foundation and discuss how you can build some value adding solutions with the technology.  As my own personal case study that'll fuel the posts, I'll use the custom engine I wrote a year ago and blogged about during my time on DotNetJunkies and completely rearchitect it to work with WF as well as Windows Communication Foundation (formely known as "Indigo").

But before I go hog wild about WF, let me first set some groundwork around the technology and basically tell you what it is NOT

  • WF is not the next version of BizTalk Server - Customers whom I have engaged with recently and presented this new technology to get confused with where WF and BizTalk fit.  I've often fielded questions of whether WF will simply be a component of BizTalk Server or is it a replacement of the BRE (Business Rules Engine) or whether WF will be the platform of the future and BizTalk will get phased out in favor of building more integration tools/technologies into the operating system.  WF will serve as a common workflow solutions framework that will not only be leveraged by future versions BizTalk Server, but many of the future versions of a number of Microsoft products, including the Office System (Office, SharePoint Products & Technologies, etc), and the Microsoft Dynamics products (formerly known as Microsoft Business Solutions).  WF is geared at complementing BizTalk Server rather than serve as a replacement.  BizTalk will still have it's place in the Microsoft product roadmap as serving as our premier integration and business process management platform.  It is worth noting, however, that BizTalk developers will feel right at home with the development environment of WF and will be able to do things that you currently can't do with BizTalk Server.
  • WF is not BizTalk Human Workflow Services (HWS) - Human Workflow Services (HWS) in BizTalk Server has always left a lot to be desired.  It has been a technology that has had great intentions, but very poor on execution.  In future versions of BizTalk, HWS will be phased out in favor of a more robust and extensible solution that leverages WF.

I've been working with this technology for the past several months now and I have to admit that this is one of the coolest things I've seen.  I strongly recommend that you go and download the whitepapers and the bits and get started in building compelling workflow solutions!




It appears that my original post regarding my disappointment in the current beta of Telligent Systems' Community Server solution has sparked a lot of good commentary from bloggers in the community.  And although I've not met him yet, being the class act I'm sure he is, Rob Howard chimed in with his two cents.  As I mentioned in my original post, I knew that those guys are committed to delivering quality product.  I'm glad Rob took the time to read my concerns and those of others who've not been too impressed with what they've seen in the early Community Server betas to date.

Here's Rob's comment taken from my original post:

“Hi Lamont,

Thanks for taking the time to write this up - this is a great post :)

Believe it or not integrating the 3 applications was a tremendous amount of work and we said from the beginning – back in July - that the goal was parity and that this was not a feature oriented release. Integrating all 3 systems together and enabling that system to run within DotNetNuke was the goal. I believe we’ve accomplished that goal. We have one integrated membership, permissions system, data access layer, component layer, and common/shared features. Another key goal for version 1.0 was to allow the 3 systems to operate independently, e.g. you could run ‘just a blog’ or ‘just a forum’.

Our vision for Community Server isn’t short-sighted; rather we knew that putting the legwork into the first vision to bring the systems together would allow us to rapidly add integration features in the next version (which we are already planning).

What you’ve described as your vision for Community Server is exactly what we have planned. In fact, I think there are many more opportunities that you did not cover. For example, we’re building in email listserv integration to allow forum discussions or blog posts to be made via email. We’re building an NNTP server to allow for reading forums through Outlook Express. We’ve built an FTP server to more easily manage content in the gallery. In our next version we’re going to start tying the various system together, example creating a photo gallery or file gallery integrated with both forums and blogging. Adding features such as ‘Blog This’ to easily take content found in other areas and turn it into a blog posting.

One of the above comments [taken from the blogger comments on this post] is that .Text is a dead product. That couldn’t be further from the truth. If anything we’ve made .Text a better product in Community Server. You can still run the blogging feature of Community Server as a stand-alone system (see above for goals for version 1.0). In fact we’ll be updating blogs.msdn.com to use Community Server (blogs only) in the next several months.

The point you made about bringing together all of this without the overhead of normal shrink wrapped products is dead-on. We’ve already invested a tremendous amount of time and money into Community Server. Building product is hard. Getting honest and critical feedback from the .NET community that we can use to improve it makes it worthwhile.

Finally, I would invite you to join our community at www.communityserver.org or send me feedback rhoward @ telligentsystems.com. Again, we’re trying really, really hard to build a great product and our version 1.0 product is not a feature oriented release. Keep giving us your feedback and ideas – we listen!”

I'm really interested in seeing where this product goes in the future.  It has some awesome potential.  It is my hope that initiatives such as these will even help my new company drive more innovation and features to further improve the out-of-the-box experience for customers with our respective products and solutions centered around collaboration and knowledge management.

I encourage others to voice their opinions on the direction of .Text and Community Server as the folks over at Telligent Systems are listening.  They've seen our pain and appear to be trying to ease the pain.

NOTE: This blog post was moved from its previous location on dotnetjunkies.com/weblog/lamont_harrington. It was posted in January 2005




Calendar

<<  August 2010  >>
MoTuWeThFrSaSu
2627282930311
2345678
9101112131415
16171819202122
23242526272829
303112345

View posts in large calendar

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2009, Lamont Harrington.