Notes
Slide Show
Outline
1
The Atlanta FoxPro Users Group

Why I Don’t Use .NET
  • Dave Bernard
  • The Intellection Group, Inc.
  • http://www.IntellectionGroup.com
  • DBernard@IntellectionGroup.com
2
Purpose
  • Share some interesting tidbits and gain perspective on the past, present and future of .NET.


  • Discuss how to evaluate .NET as a potential tool for your development toolbox.



3
Agenda
  • Introduction
  • Discussion Context
  • The Evolution of .NET
  • Evaluating the Move
  • Conclusions
4
Introduction
  • Who am I?
  • Over 27 years as developer, manager, executive.
  • Developing in FoxPro since 1990.
  • Vice President, Atlanta FoxPro Users Group.
  • MCSD (VFP), MCDBA (SQL 2000).
  • Co-founded The Intellection Group 2 years ago.
  • Develop custom extranet, EDI, PDA, TabletPC applications.
  • VFP 9, COM+, SQL Server, ASP/DHTML/CSS/JS, IIS/Apache, PHP/MySQL.
  • (Almost) No VFP GUI work.
  • SR, TTS, NLU, RFID specialists.
  • Conference speaker (FoxCon 2005, FoxCon 2006).
  • Author (FoxTalk 2.0 March 2005, TechLinks April 2005).
  • Reporter (UT coverage of SW Fox 2005, DevTeach 2005, SQL Pass 2005)


  • Mantras:
  • There are no technical problems, only business problems.
  • Try not to sell to IT people; sell to business owners.
5
Discussion Context
  • Most software development is still done by small organizations.
  • Success requires satisfying the business case.
    • On time, under budget, functional.
  • It's much easier to sell to business owners than IT people.
    • They are unimpressed with the complexities of my tools.
    • They are impressed with results, especially in short time frames.
    • To them, software is not magic, it's an important business tool.
  • Your company's value is directly related to the value you generate for your customers.
    • It's not related at all to whether Microsoft supports FoxPro.
    • The time when any new features in FoxPro has had a material difference to your ability to deliver value to your customers has long since passed.
  • The installed base of applications is a much more accurate predictor of future demand requirements than is marketing hype.
  • If your product can't deliver it doesn't matter what language its in. If it can, it really doesn't matter what language its in.
6
The Evolution of .NET
If you're trying to sell operating systems, the most important thing to do is make
software developers want to develop software for your operating system
  • Traditionally, OS releases were backwards compatible.
  • .NET broke this rule for the first time (VB.NET vs. VB6).
  • Many developers have moved to the web and refuse to move back.
    • Most .NET developers use ASP.NET, developing for Microsoft's web server.
    • Web development does not requires Windows to run the application!
  • This does not bode well for the profits Microsoft enjoyed via its API power.
    • The new API is HTML, and the new winners in the application development marketplace will be the people who can make HTML sing.
  • Microsoft appears to have concentrated their development effort in Vista on native code development.
    • The Vista desktop shell is not based on the .NET runtime.
    • Visual Studio .NET is not a managed application.
    • No services are implemented using .NET in Vista Beta 1. During normal execution, neither explorer, nor rundll32 uses .NET.
    • The .NET framework is provided as part of Vista, but only so that third-party code can run without the large download of the framework.
  • Conclusion: Microsoft has lost its confidence in .NET.
7
Evaluating the Move
All I see is different ways of doing things that we can do already.
  • Is there a .NET version of Help Builder?
    • NO! My counter question is: Does it REALLY matter?
  • Where's the ROI?
    • Largest learning curve yet. OO was bad, but this is worse. And where was the OO ROI?
    • How's it supposed to reduce cost, improve my revenue? Sell more? Expand my markets?
    • Higher risk: it's the unknowns that get you.
  • The time spent on a re-write is better spent on feature enhancements and other priorities.
    • From a technical perspective there’s very little that .NET would offer this application that can’t be done in the current environment.
    • Re-writing an application rarely yields any MAJOR benefits for the users of an application.
    • A re-written application is not necessarily a better application.
    • An existing stable application has many advantages because it has been real-world tested and tuned to the environment.
    • Before insisting on fixing something: "Do experienced users have a problem with this?"
  • Why do you think applications like Office are not managed applications?
    • There’s little to be gained from building a .NET version of Word.
  • .NET leads to hype-induced strategies:
    • Story about ASP .NET and Access.
  • Conclusion: It's all cost and no benefit.
8
Conclusions
.NET is an attempt to be all things to all people.
“The market for snake oil is strong.”
  • The development tools we use to solve these problem are becoming increasingly complex at a rate out of all proportion to the problems they are used for solving.
  • Microsoft has raised an enormous barrier to entry with VS .NET, especially for non-VS .NET developers.
  • Smaller shops cannot afford long sales cycles, long learning curves on new technologies or lots of non-billable time.
  • .NET seems be aimed at enabling novice/mediocre/bad developers to be productive in large shops.
    • The complexity of .NET will lead to developer specialization.
    • As we become more specialized, it takes more developers to cover a project.
    • You throw away your hard-earned habits and knowledge.
    • It takes many years to become an expert of any non-trivial development environment.
    • Tool knowledge is very relevant; the deeper the tool the longer it takes to really know it.
  • .NET is immature and unproven; reminds me of the unfulfilled promises of AI, OO, ADA, etc.
  • There is clear evidence that the rate of change in the software development paradigm (that business can absorb) is slowing.
  • What's going to make .NET "obsolete"? And what will I do then?
  • Don't discount the tools you already know.
9
Links
10
Thanks

  • This presentation is available at


  • http://www.IntellectionGroup.com/AFUGPresentationNET.htm
  • http://www.intellectiongroup.com/Presentations.asp



  • DBernard@IntellectionGroup.com