June 2008 Archives
At one point during salesforce.com CEO Marc Benioff's keynote yesterday at the SaaS leader's Tour De Force stop in Santa Clara, he presented a slide with a signpost of a forked road. One road led toward software and the other toward cloud computing. Above them was the declaration: "it's time for software developers to ask 'which path am I going to take?'"
The slide served as a launching point for Benioff to promote the advantages cloud computing (on the Force.com platform, in particular) offers application developers over traditional on-premise datacenters. But the proposition it posed was, of course, overstated. While the advantages of cloud computing--minimal start-up cost and systems maintenance, and the ability to deploy with a click of the mouse--are compelling, most developers today aren't facing an either/or proposition. They work in organizations that are heterogeneous mixes of on-premise applications with just a few business or infrastructure functions deployed in the cloud (if any). New projects might be considered for the cloud-computing model and web startups definitely would have to look at that option, but for most businesses, existing investments in datacenters and enterprise software licenses guarantee that the on-premise model isn't going away any time soon.
For those developers who are already programming on the Force.com platform using the Apex programming language, Salesforce.com announced the Force.com Toolkit for Google Data (GData) APIs. I sat down with Steven Fisher, Senior Vice President of the Platform Division at salesforce.com, who explained that Apex had all the bare capabilities for a developer to call the GData APIs manually prior to the toolkit's release, but coding against the API required parsing through all the XML in the GData ATOM and RSS API. "What we really announced today at the technical level is an Apex library that does all that parsing for you, so you can just interact with objects," Fisher told me.
"Behind the scenes, this library formats out the appropriate XML, and does the HTTP callouts, and all of that kind of stuff. It was so much effort (calling GData from Apex) that people just weren't going to do it, and now it's one line of code."
From a developer's perspective, Tech Ed 2008, which attracted over 6000 developers to Orlando, doesn't offer much that's completely "new;" however, it does offer a great deal of value for developers who need to find out about existing technologies. If there's a single overview word that one might use to describe the thrust of the conference, it's "unification." Microsoft is unifying the developer view into its existing technologies.
For example, starting with the small and moving toward the large, the .NET Compact Framework, the .NET Embedded Framework, Silverlight, Office, Visual Studio, SharePoint, BizTalk, and SQL Server all leverage developers' knowledge of the .NET framework and its supported languages in very much the same way; after becoming familiar with the framework and one language, you can build on that knowledge to write applications intended to run embedded in other devices, to run on mobile devices, to deliver rich content through a browser, integrate with Office applications, run as standalone desktop or Internet-connected applications, or run custom code inside SQL Server—all without having to learn a completely new environment or language. Unification is the theme not just with developers, but with architects, development managers, designers, testers, and maintenance; the newest and upcoming toolsets cover the entire application lifecycle.
One of the most exciting additions to this lineup is Silverlight—no, not the 1.0 version; the new 2.0 (still beta, but soon to be released with a Go-Live license) version. Silverlight puts Microsoft's WPF technology—specifically XAML—front and center in the development world. The new version not only improves rich media (video/audio) delivery, but moves beyond JavaScript, letting developers write Silverlight code in familiar .NET languages such as C# and VB—and some newer ones, such as IronPython and IronRuby. If you haven't started exploring WPF, I highly recommend it.
Bill Gates, giving what may be his last keynote for Microsoft (he's stepping down at the end of June to concentrate on his work with the Bill and Melinda Gates Foundation) mentioned two other noteworthy topics. First, SQL Server 2008 (soon to be available as RC 0) adds the ability to store geographic location points (geopoints) as a native type. In a brief demonstration, he showed how a user could identify a point, and an application could request additional points of interest within a circle with a defined radius from that point. While perhaps not groundbreaking, adding location data as a base type both simplifies developing location-aware applications, and elevates them to mainstream status.
Other enhancements to SQL Server 2008 include support for external blob storage in the file system, on local NTFS-formatted drives. Storing blobs externally gives SQL the ability to manage files and large binary data blobs in an intuitive way, letting developers treat them as standard file streams, while still taking advantage of SQL Server's transaction, rollback, and backup features. This also helps to avoid the performance penalty associated with storing large blobs internally.
Finally, SQL Server 2008 adds support for hierarchical data (tree structures). While it's been quite possible to handle such data before, T-SQL itself provided no assistance. Because tree-structured and hierarchical data has become ever more common, that's a welcome addition.
Another welcome technology, although still under development, is enhanced modeling in Team Studio.Brian Harry, a Technical Fellow in Microsoft's Developer Division, demonstrated how code submitted to a project repository containing a model of the application can be tested at check-in to ensure that the code contains no dependencies that would break the model. As applications have become ever more complex, improved modeling support helps to unify the original architect's vision of not only the application but the application code itself. The modeling support will ship as part of "Oslo," Microsoft's code name for its upcoming model-driven and service-enabled application toolset(Oslo is MS's vision, but what, exactly, is it? What kind of app? EG). Brian said developers could expect a CTP of Oslo at Microsoft's PDC conference in October.
Being in the front row for perhaps Bill's last keynote reminded me how long I've been working in this industry; I remember when IBM chose the relatively unknown company Microsoft as the supplier of its PC operating system—DOS. Bill's departure comes at a time when development is undergoing a major shift, where instead of having to learn new languages or new hardware platforms to gain new capabilities, developers can concentrate on gaining deep knowledge of their core focus areas, relying on tool improvements to give them access to new capabilities and new devices, while still using their existing tools. We all owe Bill a debt of gratitude. Sure, he was lucky to be in the right place at the right time, but he also helped create our industry and make developers a driving force in the modern world. Thanks, Bill. Good luck in your new endeavors. You'll be missed.
Warning: this may be considered free advertising—or then again—it might just be considered entertaining and educational.
The FiveRuns and RailsEnvy guys created videos for the Rails Conference, which just ended. They showed one of the videos before every keynote (you might remember last year’s Mac vs. PC / Rails vs. PHP ads too, which were also hilarious). You might come away thinking these guys are too-cool-for-school, but then again, they just might be on to something.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 |










