• Blog
  • About
  • Archives

elemental links

brenda michelson's technology advisory practice

5 Enduring Aspects of Cloud Computing

January 6, 2010 By brenda michelson

Forgoing the hyperbole of cloud computing predictions – sensational outages to a cloud-in-every-pocket – I want to start 2010 discussing the enduring aspects of cloud computing on enterprise business-technology.  Regardless of the final manifestation of cloud computing, and the tally of deployments, successes and failures, I believe cloud computing will influence the expectations and practice of enterprise business-technology throughout the decade.

I have identified five enduring aspects from a practitioner perspective.  Certainly, there are enduring aspects on the provider side as well, such as advances from Infrastructure 2.0 and disruptions created by new economic and pricing models.  However, I will leave that list for provider-side specialists. 

The first three enduring aspects focus on the expectations from business-technology organizations. 

1. Resource Optimization – Cloud computing has raised Executive awareness to the disproportion of installed versus utilized computing capacity, along with the requisite expenses of space, power, software licenses and support personnel. 

If they have not already, Executives will mandate infrastructure ecology initiatives, starting with the consolidation and pooling of compute and data resources, and progressing to software execution efficiency. 

2. Capability Delivery – The automation, scaling and on-demand characteristics of cloud computing reduce delivery lead-time for infrastructure services, and commodity software from a few weeks, to a few minutes. 

The ability to optimize capability delivery allows businesses to capture runaway demand, shorten time-to-value, and control steady-state costs.

With or without cloud computing, organizations will need to adopt technology strategies, operating models, and technology investment practices that balance opportunity, time, control, capital outlays and operating cash flows.

3. Value Proposition – Cloud computing technologies and operating practices commoditize the delivery and support of common technology infrastructure and business software.  Cloud computing or not, Executives will determine they have immense choice in respect to providers of basic services. 

Information technology organizations with expressed, or perceived, value as infrastructure plumbers, operations specialists, or light-keepers, need to revamp their offerings and profiles, moving further up the stack, and out to edges, closest to business value creation (customers and suppliers) and business innovation (new capability delivery).

All business-technology organizations will need to adopt technology strategies, management and architectural practices that clearly separate, yet easily bundle, business information, business capability and underlying infrastructure.

The last two enduring aspects focus on business-technology practices.

4.  Software Design Discipline – The effectiveness of cloud computing – scalability, resource optimization, performance and cost containment – is highly dependent upon the design, quality and deployment readiness of the code base.  

Cloud computing brings a (welcome) return to software design practices, such as separation of concerns, code execution efficiency, modularity, cohesion and loose coupling.  In addition to run-time and change-time concerns, software design will need to account for deployment efficiencies, including packaging and bundling strategies.

For truly scalable systems, software architects, designers and developers will need to incorporate technologies, techniques and patterns originally employed in financial markets and large web properties.

Even if cloud computing is a passing fad, software design discipline stands the test of time.

5. Emergence of Platforms – Cloud computing, along with Web 2.0 and mobility, have changed the development experience from working directly with O/S services, middleware protocols, and data stores to interacting with the development toolkits and APIs of integrated, purpose-built, platforms. 

The platform layer intersects commodity, standardization and innovation.  Developers harness the power of the offered infrastructure, data, assembly and presentation services, adding their own code and/or configurations to deliver new business, consumer or personal capabilities. [Platform examples include: Google AppEngine, Force.com, iPhone and FaceBook.]

Leading enterprises have platform strategies and implementations that free their developers to focus on business capability delivery.  Cloud computing and “there’s an app for that”, have heightened awareness on the power of platform models in the enterprise.

What do you think? 

What will endure from cloud computing?  For those feeling particularly prescient, what will be the final manifestation of cloud computing?   

 

[cross-posted from Elemental Cloud Computing]

Filed Under: cloud computing, software development, trends Tagged With: archive_0

Quick Poll: Economic Downturn & Discipline in IT Business, Engineering

October 8, 2008 By brenda michelson

I’m sure it comes as no surprise that lately the bulk of my conversations with IT practitioners and providers center on the economic downturn that started in the U.S. and is now going global.  As I’ve written previously, the natural reaction in hard times is cost cutting.  But, cost-cutting alone is often problematic in the long-term, as a recent McKinsey article on Managing IT in a down-turn calls out:

"IT capabilities have fostered new sales channels, defined new customer segments, and even helped create new business models. 

These factors make reductions in IT spending more complicated than ever. Simplistic cuts, applied across the board, may endanger critical business priorities from sales support to customer service. That potent message should resonate even among corporate officers anxious to find quick savings. 

CIOs, of course, should continue to make their operations more efficient and to reduce costs, especially in areas that show signs of bloat. Discipline tends to slip during a lengthy upturn in spending such as the one that has occurred in recent years. Reducing pockets of unproductive expenditure will bring savings that help meet corporate cost targets. 

Still, except in the most dire circumstances, turning off technology investments during a downturn is counterproductive. When business picks up, you may lack critical capabilities. Besides, many technology investments can improve profitability in the short to medium term."

So, the wise IT executive should continue to invest, but those investments need to be selective and well-executed.  This brings me to a second conversational theme of late — software engineering discipline.  At the recent SOA Consortium meeting, one of the findings Jeanne Ross shared was that "the table stakes for SOA success are mature project management and software development practices".  The software engineering theme re-emerged during our ‘soapbox derby sessions’.  While respectfully disagreeing on the "how", both Victor Harrison of CSC and Peter Walker of Sun called out the more ‘art than science’ (my term) mode of the majority of today’s software development.   And that to achieve success with any highly distributed, shared software development approach, more (some) rigor is required. 

Yesterday, with these ideas swirling around, I tweeted the following question "does corporate IT gain or abandon discipline/structure in software dev/delivery in tough economic times?"  The responses I received varied from "I hope so, lack of discipline caused this mess" to "the first victim of any time/$$$ pressure is quality". 

All that said, I’ve created a quick poll to gather additional perspectives on my question "Does your IT organization gain or abandon discipline during an economic downturn"?  The poll answer choices separate IT business discipline and engineering discipline. 

If you would complete the following quick poll, I’d appreciate it.  Feed subscribers, here is the direct link. 

Filed Under: business, business-technology, software development

WSJ Business-Tech blog on the gender divide in code, yes, software code

June 6, 2008 By brenda michelson

This post on men writing code from Mars while women write more helpful code from Venus caught my attention this morning — must be a sign that it’s Friday of a long week. 

“Emma McGrattan, the senior vice-president of engineering for computer-database company Ingres–and one of Silicon Valley’s highest-ranking female programmers–insists that men and women write code differently. Women are more touchy-feely and considerate of those who will use the code later, she says. They’ll intersperse their code–those strings of instructions that result in nifty applications and programs–with helpful comments and directions, explaining why they wrote the lines the way they did and exactly how they did it.

The code becomes a type of “roadmap” for others who might want to alter it or add to it later, says McGrattan, a native of Ireland who has been with Ingres since 1992.

Men, on the other hand, have no such pretenses. Often, “they try to show how clever they are by writing very cryptic code,” she tells the Business Technology Blog. “They try to obfuscate things in the code,” and don’t leave clear directions for people using it later. McGrattan boasts that 70% to 80% of the time, she can look at a chunk of computer code and tell if it was written by a man or a woman.”

The post then goes on to tell of Ingres’ effort to instill coding standards to make the code “more user-friendly and gender-neutral”.  Now, I can clearly recall being in a code review of developer who defended his use of binary-addition to decrement a loop in COBOL as “intuitive to him” and “the only way he thought of doing it”.  Needless to say, we (a mixed gender group) asked for a change to make the code “intuitive to everyone else”.  But, this was clearly an exception — and why I remember it from long ago — and I never considered it “a guy thing”.  Just a “that guy” thing.

So, my question is what do folks think of the above?  Is the need to prove code cleverness a geek thing?  Or, a guy geek thing?  And is understandable, maintainable code a girl thing?  Or, is it all a matter of style, time and environment?

Filed Under: software development

Brenda M. Michelson

Brenda Michelson

Technology Architect.

Trusted Advisor.

(BIO)

  • Email
  • LinkedIn
  • RSS
  • Twitter

Recent Posts

  • Experts Sketch
  • PEW Research: Tech Saturation, Well-Being and (my) Remedies
  • technology knowledge premise
  • The Curse of Knowledge
  • better problems and technology knowledge transfer

Recent Tweets

  • Harshest editorial feedback I ever received “stultified and like death”… (wildly popular paper, as it turned out):… https://t.co/qWNwBCOS5i February 28, 2023 2:16 pm
  • “…where the process of drawing itself can take us. We can follow a suggestion, a squiggle, shadow, or smudge, and s… https://t.co/oRg0x2LoXG November 30, 2022 5:05 pm
  • On the waiting list for Post, join me (on the waitlist) via https://t.co/U8wYK707f6 November 24, 2022 4:17 pm
© 2004-2022 Elemental Links, Inc.