There's a lot of great documentation out there on how to use HTML, CSS, and JavaScript to build OpenSocial apps. ORNG is plain old OpenSocial, with some extra standards on how to access information about researchers, and have your gadget show up in specific places on your research networking site.
UCSF has made its installation of Profiles an OpenSocial container by integrating Profiles (a .NET product) with Apache Shindig, an open source Java product that is the reference standard for the OpenSocial API. Integration at the data level and user interface was required, but fortunately not within the middleware code. Thus differences in programming language (C# and Java) were of minimal issue.