Archive for May, 2009

On Agility

...structures and vehicles of all sizes...
Image via Wikipedia

The most important quality of any IT company- web-based or otherwise- is the ability to quickly change, to turn on a dime. The openness and ability to foster innovation is absolutely critical, even expanding past IT companies; without change, you fall behind. And when you fall behind, it is only a matter of time before the inevitable collapse.

I read an interesting article in Wired yesterday about car companies. It suggested they become more like the computer industry, setting standards for components and allowing hundreds of parts manufacturers develop these sort of plug-in devices. These manufacturers would be smaller and agile, developing new, efficient parts, which not only helps the company sell more, but also gives consumers the chance to purchase better products. The big car companies would be like Dell, offering a sort of base upon which to customize and put together these parts.

The key here is that in a vertical company, where all processes are overseen by a massive beauracracy, is unable to change, while the hundreds of small parts manufacturers, overseen by a standards commitee, are each able to introduce breakthroughs in their respective areas. It is the same way with any IT company; one who is overseen by a large beauracracy is never going to stay with modern times. They are the ones still using IE6, to support their apps and unwillingness to change, while small 5-man companies are able to revolutionize the web with things like Youtube, Flickr, Twitter. When was the last time a large company built an app like that?

A lot of this requires upfront planning. The huge company is reluctant to change after investing millions in a system that is rigid; a properly planned system is one that is flexible; one should never think that you can build the perfect long-lasting solution. You can get close, but five years down the road, something will inevatably be superior and your app must be rewritten. Modularize your development and make this possible, because it is a matter of when, not if.

It is imperative that innovation is prized, that a company does demand absolute, 100% control, because when this happens, a company loses its character and becomes dead in the water.

Reblog this post [with Zemanta]

Tags: ,

When Does a Framework Become a Language?

Kleenex logo
Image via Wikipedia
A friend of mine posed this question a few days ago: at what point does a framework become ubiquitous enough to be a language on its own?
This came after a brief discussion about jQuery, where the point was made that we hardly ever use traditional, raw Javascript anymore. We use jQuery to write the core of our applications,  jQuery to do UI effects, jQuery for validation. We hardly ever even use the word Javascript. But, the question he posed is, is jQuery the same thing as Javascript? Is it different enough to be considered something else, or should it just be considered a framework – the same way .NET is a framework to C#, or Rails is a framework to Ruby?
Our conversation came down to semantics. The same way we (or at least I) call tissues not by tissues, but by Kleenex, or the way Texans call soda “Coke”, and although jQuery does not (in a technical sense) replace  Javascript (rather, extending it), perhaps it is simply cognitive recognition that presses us to call anything Javascript related jQuery. Someday, will everyone call Javascript by jQuery? It very well could be.  We’re still not calling it ECMAScript.
Reblog this post [with Zemanta]

Tags: , , ,