- Resources for Setting up a SharePoint 2010 Development Environment
-
When doing SharePoint 2010 Beta development, you have a few options for setting up your development environment, including running a virtualized development environment on Windows Server 2008 R2 in Hyper-V, configuring a Windows 7 developer environment workstation or configuring a Windows 7 VHD for direct boot.
When setting up my own development environment, I found the following resources helpful:
- Virtualized Development Environment in Windows Server 2008 R2 and Hyper-V - In SharePoint 2007, it wasn’t really practical to develop on a client OS, so a lot of developers used Hyper-V to host a virtualized development environment. With SharePoint 2010, there are some new client workstation development options I’ll mention below, but using Hyper-V to host your development environment is still a great choice, particularly if you’re interested in replicating your production environment with multiple servers. If you chose this option, here are some resources you’ll be interested in:
- Windows 7 as a SharePoint 2010 Development Workstation – New to SharePoint 2010 is the ability to run SharePoint on Windows 7 for development purposes (not for production caveats listed in the documents below). Developing “on the metal” is easy to set up and doesn’t require anything more than a Windows 7 x64 machine.
- Booting Directly to a Windows 7 VHD – New to Windows 7 was the ability to boot directly to a VHD without a host operating system running Hyper-V, etc. This is a great option since booting directly to the VHD provides great performance and access to all the local resources on your computer (since it’s not virtualized) while providing all the benefits of virtualization (such as the ability to start over/roll back to prior versions of your VM). I really like the idea of configuring a base Windows 7 VHD, putting all the pre-release products and tools I need on it and being able to roll back to the base version whenever necessary. Configuring a VHD for native boot was a new process to me so I found the following documentation helpful:
Hope that helps you find and configure a SharePoint 2010 development environment that meets your needs.
Thanks,
Chris
- SharePoint 2010 and Office 2010 Development VM
-
If you’ve been to the Ch. 9 Learning Centers for SharePoint 2010 and Office 2010 development, you know that there are a lot cool new features for developers coming in the 2010 releases.
Steve Fox just posted on his blog about a new SharePoint 2010 and Office 2010 development VM you can use to get up to speed quickly on both technologies. I’ve been using this VM for a few weeks and having all the setup done for your in a easy to use VM sandbox really is a time saver.
You can get more details at SharePoint 2010 and Office 2010 VM is publicly Available.
Thanks,
Chris
- How to provision a UCMA 2.0 application for Office Communications Server 2007 R2
-
When developing with UCMA 2.0, there are a few steps you need to complete on your computer before you can develop and debug your code, including:
- Preparing your computer for trusted connections with OCS.
- Provisioning your application to be trusted by OCS.
More often than not, when someone pings me with issues getting their UCMA 2.0 code up and running, the issue is with the environment rather than the actual UCMA 2.0 code. Provided you have Visual Studio 2008 and UCMA 2.0 installed and your development machine is in the same domain as your OCS server, here is what you need for a UCMA 2.0 dev environment:
Prepare Your Computer – OCS and UCMA 2.0 applications communicate over trusted TLS/MTLS connections established using certificates. You need two certificates on your development machine in order to establish those TLS/MTLS connections:
Local Machine Certificate: This is the cert you will use in UCMA 2.0 to connect to OCS. This certificate is located in Console Root\Certificates (Local Computer)\Personal Certificates.
If you don’t have this certificate, request one from your domain controller.
Trusted Certificate Authority Certificate: This is the certificate that both your development machine and the OCS server will have from joining the domain. This certificate is located in Console Root\Trusted Root Certification Authorities\Certificates.
Provision Your Application – OCS will only accept secure TLS/MTLS connections from contacts or applications that are trusted. To create a trusted application (represented by the ApplicationEndpoint class) you can use the ApplicationProvisioner sample that ships with UCMA 2.0. See the topic “Using ApplicationProvisioner” in the UCMA 2.0 documentation.
Once you have both of those environmental details taken care of your development machine will be able to create trusted TLS/MTLS connections to OCS and your application contact will be provisioned to be trusted by OCS.
In my next post, I’ll show how to use the ApplicationProvisioner settings in your UCMA 2.0 code to run as an OCS trusted service.
If you need more details on setting up any of these steps, see the following:
1. Programming for Unified Communications, Chapter 9, Configuring UCMA Core has step by step instructions with great background information on setting up trusted connections and trusted applications.
2. Using ApplicationProvisioner in the UCMA 2.0 docs has details on how to build and use this sample.
Thanks,
Chris
- Visual Studio 2010 – What’s new in Managed Languages?
-
There are some really cool language advances coming with VS 2010. In this video from the Ch. 9 Learning Center for Visual Studio 2010, Jason Olson walks you through some of what’s new.
You can find more VS 2010 videos like this one on the Ch. 9 Learning Center for Visual Studio 2010.
Thanks,
Chris.
- Functional Programming for Everyday .NET Development
-
Jeremy Miller asks the question:
What is the most important advance in the .NET ecosystem over the past three or four years?
His answer? Functional programming.
Jeremy's article on the subject sparked more gear turning in my head that anything else I’ve read in a while…
Check out Functional Programming for Everyday .NET Development online.
Jeremy blogs on CodeBetter.
Thanks,
Chris
- Learn Visual Studio 2010, SharePoint 2010 and Office 2010 on Ch. 9 Learning Center
-
I’m learning a lot about Visual Studio 2010, SharePoint 2010 and Office 2010 while building some proof of concept applications using those technologies and OCS “14”, OC “14” and Exchange 2010.
To get up to speed on Visual Studio 2010, SharePoint 2010 and Office 2010, I’ve been using the new Ch. 9 Learning Center. The Learning Center provides an easy (and free) way to learn all the major emerging platforms from Microsoft.
Each learning center course covers a platform or technology end-to-end via video presentations with demos and hands-on-labs.
Check out the Visual Studio 2010 course, the SharePoint 2010 course and the Office 2010 course to learn these new platforms.
You can check out all the available courses on the Ch. 9 Learning Center.
Thanks,
Chris
- Building Office Communications Server solutions with a Software + Services Model
-
From a platform perspective, Office Communications Server 2007 R2 allows you to build call control and call management services. OCS 2007 R2 also provides a federation feature to allow you to securely deploy your UC solutions in a Software + Services model. As an example, Jon Rauschenberger (CTO of Clarity Consulting) describes how Clarity Connect was built on OCS 2007 R2 using the UC platform SDKs and deployed using a Software + Services federation model.
After talking to Jon, a few things stuck out to me about this solution:
- How software based communications can be leveraged as a platform to add value above and beyond just connecting calls by providing web Click-to-Chat, web Click-to-Call and skills based call routing for customer communications. For example, using web session history as context for a customer service question, using that context to identify the right group/persons to answer the question and connecting the call based on presence and availability.
- How to deliver the Software + Services model for UC using federation, including hosting the solution in a datacenter and securely integrating with a customer’s on-premise deployment of OCS 2007 R2 and OC 2007 R2 via federation.
- How to leverage Silverlight 3.0 for the solution admin tools, dashboard and OC extensibility to provide a visually compelling UI that meets the hosted model of the solution.
You can hear Jon talk about how they developed Clarity Connect in this Ch. 9 video Building Office Communications Server solutions with a Software + Services Model.
Details on developing custom communication logic for Office Communications Server 2007 R2 can be found on the Unified Communications Developer Center. See TechNet for details on configuring federation for Office Communications Server 2007 R2.
You can get more details on the communications features in Clarity Connect in this video.
Do you have a solution that is built on Office Communications Server 2007 R2, Office Communicator 2007 R2 or Exchange 2010? Interested in discussing it and how it was built? Ping me via the contact link on this blog.
Thanks,
Chris
Chris - Edited to add Ch. 9 video link.
- UC 14 Metro - OCS 14/OC 14 platform early adopter program
-
"Metro" is the Microsoft Early Adopter Program for partners and customers that want to invest in our future platform technologies to get competitive advantage.
After our PDC09 sessions on Office Communications Server “14”, Office Communicator “14” and the new platform SDKs, I’ve been getting a lot of questions about getting access to the new bits.
UC “14” Metro is the program to get early access to these bits before they become publically available.
To join UC “14” Metro, you need to have a non-disclosure agreement with Microsoft and have a project scoped/planned for leveraging the UC “14” platform SDKs.
UC “14” Metro benefits include early access to the UC “14” products and platform SDKs to build your project, technical briefings on the platform, deep technical training and developer support.
To be considered for the program, talk to your Microsoft representative and let them know you’d like to be nominated for UC “14” Metro. If you don’t know who to ask, email details about your company and project to metroreq@microsoft.com, and we’ll put you in touch with the right person.
The program will start in January with technical briefing webcasts and training will start in the second quarter of next year.
Thanks,
Chris.
- PDC09: Microsoft Unified Communications: Developer Platform Futures on demand now
-
My PDC09 session Microsoft Unified Communications: Developer Platform Futures is now available as an on demand video.
Thanks,
Chris
- @PDC09: Meet me @ Ask the Experts
-
I’ve had some really great discussions around UC Wave 14 and UC development while here at the PDC09. If we haven’t managed to sit down and talk, meet me tonight in hall G from 5:30 pm to 7:00 pm.
I’ll see you there.
Thanks,
Chris.
- @PDC09: Free Programming for Unified Communications book @ UC booth
-
Come see us at the booth and we’ll give you a copy of the UC development book. We have a limited supply, so come by soon.
I’ll see you there.
Thanks,
Chris.
- @PDC09: Integrating and Extending OC 14 Session
-
Just waiting for the Day 2 Keynote to start. Remember to head over to David’s session on integrating OC 14 features into your WPF and Silverlight apps right after the keynote.
Integrating and Extending the Microsoft Office Communicator Experience with Windows Presentation Foundation and Microsoft Silverlight
David Ollason in 408A on Wednesday at 11:30 AM.
I’ll see you there.
Thanks,
Chris.
- @PDC09: Microsoft Unified Communications: Developer Platform Futures (PRO5)
-
Thanks to everyone that attended my PDC09 session today. I’ll link to the session recording when it’s posted on Ch. 9, but here’s a quick recap of what was covered:
- The UC “14” Wave will consist of Exchange 2010 (released last week at TechEd Europe), Office Communications Server “14”* and Office Communicator “14”*. With the release of those products we’ll also release a totally new client platform and a largely revamped server platform.
- The Office Communicator 14* platform SDKs will include:
- Office Communicator 14 Controls for WPF and Silverlight*: Allows you to integrate the OC 14 UI and features (presence, contact lists, contact info and communications) into your applications with very little code.
- Office Communicator 14 Managed API*: Exposes the OC 14 object model as a set of managed classes, providing you the ability to extend the client communications experience. You can use the API to send application data as conversation context and take action on that communication context on the receiving side by launching your application or extending the conversation window using Silverlight to display application data and features.
- The Office Communications Server 14* SDKs will include:
- Unified Communications Managed API 3.0 Workflow Activities: Exposes OCS 14 communications as a set of Windows Workflows Activities that execute on an incoming or outgoing call. The API supports IM, voice, presence and call control activities. Use this API to integrate OCS 14 communications into your business processes (from a SharePoint 2010 workflow, for example).
- Unified Communications Managed API 3.0 Core SDK: Provides a managed code object model API for the end to end communications stack for OCS 14. UCMA 3.0 will add programmatic access to the new OCS 14 features as well as streamlining many common server side development scenarios. Use this API to build sophisticated communication solutions like personal virtual assistants, web click to chat/click to call solutions, web service gateways, etc.
- The Exchange 2010 SDKs will include:
- Exchange Web Services: Provides a web services API for accessing data and business logic exposed by Exchange. Available now, details are here.
- Exchange Web Services Managed API 1.0: Provides a managed class library for EWS, making EWS development very discoverable and productive. Available now, details here.
I’ll provide more details over the common weeks. Exciting times ahead!
Thanks,
Chris.
*Not the final names.
- @PDC09: Please fill out your evals!!!
-
Everything is ready to go for my Microsoft Unified Communications: Developer Platform Futures (PRO5) session @ 11 AM tomorrow in 515B. I hope to see you there.
We always appreciate your feedback on sessions at PDC, so please fill out your evals. Your feedback has a real positive affect on future PDC sessions.
And, new this year, filling out your evals will have a positive impact on the Boys and Girls Club of Los Angeles. For every attendee who completes an eval, Microsoft will donate $1 to this worthwhile charity. For every attendee who completes 5 session evals, Microsoft will donate $2.
So please, fill out those evals!
Thanks,
Chris
- Unified Communications @ PDC09
-
I love the PDC. Before I joined Microsoft in 2000, I went to every PDC so I could evaluate the future of the Microsoft platform and integrate it into my development and architecture.
Since I joined the company, I’ve attended every PDC to share what we’re doing at Microsoft with regards to the future of the platform to start the conversation with other developers around feedback and early adoption.
From either side of the conversation, it’s always been worth getting out of the office.
Here are the 3 sessions we’ll have on the UC platform at PDC09:
Chris Mayo
Learn how Microsoft Communications Server and Microsoft Exchange provide a comprehensive and flexible communications platform for developers. Get a first look at the next generation of this platform through a series of demos and code examples. See how to embed Communicator features in your application using new Microsoft Silverlight and Windows Presentation Foundation (WPF) controls, and learn about the new API to develop full custom clients for Communications Server. Also see how the UC Managed API 3.0 provides access to the new Voice-over-IP features of Communication Server.
David Ollason
Come take an in-depth look at how to integrate and extend the Office Communicator experience into your Windows Presentation Foundation (WPF) and Silverlight applications. See how to provide the same integration experience as Office and Outlook including contact search, contact lists, presence, contact details and more. Learn how to pass contextual data from your application using the new contextual conversation API.
Jason Henderson
Learn how to make your application calendar or contact aware with the Exchange Web Services Managed API and Exchange Online. Get a first look at our new Exchange Web Services and Exchange Online developer story. See how developers can leverage the power of Azure and Exchange Web Services to create rich Software + Services solutions on Windows Presentation Foundation (WPF) or Microsoft Silverlight. Come learn how quick and easy it is to develop an Exchange Web Services application that can be deployed to millions of seats both on-premises and in the cloud.
When I’m not speaking or attending the other UC platform sessions, I’ll be in the Expo or at the evening events.
I hope to see you there.
Thanks,
Chris