Friday, October 22, 2004

Si fallor, sum. (from my Borland blog)

I have doubts how all the things I want to include in this post really do connect. But they fall in the realm of thoughts that line up near each other, within a conceptual arm’s length.

One of the connecting points for me is a technological/sociological contrast of today - “Did offshoring create collaboration, or did collaboration create offshoring?

Numerous articles have been written about how the plummeting cost of telecommunication has been a key enabler of staff offshoring. But cheap phone calls are only part of the trend.

Simultaneously, transistors are getting both bigger and more powerful, and smaller and faster. And these shifts in each dimension have wide sweeping implications for how our world will continue to change. Big transistors are being used to manage what amounts to digital power (insulated gate bipolar transistors) – the underlying innovation which is making hybrid automotives possible.

Small transistors, which can use light, are coming our way courtesy of the inventor of the LED. As described in a recent MIT Technology Review ,

“The light-emitting transistor will be the focus of a new lab at the University of Illinois, where the versatile device was recently invented. Researchers at the Hyper-Uniform Nanophotonic Technology Center will work on improving and exploiting the transistor, which can pump out both electrical and optical signals in response to an input and could make it possible to replace the electrical wires in circuit boards with much faster optical pathways.”

Wow. Maybe not in my next Dell laptop – but I am betting that we see impact on the collaborative capabilities of computing from these inventions in the future. Better use of power, and faster computing pathways, both potentially end up in everything from laptops to factories. When is enough, enough? How will we manage all the computation and collaboration thrown off by these advances, almost like a cultural form of heat? What will we do with it?

Let’s look at some innovation in the “how we manage”. Telecom players, and providers to telecom players, are simultaneously scrambling to keep TCP/IP-based communication from eroding their revenue streams, while trying to create ways to charge for the manner in which TCP/IP-based communications is eroding their revenue streams. Two players have introduced capabilities that combine traditional telephony, IP-based telephony, point-of-presence information and multi-device management software. They are Nortel with its virtual enterprise efforts (think routers and switches for people), and Siemens with its HiPath Openscape which similarly attempts to unite presence with communication routes. Of course, all compliments of the IT Industry’s best and brightest who have clawed their way out of the primordial communications swamp, through the ooze of H.323 to emerge onto somewhat solid ground of SIP. (Hey Borland engineers, how about a little SIP with my ALM?)

What about “what do we do with it”? Here are a couple initiatives which are making use of the collaborative world we are creating.

If the dark side of our advances is found in some forms of outsourcing, then certainly the bright side is found in programs like the Digital Vision Program at Stanford (in conjunction with the Reuters Foundation) led by Stuart Gannes. It is a nine-month fellowship course that brings together 15 experienced technologists and social entrepreneurs from around the globe for technologically interesting and socially valuable projects. Stuart is a guy with plenty of talents – that he chooses to apply them in this endeavor is a tribute both to his qualities as person intent on making a better world, and to the capabilities we are imbuing in the world with collaborative technologies.

Not so far reaching, but an interesting thread of the tale comes in the formation of the Avalanche Technology Corp., a for-profit Minnesota-based cooperative. Created by a group of Midwestern CIO’s (folks are so darn friendly and practical in the Midwest), the purpose is to share pools of non-competing software capabilities in order to manage in-house development costs and risks.

And also from the plains states comes another attempt to keep IT jobs in America – albeit in new locations, through “farm-shoring”. It can be difficult for businesses in the large metropolitan areas, where many IT organizations are, to keep staff costs competitive. High housing costs and long commutes are at least partial culprits. Fact of the matter is, life isn’t nearly so expensive in Bagley, WI or Jonesboro, KS – unfortunately there are few relatively high paid jobs there. Kathy Brittain White, former CIO of Cardinal Health, is out to change that with her new company Rural Sourcing Inc., which has set up two development centers in rural Arkansas. Maybe this is a way to keep the kids close to the farm? If this catches on, it sure beats the heck out of fighting for the remaining jobs at the leather tannery in Sheboygan. It could also keep families and communities intact that have been under assault by our shift away from rural manufacturing centers over the last decades.

(Mom, clean my room, I’m coming back to Oklahoma!)

In any event, these ideas live for me in close conceptual proximity, and thanks to RSS, the blogosphere, and search engines they will at least briefly live on in text proximity search. No doubt.

Thursday, October 14, 2004

I'm "all in". (from my Borland blog)

There is a creaking sound around me these days. (Real creaking? Well no, that is just a metaphor.) The source of this is the discontent in many quarters with the metaphor of software factories, ERP for software, or industrialization of software.

Back to software factories in a second. It is somewhat surprising that people who live in the magic world of abstractions, such as software developers, programmers, coders, hackers do, would object so extraordinarily to an abstraction – like a metaphor. (I just realized I can barely write a paragraph without utilizing simile through comparisons using “such as” or “like”, but I digress.)

Anyway, the reasons why I found myself owning a computerized voice changer are irrelevant to the following point, but suffice it to say that for a sophomoric prank not too long ago I found myself a proud owner of a computerized voice changer for my Verizon Kyocera phone. I put in the batteries, turned it on, and proudly called my wife upstairs. Chuckling I spoke to her only to have her interrupt and say – “it sounds like you”. Darn. I flipped it on and off a couple times, back to on, and spoke some more – but it still sounded like me. I took the batteries out, rubbed them, rubbed the contact points, battery back in, turned it on, spoke – still me. Because my wife is a good person, many years used to me, she sat there on her phone, waiting for me to get over the disappointment. Wondering why it wasn’t working I stood there flicking it on-and-off. All of a sudden – my wife yelled – there – you sounded like a robot. I looked at the device – and it was off. “Ahhh…”, I thought., “cheap, foreign, imported electronic device.” They put the contacts in up side down, they mislabeled the battery compartment – and “off” really means “on.”

After this success – for some reason – I decided to read the instructions. And at this moment I realized how hard metaphor is to deal with. Because staring me in the face was the fact that even concrete, binary concepts like “ON and “OFF” are culturally and experientially based. The instructions told me “in order to operate, turn your voice ‘off’”. So – it was not mixed up terminals, it was not bad labeling, it was the fact that from the point of view of the device maker – the product concept was about turning my voice on and off – not the device.

So, if we can’t define “off” and “on” clearly across different experiences – how do we share metaphor? The answer is – in dribs and drabs, gradients, and shades of grey. We may sometime misunderstand metaphors, we may sometimes find them stretched, and yes, they can definitely be pushed (metaphorically speaking) too hard.

Back to software factories. Why are so many perturbed by this? Do you really think the objective is to turn all of us into something halfway between the drones of Lang’s Metropolis and Marshall’s Laverne and Shirley watching bottles sail by at the Schotz brewery?

Here just so we understand – let me turn my voice “on”.

Calm down. We are talking about the entire delivery process for software – not the writing of the actual lines of code. So – here is what I believe is a strong approximation of what Borland thinks about this.

Software developers, coders, hackers, programmers do something extraordinarily magical. They take abstractions and concepts and worry them, work them, and massage them until they turn into something almost real. Something so close to real that clicking a mouse button can cause thousands of real world actions to occur. Fundamentally, your job as developers is to push metaphors until they are willed into existence. So forgive those of us who once wrote code, who no longer write code, and maybe never did if we occasionally push a little too far.

Believe me. We know what you do is magical and cannot be replaced by a factory filled with drones. But think about it. There are no non-creative, no redundant, rote, boring activities left in coding? Haven’t we used advances in development technology to eliminate those things in the past? Aren’t there some left?

And then when we look at all of the software delivery process – requirements, documentation creation, builds, code reviews, deployment, collaboration, audits, metrics, and so on, aren’t there maybe a handful of things that can be more rigorously automated – without creating a soulless environment?

And what about the world we live in? Let’s say I get a job on a huge, super distributed transaction processing system – a really cool system that will be linked to dozens of financial exchanges around the world and requires local regulatory customization – so the team has many super duper brilliant people working on it around the world – each capable of extraordinary invention. Aren’t there “factory-ish” things we can do to help these often anonymous participants in the projects actually get a sense of each other? Can’t we bring some physicality to the virtuality – can’t we improve the collaborative infrastructure? Aren’t there “industrializing” things we can do to make this process go more smoothly project after project? When one of the team members leaves – is it a necessity that all the remaining participants are harmed by the amount of knowledge lost? Can’t a little bit be left behind – all without loss of soul or dignity?

I think it can happen. And I can’t think of a better group of people to try than Borland’s engineers in Santa Ana, Cupertino, Scotts Valley, Raleigh, St. Pete’s (Russia), Stockholm, Singapore, Brazil, Chicago, Atlanta, and places I am sure I am forgetting.

I think we can help individuals be productive, teams be productive and businesses be productive. But – hey, that’s just me. From my point of view it is all a game of Texas Hold-em and I, for one, am all in with my Doyle Brunson.

Monday, October 04, 2004

Welcome to the Blur (from my Borland blog)

I wanted my first Borland blog entry to provide some insight into the kinds of issues we are now seeing in our global customer base.

I have been fortunate enough since Q1 of this year to participate in many IT executive forums, CIO councils, and executive briefings to customers. After speaking with the first 50 or so CxOs, VP’s of Application Development, and Development Directors, the theme of their business reality became clear – they called it “The Blur”.

The “blur” designation came from a C-level executive attending a Dallas event. He went on to quantify that this came from a confluence of two effects that were driving his team; the increase of the speed of his company’s business cycle (not the IT delivery cycle, but the actual product change cycle for the business they were in), and the increase in the rate of change of technologies, in fact even standards (or near standards) coming too quickly to track.

As this year has advanced the metaphor has been echoed in meeting after meeting. The conversation goes something like this:

- My business delivery cycles are getting ever faster.
- The economy seems to be heating up – but where are my increased resources? (Hint: There may not be any.)
- Do I need to be thinking about CMMI certification?
- Do I need to go offshore? How do I stay onshore?
- Ouch! Sarbanes-Oxley regulation is starting to cost real money.
- What about Java vs. .NET?
- What about Weblogic vs. Websphere vs. JBoss vs. JOnAS?
- Is SOA real? When is it real? What do I do with it?
- And so on…

At the same time this ad-hoc community of IT executives seems to be honing in on practical strategies for confronting these challenges. Common themes are apparent in how these managers are coping. Interesting to note is how their strategies are often time “refinement” strategies – not major shifts – just subtle changes in point of view. (But remember the saying of the great technologist Alan Kay “Point of view is worth 80 IQ points”.) Here are some examples:

- They are employing a “product” model for development, not just a “project” model. (Probably a whole posting on this difference in the future.)

- They are also differentiating process work from project work – with an extraordinary desire to codify and communicate the iterative and perpetual work items that make up their processes

- Developing approaches for managing requirements as opposed to merely capturing them.

- Along those lines, a shift to testing requirements as well as testing code.

- Understanding that Bug Tracking is only one workflow of many workflows in the broader domain of managing Change Requests.

What do these practical solutions have in common? They all reinforce why customers have been so positive in their response to our last 2+ years of providing ever better, highly iterative, highly integrated application lifecycle management. And they reinforce and imply the need for Borland to do more. They make it clear that despite the progress we have made in helping individuals and teams be more productive in writing software – there are tangible, actionable capabilities that are a mere arms length away from today’s capabilities, that will help businesses be productive in delivering their software.

At Borcon 2004 we announced the Borland vision for Software Delivery Optimization along with indications of the types of features, partners and integrations involved in its realization. Only time will tell, but it seems to me that its ambitions will make real progress in bringing The Blur back into focus.