Continuing on the theme of Q & A for Office 2010, I thought I'd add a few questions, answers and pointers to get you oriented to some key topics relevant to 2010. We get a lot of interest from folks who are just starting to code on Office, I thought it worthwhile to run down the list of FAQ's as a shortcut.
Q. Are you supporting VBA in Office 2010?
A. Yes. http://msdn.microsoft.com/en-us/library/ee814735(office.14).aspx will get you started. Office 2010 VBA is a live and well.
Q: What is the best way to get started with Open XML?
A: I strongly recommend using the Open XML SDK for real-world Open XML development. This short video clip from Zeyad has a pretty good explanation of why that is the case.
Q: What is PowerPivot and where can I learn more about it?
A: Start here for PowerPivot: http://www.powerpivot.com/index.aspx. Lots of promises out there for managing the bulk of data in global analysis type problems, but very few jaw-dropping experiences like this one. Best to just install it and try it for yourself. Where other products are struggling to create a connection to live data (rather than snapshotting it in a workbook), Excel and PowerPivot put BI in the hands of the masses like nothing before it has done.
Q: What is the most common way to build a solution for Office?
A: Hopefully this answer is only news to new developers, but Visual Studio with VSTO (Visual Studio Tools for Office) is the best, most commonly used and easiest way to build add-ins and solutions. VS & VSTO allow you create managed-code solutions for Office. For all new Office developers, I would recommend starting in VSTO to get you up to speed. VSTO is great at addressing many of the small issues that are involved with building and deploying add-ins to our products.
Q: What is OBA?
A: Office Business Applications (OBA) refers to the concept of Office being used as a front-end for line of business data and solutions. Increasingly this is the mode of Office development, beyond the VBA automation and add-in development that we've had in the past. Because users are familiar with Office, developers can code apps within an environment that has a very short learning curve. Analyzing data in Excel is natural for users of Excel. Scheduling meetings in Outlook is the same, whether that meeting is booked in SAP, on Exchange or to your Live calendar. There are tremendous advantages to surfacing LOB Data and process to users in Office, one of which is masking business process complexity for novice users inside of easy tools that they already know how to use. To see some examples of OBA's in action, visit http://www.obacentral.com. Two good books on building OBA's that I can recommend: http://www.microsoft.com/learning/en/us/book.aspx?ID=9471&locale=en-us, and http://www.amazon.com/Pro-SharePoint-Solution-Development-Sharepoint/dp/1590598083.
Q: What's playing on your Zune right now?
A: That would be "Music from the North" by the Jayhawks. Album that is great from top to bottom.
Q: What are the best web sites for learning Office development?
A: Off the top of my head, here's a list:
And some non-Microsoft sites that are worthwhile:
- http://www.powells.com/biblio?show=TRADE%20PAPER:NEW:9781430210726:49.99 (I am a frequent visitor to Portland and I do love Powell's)
- http://officedeveloper.net/ (I forgot the link that caused me to put this section into the post from Ty Anderson.)
He has a good book as well. http://www.powells.com/biblio?show=TRADE%20PAPER:NEW:9781430210726:49.99
I'll point at more links when I get started, but I hope that this helps newer Office developers get started.