VFP: How to make Visual FoxPro cool

VFP: How to make Visual FoxPro cool


VFP: How to make Visual FoxPro cool
In case you hadn’t noticed, Visual FoxPro (VFP) is not very ‘cool’. In this post my aim is to cover 3 areas:
1. Why VFP isn’t cool
2. Why it matters
3. How we can make VFP cool
1. Why VFP isn’t cool
OK, so the first thing we need to agree on is that VFP is not cool. I’ve been chatting with a few people in the .Net space lately (including Adam Cogan and Paul Stovell) about their thoughts on VFP. I’ve concentrated on developers who have never used VFP because they can offer the most useful opinions (as opposed to say VFP/.Net developers who are pretty well aware of what VFP can do).
Straight away we need to acknowledge that there is a general lack of knowledge in the .Net community on what VFP can do. For example, they are genuinely surprised to learn how easily VFP can talk to SQL Server. Countering this is not my agenda however – there have been plenty of discussions on the lack of marketing for VFP and I have no interest in repeating them here. I will come back to ‘spreading the message’ later in this post though.
Rather, I’m going to concentrate on non-technical areas. Here’s some of the reasons why people think VFP isn’t cool:
Reason 1: It is ‘over the hill’
The first thing that VFP has against it is the fact that it has been around for so long. You’d think this was good thing right? Stable. Optimised. Large community. Nup. Today’s new developers are most interested in working with the latest technology. And VFP aint new.
Think Cobol. When people laugh about someone being a Cobol programmer, its not because they are bringing to mind the languages shortcomings. No, primarily they are thinking of how antiquated the language is – ie it must be a bit of joke to be still using it.

 

And sadly, Visual FoxPro is creeping into that same area. This is in spite of the fact that Microsoft is currently working on the next update to VFP and has confirmed support of it until 2014. ‘But it is so old!’ – yes, it must be well past its used-by date… or so the theory goes. Disagree with this all you like, but its a fact – ask a new uni student what they think of VFP and they’ll look at you blankly. Ask an older developer (not a VFP developer) their thoughts and they’ll query whether it is still around. Inform them it is and watch their reaction – it must be on the scrap heap surely… and on it goes. We’ve all run into this thinking out there.
And I can relate to this myself. I love all the new stuff, so I totally understand where they are coming from.

 

Now, at this point you may be questioning if new developers are really that ‘superficial’ – I mean surely they’d have some interest in comparing the tools and choosing the best one to work with. Nup. I reckon the actual abilities of the tool comprise roughly 5% of the decision process.
Don’t believe me? Then consider this – why are there more developers going into C# than VB.Net? C# is cooler, that’s why. Both languages have roughly the same functionality, and yet C# is perceived as being the language the smarter ‘real developers’ choose. Yes, and VB is for the people who find C# too hard…
There are ofcourse some pretty major (and vocal) proponents of VB, but the fact that they have to ‘explain’ why VB is just as good is part of the proof that it is the ugly sister. [btw I expect this last paragraph will probably get the most reaction from readers, and if so, then its because you’ve missed my main point.]
Main point => Coolness isn’t about technical ability, it is about perception. Perception is everything.
Reason 2: It doesn’t do Managed code
The second thing against VFP is that it is not part of the .Net suite. VFP code isn’t managed code. And here’s the interesting part – ask a new .Net developer why managed code is better. You’ll get a few mumbles about better memory management, some will mention garbage collection, but by and large, developers can’t tell you what’s so good about managed code. It’s just better OK.
So, because VFP isn’t managed code then it must behind the times. Ofcourse, they all use Word, Outlook, Skype, Windows Media Player and a host of other applications that aren’t written in managed code but that’s beside the point. The point is that if you are writing managed code, then the perception is that you are writing better code. Managed code is cool, VFP isn’t.

And don’t get me wrong – I am not ridiculing this thinking, I actually think it has a lot of merit. My point is to simply list reasons for the perception VFP has.
Reason 3: The Developer User Experience
The third strike against VFP is the tired look and feel. Run up VFP and you are faced with the old Windows 2000 menus. No nice Whidby menus, not even Office 2003 style menus. Open a few dialogs, all the icons are ancient. Nothing is 3D (except some of the new reporting dialog icons) and the status bar is from the 90s. Yikes it doesn’t even have a tabbed interface (someone really needs to do something about that {g})
Ofcourse this doesn’t matter one iota to the quality of the applications it produces, but these days the user experience is core.
Reason 4: It has the word ‘Fox’ in it
Although the word Fox has actually benefitted somewhat from the FireFox browser, over all, the words Fox and FoxPro are largely outdated. VFP really needs some rebranding to overcome this.
For many people there is a big stigma attached to the word FoxPro. They can’t disassociate it from the crappy FoxPro for DOS application they used in a company 10 years ago (my attention has turned to older developers here).
But even more recent developers remember the FoxPro that came with Visual Studio 6. They saw it there, but can only really remember the bland 16 colour icon it had. Again, the perception is that it is old and irrelevant.
And don’t underestimate the need for branding. Take Microsoft FrontPage for example. The stigma attached to FrontPage from prior versions (where it used to bastardise your HTML) was so bad that Microsoft knew they had to rebrand it. And so what was originally going to be FrontPage 2007 has now become Microsoft Expression Web Designer Edition (check out the demos for it here and you’ll see what I mean). Same product, different perception.

 

2. Why it matters
So what if VFP isn’t cool – it still does what we VFP developers need right?
Wrong. The biggest problem VFP faces going forward is lack of developers. The VFP programmer pool is most likely reducing.
I am assuming most people will agree with this statement.
The challenge for a VFP devleopment shop is not the technology, its the people. If you want to grow your business and take on new developers you need to have a good supply of them to choose from. So why are there less VFP developers?
This is because all the new uni students are studying .Net or Java. There are exceptions ofcourse, but this is the general trend (and I suspect this is happening in India and Asia aswell, not just in Western countries).
And why aren’t uni students learning (or interested in atleast knowing about) VFP? Put aside the hype and huge marketing push from Microsoft for a minute and it all comes back to the coolness factor. If we could make VFP cool, we’d get more takers.
3. How to make Visual FoxPro cool
So, what can we do to make VFP cool? Here’s some ideas (some we can do, some are out of our hands):
Rebrand it (Requires Microsoft)
It is time to lose the word ‘Fox’.
Microsoft has not indicated what the next update/version will be called. For now it is simply code named Sedna. However, I have started referring to it as Microsoft VF.Net
The VF is short for Visual FoxPro, and the .Net refers to the strong integration it has with the .Net 2.0 framework. No, it doesn’t write .Net code, but it does use the .Net framework. It is a .Net aware language.
I’ve also changed the icon in the top left corner of the VFP IDE. So when people see me using VFP they see the caption as Microsoft VF.Net and the nice icon. You can also disable the splash screen using a config file, so, unless you look at Help > About there is not a Fox in sight.
I also use FoxTabs (even though it is still in beta and has a few known issues, and needs a name change {g}) which improves the design experience.
Revamp the interface (Requires Microsoft)
The interface needs an overhaul. Update the menus to be like Visual Studio 2005, spruce up the dialogs and splash screen. Note, we don’t need a single change in functionality, only the look and feel of the product.
Promote the .Net integration
In demos to a mixed audience (ie not confined to Fox devs) I will try to mention the new Sedna examples (and gee I hope there is a new CTP coming soon…). Developers don’t realise how easy it is to use VFP with .Net (both using Sedna and using .Net controls – check out Craig Boyd’s and Rick Strahl’s site for examples)
Promote the data binding
The stuff coming in LINQ for .Net is great. However, show people how much more they can do in VFP, and tell them they should campaigning the .Net teams to provide the same. .Net developers should be shouting about how badly they have been treated in the databinding stakes. Tell them they can use VFP as an example of how it is possible to do it.
Promote VFP as a helper tool
VFP is a great tool to use along side Visual Studio. I’m not trying to convince .Net developers to change over to VFP, but there are plenty of benefits they could derive by having VFP as a helper tool, including:
– Need to write some quick SQL Server unit tests? Use VFP to setup test data. Then use VFP to make SQL SP calls and check the data returned.
– Need to pull out some data into a spreadsheet – use VFP.
- Need to script some updates – VFP is great as a scripting tool, similar to a scripting language like VB script.
– Need to check if a COM object is installed – try a quick CREATEOBJECT call in VFP.
Promote VFP as a prototyping tool
VFP is a great tool for .Net developers to be building prototypes in. Whip up a form, throw on some controls, bind to some example data, deliver the app to the client in a tiny installer, etc
Spread the message
This is not a new appeal. Craig Boyd (and even myself) have called for action from the VFP community to help let other developer communities know some of the great stuff VFP has (if for no other reason than they can then put pressure on Microsoft to hurry up and get it into .Net {s}).
However, the message comes down to dispelling a few of the misconceptions about VFP. Here’s a few things we need to promote:
– VFP works great with .Net
– Sedna actually focusses on .Net interop
– VFP is an awesome connector to SQL Server
– VFP has inline SQL calls
– VFP is well supported and continues to improve
Wrap up
After reading my post I’d understand if you thought I was anti .Net. In fact, the opposite is true – for example I look after a team of 15, over half of which are .Net developers. We do a lot of ASP.Net, SQL Server and BizTalk development. But we also do a lot of Visual FoxPro development. My concern is over the perception VFP has and the longer term issue we will face getting more VFP developers. Hence my interest in improving the perception VFP has.
Your thoughts
If you are a .Net developer and can spare a minute to send me your thoughts on what you think of VFP and what it would take to convince you VFP is cool, I’d love to hear from you. You can email me (cb@talman.com.au) or leave a comment on this post.
Acknowledgements
Paul Stovell and Adam Cogan have given me heaps to think about, much of which has ended up in this post. Any biases, inaccuracies or perceived hostility is totally mine though.

 


49 Comments

Add yours
  1. 1
    Craig Boyd

    One of the best VFP related blog posts I have seen in some time. It is well laid out and sound arguments throughout. Great job Craig!

  2. 2
    Craig Boyd

    One of the best VFP related blog posts I have seen in some time. It is well laid out and sound arguments throughout. Great job Craig!

  3. 3
    Anonymous

    Just a correction to one thing you said here…VFP code IS MANAGED. VFP has been doing managed code since it was released. VFP has its own garbage collector too. The main difference is that the code doesn’t run in the .Net CLR but the VFP runtime which are essentially the same. Of course the .Net CLR does have many more features it is basically the same.

  4. 4
    Anonymous

    Just a correction to one thing you said here…

    VFP code IS MANAGED. VFP has been doing managed code since it was released. VFP has its own garbage collector too.

    The main difference is that the code doesn’t run in the .Net CLR but the VFP runtime which are essentially the same. Of course the .Net CLR does have many more features it is basically the same.

  5. 5
    Colin Nicholls

    I was going to say exactly what Anonymous just said: VFP code is Managed Code. It just isn’t .NET code. Everything that can be said as reasons why “managed code” is good, can be said of Foxpro, and has been since day 1. A while back I tried to get MSFT to start calling the runtime the “FoxPro Virtual Machine” so that it would be placed in the proper perspective (“the java/.Net runtime is *how big*?” ) but in hindsight the term “virtual machine” seems to have lost its lustre so perhaps that was a good call after all.

  6. 6
    Colin Nicholls

    I was going to say exactly what Anonymous just said: VFP code is Managed Code. It just isn’t .NET code. Everything that can be said as reasons why “managed code” is good, can be said of Foxpro, and has been since day 1. A while back I tried to get MSFT to start calling the runtime the “FoxPro Virtual Machine” so that it would be placed in the proper perspective (“the java/.Net runtime is *how big*?” ) but in hindsight the term “virtual machine” seems to have lost its lustre so perhaps that was a good call after all.

  7. 7
    Craig Bailey

    Hi Anonymous and Colin,Yes, you are absolutely correct, and I should have clarified that part in the post. However at CodeCamp and the like, whenever developers use the term ‘managed code’ the understanding is that it is ‘obviously’ {g} referring to .Net code…

  8. 8
    Craig Bailey

    Hi Anonymous and Colin,
    Yes, you are absolutely correct, and I should have clarified that part in the post.
    However at CodeCamp and the like, whenever developers use the term ‘managed code’ the understanding is that it is ‘obviously’ {g} referring to .Net code…

  9. 11
    Paul Stovell

    Great post Craig. You’re absolutely right, it’s all about perception. I guess the next question is what do we do about it? A lot of the problems VFP faces would be a lot easier to solve with the help of Microsoft. What incentives do Microsoft have to support FoxPro?Let’s think for a minute about how Microsoft work. First, it’s my belief that Microsoft don’t make any money from selling developer tools. Infact, they’re running at a big fat loss. Looking at their balance sheets, you can see they bundle FoxPro and the .NET initiative along with “Server Tools” (this category also includes SQL Server and Windows Server), which is hardly breaking even. In contrast, their real income comes from Office and Windows sales. Microsoft make money because they make great developer tools and practically give them away (think about how much they could REALLY charge for Visual Studio if it was all about profit). This means all of us developers love developing for Windows, which means all software is built for windows. Since all software runs on Windows, end users have no choice but to buy Windows and Office. That’s the virtuous cycle that Billy G talks about.So we leverage that. You need to convince Microsoft that *they* can convince developers that FoxPro is cool. If they do, more software will be written for Windows and faster, which means more sales of Windows and Office for them. So rather than spreading the word to developers that they should use FoxPro, I’d concentrate on convincing Microsoft. Convince them the work they need to do to lift the profile of FoxPro is small and it’s worthwhile.

  10. 12
    Paul Stovell

    Great post Craig. You’re absolutely right, it’s all about perception.

    I guess the next question is what do we do about it? A lot of the problems VFP faces would be a lot easier to solve with the help of Microsoft. What incentives do Microsoft have to support FoxPro?

    Let’s think for a minute about how Microsoft work.

    First, it’s my belief that Microsoft don’t make any money from selling developer tools. Infact, they’re running at a big fat loss. Looking at their balance sheets, you can see they bundle FoxPro and the .NET initiative along with “Server Tools” (this category also includes SQL Server and Windows Server), which is hardly breaking even. In contrast, their real income comes from Office and Windows sales.

    Microsoft make money because they make great developer tools and practically give them away (think about how much they could REALLY charge for Visual Studio if it was all about profit). This means all of us developers love developing for Windows, which means all software is built for windows. Since all software runs on Windows, end users have no choice but to buy Windows and Office. That’s the virtuous cycle that Billy G talks about.

    So we leverage that. You need to convince Microsoft that *they* can convince developers that FoxPro is cool. If they do, more software will be written for Windows and faster, which means more sales of Windows and Office for them.

    So rather than spreading the word to developers that they should use FoxPro, I’d concentrate on convincing Microsoft. Convince them the work they need to do to lift the profile of FoxPro is small and it’s worthwhile.

  11. 13
    Ylber Aponte

    Excellent post, I in individual they are developer in VFP and in C # and I consider a productive developer highly and I always test first in VFP and soon it development in NETSedna bets strongly to an integration but reliable, position from VFP 7,0 can with something of work to integrate Web Services of VFP to NET and vice versa but sedna is effective integration! Warm Greetings Ylber Aponte Portalfox Venezuela

  12. 14
    Ylber Aponte

    Excellent post,

    I in individual they are developer in VFP and in C # and I consider a productive developer highly and I always test first in VFP and soon it development in NET

    Sedna bets strongly to an integration but reliable, position from VFP 7,0 can with something of work to integrate Web Services of VFP to NET and vice versa but sedna is effective integration!

    Warm Greetings
    Ylber Aponte
    Portalfox Venezuela

  13. 15
    Malcolm Greene

    Craig!Great post! I agree with your conclusions – a repackaged version of VFP with some cosmetic changes and a new name would be one of the best features of Sedna!Malcolm

  14. 16
    Malcolm Greene

    Craig!

    Great post! I agree with your conclusions – a repackaged version of VFP with some cosmetic changes and a new name would be one of the best features of Sedna!

    Malcolm

  15. 17
    Scotty

    Just a thought, but maybe its worth “leveraging” the FireFox bandwagon. After all, who was first, FoxPro or FireFox…FireFoxPro!!

  16. 18
    Scotty

    Just a thought, but maybe its worth “leveraging” the FireFox bandwagon. After all, who was first, FoxPro or FireFox…

    FireFoxPro!!

  17. 19
    Craig Bailey

    I’m just back from a weekend away, and am thus late in reading the great comments people have posted.To Carlos, thanks for the link to the status bar – initial thoughts are very good, I will be blogging about it more in the coming weeks.Hey Paul, your comments are worthy of a blog post in their own right. I will be responding separately. For readers who might have missed the connection, the comment is from the same Paul Stovell I met with and based much of the blog post on. From his comment here you can see what great ideas he has.To Ylber, I thank you for your thoughts. Yes, I agree, the integration (eg with web services) has been there for a few versions already. It is great that Sedna is going to extend this concept even further.To Malcolm, I totally agree. How can we push Microsoft to spend some of its budget on branding rather than interop? Finally to Scotty, what do you suggest? How can we ‘leverage’ the Fox name (and thus create a synergy going forward of homogenous core competancies… {g})?Thanks to everyone for their thoughts. Thanks also to Luis Maria at PortalFox who was kind enough to translate this post for the Hispanic community: http://www.portalfox.com/article.php?sid=2131Craig

  18. 20
    Craig Bailey

    I’m just back from a weekend away, and am thus late in reading the great comments people have posted.

    To Carlos, thanks for the link to the status bar – initial thoughts are very good, I will be blogging about it more in the coming weeks.

    Hey Paul, your comments are worthy of a blog post in their own right. I will be responding separately.
    For readers who might have missed the connection, the comment is from the same Paul Stovell I met with and based much of the blog post on. From his comment here you can see what great ideas he has.

    To Ylber, I thank you for your thoughts. Yes, I agree, the integration (eg with web services) has been there for a few versions already. It is great that Sedna is going to extend this concept even further.

    To Malcolm, I totally agree. How can we push Microsoft to spend some of its budget on branding rather than interop?

    Finally to Scotty, what do you suggest? How can we ‘leverage’ the Fox name (and thus create a synergy going forward of homogenous core competancies… {g})?

    Thanks to everyone for their thoughts. Thanks also to Luis Maria at PortalFox who was kind enough to translate this post for the Hispanic community: http://www.portalfox.com/article.php?sid=2131

    Craig

  19. 21
    JVP

    Re your statement that “The biggest problem VFP faces going forward is lack of developers”This is merely a symptom. The reason why there has been a net decrease in VFP developers for the past decade is the fact that VFP has not been innovated to any siginficiant degree since 1998 when VFP 6 was released with the capability of creating COM components.Indeed, VFP can easily connect to SQL Server. It can easily connect to Oracle and MySQL for that matter. There is however, more ot the story than simply connecting to a backend. For a long time, we asked for Sql Server tools that VB had. In 1997, during the 6 beta, I asked about the ability to raise and respond to events – both standard and custom. Based on a prototype I wrote for Randy Brown in 1998 – the VFPCOM library came about – but it was a kludge and it was limited.In my opinon, “coolness” has little or nothing to do with the matter. My collegue Rod Paddock and I took roughly 80% of the concepts we employed in VFP and employed those concepts in .NET. With every new version, it ends up that only about 10-20% of the new features have signficant utility. As the old saying goes, just becuase it is there, it does not follow that you should use it. If you can make a good living delivering solutions with VFP – and you recognize and accept (assume) that a risk of limited opporunity exists – then by all means – continue to develop in VFP. If however, you are not willing to assume the risk – then you are compelled to update your skill set. I for one am skeptical of people who hold themselves out to be I/T professionals on one hand – but on the other hand, either entirely dismiss new technology or at the very least, discount it because it is not like “Fox”.The bottom line, if you think VFP is cool – then it is cool. It is a subjective value assesment.For sure, if it were a technically compelling alternative – objectively speaking – you would not have a shortage of developers since the requisite demand for the technology would exist…right????

  20. 22
    JVP

    Re your statement that “The biggest problem VFP faces going forward is lack of developers”

    This is merely a symptom. The reason why there has been a net decrease in VFP developers for the past decade is the fact that VFP has not been innovated to any siginficiant degree since 1998 when VFP 6 was released with the capability of creating COM components.

    Indeed, VFP can easily connect to SQL Server. It can easily connect to Oracle and MySQL for that matter. There is however, more ot the story than simply connecting to a backend. For a long time, we asked for Sql Server tools that VB had. In 1997, during the 6 beta, I asked about the ability to raise and respond to events – both standard and custom. Based on a prototype I wrote for Randy Brown in 1998 – the VFPCOM library came about – but it was a kludge and it was limited.

    In my opinon, “coolness” has little or nothing to do with the matter. My collegue Rod Paddock and I took roughly 80% of the concepts we employed in VFP and employed those concepts in .NET. With every new version, it ends up that only about 10-20% of the new features have signficant utility. As the old saying goes, just becuase it is there, it does not follow that you should use it.

    If you can make a good living delivering solutions with VFP – and you recognize and accept (assume) that a risk of limited opporunity exists – then by all means – continue to develop in VFP. If however, you are not willing to assume the risk – then you are compelled to update your skill set. I for one am skeptical of people who hold themselves out to be I/T professionals on one hand – but on the other hand, either entirely dismiss new technology or at the very least, discount it because it is not like “Fox”.

    The bottom line, if you think VFP is cool – then it is cool. It is a subjective value assesment.

    For sure, if it were a technically compelling alternative – objectively speaking – you would not have a shortage of developers since the requisite demand for the technology would exist…right????

  21. 23
    Rob Spencer

    There’s been no real functionality since V6.0? I really disagree. There’s been no fundamental shift in the product perhaps but that’s not the same. Certainly many of the improvements that we have made to our products in that period were not possible until the newer versions of VFP (particularly V8). There certainly are plenty of features that we don’t use but I think that the list of “useful” features would vary from developer to developer and possibly project to project.I agree that new technology is always worth looking into and .NET has some very cool features. I’m a little skeptical though of IT professionals who identify new technology as only being available in new products. Our product has plenty of new technology being built into it but it has been around for 15 years. If we can do it, I would think Microsoft might be able to manage it as well ;)Certainly there are things that VFP is not good at. There are just as many things that .NET is not good at. Our job as developers includes picking the right solution for a particular problem from the hundreds of ways of solving it. This doesn’t have to be a Blu-ray vs HD DVD battle – there’s no reason that only one technology will survive. There usually is no single “correct” solution.I’ve not always been a VFP developer (or in fact a Windows based developer) but it wasn’t that hard to learn. If you’re short of VFP developers, employ a developer who fits your organisation for other reasons and teach them VFP! There’s a shortage because there’s demand, not because there’s a lack of demand. It’s not because VB6 is such a good product that VB programmers are a dime a dozen ;)5 years from now, the technology will be vastly different… and still very much the same. A good programmer will still be a good programmer!

  22. 24
    Rob Spencer

    There’s been no real functionality since V6.0? I really disagree. There’s been no fundamental shift in the product perhaps but that’s not the same. Certainly many of the improvements that we have made to our products in that period were not possible until the newer versions of VFP (particularly V8). There certainly are plenty of features that we don’t use but I think that the list of “useful” features would vary from developer to developer and possibly project to project.

    I agree that new technology is always worth looking into and .NET has some very cool features. I’m a little skeptical though of IT professionals who identify new technology as only being available in new products. Our product has plenty of new technology being built into it but it has been around for 15 years. If we can do it, I would think Microsoft might be able to manage it as well ;)

    Certainly there are things that VFP is not good at. There are just as many things that .NET is not good at. Our job as developers includes picking the right solution for a particular problem from the hundreds of ways of solving it. This doesn’t have to be a Blu-ray vs HD DVD battle – there’s no reason that only one technology will survive. There usually is no single “correct” solution.

    I’ve not always been a VFP developer (or in fact a Windows based developer) but it wasn’t that hard to learn. If you’re short of VFP developers, employ a developer who fits your organisation for other reasons and teach them VFP! There’s a shortage because there’s demand, not because there’s a lack of demand. It’s not because VB6 is such a good product that VB programmers are a dime a dozen ;)

    5 years from now, the technology will be vastly different… and still very much the same. A good programmer will still be a good programmer!

  23. 25
    Andrew MacNeill

    Good jumping in Rob.Hey Craig – yeah ,it’s JVP.What’s so funny is that the chief complaint “VFP doesn’t support events” simply isn’t true because VFP DOES support Windows event binding now.it’s kind of like saying “Windows doesn’t support a higher resolution than 8 bit colors” – something which may have been true in Windows 3.1 but hasn’t been true for quite some time.VFP’s points about “coolness” are well put – it is a VERY subjective term. He has chosen VS as his “cool tool” but I “might” argue that Visual Studio is getting to the point where it isn’t considered “cool” and that developers are looking elsewhere for better tools. Because he has moved on, he wants to justify it accordingly.As Craig(squared – B and B) and I have always said (paraphrasing of course), what VFP needs is a few sample applications that “rock” the world. Look at Ruby on Rails – it gets no respect whatsoever from “Visual studio developers” , who “rail” against its scalability – yet, it has the “coolness” going for it on the strengths of a few web apps that totally rock.It is very limited thinking to suggest that the only reason that Visual Studio has succeeded is because it is a superior architecture. It succeeds because Microsoft can immediately place a product by throwing money at it. Look at Borland. Most developers believed that it was the superior development tools maker and more – but their products failed. Lotus Improv was far and beyond Excel 3.0 – yet it failed. Why?Build a great product. Capture mindshare and then you’ve got a winner.And I’m so glad Colin called it: VFP is Managed code – it’s just not DotNet code!. But as Craig originally linked to, VFP suffers from the fact that all of the error messages in VFP say “FoxPro error” instead of just “error” like other languages- as a result, the users familiarity with “FoxPro errors” in applications is heightened. Imagine the reaction if every time a Microsoft app crashed – the error message said “A Microsoft Error has occurred.”

  24. 26
    Andrew MacNeill

    Good jumping in Rob.

    Hey Craig – yeah ,it’s JVP.

    What’s so funny is that the chief complaint “VFP doesn’t support events” simply isn’t true because VFP DOES support Windows event binding now.

    it’s kind of like saying “Windows doesn’t support a higher resolution than 8 bit colors” – something which may have been true in Windows 3.1 but hasn’t been true for quite some time.

    VFP’s points about “coolness” are well put – it is a VERY subjective term. He has chosen VS as his “cool tool” but I “might” argue that Visual Studio is getting to the point where it isn’t considered “cool” and that developers are looking elsewhere for better tools. Because he has moved on, he wants to justify it accordingly.

    As Craig(squared – B and B) and I have always said (paraphrasing of course), what VFP needs is a few sample applications that “rock” the world. Look at Ruby on Rails – it gets no respect whatsoever from “Visual studio developers” , who “rail” against its scalability – yet, it has the “coolness” going for it on the strengths of a few web apps that totally rock.

    It is very limited thinking to suggest that the only reason that Visual Studio has succeeded is because it is a superior architecture. It succeeds because Microsoft can immediately place a product by throwing money at it. Look at Borland. Most developers believed that it was the superior development tools maker and more – but their products failed. Lotus Improv was far and beyond Excel 3.0 – yet it failed. Why?

    Build a great product. Capture mindshare and then you’ve got a winner.

    And I’m so glad Colin called it: VFP is Managed code – it’s just not DotNet code!. But as Craig originally linked to, VFP suffers from the fact that all of the error messages in VFP say “FoxPro error” instead of just “error” like other languages- as a result, the users familiarity with “FoxPro errors” in applications is heightened.

    Imagine the reaction if every time a Microsoft app crashed – the error message said “A Microsoft Error has occurred.”

  25. 29
    JVP

    To Andy MacNeillRe: your statement: What’s so funny is that the chief complaint “VFP doesn’t support events” simply isn’t true because VFP DOES support Windows event binding now.Andy – as I stated, although VFP can consume windows events in COM Components, VFP cannot define, raise or consume its own custom events. In pre-.NET versions of VB and in VB – we can define custom events and handlers. So with that said, it is your statement that is not true.Like so many things – whether it is Intellisense, etc. – while VFP comes close to the capabilities of VB and .NET – it misses the mark. This is due mostly to the fact that much of VFP’s newer features are more than anything else – xBase add-ons. i.e., the core of the product has not changed much. With respect to my assertion that in all material respects, the product has remained unchanged since VFP 6 – I’ll stand by that. Sure – there are a number of new features – but they have not proven themselves to provide much utility. The .NET inter-operability stuff??? I would contend that once you start straying into the .NET world – that is where you should be. Sure, there are a number of add-ons to the sql language in VFP. However, it is should be noted that these sql add-ons have always been available in sql server. Again, its good that VFP has the features – but in the end – it is a bit late to the dance. Andy – you go on to say that what VFP needs is a few apps that “rock the world”. Wasn’t that what JFAST was all about? Wasn’t that what the VFP Excellence Awards were all about? In my interview on your pod cast – I told you then that it is difficult to make the business case for VFP. Again – you say what VFP needs is killer apps. Nowhere however, do you address the threshold issues of business justification. For example, the state of the art rests with distirbuted – web based apps that behave like classic Win32 apps. These apps have the advantages and richness of Win32 apps – without the distribution and installation woes. How would you do that in VFP efficiently and economically? Guys like Steve Black, Bill Sanders – and the usual cast of characters talk a good game re: the business justification for Fox – but in reality – none of those arguments carry the day.

  26. 30
    JVP

    To Andy MacNeill

    Re: your statement: What’s so funny is that the chief complaint “VFP doesn’t support events” simply isn’t true because VFP DOES support Windows event binding now.

    Andy – as I stated, although VFP can consume windows events in COM Components, VFP cannot define, raise or consume its own custom events. In pre-.NET versions of VB and in VB – we can define custom events and handlers. So with that said, it is your statement that is not true.

    Like so many things – whether it is Intellisense, etc. – while VFP comes close to the capabilities of VB and .NET – it misses the mark. This is due mostly to the fact that much of VFP’s newer features are more than anything else – xBase add-ons. i.e., the core of the product has not changed much.

    With respect to my assertion that in all material respects, the product has remained unchanged since VFP 6 – I’ll stand by that. Sure – there are a number of new features – but they have not proven themselves to provide much utility. The .NET inter-operability stuff??? I would contend that once you start straying into the .NET world – that is where you should be. Sure, there are a number of add-ons to the sql language in VFP. However, it is should be noted that these sql add-ons have always been available in sql server. Again, its good that VFP has the features – but in the end – it is a bit late to the dance.

    Andy – you go on to say that what VFP needs is a few apps that “rock the world”. Wasn’t that what JFAST was all about? Wasn’t that what the VFP Excellence Awards were all about? In my interview on your pod cast – I told you then that it is difficult to make the business case for VFP. Again – you say what VFP needs is killer apps. Nowhere however, do you address the threshold issues of business justification. For example, the state of the art rests with distirbuted – web based apps that behave like classic Win32 apps. These apps have the advantages and richness of Win32 apps – without the distribution and installation woes. How would you do that in VFP efficiently and economically?

    Guys like Steve Black, Bill Sanders – and the usual cast of characters talk a good game re: the business justification for Fox – but in reality – none of those arguments carry the day.

  27. 31
    JVP

    To Andy MacNeill:Re: your statement – It is very limited thinking to suggest that the only reason that Visual Studio has succeeded is because it is a superior architecture. It succeeds because Microsoft can immediately place a product by throwing money at it. Look at Borland. Most developers believed that it was the superior development tools maker and more – but their products failed. Lotus Improv was far and beyond Excel 3.0 – yet it failed. Why?——————i.e. – VS succeeds because of marketing. That is a given. Still, the architecture and technical aspects of the product have to be in place first. It is a little hypocritical to scoff at VS for marketing reasons. After all, if VFP was marketed in such a manner that made claims beyond what it really could do – I doubt you would complain.

  28. 32
    JVP

    To Andy MacNeill:

    Re: your statement – It is very limited thinking to suggest that the only reason that Visual Studio has succeeded is because it is a superior architecture. It succeeds because Microsoft can immediately place a product by throwing money at it. Look at Borland. Most developers believed that it was the superior development tools maker and more – but their products failed. Lotus Improv was far and beyond Excel 3.0 – yet it failed. Why?

    ——————

    i.e. – VS succeeds because of marketing. That is a given. Still, the architecture and technical aspects of the product have to be in place first.

    It is a little hypocritical to scoff at VS for marketing reasons. After all, if VFP was marketed in such a manner that made claims beyond what it really could do – I doubt you would complain.

  29. 33
    Craig Bailey

    Hi JVP,Firstly I want to thank you for taking the time to leave a comment on my blog – I value the opinions of everyone who thinks through an issue (and you definately do this).Secondly I want state up front that I hold you in high regard. I thought your comments on Andrew’s podcast were extremely relevant (and I said as much at the time: http://craigbailey.blogspot.com/2006/01/vfp-catching-up-on-my-fox-show-backlog.html).Thirdly however I think it is important to clarify what I consider our difference in opinion is (and please let me know if I’ve misunderstood). It seems that you consider the reduction in VFP developers to be aligned with the technical merits (or lack of them) of VFP. I, on the other hand think the issue is to do with perception. And I agree it is a symptom – ie lack of developers is a symptom of VFP not being cool.Your statement ‘In my opinon, “coolness” has little or nothing to do with the matter’ is I guess the main point I disagree with. Coolness (ie the perception of the product) has everything to do with it in my opinion. It is for this reason that I don’t get involved in the .Net vs VFP technical debates (in that regard I just hedged my bets and built strong VFP and .Net teams at Talman).So, here’s my agenda… I think many products are technically weak, yet with the right ‘spin’ or marketing they can become very ‘cool’. I won’t give examples, or else the discussion will get bogged down debating them specifically – not my aim. While ‘cool’ may be subjective (as you state), I suggest that many uni students are being told what products are ‘cool’. How much better then when the products (for example .Net or Java) are actually very technically strong. Making them cool is very easy. OK, so there is no dispute with why .Net or Java are cool. They deserve to be.However, the crux of my argument is that VFP is also capable of being cool. Let’s assume that you think VFP is technically weak (I personally think it is strong, but again that is not the issue as I see it). My argument is that even if it were weak, there are a few simple things that could be done to make it cool. And I then listed off a few in section 3. of the post.The main reduction in overall VFP programmer size is not due to existing (and possibly disgruntled :-) Fox developers leaving – although ofcourse that is a contributor – rather, it is because there are not many new developers entering. And I contend that the reason they are not entering is because they don’t think VFP is cool, not because they have appraised the technical merits. I’d further contend that universities perhaps don’t take technical merits into account too heavily when selecting which tools to teach (however I am on un-informed ground here – certainly in my software engineering degree the recommended tools were often inappropriate – but that may have changed these days – another blog post perhaps…) Later in your comment you indicate scepticism with IT professionals that claim expertise, but instead dish out bias – on this issue I agree strongly. I cringe when I hear some Fox devotees try to push for Fox solutions when a non-Fox one is clearly superior. I should point out that I also get slightly frustrated when .Net developers do like wise. This sin exists in both camps…Your parting paragraph correlating demand with technical merit is actually what I wish the issue were. Oh how I wish the number of developers was not tied to marketing, hype or simply a desire to work predominantly with new products. If only the perception issue didn’t get in the way. I’d be interested in your thoughts on how specifically we could make VFP cool – what would it take (and I suspect you will focus on technical items) to make you label VFP cool in your mind? Is it the SQL items you mentioned, the event binding perhaps, or other areas? Myself personally I’d love to see multi-threading available natively in VFP.Finally, I apologise if I’ve misunderstood some of your points. If so, please point me on the right path.Warm regards,Craig

  30. 34
    Craig Bailey

    Hi JVP,
    Firstly I want to thank you for taking the time to leave a comment on my blog – I value the opinions of everyone who thinks through an issue (and you definately do this).

    Secondly I want state up front that I hold you in high regard. I thought your comments on Andrew’s podcast were extremely relevant (and I said as much at the time: http://craigbailey.blogspot.com/2006/01/vfp-catching-up-on-my-fox-show-backlog.html).

    Thirdly however I think it is important to clarify what I consider our difference in opinion is (and please let me know if I’ve misunderstood). It seems that you consider the reduction in VFP developers to be aligned with the technical merits (or lack of them) of VFP. I, on the other hand think the issue is to do with perception. And I agree it is a symptom – ie lack of developers is a symptom of VFP not being cool.

    Your statement ‘In my opinon, “coolness” has little or nothing to do with the matter’ is I guess the main point I disagree with. Coolness (ie the perception of the product) has everything to do with it in my opinion.

    It is for this reason that I don’t get involved in the .Net vs VFP technical debates (in that regard I just hedged my bets and built strong VFP and .Net teams at Talman).

    So, here’s my agenda… I think many products are technically weak, yet with the right ‘spin’ or marketing they can become very ‘cool’. I won’t give examples, or else the discussion will get bogged down debating them specifically – not my aim. While ‘cool’ may be subjective (as you state), I suggest that many uni students are being told what products are ‘cool’. How much better then when the products (for example .Net or Java) are actually very technically strong. Making them cool is very easy. OK, so there is no dispute with why .Net or Java are cool. They deserve to be.

    However, the crux of my argument is that VFP is also capable of being cool. Let’s assume that you think VFP is technically weak (I personally think it is strong, but again that is not the issue as I see it). My argument is that even if it were weak, there are a few simple things that could be done to make it cool. And I then listed off a few in section 3. of the post.

    The main reduction in overall VFP programmer size is not due to existing (and possibly disgruntled :-) Fox developers leaving – although ofcourse that is a contributor – rather, it is because there are not many new developers entering. And I contend that the reason they are not entering is because they don’t think VFP is cool, not because they have appraised the technical merits. I’d further contend that universities perhaps don’t take technical merits into account too heavily when selecting which tools to teach (however I am on un-informed ground here – certainly in my software engineering degree the recommended tools were often inappropriate – but that may have changed these days – another blog post perhaps…)

    Later in your comment you indicate scepticism with IT professionals that claim expertise, but instead dish out bias – on this issue I agree strongly. I cringe when I hear some Fox devotees try to push for Fox solutions when a non-Fox one is clearly superior. I should point out that I also get slightly frustrated when .Net developers do like wise. This sin exists in both camps…

    Your parting paragraph correlating demand with technical merit is actually what I wish the issue were. Oh how I wish the number of developers was not tied to marketing, hype or simply a desire to work predominantly with new products. If only the perception issue didn’t get in the way.

    I’d be interested in your thoughts on how specifically we could make VFP cool – what would it take (and I suspect you will focus on technical items) to make you label VFP cool in your mind? Is it the SQL items you mentioned, the event binding perhaps, or other areas? Myself personally I’d love to see multi-threading available natively in VFP.

    Finally, I apologise if I’ve misunderstood some of your points. If so, please point me on the right path.

    Warm regards,
    Craig

  31. 35
    JVP

    To CraigSee my inline comments below….Your statement ‘In my opinon, “coolness” has little or nothing to do with the matter’ is I guess the main point I disagree with. Coolness (ie the perception of the product) has everything to do with it in my opinion. JVP: I agree with you that perception is reality. The point I was making was that hard core VFP developers who believe the product is “cool” will need to be satisfied with that. i.e., the hearts and minds of those who have a different opinion will not change. Further, it is beyond the sphere of influence of those outside of Microsoft. Don’t forget, VFP has had a steadily declining role for about a decade. Is it a great tool? Absolutely! What I don’t do is confuse my personal subjective viewpoint with my objective opinions about VFP as evaluated against the backdrop of the I/T marketplace.It is for this reason that I don’t get involved in the .Net vs VFP technical debates (in that regard I just hedged my bets and built strong VFP and .Net teams at Talman).JVP: Most debates like this are not productive because those on the weaker side (objectively speaking) tend to over-evaluate the strengths of their tool and those on the stronger side (again, objectively speaking) tend to under-estimate the weakness of their tool. The point being is that often, both sides tend to get emotional and subjective. Objectively speaking, VFP is not in .NET’s league. Whether you are talking technical ability or the marketplace – hands down, .NET beats VFP. Does this mean VFP is worthless? Of course not. However, if I was in a position where I had to mitigate risk and evaluate technologies, VFP would down – way down on the list. Would .NET necessarily win? No. Would VFP necessarily lose? No. Java could win – or something else. I, along with a few others, actually walked the walk when it came to preaching the “best tool for the job” mantra. That is why we often preached VB for work that involved heavy use of the Win32API. In a limited number of cases, VFP has a hands down advantage. That advantage however, has more to do with the skill set of the development staff. Can that advantage outweigh the long terms risks of sticking with VFP? Maybe – maybe not?…So, here’s my agenda… I think many products are technically weak, yet with the right ‘spin’ or marketing they can become very ‘cool’. I won’t give examples, or else the discussion will get bogged down debating them specifically – not my aim. While ‘cool’ may be subjective (as you state), I suggest that many uni students are being told what products are ‘cool’. How much better then when the products (for example .Net or Java) are actually very technically strong. Making them cool is very easy. OK, so there is no dispute with why .Net or Java are cool. They deserve to be.However, the crux of my argument is that VFP is also capable of being cool. Let’s assume that you think VFP is technically weak (I personally think it is strong, but again that is not the issue as I see it). My argument is that even if it were weak, there are a few simple things that could be done to make it cool. And I then listed off a few in section 3. of the post.JVP: I agree – spin is everything. If MS promoted VFP – it would succeed. I asked Bill Gates back in 1998 why VFP was not being marketed to win. The fact is – VFP makes enough money to keep afloat. However, it’s technical base is not one that is worth investing in. This is why the innovations have been sparse at best. The main reduction in overall VFP programmer size is not due to existing (and possibly disgruntled :-) Fox developers leaving – although ofcourse that is a contributor – rather, it is because there are not many new developers entering. And I contend that the reason they are not entering is because they don’t think VFP is cool, not because they have appraised the technical merits. I’d further contend that universities perhaps don’t take technical merits into account too heavily when selecting which tools to teach (however I am on un-informed ground here – certainly in my software engineering degree the recommended tools were often inappropriate – but that may have changed these days – another blog post perhaps…) JVP: I have said this many times – that the population of VFP developers is not being sustained with new developers coming into the fold. The question is why? The coolness thing is a symptom – not a root cause. I say that because I will then ask you why isn’t VFP cool? You may say – because MS does not market the product. I would then ask why doesn’t MS market VFP. You could then say because VFP is not cool – a circular argument. The answer Bill G. gave me was that it was a market that MS was not interested in investing in. Why? Because there was no upside. Look at where applications are today. They are distributed and browser based. The trend has been in reducing tco through reduced distribution costs. Hey – for Joe independent developer – he can make a good living writing and delivering apps in VFP. For MS – a multi-billion dollar world wide enterrprise – the economics tend to be bit different.Later in your comment you indicate scepticism with IT professionals that claim expertise, but instead dish out bias – on this issue I agree strongly. I cringe when I hear some Fox devotees try to push for Fox solutions when a non-Fox one is clearly superior. I should point out that I also get slightly frustrated when .Net developers do like wise. This sin exists in both camps…JVP: – See my comment above about how this tool vs. that tool arguments tend to not be productive.Your parting paragraph correlating demand with technical merit is actually what I wish the issue were. Oh how I wish the number of developers was not tied to marketing, hype or simply a desire to work predominantly with new products. If only the perception issue didn’t get in the way. JVP: Except that if you put VFP through the technical wringer – it will come out on the short end of the stick. What it does – it does well. That said, if I were writing a web app today – I would do it in .NET – not in VFP using West Wind. I used West Wind and was a big fan of the tool. That however – was nearly 10 years ago… I’d be interested in your thoughts on how specifically we could make VFP cool – what would it take (and I suspect you will focus on technical items) to make you label VFP cool in your mind? Is it the SQL items you mentioned, the event binding perhaps, or other areas? Myself personally I’d love to see multi-threading available natively in VFP.JVP: First, if you take DBF’s and the local data stuff out of the picture – you have pretty much taken away the reason to use VFP. From my perspective, it has been nearly 10 years since I wrote anything that used DBF’s as a primary data store. My Law Practice notwithstanding, SQL Server and Oracle have been pretty much it. I still keep my fingers in the technology!! Over on profox – they are going ga ga over OOP menus in SednaX. BFG!! As Ed Leafe put it well – he was using them in CodeBook in 1995!! To be cool, something has to be relevant. To be relevant, it has to be innovated. The topics you see in magazines – some of which I wrote about in FoxTalk between 93 and 99 – are in their 5th, 6th, or 7th go-around. There is simply not much new to write about. And….for the stuff that is “new” – it is outside the scope of what VFP does well. In my opinion, if you are going to stray in the .NET world – then go there. Of course, the com/interop stuff is cool. That however, is all that you really need. I doubt that complex data types will be exposed in VFP. Again, what can be done is limited. Things like true events, etc. – keep in mind that VFP has had that stuff for a LONG time. If MS wanted – they could have put that in VFP too. If MS is destined to keep its thumb on the product – there is nothing anybody else can do about it. The archives are full of those who have had grand ideas about marketing and promoting VFP. Here is the million dollar question (literally) – If you had $2 Million – and if MS would sell you VFP – would you buy it??????John

  32. 36
    JVP

    To Craig

    See my inline comments below….

    Your statement ‘In my opinon, “coolness” has little or nothing to do with the matter’ is I guess the main point I disagree with. Coolness (ie the perception of the product) has everything to do with it in my opinion.

    JVP: I agree with you that perception is reality. The point I was making was that hard core VFP developers who believe the product is “cool” will need to be satisfied with that. i.e., the hearts and minds of those who have a different opinion will not change. Further, it is beyond the sphere of influence of those outside of Microsoft. Don’t forget, VFP has had a steadily declining role for about a decade. Is it a great tool? Absolutely! What I don’t do is confuse my personal subjective viewpoint with my objective opinions about VFP as evaluated against the backdrop of the I/T marketplace.

    It is for this reason that I don’t get involved in the .Net vs VFP technical debates (in that regard I just hedged my bets and built strong VFP and .Net teams at Talman).

    JVP: Most debates like this are not productive because those on the weaker side (objectively speaking) tend to over-evaluate the strengths of their tool and those on the stronger side (again, objectively speaking) tend to under-estimate the weakness of their tool. The point being is that often, both sides tend to get emotional and subjective. Objectively speaking, VFP is not in .NET’s league. Whether you are talking technical ability or the marketplace – hands down, .NET beats VFP. Does this mean VFP is worthless? Of course not. However, if I was in a position where I had to mitigate risk and evaluate technologies, VFP would down – way down on the list. Would .NET necessarily win? No. Would VFP necessarily lose? No. Java could win – or something else. I, along with a few others, actually walked the walk when it came to preaching the “best tool for the job” mantra. That is why we often preached VB for work that involved heavy use of the Win32API. In a limited number of cases, VFP has a hands down advantage. That advantage however, has more to do with the skill set of the development staff. Can that advantage outweigh the long terms risks of sticking with VFP? Maybe – maybe not?…

    So, here’s my agenda… I think many products are technically weak, yet with the right ‘spin’ or marketing they can become very ‘cool’. I won’t give examples, or else the discussion will get bogged down debating them specifically – not my aim. While ‘cool’ may be subjective (as you state), I suggest that many uni students are being told what products are ‘cool’. How much better then when the products (for example .Net or Java) are actually very technically strong. Making them cool is very easy. OK, so there is no dispute with why .Net or Java are cool. They deserve to be.

    However, the crux of my argument is that VFP is also capable of being cool. Let’s assume that you think VFP is technically weak (I personally think it is strong, but again that is not the issue as I see it). My argument is that even if it were weak, there are a few simple things that could be done to make it cool. And I then listed off a few in section 3. of the post.

    JVP: I agree – spin is everything. If MS promoted VFP – it would succeed. I asked Bill Gates back in 1998 why VFP was not being marketed to win. The fact is – VFP makes enough money to keep afloat. However, it’s technical base is not one that is worth investing in. This is why the innovations have been sparse at best.

    The main reduction in overall VFP programmer size is not due to existing (and possibly disgruntled :-) Fox developers leaving – although ofcourse that is a contributor – rather, it is because there are not many new developers entering. And I contend that the reason they are not entering is because they don’t think VFP is cool, not because they have appraised the technical merits. I’d further contend that universities perhaps don’t take technical merits into account too heavily when selecting which tools to teach (however I am on un-informed ground here – certainly in my software engineering degree the recommended tools were often inappropriate – but that may have changed these days – another blog post perhaps…)

    JVP: I have said this many times – that the population of VFP developers is not being sustained with new developers coming into the fold. The question is why? The coolness thing is a symptom – not a root cause. I say that because I will then ask you why isn’t VFP cool? You may say – because MS does not market the product. I would then ask why doesn’t MS market VFP. You could then say because VFP is not cool – a circular argument. The answer Bill G. gave me was that it was a market that MS was not interested in investing in. Why? Because there was no upside. Look at where applications are today. They are distributed and browser based. The trend has been in reducing tco through reduced distribution costs. Hey – for Joe independent developer – he can make a good living writing and delivering apps in VFP. For MS – a multi-billion dollar world wide enterrprise – the economics tend to be bit different.

    Later in your comment you indicate scepticism with IT professionals that claim expertise, but instead dish out bias – on this issue I agree strongly. I cringe when I hear some Fox devotees try to push for Fox solutions when a non-Fox one is clearly superior. I should point out that I also get slightly frustrated when .Net developers do like wise. This sin exists in both camps…

    JVP: – See my comment above about how this tool vs. that tool arguments tend to not be productive.

    Your parting paragraph correlating demand with technical merit is actually what I wish the issue were. Oh how I wish the number of developers was not tied to marketing, hype or simply a desire to work predominantly with new products. If only the perception issue didn’t get in the way.

    JVP: Except that if you put VFP through the technical wringer – it will come out on the short end of the stick. What it does – it does well. That said, if I were writing a web app today – I would do it in .NET – not in VFP using West Wind. I used West Wind and was a big fan of the tool. That however – was nearly 10 years ago…

    I’d be interested in your thoughts on how specifically we could make VFP cool – what would it take (and I suspect you will focus on technical items) to make you label VFP cool in your mind? Is it the SQL items you mentioned, the event binding perhaps, or other areas? Myself personally I’d love to see multi-threading available natively in VFP.

    JVP: First, if you take DBF’s and the local data stuff out of the picture – you have pretty much taken away the reason to use VFP. From my perspective, it has been nearly 10 years since I wrote anything that used DBF’s as a primary data store. My Law Practice notwithstanding, SQL Server and Oracle have been pretty much it. I still keep my fingers in the technology!! Over on profox – they are going ga ga over OOP menus in SednaX. BFG!! As Ed Leafe put it well – he was using them in CodeBook in 1995!! To be cool, something has to be relevant. To be relevant, it has to be innovated. The topics you see in magazines – some of which I wrote about in FoxTalk between 93 and 99 – are in their 5th, 6th, or 7th go-around. There is simply not much new to write about. And….for the stuff that is “new” – it is outside the scope of what VFP does well. In my opinion, if you are going to stray in the .NET world – then go there. Of course, the com/interop stuff is cool. That however, is all that you really need. I doubt that complex data types will be exposed in VFP. Again, what can be done is limited. Things like true events, etc. – keep in mind that VFP has had that stuff for a LONG time. If MS wanted – they could have put that in VFP too. If MS is destined to keep its thumb on the product – there is nothing anybody else can do about it.

    The archives are full of those who have had grand ideas about marketing and promoting VFP. Here is the million dollar question (literally) – If you had $2 Million – and if MS would sell you VFP – would you buy it??????

    John

  33. 37
    thierry nivelet

    Great PostI encourage every VFP developper to blog, talk, make as much noise as possible about Visual FoxPro.VFP is a great great development platform (rather than tool)Th

  34. 38
    thierry nivelet

    Great Post

    I encourage every VFP developper to blog, talk, make as much noise as possible about Visual FoxPro.

    VFP is a great great development platform (rather than tool)

    Th

  35. 39
    CTitanic

    I like your post. I have been using VFP for a while and I see a lot of potential in this tool. We can’t leave the Fox disappear!

  36. 40
    CTitanic

    I like your post. I have been using VFP for a while and I see a lot of potential in this tool.

    We can’t leave the Fox disappear!

  37. 41
    Anonymous

    I’m a VFP diehard from SE Asia and I’ve been a user since the days of FoxBase (I started young :D ). The dearth of employable developers who can or want to work with VFP is a real problem to me and my pig-headedness to stick with the Fox has me constantly wondering if I am just a good developer but a lousy businessman who won’t let go of the past.I found a solution to my dilemma (and stick to the Fox) by creating a web-based application that uses ASP/ASP.Net as it’s frontend, SQL Server as it’s backend, and – guess what? – VFP as the middle-tier that does the grunt work of batch processing.My old developers gets to work on a platform they’re productive with while the new recruits work on something they consider ‘cool.’Long live the Fox!

  38. 42
    Anonymous

    I’m a VFP diehard from SE Asia and I’ve been a user since the days of FoxBase (I started young :D ). The dearth of employable developers who can or want to work with VFP is a real problem to me and my pig-headedness to stick with the Fox has me constantly wondering if I am just a good developer but a lousy businessman who won’t let go of the past.

    I found a solution to my dilemma (and stick to the Fox) by creating a web-based application that uses ASP/ASP.Net as it’s frontend, SQL Server as it’s backend, and – guess what? – VFP as the middle-tier that does the grunt work of batch processing.

    My old developers gets to work on a platform they’re productive with while the new recruits work on something they consider ‘cool.’

    Long live the Fox!

  39. 45
    Craig Bailey

    What kind of help are you after specifically?I recommend checking out Universal Thread and the Fox Wiki for guidance – you’ll get better results from than I could supply.Regards,Craig

  40. 46
    Craig Bailey

    What kind of help are you after specifically?
    I recommend checking out Universal Thread and the Fox Wiki for guidance – you’ll get better results from than I could supply.
    Regards,
    Craig

  41. 47
    Kurtwood Greene

    Thanks Craig for the post.

    This article has certainly struck a chord.

    A consultant tried to convince my client that VFP9 was not capable of doing what they desire. Fortunately, I was able to prove, in a very short time, how easy it was to accomplish what they wanted. This consultant based his decision purely on the fact that FoxPro has been around for so long. His thinking surprised me. Mainly because he is suppose to be highly intelligent and experienced in DBMS.

    Most of my clients do not care that my development tool is VFP. As long as the application is functioning as expected and not costing them a lot of money, they are happy.

    I can recall some time ago that the FoxPro community was asked to help promote VFP by displaying the VFP icon and indicating that their app was written in VFP. I did this with pride and still continue today. It is now after my recent experience and reading your article that I can appreciate the rebranding of FoxPro. Apparently it is not cool to have been around, tested and proven.

    I would hope that I am not the only one thinking that it would perhaps be a good idea, for experts like yourself, to acquire VFP from M$ once the life cycle expires. If M$ does not care about it, perhaps the VFP community to can make VFP cool again and the tool of choice.

    Cheers

    Kurtwood
    The Bahamas

    P.S. The Bahamas is not on your list of possible countries

  42. 48
    Kurtwood Greene

    Thanks Craig for the post.

    This article has certainly struck a chord.

    A consultant tried to convince my client that VFP9 was not capable of doing what they desire. Fortunately, I was able to prove, in a very short time, how easy it was to accomplish what they wanted. This consultant based his decision purely on the fact that FoxPro has been around for so long. His thinking surprised me. Mainly because he is suppose to be highly intelligent and experienced in DBMS.

    Most of my clients do not care that my development tool is VFP. As long as the application is functioning as expected and not costing them a lot of money, they are happy.

    I can recall some time ago that the FoxPro community was asked to help promote VFP by displaying the VFP icon and indicating that their app was written in VFP. I did this with pride and still continue today. It is now after my recent experience and reading your article that I can appreciate the rebranding of FoxPro. Apparently it is not cool to have been around, tested and proven.

    I would hope that I am not the only one thinking that it would perhaps be a good idea, for experts like yourself, to acquire VFP from M$ once the life cycle expires. If M$ does not care about it, perhaps the VFP community to can make VFP cool again and the tool of choice.

    Cheers

    Kurtwood
    The Bahamas

    P.S. The Bahamas is not on your list of possible countries

+ Leave a Comment