Cool Code
Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Abel Avram on Mar 20, 2008
Microsoft has announced that it will release the OOXML SDK despite the fact that ISO did not approve OOXML as an open standard last September. In a recent move intended to get the approval of the OOXML standard, Microsoft has received a positive vote from InterNational Committee for Information Technology Standards (INCITS) which represents US in the ISO committee. A second round of voting is to take place within ISO during May. Microsoft has been pushing the OOXML since the government requires open standard document formats for the applications used throughout its agencies.
The CTP 1 of the OOXML SDK was released on June 2007, and a second and last CTP version is to be released next month, while the final SDK 1.0 version is to be released during May. A following 2.0 version will be available as CTP this summer while the final version will be released as part of Office 14. Here is the complete roadmap of the SDK.
According to Doug Mahugh, Technical Evangelist at Microsoft, version 1.0 will include the following functionality:
- Strongly typed access to parts within Open XML documents (a few typical examples: classes for the main body part or style part of a word-processing document, the workbook and worksheet parts in a spreadsheet document, or the presentation and slide parts in a presentation document)
- Simple access to the parts within an Open XML document, relative to other existing APIs (example: one line of code to retrieve or replace a part)
- “Linq-friendly” annotation capabilities, to allow developers to use the SDK with emerging Linq to XML technology
- Consistency and naming changes per feedback from the developer community since the June 2007 CTP version, including adherence to .NET naming conventions
- The May 2008 RTW (released to web) version will be ready to go live, and developers can build shipping products on it
The 2.0 version will add the following functionality:
- Content object model including additional classes and methods for simplifying developer work within parts (example: methods for retrieving or modifying a specific paragraph, style, cell, or shape within a part)
- Search functionality, for simple searching of content in all document types
- Validation functionality, to verify that modified or created documents are compliant with the Open XML standard
- High-level “scenario-based” functionality (examples: creating a document from a template, accepting all revisions in a document)
- Shared ML functionality (example: classes for DrawingML chart parts and other parts that can appear in multiple document types)
Basically, the SDK allows the developers to write applications which can open, read, write or create Office documents using the OOXML. Since the OOXML standard may change in the near future to fulfill various specifications requested by ISO for its approval, Microsoft is promising to update the SDK in order to reflect the standard. The SDK will be made available for free.
Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
No comments
Watch Thread Reply