17. A computer-implemented method for processing posts in an activity stream, executing on one or more computing devices, the method comprising: receiving, with the one or more computing devices, a client type specifying a type of a client device; receiving, with the one or more computing devices, an activity type; receiving, with the one or more computing devices, activity information from the client device; creating, with the one or more computing devices, a type-specific protocol buffer based in part upon the client type and the activity type; select embedded code from a library of embedded code based in part upon the client type and the activity type: converting, with the one or more computing devices, the type-specific protocol buffer to a generic protocol buffer using the selected embedded code; and sending, with the one or more computing devices, the generic protocol buffer to an activity source, the activity source being different from the client device.
17. A computer-implemented method for processing posts in an activity stream, executing on one or more computing devices, the method comprising: receiving, with the one or more computing devices, a client type specifying a type of a client device; receiving, with the one or more computing devices, an activity type; receiving, with the one or more computing devices, activity information from the client device; creating, with the one or more computing devices, a type-specific protocol buffer based in part upon the client type and the activity type; select embedded code from a library of embedded code based in part upon the client type and the activity type: converting, with the one or more computing devices, the type-specific protocol buffer to a generic protocol buffer using the selected embedded code; and sending, with the one or more computing devices, the generic protocol buffer to an activity source, the activity source being different from the client device. 18. The method of claim 17 wherein the activity type is a post of information.