Rob,
Let me try to answer your questions, understanding that my
answers are laced with my experience and therefore my bias.
1. For the most part the SQL that you write for Access, MS
SQL or MySQL is going to be the same. I won't make that claim about
Oracle or PostgreSQL because I have limited or no experience in
those areas. To be sure when you head down the road with any DBMS
there are finer points on 'value added' features (to over simplify
things like MS SQL's Transact SQL), but for the most part when you
are pulling out, inserting or deleting records the SQL that you
write will be the same. In fact, I don't think I had to make any of
the SQL in the book different to deal with the back end db.
2. As for your host steering you away from MySQL, I don't
know why that would be. It is MUCH more stable and robust than
Access for web development. My research showed that you can use
MySQL just fine with ASP though that clearly wouldn't be
Microsoft's first choice.
3. A quick aside, the fact that you are building ASP on a Mac
would seem to indicate that you are developing on your production
server. That's never a good idea. Go local if you can. If you have
a newer Intel Mac you can use VM Fusion, Parallels or even Boot
Camp to run Windows in a virtual environment and develop there,
only moving your code to production when you are happy with it.
There is of course the fact that they two environments would not be
identical and you may need to change a few references, but it is
still a better practice than developing on your live site. Some web
hosts give you the ability to set up a subdomain. If yours does,
you could set one up with a duplicate of your site and develop
there.
4. Let me try to pull your 'rant-let' apart into two issue. I
begin with a question. I'm not sure what the Mac part has to do
with it. The primary language I work in at my day job is
ColdFusion. The majority of the most serious developers I know in
the CF world work on Macs. I am forced into the PC world because of
a cultural bias at the business school where I work. Having said
that, the only time I have felt there was ANY difference in the
tools, resources, choices I had was in any way affected by platform
was when Adobe still had not released Flex Builder 2 for the Mac.
Now that is behind us as well. This reaction of mine may be based
on the fact that Access never comes into play in the work that I
do. I regularly work with MS SQL and MySQL. (OK, so SQL Enterprise
Manager, the MS tool of choice to talk to MS SQL is Windows only,
but I only use that at the day job. But even there you can find
cross-platform, free tools like Aqua Data Studio to talk from a Mac
to MS SQL.) If I'm missing your point on the Mac, please let me
know. Since the advent of the Intel Mac I think it is hands-down
the best choice for a web developer. You can have Mac, Windows and
Unix all on one machine. It doesn't get any better (providing you
have the RAM :-)).
As for the security question, it is somewhat analogous to the
war on viruses and spyware. As the defenses get better, so do the
attacks. Most languages have developed functions for vetting user
input variables and best practices for building these things. It is
mainly a user education issue. When I took over the book you are
working out of, the one thing Jeffrey told me it needed was more
security. I did my best to put more in under the constraints of the
publisher. They didn't want the book to be any longer than the
previous version. I did my best to modify the code used to include
"string safe" functions and to add verbiage about the importance of
security. It was clear that I could not add as much as was needed
and I said so in the book. Much more is needed for a serious
treatment of the subject and not acknowledging that would have been
a disservice to the readers. I've been working as a developer for
over a decade and I don't know all there is to know about it. It's
a constantly changing field, just like all of web development. In
fact next week I'm going through a 2-day SANS Web Application
Security workshop in hopes of learning more. So at the risk of
sounding like an industry apologist, I don't think it's a
shortcoming of the development community. It is, as they say, "a
developing situation".
HTH,
Bob
http://bobflynn.info/