The last few weeks, especially after SXSW, have been crazy with partners and ISVs reaching out to me asking how to get started developing apps for IBM Connections. I've probably repeated the same information enough times now that it warrants a blog entry.
First, for all things social business development, the start page is here: http://www.ibm.com/developerworks/social/ . There you will find information on how to create apps either for our on-premises product or cloud-based product.
If you are looking to develop for our on-premises product, you can provision yourself an instance of IBM Connections which will run in our cloud. That way you can develop your app and you don't have to worry about installing Connections from the ground up. In just a few minutes, you'll have your own development environment up and going. The direct link to the instructions to provision the cloud instance of Connections (or direct link here: http://www-10.lotus.com/ldd/appdevwiki.nsf/dx/IBM_Collaboration_QuickStart_for_Social_Business_sbt ).
If you are looking to add your app as an widget (e.g. similar to how gamification was added to IBM Connections), then you'll want to look at the widget development guide for IBM Connections which is here: http://www-10.lotus.com/ldd/lcwiki.nsf/dx/development-guide
Now, if you are like me, you like to learn by example. So if that's the case, take a peek at this very simple widget made up of two files (this one and this one). It's built using pure HTML/Dojo, but you can use any technology you want as long as it ultimately creates HTML.
Next, to deploy this into Connections, I followed the instructions here: http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Adding_custom_widgets_to_Communities_ic301 . Basically, what you do is edit the widgets-config.xml file and add this:
<widgetDef defId="TwitterSearch" url="http://blog.lbenitez.com/widgets/TwitterSearch/twitterSearchWidget.xml" modes="view edit" primaryWidget="false" iconUrl="http://www.twitter.com/favicon.ico" uniqueInstance="true" />
and restart Connections. Then you can just edit the XML and JS files independently without restarting Connections. Also, note that your widget can be hosted somewhere else. It doesn't have to be installed on the Connections server.
Finally, if you want to leverage the Connections API to retrieve data, add data, modify, or whatever, here's the full API (there's an API for pretty much everything). And again, if you like example code, here's a good set of example code on how to make calls from our API using whatever technology you want: http://www.ibm.com/developerworks/lotus/library/connections-social-authoring/
Enjoy! (and show me what you create!)