Posted on 06/22/2002 12:48:53 PM PDT by Dominic Harr
Microsoft .Net software's hidden cost
Sat Jun 22,11:11 AM ET
Joe Wilcox
Companies planning on moving their old programs to Microsoft's new .Net software plan had better prepare for sticker shock: Making the conversion could cost roughly half of the original development cost, Gartner says.
More Newsletters (CNet/ZDNet Privacy Policy)
|
That may come as a blow to penny-pinching information systems departments in big companies, even those very familiar with Windows programming.
Typically, moving to a new software release isn't so costly. But, warns Gartner's Mark Driver, .Net isn't just a new release of Windows.
"People mistakenly assume the cost of upgrading will somehow be the same as going from one version of a well-established product to another. That's definitely not the case (with .Net)," said Driver, who devised the cost model.
Ari Bixhorn, Microsoft's product manager for Visual Basic.Net, disputed Gartner's conclusions. He said most conversions to .Net are about 95 percent error-free, meaning they can be completed at a cost much lower than what Gartner estimates.
Gartner, however, considered factors other than code conversions in its analysis, such as training and lost productivity. Bixhorn said he didn't see either training or productivity problems as much of a concern.
Microsoft's .Net plan includes new releases of the company's Windows operating system and other server software, along with development tools and infrastructure to make programs more Internet-aware. One new technology supported by .Net is Web services, which promise to make linking internal computer systems, and systems residing in multiple companies, far easier than current methods.
What's unclear is whether the additional cost of moving to .Net will slow Web services releases. Several technology buyers told News.com this week that they are waiting for additional standards and better compatibility before they commit to large-scale projects.
The most prominent piece of .Net released so far is Visual Studio.Net, a new version of Microsoft's development tool package, which debuted in February.
Visual Studio.Net includes new versions of familiar tools such as Visual Basic and Visual C++. But the tool bundle is radically different than predecessors. It includes a new development language called Visual C# (pronounced "see sharp"), and introduces the .Net Framework and Common Language Runtime, which are technologies for managing and running programs.
The new development tool package also ushers in ASP.Net, a specialized type of software called a class library, replacing an older technology called Active Server Pages (ASP) for creating Web applications that support new Web services technology.
Still, long term, Driver predicted that making the switch to .Net for building new programs would help lift productivity and create more efficiency within companies.
"Over the course of the lifetime of an application, .Net might give you 20 percent cost advantage or more over using the older technologies," he said. "You will be able to recover that migration cost over the course of three to five years."
Companies making the switch could do so all at once, but most will likely make the change over a longer period of time. Either way, the cost of migration stays the same.
"It's an issue of paying the 60 percent up front or over the course of three years," Driver said.
The largest cost is code conversion. Because it is difficult to calculate, the 60 percent estimate in some cases could be too low.
The cutting edge can hurt
Gartner based its migration cost estimates on Visual Basic.Net and not on its cutting-edge, Java-like Visual C# programming language. One reason: Cost. A forthcoming study will say the migration cost associated with C# would be even higher than the standard Visual Studio .Net tools, Driver said.
"Some clients have asked about going directly to C#," Driver said. "For the vast majority, going from Visual Basic to Visual Basic.Net may be painful, but it's going to be the least painful of the strategies."
C# is seen as a crucial programming language for advancing .Net. Use of the language doubled in six months, according to a March study by Evans Data.
Without a doubt, companies switching to the new tools and migrating software applications over the long haul will find the switch over the easiest, but even they face difficulties in planning. Driver used the example of a developer running the older version of Visual Studio and Visual Studio .Net over a protracted period.
"That becomes untenable at some point," he said. "You've got to make the switch. So even if you go with a hybrid model, you've got to remember that you're spreading your resources thin over two different platforms."
There are other concerns about making the switch to .Net. At the top of the list is security, Driver said. Following a January memo from Chairman Bill Gates ( news - web sites), Microsoft cranked up emphasis on security. But problems have still surfaced in recent months.
"Some people are hesitant to put Internet Information Server (behind a public Web site) because of security issues. Well, .Net doesn't really address those problems," Driver said. "IIS is still just as vulnerable with .Net running behind it as the older ASP (Active Server Pages) code running behind it."
IBM and Sun also are pushing hard into Web services, advancing their own technology strategies and tools.
Security will be an important part of that emerging market. Market researcher ZapLink said on Thursday that the Extensible Markup Language ( XML) and Web Services security market would top $4.4 billion in 2006.
So it's starting to sound like it's impossible to have an open tech discussion with an MS-only developer. If I can't even suggest that it might have been a mistake to use certain approaches and technologies to them?
Boy, I sure learned a lot about .NET on this thread . . . or at least I learned a lot about .NET developers!
No, he specifally said "Code and Test". Not dev process, that is a phrase that would have made sense. In post 17, he specifically said:
I had an application that took me eight weeks to code and test in ASP. Converting it to ASP.NET took eight hours.
You're backpeddling, rephrasing what was said.
He specifically said it took 8 weeks *just to code and test*.
Then he later amended that to 1 week.
He said the sky was green.
For example, when I was building a report on Employee's projected availability, I built an employee object and populated that object with references to the relevant dept objects, manager object, etc.
Number crunching???
Those of us in data processing use the term "number crunching" to refer to applications that are computational intensive. You know analog transforms, heavy use of floating point, etc. I wouldn't classify resource tracking/project management software that way. Try signal analysis, ray-tracing. Anything that would be embarassingly parallel!
If you were to build that report in a stored proc, you don't have that option. And the resulting spaghetti SQL is a mess. And the DB has to try and simulate all those relationships in temporary tables, which is sloooooow.
You've just described an application that makes heavy use of aggregation/association and not generalization/specialization. Oddly enough thats why they put the friggin' R in RDBMS. Odd you would think a Join of three tables to be spaghetti. And are you suggesting that RDMSs create temporary tables in doing simple or even comlex joins? Because they don't! The only time temporary tables are created that I am aware of is in doing unions, which in my experience are fairly uncommon. Of course I can only speak for Oracle, SyBase and DB2. And not for amateur home grown non-ANSI 92 compliant stuff like MySQL.
Is this really news to you?
Oh yeah it certainly is, and I always ask for references.
Interesting, I use 'number crunching' to mean an application that crunches numbers -- runs calculations.
You mean you don't understand that?
Odd . . .
And you really don't understand how using OO techniques can speed up running reports on data?
Wow, didn't expect to have to defend the very basis of OO design here. I kinda expected a .NET thread to be about OO techniques.
Let's just say that I disagree. 'Relational' databases have serious limitations in reporting that can easily and quickly be solved with OO techniques. The biggest problem with 'relational' dbs is translating the data into real-world, 'object oriented' records. Someday someone will nail the perfect OO db, I'd bet.
Specifically, as in the example I gave, when the data has relationships that are many-to-many, like employees to projects, using an OO architecture to amalgamate and crunch the data can have serious payoffs in terms of performance and code readibility.
Man, been a while since I've talked to someone that didn't even believe in OO.
And the back-end wasn't in ASP, therefore was clearly not part of his, " I had an application that took me eight weeks to code and test in ASP."
This is amazing.
His clear statement, "code in test in ASP" you insist on claiming means, "full dev life cycle, including the non-ASP stuff".
He said 8 weeks for the ASP stuff alone. Then he explained what ASP stuff he meant.
His statement was clear, and you're trying to backpeddle so fast you're going to trip. 8 weeks to code and test in ASP. He then made clear what was coded and tested in ASP.
Then he admitted he meant only 1 week coding and testing in ASP.
Is this saying a lot about trying to have a conversation with you? If you're willing to twist the obvious?
Here's food for thought. We had a workflow application that ran as a Java servlet. Basically it moves notices around to user work queues. It took about 4 weeks to implement in Java (that's post requirements and specifications). Now I took that application and migrated it to C++ in 2 days.
Now if I was to sit here and insinuate that supports a theory that C++ development is 10+ times more productive than Java, you'd be well advised to consider me an idiot.
That Dominic feels free to make those assertions concerning ASP vs. Java ... well you get the idea.
Maybe I do just need the MS guide to the English language. Clearly words don't mean the same things to ya'll that they do to the rest of us.
Let's see -- you were wrong about the OO reporting stuff, so now you'll try and insult me in other ways.
Oooookay.
Whatever floats your boat.
For the record, the related dev times of ASP, ASP.NET, C# and Java has been the topic of many articles, discussions and experiments. If you disagree, it'd be fantastic to hear your opinions and experiences.
If you're only here to flame and insult me for not being an MS cheerleader, well then, let's just say I appreciate the attention!
Uh huh.
He specifically said 8 weeks to code and test in ASP.
You're trying to claim that doesn't have a specific meaning.
The 'explanation' is that he simply mis-stated, made a slight error in what he said. He explained in detail later, and you saw that explanation, so that's how you know what he meant.
And now you're trying to claim that a simple, obvious sentence doesn't say what it obviously said.
You just dislike me, because I have the nerve to actually have the opinion that MS is not always the very best technology. So you jumped down my throat. And a thread that was suppose to be about .NET became about me and Jeeves.
Seems pretty clear to me.
As I'm sure you won't be surprised to hear, I have serious doubts about that claim.
But hey, I don't really care overall, as I hope I've shown. I just want to have a tech discussion. When your posts have substance, I try to respond to the substance, ignoring the high-school name calling.
I think you believe that any suggestion that there is anything anyone does better than MS is a battle to be fought, and an enemy to overcome.
I really wonder what your actual age is, considering the level of discourse typical of some of your posts. Again, not that I care if you're 15 or 55. It's just always interesting to speculate.
I'm sure you've come across many, many folks online pretending to be what they aren't, as I have.
Right, he made a claim in 17. I questioned him about the claim, and it turned out the claim was inaccurate by post 40. In his subsequent posts he said some very different things than he said in post 17.
And then in his post 47, he got upset and left.
You came in at 42, not "from the first line". Therefore you came in after my questions made it obvious his original statement was in error.
And then you jumped down my throat for challenging his origninal statement.
Funny, eh?
Jeeves: The sky is green.
Harr: No, the sky is blue.
Jeeves: I mean, the sky is blue.
Discostu: Harr, you idiot! He clearly meant the sky was blue! What is your problem?
Oops, I mean you came in at 41.
Anyway, you weren't there until *after* the explanation had already been given.
And I think you opposed me in a purely knee-jerk reaction. If I'm on one side, you were going to take the other.
Thank you Microsoft.
The only problem with .Net is that my integrity will probably force me to recommend a solution to my clients that might mean much less business for me. After all, once you get them setup, networks based on Sun's and Mac's require little outside maintenance and upgrades are almost always quite painless. Fortunately, most corporate decision makers have bought thoroughly into the Microsoft propaganda and will not take such advice, so my increased income is probably assured.
That's why I like Microsoft so much. Every time they release a new product, they create more work for consultants, like me. They have convinced most of the world that problems are just a normal part of computing and, in doing so, have single-handedly created a booming IT Consulting industry, that would not exist if the Mac had become the standard.
Thank you Microsoft.
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.