Offering regional and national programs, CIO (and CSO) events bring together some of the most respected names and thought leaders in information technology and security. Presented by CIOs and other senior level executives, these invitation-only programs offer timely topics and strong networking. Learn More »
June 17, 11:30 AM - 12:30 PM U.S./ET (GMT-4)
Larry Bonfante, CIO of the U.S. Tennis Association, will discuss the skills and approaches that your rising IT leaders must learn to be effective in an executive capacity.
How to Handle Your New CEO: Managing Turnover at the Top
June 18, 11:00 AM - 12:00 PM U.S./Eastern (GMT-4)
Turbulent times have increased turnover at the top. Find out what Council CIOs have done to "break in" new CEOs—build relationships, set expectations, educate on the role of IT.
Mid-Market CIO Panel: Tips and Techniques for Improving Vendor Relationships
July 15, 4:00 PM - 5:00 PM U.S./Eastern (GMT-4)
We'll highlight relationship priorities and best practices identified in a Council study, and we'll interact with a CIO panel on the approaches they've used to improve strategic vendor partnerships.
Executive Competencies Assessment Tool
Assess Your Business Leadership Skills with the Council's new benchmarking tool. Rate yourself in change leadership, strategy, customer focus and more.
Learn more about the CIO Executive Council »Apply today for a FREE subscription to CIO Magazine!
July 08, 2008 — IDG News Service —
Google has open-sourced its protocol buffers, the company's lingua franca for encoding various types of data, in order to set the stage for a wave of new releases, according to official company blog posts and documents.
"Practically everyone inside Google" uses protocol buffers, states a FAQ page. "We have many other projects we would like to release as open source that use protocol buffers, so to do this, we needed to release protocol buffers first."
Google uses "thousands of different data formats to represent networked messages between servers, index records in repositories, geospatial datasets, and more," wrote Kenton Varda, a member of Google's software engineering team, in a blog post. "Most of these formats are structured, not flat. This raises an important question: How do we encode it all?"
The ubiquitous XML (extensible markup language) is not efficient enough for Google's data-sharing needs, according to Varda: "When all of your machines and network links are running at capacity, XML is an extremely expensive proposition."
With protocol buffers, "you define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages," according to a documentation page. "You can even update your data structure without breaking deployed programs that are compiled against the 'old' format."
Protocol buffers are three to 10 times smaller and 20 to 100 times faster than XML, according to Google.
But XML has some advantages for certain tasks, according to the documentation: "Protocol buffers would not be a good way to model a text-based document with markup (e.g. HTML), since you cannot easily interleave structure with text. In addition, XML is human-readable and human-editable; protocol buffers, at least in their native format, are not."
Google has prepared a download pagethat contains protocol buffer compilers for Java, C++ and Python.