Re: Software Facts and Fallacies

As always, Arley has fun (no sarcasm there), lengthy comments on our favorite topics. This time, on today’s post about
Robert Glass’s Facts and Fallacies of Software Engineering

The book is okay, but it’s the same as all the other software engineering books: here’s what you shouldn’t do with all the examples of what went wrong, and here’s my theory of what you should do with absolutely no empirical basis whatsoever.

In his defense, many of the comments (well, that I’ve read so far) draw on successful aspects of projects, not just “do the opposite of this bad thing.” But, you’re right, it would be nice to read more accounts of success rather than accounts of what didn’t work out. And, yes, a book like that would be rad. I think Cockburn’s writing (fadish as some of it is…well, fad-setting) is of this bent as well. Also, in the book
there are some references to a NASA book of software management that looked interesting in this success-only vein.

The argument about the top performers and office space / working environment is completely fallacious, and you as a philosopher should easily recognize it as such. The author makes an implicit and unjustified assumption that better office space will result in better programmers. You’ve got to look at the cause, not just the effect. Perhaps the better programmers have better working conditions because they’re better programmers?

And, sure, sure, the “more space makes more productive workers” is not a rock solid (hell, even of wet noodle strength) argument: I immediately had the same thoughts as you. What you’d want to see is a group of people who were performing badly, move them to better workspaces, and then see them improve…and then repeat it until even Bacon would say, “enough already! Let’s have super!”

Personally, I don’t think office space has so much to do with benefits to productivity (directly), but to moral. Sure, we can say that’s an egotistical idea–it is!– but stroking egos (when they deserve it) is a huge part of keeping up moral.

To pick up on the success-only basis for broad, unprovable statements, the most successful projects I’ve worked were staffed by people with extremely high moral who were always very happy. If that moral and happiness ever dipped, the quality of work dipped too; once moral and happiness went back up, so did quality and productivity.

The problem, of course, is often that the situation is more complex: if ther’e someone who’ll take your place (either on- or off-shore) when you get fired for complaing about moral and happiness, and you can’t afford to loose your job, then you’re shit out of luck, you better shut-up and code. Whether that works in the long term is often of little worry to orginizations who work under similar fears on a quarterly basis.

(And, as one of my co-workers, Brandon, can probably appreciate, I just thought it was a good excuse to use a picture I’ve had laying around for some time ;>)

Coffee in Bed, or, Thanksgiving Lazy-Links

  • US State Governments avoid offshoring, e.g., “New Jersey now spends $340,000 per month on supporting its welfare benefits applications from a call center in Camden, which represents a 28% premium over the $266,200 monthly charge it was paying for the service when it was delivered from Mumbai. ” There are interesting responses to The Register’s article as well. Also, the CNET story on the same topic.
  • iPod Users Strike Back! “Irked at what seemed to be the early obsolescence of the music player, the brothers trekked around New York City stenciling the words “iPod’s unreplaceable battery lasts only 18 months” on all the iPod posters they could find.”
  • Chinese Myth And Reality:

    The way to beat China is to stop being scared of pressing our advantages, and to press them. Our advantages are speed, capital and liberty. We have tossed those away to fight the “war on terror” and in doing this, we have given away the real game.

  • On not using RSS/Aggregators: “I think the most important thing about this technique is that I am reading a wider variety of sites now than I was with RSS. With RSS, at a certain point, I was basically slaving away at reading all of the sites I was already subscribed to. Without it, I try out new names on blogrolls more often. “

Outsourcing Business

Evalueserve provides services for patent writing, evaluating and assessing the commercial potential for law firms and entrepreneurs. Its market research services are aimed at top-rung financial services companies, to which it provides analysis of investment opportunities and business plans. Another major product is multilingual services–Evalueserve trains and qualifies employees to communicate in Chinese, Spanish, German, Japanese and Italian, among other languages. That skill set has opened market opportunities in Europe and elsewhere, especially with global corporations.

Experts say these new trends are significant, and they will continue to grow over time. “Activities considered for ‘offshoring’ have moved up in value and begun to touch core functions, such as highly analytical processes,” says Stefan Spohr, a principal in the financial institutions group of A.T. Kearney, a global management consulting firm in Chicago. “More complex customer services are substituting simple data processing and call center activities.” Spohr adds that the higher-end functions being performed offshore these days include information research, financial portfolio analysis, customer data mining, statutory reporting and inbound insurance sales, among others.

. . .

Cutting costs is not the only reason why outsourcing such tasks makes sense for its clients; it’s also about higher quality of work, says Aggarwal. “Among the more unusual emerging developments is that business process offshoring is not merely a way to reduce cost by migrating core functions,” adds Spohr of A.T. Kearney. “It is also a strategic initiative to take advantage of technological advances and the human capital available offshore to fundamentally restructure an organization’s operating model.”

Evalueserve’s model works on a mixed system where anywhere between 50 percent and 80 percent of the work is handled out of an Indian facility, while the rest is done at the client’s location. For example, a patent filing assignment from a U.S. corporation may involve the Indian staff writing the patent in English or say, Japanese, and evaluating its commercial potential. But the client or its law firm would do the actual filing in the United States.

Us coders carp about outsourcing/offshoring all the time. Among other things, we always think it’s witty to suggest outsourcing CEO’s, managers, and other business positions. Well, there ya go. Yay capatalism!

Outsourcing Business

Fowler on “Enterprise Architecture”

As it turns out, I can get pretty cynical about enterprise architecture. This cynicism comes from what seems to be the common life-cycle of enterprise architecture initiatives. Usually they begin in a blaze of glory and attention as the IT group launches a major initiative that will be bring synergy, reuse, and all the other benefits that can come by breaking down the stovepipes of application islands (and other suitable analogies). Two or three years later, not much has been done and the enterprise architecture group isn’t getting their phone calls returned. A year or two after that and the initiative quietly dies, but soon enough another one starts and the boom and bust cycle begins again.

So why does this cycle happen with such regularity? I think that most people involved in these initiatives would say the reason they fail is primarily due to politics – but what they often miss is that those political forces are inevitable. To succeed in these things means first recognizing the strength of those political forces.

. . .

[Duct Tape Architecture?] A good way to think about this is that these initiatives should less about building an overarching plan for applications, and more about coming up with techniques to integrate applications in whatever way they are put together. (After all ApplicationBoundaries are primarily social constructs and they aren’t likely to conform to anyone’s forward plans.) This integration architecture should work with the minimum impact to application teams, so that teams can provide small pieces of functionality as the business value justifies it. I think you also need to focus on approaches that minimize coupling between applications, even if such approaches are less efficient than a more tightly coupled approach might be.

Be sure to check out the “Patterns and Best Practices for Enterprise Integration” link.

Fowler on “Enterprise Architecture”

Microsoft System Management

Microsoft does not plan to take on systems management heavyweights such as IBM, Hewlett-Packard and Computers Associates. But management software has become a key element of the company’s plan to convince corporate customers to base their most important systems on Windows, Hamilton said.

. . .

Microsoft’s two main management products–SMS and MOM–differ in capabilities. SMS is geared toward letting large companies distribute software updates and patches automatically to PCs over corporate networks. MOM, meanwhile, is for monitoring network events to head off problems, such as an overloaded server or dropped network connection.

. . .

With DSI, Microsoft is seeking to automate many data-center operational jobs and reduce the labor involved. The idea is that management software can be clever enough to know when a given application will have a problem and take actions to avoid it. For example, the systems management software could fire up an extra Web server when the existing machines are being overloaded because of a spike in traffic.

. . .

Central to DSI is an Extensible Markup Language (XML)-based data format, or schema, called Systems Definition Model (SDM). Microsoft calls a SDM a blueprint, or description, for how software and hardware components can be controlled.

Microsoft System Management

META keywords for

“social security, medicare, energy, tax relief, Education, policies, White House history, White House news, news, United States of America, 43rd President, George W., W., George W, President George W. Bush, President Bush, White House, government”

Usually, the old <META name=”keywords”/> HTML tag is used to describe what the page you’re looking at is about. Search engines (supposedly) use them for better indexing too. This META block may be old, but it’s interesting to see what keywords the White House associates itself with. Most of the Clinton pages don’t seem to have the META tag.