1.27.2011

Keep the codecs free — and in the public domain

Proprietary multimedia formats annoy me. I don’t care if it’s DOCX or SWF or WMV or H.264 or CR2. I don’t like them, and wish they’d go away. Or at least, I wish they’d stay off the public Internet.

Software developers should not have to pay to be able to read or write data in a specific file format – or sign a license agreement.

Web developers and website owners should not have to choose file formats based on researching which browser makers have licensed which codecs.

I’m not talking about specific implementation of formats, whether it’s for documents, spreadsheets, audio files or multimedia files. I’m all in favor of both open-source and closed-source implementations of codecs and file interpreters. Rather, I’m talking about the openness of the file format itself.

As we increasingly encode vast quantities of data into digital files, we shouldn’t have to worry that the data itself is in a format owned by or controlled by a commercial entity. We should note cede control over which software can read and write data in those formats.

And we shouldn’t be forced to chose between “official” codecs vs. reverse-engineered codecs that may (or may not) be able to read the data correctly.

Take one file format close to my heart: CR2.That’s Canon’s proprietary file format for the raw images taken by its digital cameras.

Canon does not license the CR2 format to other companies. Therefore, when working with raw images, I must choose between Canon’s Digital Photo Professional picture-editing software, which can read CR2 but which I think is pretty poor, or top-shelf photo editing and workflow software like Adobe’s Lightroom and Photoshop (both of which I use) and Apple’s Aperture.

While Apple and Adobe did an excellent job reverse-engineering the CR2 file format, neither company can read and interpret the image-sensor data 100% accurately, and some image metadata is not available to their software.

This cheeses me off.

(Canon is not alone; Nikon similarly doesn’t license its raw image format, NEF.)

Not into cameras? We’re watching a bigger drama play out with Internet multimedia formats. It’s a huge drama, actually, since it affects many websites and, of course, rich media playing on mobile devices.

The development of HTML5 has been hampered because of the patent-protected nature of many of its component formats. One of its key components is the H.264 codec, developed by the Motion Pictures Expert Group. H.264, also known as MPEG-4 AVC, is widely known and used by many Internet developers, but it’s patented and must be licensed – which has been the basis of lawsuits.

Recently, Google decided to drop H.264 from its Chrome browser in favor of WebM, a newer specification that it’s been developing. WebM will be the core multimedia format on Android.

As I understanding it (see “FSF throws support behind WebM codec”), the word on the street is that WebM is pretty open. If that’s the case, then I support it. And I hope you do too – and wherever possible, shun any file format that’s restricted by patents.

Now, if only the fine folks at Canon (and Nikon) would understand that freeing their proprietary image file formats – and thus improving the ability of software like Lightroom, Photoshop and Aperture to handle their images – would be a competitive advantage, we’d all be better off.

Let it code, let it code, let it code

Winter time, Long Island, New York. Storm after storm means office closures, lost productivity, missed ship dates.

Visiting SD Times’ New York office this week, I enjoyed a few decent snowfalls. That reminded me of why I moved from New England to San Francisco back in 1990… our New York office is a nice place, but I wouldn’t want to spend the winter here.

Listening to the radio this morning after about a foot of snow fell, an analyst (I forget who) said that when employees work from home because they can’t get to the office, they work at approximately 80% efficiency.

Of course, that’s only for some types of workers. For the most part, that would include software developers, especially if they have access to a powerful laptop or desktop computer at home, and have either brought work home or can access their files over the Internet. (That’s where the cloud can come in handy.)

By contrast, some type of workers can’t be efficient at all when working at home. Sorry, gas station attendant, mail-room clerk, operating-room nurse, restaurant chef, train driver, firefighter, produce manager, or developer without access to a computer: You’re not 80% as valuable to your employer if you’re snowed in.

Let’s think about that 80% figure. In some ways, brain-centric workers like programmers should be more productive when working at home – unless, of course, they’re having to manage having their children home from school as well (snow day), or unless they don’t have access to their tools. Why more productive? No meetings, for a start. No loss of time for the commute. No wasted time around the proverbial water cooler.

On the other hand, there are a myriad distractions at home. The television. The fridge. The temptation to go back to bed for a nap. Pets. The fridge. Deciding to run some errands after the streets are cleared. Building a snowman. The fridge. And so-on.

And on the long term, of course, an organization that’s geared around having developers in an office may not be as efficient during a snow day as an organization that’s heavily Internet-centric, cloud-centric, and distributed-development-centric. In the short term, though, we should be able to manage.

How efficient is your organization when your employees can’t get to the office? Are there steps you can take to prepare for that contingency? And might your developers benefit from having an occasional planned “snow day” every so often, so they can work at home, heads-down in a change of venue, without meetings and socialization? Or would the lure of the fridge be too tempting?

1.20.2011

No more adult supervision on the Starship Google

Larry Page is taking over the command chair of the Starship Google. He replaces Eric Schmidt in the CEO role, who was brought in a decade ago to provide adult supervision, and who moves into an advisory position as executive chairman.

Before he joined Google, Schmidt was already a legend in the computer industry. He was praised for his work at Xerox PARC, Sun and Novell, renowned for both his engineering skills and business acumen.

Hiring Schmidt as CEO back in 2001 was the smartest move that the brilliant, but immature, Google co-founders Page and Sergey Brin could have done. Page and Brin constantly pushed the envelope of technology – they didn’t know what couldn’t be done, and so they did it anyway. Schmidt make it all work by doing all those pesky details that entrepreneurs don’t want to do

You can read Schmidt’s blog post about this change
, where he says,

But as Google has grown, managing the business has become more complicated. So Larry, Sergey and I have been talking for a long time about how best to simplify our management structure and speed up decision making—and over the holidays we decided now was the right moment to make some changes to the way we are structured.

Now, I don’t know the real story, but of course, it’s never as simple as that. Did Schmidt want to step back and focus on other interests? Was Page feeling that after a decade of the older engineer's tutelage, he was now ready for his moment in the spotlight? We’ll probably never know.

I’m concerned about what this change means for Google. When you move beyond its core business of search, AdSense and AdWords, the company feels incredibly scattered, running in all directions at once.

Yes, Google has got an incredible success in Android, but it’s unclear how it helps the bottom line. Ditto for the fast-rising Chrome browser and Chrome OS. What about book archives? Knol? Free office suites and email hosting? YouTube? Self-driving cars? Wave and Buzz? Print ads? Street View mapping? Web services and cloud computing? Social networking? Blog engines? Orkut? Internet phone calls? Photo sharing? Health records? What are they doing at the Googleplex?

In short, although Google makes tons and money and gobs of profit, the company lacks focus. Now, here are the questions:

1. Does the lack of focus come from Schmidt? Doubtful.

2. Does the lack of focus come from Page and Brin? Probably.

3. Was Schmidt able to rein in Page and Brin? Maybe at first, but it seems unlikely.

4. Was Schmidt feeling frustrated? Well, if my premise is correct, who wouldn’t be?

My guess is Schmidt threw up his hands. I wonder how Google will run without his adult supervision… but if my theory is correct, it’s been pretty much that way already for the past few years.

1.10.2011

The wonderful world of platform fragmentation

Look at all the wonderful new toys announced last week at the annual Consumer Electronics Show in Las Vegas. Tablet computers and lots of things running Android. Internet-connected televisions that have browsers and apps, such as Samsung’s Smart TV. A new app-store model for OS X, that is, Apple’s Macintosh notebook and desktop computers. Lots and lots of new things.

For consumers, this represents not only innovation, but also really tough choices. Now, when you choose, let's say, a television, you can’t just look at size, picture quality, sound quality and price. If you want the latest in technology, you also have to see how well the television does on the Internet (i.e., its internal software), and decide whether you believe that the company’s app-store model will attract developers.

It’s worse if you’re an enterprise development manager, or an executive charged with choosing and funding app-dev projects. (ISVs can simply choose to pick popular favorites.) If you work for a media company, let’s say, or a retail chain, or a bank, or a government agency, you’re looking at massive fragmentation. Which platforms to build for right now? Which to ignore? Which to handle with a wait-and-see attitude? Fragmentation is painful.

Not only that, but there are real questions about how to develop for all these platforms. Native tools often provide the best results but require a large investment in training and technology, and it’s difficult to ensure feature parity. It’s also hard to balance the need to have native-looking user experiences with having a consistent approach across all platforms.

The other big choices are multi-platform frameworks. They can simplify development, but often with a least-common-denominator approach. You’re also at the mercy of those frameworks’ developers in terms of which platforms they support and how robustly they support each platform. We are experiencing fragmentation there too: I’ve lost track of how many frameworks there are, both open-source and proprietary, vying for developers’ attention.

Once you’ve written your app, now you have to figure out how to distribute it. Forget shipping CD-ROMs. Now you need to hook up with and manage your software’s presence in any number of different app stores, some by hardware makers, others by carriers, some by third parties. Each app store has its own rules, technical requirements and payment model.

Ouch.

This new world of platform fragmentation is a far cry from the not-too-distant past, when we had far fewer choices—or in some cases, no choices. Building desktop software for business users? Win32. Designing a website? Make sure it runs on Internet Explorer, and maybe Firefox. Writing a rich Internet application? Flash. Creating a server application? Choose Java, Win32, or native code for Linux or Unix.

I feel bad for consumers. I really do. There are too many choices, and it’s unclear which will be viable and which will crash and burn. The explosion of app platforms is reminiscent of the VHS vs. Betamax wars of the 1970s, or the more recent Blu-ray vs. HD DVD battles of the late 2000s—only with even more players. You can’t always tell who’s going to be the winner, and first-mover advantage doesn’t guarantee victory: Betamax came out first, for example, but was trounced by VHS.

But I feel worse for enterprises that need to have a strong presence across the non-desktop screen. Each one of these platforms requires education—and then hard choices, as well as investments that may not pay off. Yes, innovation is good and options are wonderful. But it will be better still when things settle back down again.

1.03.2011

2010 and 2000 in Review: XML, Dot-Coms, Microsoft Dominate Headlines

What a year that just past in 2010 – and what a year we can look forward to. Can you believe that the iPad only came out last year? That Oracle hasn’t always owned Sun and Java? That Microsoft used to be a powerhouse in consumer technologies? That Google used to be a search engine, and Amazon was an online bookstore?

As we’ve done since 2001, the editors of SD Times had a good time assembling a collection of year-in-review stories. You can find them here:

Year in Review: Overview
Year in Review: Agile
Year in Review: ALM
Year in Review: Java
Year in Review: Mergers and Acquisitions
Year in Review: Microsoft
Year in Review: Mobile
Year in Review: Open Source

But let’s look back even farther. In our Jan. 1, 2001, issue of SD Times, I wrote the introduction to our first “Year in Review” retrospective. Let’s see what I wrote about 2000, under the headline, “XML, Dot-Coms, Microsoft Dominate Headlines.” (Bear in mind that the introductory sentence was written ten months before the events of Sept. 11, 2001. It was a reference to unfounded Y2K hyperbole. But rereading it today: Yikes!)

The year 2000 came in with a whimper—no crashing airplanes, no massive failures of the power grid—and ended with a peculiar type of bang, as the U.S. election woes turned a few hundred Floridians and a few thousand lawyers into the de facto electors for the next Leader of the Free World.

Outside of the Tallahassee, Fla., and Washington, D.C., courtrooms, life was tamer, but only slightly. For software developers, the world was turned upside down by these top stories of the year:

XML Rules. The Extensible Markup Language came into its own in 2000. Forget about HTML and Web browsers: The name of the game is business-to-business commerce and platform-independent information exchange using XML schemas. Three years ago, everything had to be Web-enabled; now, it must be able to speak XML.

Bye, Bye, Billions. The second-quarter dot-com crash, coming after the Nasdaq stock exchange passed 5,000 in March, did more than turn a few billionaires into millionaires, and drive a few poorly conceived Web sites out of business. It also made it harder for new ideas to get funding.

The plummeting of share prices and the delay of IPOs put stock options under water, making it hard for many companies to attract technical talent. Profits, rather than technology, re-emerged as the best metric for valuing investments. The mood by the end of 2000 was gloomy on Wall Street and in Silicon Valley.

Whither Microsoft? Well, it’s back to lawyers. The antitrust trial ended with judgments against Microsoft Corp., and with a decision to break up the world’s largest software company. But as appeals began their lengthy process, there was no certainty as to what changes would occur in Microsoft’s business practices.

Many would agree that Microsoft’s influence appeared to have diminished by the end of the year, but the company still wields incredible market and technological influence — and has massive cash reserves. Although wounded and distracted, Microsoft is still king of the hill.

Nothing But .NET. As if to underscore that point, Microsoft unveiled its .NET initiative, designed to support true distributed computing over the Internet, enabled by its COM+ distributed component model and middleware, its XML-based BizTalk server and a new programming language, C#.

The first parts of the .NET system were released in the fourth quarter, along with betas of a few development tools. The importance of .NET, and whether it will allow Microsoft to dominate the business-to-business Internet, remains to be seen.

Wireless: The Next XML. Software tools vendors and enterprises alike went gaga over the Wireless Access Protocol, seeing the mobile-commerce market as the next great opportunity, and many application- server vendors repositioned their companies to bet the business on WAP.

Early reports from customers about poor quality of service, however, led some analysts to wonder if this huge untamed beast is actually a white elephant.


On the other hand, Bluetooth, a short-range wireless specification for embedded devices, achieved widespread industry support.

UML Is the Best Model. This past year saw a proliferation of new Unified Modeling Language-based design, analysis and coding tools. A drive to formal modeling has been a long time coming, but given the complexity of modern software engineering, the increased cost of hiring developers and the new business imperatives for delivering software on time, there’s no doubt that modeling is here to stay.

About Me

My Photo
Co-founder and editorial director of BZ Media, which publishes SD Times, the leading magazine for the software development industry. Founder of SPTechCon: The SharePoint Technology Conference, AnDevCon: The Android Developer Conference, and Big Data TechCon. Also president and principal analyst of Camden Associates, an IT consulting and analyst firm.