Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Where is YAG? What are the reasons?
Message
From
03/04/2007 00:29:03
John Ryan
Captain-Cooker Appreciation Society
Taumata Whakatangi ..., New Zealand
 
General information
Forum:
Visual FoxPro
Category:
Other
Environment versions
Database:
Visual FoxPro
Miscellaneous
Thread ID:
01210085
Message ID:
01211567
Views:
16
In fact these days Web development is dominated by LAMP development especially on the entry level and Microsoft will have to step up to make its Web platform more approachable on the low end. ASP.NET is great, but it's an application platform not a scripting language like ASP was.

There's sure a lot of LAMP out there (Linux, Apache, Mysql, PHP for those who are wondering ;-) ) We're running an international pbx using LAMP and it's remarkably easy. In fact, IMHO it's worth posting samples here for people who've done web development but are not familiar with PHP. Here's the header of a customer list page using MySQL Data:
<html>
<?php
$host="linux3";
$user="user1";
$password="user1password";
$databasename="maindata";
$connection=mysql_connect($host,$user,$password)
	or die("Could not connect to mySQL Server (" . $host . ").");
$db=mysql_select_db($databasename,$connection)
	or die("Could not open " . $databasename . " database.");
$sql="SELECT name,contact,email,enabled,username FROM customer";
$result=mysql_query($sql)
	or die("Could not get customer data from table.");
?>
<head>
<title>Customer List</title>
<link rel="StyleSheet" href="stylesheets/style.css" type="text/css">
...
...
IMHO that requires little if any explanation for an experienced VFP web developer. Then, to use the data:
<!-- Table that displays the results -->
<table class="dlist">
<tr><th>Enabled</th><th>Customer Name</th><th>Contact</th><th>Email</th><th>Actions</th></tr>
<?php
for ($i = 0; $i < mysql_num_rows($result); $i++) {
$row_array = mysql_fetch_array($result);
echo "<tr" . ($i % 2 == 1 ? " class=alternate" : "") . ">";
echo "<td>" . ($row_array[3] == 0 ? "No" : "Yes") . "</td>";
echo "<td>" . $row_array[0] . "</td>";
echo "<td>" . $row_array[1] . "</td>";
echo "<td>" . $row_array[2] . "</td>";
echo "<td>\n";
echo "</td>";
echo "</tr>";
}
?>
</table>
That's a fairly clunky example, but IMHO it doesn't take a fox-head long to figure out what's going on. The next step is to wrap some of it in classes to allow identification of fields by name and to simplify even further. Overall I'd say that PHP is probably much easier for a data-focused VFP person comfortable with classes and OO than for your average VB6 person.

If people want to look at PHP without establishing a whole LAMP environment you can download PHP for windows and test it against your SQL Server database or dbfs just as easily. The download is about 20Mb including about 10Mb of documentation and heaps of precompiled built-in stuff like local data caching (!), interfaces to call .NET modules or COM/DCOM as well as pdf writers, dynamic image creation, ldap extensions, e-mail and ftp support, xml, every imaginable compression mechanism, AJAX framework and helpers, and the PEAR system that scans gigantic online repositories for further extensions and plug-ins to meet any conceivable need- you get the equivalent of DEFINE CLASS sourcecode for everything from grammar checkers to blowfish encryption to ???.

The same thing applied for VB6 and there were all sorts of idle threats in the VB6 community about leaving for non-Microsoft pastures. It never happened because in the end the path from VB 6 -> VB.NET (or even C#) was easier for most developers than the comlpetely different environments and communities.

IMHO MS still has work to do to make NET as data-friendly as VFP. I won't say it again after this, but IMHO the timing of the announcement was unfortunate when Linq's local data capability isn't ready enough for close examination.

I don't disagree with any of the rest of what you say about market share etc. Heck, I was one of the first to abandon ship in 1997 and only returned because Java was immature, not a match for VFP's data processing. Nor is NET IMHO. Who else uses the product has never been much of a concern (MS hasn't even stocked VFP in NZ for years) but an issue of delivery and functionality. As it has been for many others who are still here.

And there's always the option of continuing on with VFP. On the server especially it's unlikely that VFP will be broken even by future OS changes.

Agreed- and as ASP-type services consumed by other applications become more common, customers may not know or care what it's written in server-side. Who of us is concerned that our banking records are probably stored in Cobol systems written 25 years ago?

I'm obviously biased and I make no bones about it, but I also see alot of ex-FoxPro folks at .NET shows, user groups etc. and most of these guys are not griping one bit about the decision they've made. Not anymore at least (after having put in their dues)...

I think that the NET converts who are insecure about their decisions are the ones who come here to make fun of VFP people ;-)
"... They ne'er cared for us
yet: suffer us to famish, and their store-houses
crammed with grain; make edicts for usury, to
support usurers; repeal daily any wholesome act
established against the rich, and provide more
piercing statutes daily, to chain up and restrain
the poor. If the wars eat us not up, they will; and
there's all the love they bear us.
"
-- Shakespeare: Coriolanus, Act 1, scene 1
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform