Skip to main content

How misinformation feeds FoxPro myths

So, Mary-Jo Foley calls VFP the "Rodney Dangerfield" child of Microsoft's solution and we wonder why there are mixed messages.

Steve Black emailed me this post where the supposed "Head of information technology" at an Indian company had to upgrade because "the software was not scalable as it had been developed on FoxPro".

Excuse me? The older software was probably not scalable because this guy, or the person who worked there before him, who had originally commissioned the software likely wrote it not to scalable. Yes, it was written in FoxPro - but it could likely have been written in Visual Basic.Net or Delphi or anything.

Applications are not inherently "not scalable" because of the platform but more because of the design.

Near the end of the article , the comment "Compared to legacy systems, which needed to be changed every six or seven years, SAP solutions are expected to prove effective for 20 to 25 years and beyond." - - "are expected to"???

SAP has only been in business since 1972 and while they have commendably only had 3 core versions but even so, R3 was only released in 1990 and I'm sure there have been upgrades since then. And is SAP written in the same language as it was back in 1979? I don't THINK so!

But why is it successful ? Because it was designed properly. (and I'm not an SAP expert - so I'm sure there are those who would say otherwise as well)

I've seen this before in lots of organizations. It sounds to me like the "head of IT" was likely someone who designed poorly written systems in the past, recognized it, became a manager who preferred "third party" vendors who would have to do the real scalable design work and then blamed their past failures on the product. Have you ever run across those kinds of people before?

By contrast, some businesses have been running the same FoxPro applications for years. One Canadian government agency refused to support FoxPro - their IT department thought that Paradox would be the next big thing - in the early 90's , even though their survey applications and many internal office systems were running with FoxPro. Their IT department changed and went to Visual Basic and SQL Server solutions. While the SQL database may have been fast, their programmers designed the new survey applications poorly and as a result, they went back to the ten-year old FoxPo program which wasn't just reliable but faster as well.

Craig Bailey posted this about the new MS certified Architect - this sounds like something that every head of IT should have BEFORE spreading mis-information.

General programming rule: It's not about the product - it's about the DESIGN!!!

I even recall hearing someone who worked at Microsoft say exactly the same thing. Internal systems at Microsoft weren't always written to be scalable and thus had to be re-architected.

Heck! I'm in the middle of re-architecting an older application to be more scalable and run under SQL Server. The older application used indices and filters to show information to a user. Could it run with a million records? sure! Should it? No! So the issue is one of how do you redesign it? In VFP or under another language?

In the most recent FoxShow (to be posted today I hope), John Petersen noted how he was interested to see how the arguments for FoxPro actually worked in a business meeting.

After reading this article and the mis-information spread around through it and other journals and by otherwise 'well-meaning" "IT experts", you can start to see a pattern. It isn't bad marketing that FoxPro is up against - it's ignorance, plain and simple.

How do you fight ignorance? By making BETTER applications (yes, I've said this before)

Some have noted that Ruby on Rails doesn't follow along the path of traditionally designed n-tier applications, choosing speed over architecture. Uh, tell that to 37Signals, the group behind Basecamp. Not sure how many users they have using it, but sure feels like a scalable application to me.

So once again, let me repeat: It's not about the product - it's about the DESIGN!!!

Comments

Randy Jean said…
Right on! Also, it's not just about the code design. poor database design (and management) will cause all sorts scaleability issues, too. I've been forced to take on SQL DBA responsibilities and I can tell you there are a lot of things to think about when dealing with enterprise databases that go way beyond how the application(s) are written.
Anonymous said…
I often found what get me excited when looking into an application is its design. An application built with old technology but with good design probably will last longer than a product with the latest technology but of poor design. Technology comes and goes and difficult to reuse and extend, design can.

Popular posts from this blog

Blogs and RSS come to Microsoft.com

MS has just introduced their portal and it's pretty comprehensive. Nothing quite like learning that some people use AIM instead of MSN messenger, or that there really may be a need for supporting 4 monitors ( Cyrus Complains ) However, it's really a great sign that MS is serious about supporting the blogging community which seems to have um, exploded in size in the past year. Blogs and RSS come to Microsoft.com

Programmers vs. Developers vs. Architects

I received an email this morning from Brandon Savage 's newsletter. Brandon's a PHP guru (works at Mozilla) but his newsletter and books have some great overall perspectives for developers of all languages. However, this last one (What's the difference between developers and architects?) kind of rubs me the wrong way. Either that, or I've just missed the natural inflation of job descriptions. (maybe, it's like the change in terminology between Garbage man and Waste Engineer or Secretary and Office Administrator) So maybe it's just me - but I think there's still a big difference between Programmer, Developer and then of course, architect. The key thing here is that every role has a different perspective and every one of those perspectives has value. The original MSF create roles like Product Manager, Program Manager, Developer, Tester, etc - so every concept may pigeon hole people into different roles. But the statements Brandon makes are often distinction

FoxInCloud Stats

FoxInCloud sent this link a while back about their statistics regarding visits to their site: http://foxincloud.com/blog/2017/12/27/VFP-community-lessons-from-foxincloud-site.html What's interesting here is the breakdown of people. Yes, I think it's understandable that the Fox community is getting older. Another factor is the growth of the mobile and web environments taking over development. These environments really do push people towards the newer non-SQL or free SQL/hosted environments but more towards hosted storage options like Amazon and Google. A tool like FoxInCloud that helps MOVE existing applications to the cloud inherently competes with those environments. But FoxInCloud also allows developers to extend their application further by giving them a starting point using Javascript and the basic CSS (such as Bootstrap). If you're not rebuilding your application from scratch, it's certainly a great step forward. FoxPro VFP