Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

SC68Cal

macrumors 68000
Original poster
Feb 23, 2006
1,642
0
Okay,

I've recently been given a large project to do on my own at work. I'm developing a PHP/MySQL application that will be used by teaching staff to report their hours at the College, as well as any grants and advising that they are doing.

So I picked up some books about PHP and MySQL.

I really got into the database stuff, it's pretty slick.

Anyway, since I'm the "database guy" now, I've had to deal with people trying to do other database projects with Excel. Or Access.

I don't know which is worse.

Where did it all go wrong? When did ideas about Oracle and other large database apps get replaced with crap like Excel in the minds of computer users?


Or am I just an elitist prick?
 
Excel is by far the worse of the two.

As for how big-name DBs were supplanted by Excel and the like, it simply has to do with the type of user. A typical user who knows Excel and not Oracle is going to try to create a relational DB out of what they know, not what they don't.
 
so actually excel is my favorite ms program IF you don't try and use it as a database but it is darn good at spreadsheeting. and yes access is a toy. mysql is great for 99% of websites as is php.

it sounds like you are somewhat new at this so think about security and what happens when users do the wrong thing. lots of good reads on it. php is so easy its also easy to write an insecure app.
 
so actually excel is my favorite ms program IF you don't try and use it as a database but it is darn good at spreadsheeting. and yes access is a toy. mysql is great for 99% of websites as is php.

it sounds like you are somewhat new at this so think about security and what happens when users do the wrong thing. lots of good reads on it. php is so easy its also easy to write an insecure app.

We're putting LDAP authentication in front of the web app, so that should filter out about 80% of all the security problems.

The php code uses a very low-priv user acct for the database portion of the code, I believe it can only do SELECT and ADD commands, so worst they can do is spam the database with that account, but we'll have validation to prevent that as well.

I'm mostly concerned about session hacks and session security.
 
Where did it all go wrong? When did ideas about Oracle and other large database apps get replaced with crap like Excel in the minds of computer users?


Or am I just an elitist prick?


I guess to a layman, database is just a collection of data, ready for use. For them, it's perfectly normally to refer an excel file as a database. We will just have to educate them on the differences when they are talking about technical projects.
 
SC68CAL.... you could be an elitest prick for all I know ;)... but not for the reasons you give. When I was network admin at a credit union for a couple years people were using Access and Excel for financial reports, etc. I HATED IT! I could not understand why they would use a spreadsheet program instead of a real database - and in my view Access is an abomination.

So, no, you're not a prick. You've got the right idea. MySQL totally crushes Access! But good luck in conveying that to the others you work with.
 
I could not understand why they would use a spreadsheet program instead of a real database

Because, in most cases, they can create what they need by themselves in Excel or Access. Using an actual database program requires a server, an IT person to set it up, someone to teach them how to interface with it, etc.

Using Excel for database tasks should be a felony. Using Access should be a misdemeanor, and a felony for repeat offenders. ;)
 
Using Excel for database tasks should be a felony. Using Access should be a misdemeanor, and a felony for repeat offenders. ;)

Perfect. I totally agree.
If people insist on having the db info in Excel format PHP can output MySQL data to an Excel spreadsheet. Very cool.
 
Because, in most cases, they can create what they need by themselves in Excel or Access. Using an actual database program requires a server, an IT person to set it up, someone to teach them how to interface with it, etc.

Using Excel for database tasks should be a felony. Using Access should be a misdemeanor, and a felony for repeat offenders. ;)

I think your second point undermines your first. I'm a total believer in using the right tools, and I love my Apple gear, but I'm also practical. My data stored in a way that serves my needs today is better than an elaborate database 10 months from now.

If there were (cough cough) multiplatform engine that did essentially what Access did, I would probably end up using it. I guess Filemaker Pro is this, in essence, and I might need to consider it at some point.

What would be better is if there were better migrational tools so that actual end users in engineering, science, accounting, etc, can naturally start recording data in the way that makes sense to them and then IT can step in once they have sorted out what they want. I've really seen Access databases improve business process when they're used this way. The big problem is that it becomes a giant leap when the transition from Access to a "real" db is needed.
 
Just my 2 cents here, and I hate to say for fear of reprisal, but when you need a basic, simple, small relational database, Access is soooo easy.

Learning PHP and SQL are not easy things compared to click, drag, and go. And Oracle is overkill for anything not enterprised size.

I'm soon going to be dealving further into the PHP, ASP, MySQL world, and I look forward to it, but when small, simple and quick is all you need, Access is fine, almost idiot proof, but of course there is always that one special idiot out there.

Best,

Brian
 
I think your second point undermines your first. I'm a total believer in using the right tools...

Well, my intent was to point out that people need a simple database program to use for simple tasks, and that neither Excel nor Access was the right tool for the job (IMHO).

If there were (cough cough) multiplatform engine that did essentially what Access did, I would probably end up using it.

Total agreement. Someone needs to create a simple, self contained database engine and design program similar to Access which is easy to use, not cluttered with excessive options, and is cross-platform.

Just my 2 cents here, and I hate to say for fear of reprisal, but when you need a basic, simple, small relational database, Access is soooo easy.

Access is easy, and good for small databases. But it isn't cross-platform, and has problems scaling to larger datasets.
 
Total agreement. Someone needs to create a simple, self contained database engine and design program similar to Access which is easy to use, not cluttered with excessive options, and is cross-platform.

I actually didn't realize that NeoOffice has the OOo database module in 2.1. I am checking it out. I wonder if it might be a possibility?
 
My PhD thesis, consisting in essence of 1308 records, was entered in FileMaker Pro, with some pretty impressive formulas for calculating relationships between the fields. I didn't have to use the PHP/SQL functions but from what I see on their website, it plays well with them. I never had any problems with it, and was relatively easy to learn.

Excel helped me look at the data sets in ways that FileMaker could not do directly. FileMakers graphing is not nearly as sophisticated, because it is a....database program NOT a.....spreadsheet. There is a difference.
 
FileMaker Pro Rocks

My PhD thesis, consisting in essence of 1308 records, was entered in FileMaker Pro, with some pretty impressive formulas for calculating relationships between the fields. I didn't have to use the PHP/SQL functions but from what I see on their website, it plays well with them.

I'll second FileMaker Pro as a cross-platform option. I have a database with 60 tables, 350 relationships, 1500 fields, and 1000 scripts. The only cross-platform issue is with fonts (for example, Arial is taller in Windows).

If you've used the ClarisWorks database (which, granted, was flat), you're half way to learning how to use FMP. :)
 
The one thing that is a detractor for me with small RDBMSes like Access and Filemaker, is the fact that the application development that I am in charge of, has no minimum concurrent users. The sky is literally the limit. I could have 400 faculty members accessing the application the night before the deadline, or just one.

I've been basically handed a project that is supposed to replace a paper form, once and for all. That means this application must be reliable for at least a decade with all the data, before the first few entries can be destroyed via our data retention policy. (though, with these records they'll probably keep them forever, since they basically determine how much we pay our faculty for what they spend their time on.)

I trust my code, and my code only, to be reliable for that long, and I need the best damn RDBMS, regardless of complexity and resources, since my CIO has purchased me a brand-spanking new Dell rack server SPECIFICALLY for this project.
 
The one thing that is a detractor for me with small RDBMSes like Access and Filemaker, is the fact that the application development that I am in charge of, has no minimum concurrent users. The sky is literally the limit. I could have 400 faculty members accessing the application the night before the deadline, or just one.

I've been basically handed a project that is supposed to replace a paper form, once and for all. That means this application must be reliable for at least a decade with all the data, before the first few entries can be destroyed via our data retention policy. (though, with these records they'll probably keep them forever, since they basically determine how much we pay our faculty for what they spend their time on.)

I trust my code, and my code only, to be reliable for that long, and I need the best damn RDBMS, regardless of complexity and resources, since my CIO has purchased me a brand-spanking new Dell rack server SPECIFICALLY for this project.

I would have to say, that for your situation, you are absolutely on the right track. I do, however, think it comes down to looking to the future, and knowing is this overkill or not.

For large user groups, datasets, and long term use, bigger is always better. But for something personal, small, small user count, small record count, that doesn't have to have data retained for eons, go with the simple solution. Besides that, there are a lot of great programmers who make a living upscaling from Access to php and mysql for those who need it done.

Don't want to take the food out of their mouths.

Brian
 
I
Don't want to take the food out of their mouths.

Brian


My existence is based upon stealing the food out of their mouths, and eating it right in front of their children, while lecturing them about the fallacy of using Microsoft products.

:)
 
I have been a database developer for close to 25 years. I have worked with C-ISAM, DB2, DBase III/IV, Rbase:, FoxPro, Clipper, Paradox, Pick, Progress, Oracle, SQLServer, Sybase, and Pervasive-SQL/BTrieve. I like SQLServer. I think it is the best product MS makes. Of course, they did not actually make it. SQL Server, prior to version 7, was actually Sybase. With the emergence of NT Server 4.0, MS did not want to 'share' the product with other platforms. So, they sent Sybase on their way and introduced SQLServer 7, which only ran on Windows (sound familiar?).

Right now, I am using SQLServer 2000 for my databases, and I develop the interface in VB. It is a good solution. It is not perfect, but few things are. I would much rather be using MySql and RealBasic. In 2008 I will be doing an in-depth test of this combination.

Access has a large following, and a substantial list of vertical applications developed in it. But, it is terribly inefficient and lacks the tools, and horsepower for serious application development. It is also very quirky.

Excel is in no way a database. In fact, it is completely data unaware. It understands grid coordinates and could care less about what they mean, or what is in them. I would never dream of rolling out any kind of application in Excel. Many people swear by spreadsheets, so they do have a place in computing. However, they are the most misused application there is.
 
Yeah, the biggest problem when it comes to using databases like MySQL, is accessing the database. You have to write some sort of front end for it, and I have yet to see anything that allows you to do this as easily as File Maker. While File Maker hasn't been a 'true' database for some time, it was easy to use, so it took off.

If the people in my office had to use SQL statements every time they wanted to do something on a database, they'd lose their minds.
 
There's not much you can do about that -- unless you're writing your own session library. PHP sessions are not terrible secure, unless you're on https...

Bit of a project update: I've removed the need for sessions, we're using LDAP authentication prior to redirection to the web app. So, most of those concerns are behind me.

G4scott, I totally agree with you. Currently the project I'm doing, I'm doing the client side interface for them to fill out the information and submit it to the database. Gazing into my crystal ball, I'm fairly certain that I'll have to create a second client side interface for department managers to access the database and display the information to them in a way that is understandable.

Which, back to my original post, is going to probably include some sort of exporting to Excel.

............................................________
....................................,.-‘”...................``~.,
.............................,.-”...................................“-.,
.........................,/...............................................”:,
.....................,?......................................................\,
.................../...........................................................,}
................./......................................................,:`^`..}
.............../...................................................,:”........./
..............?.....__.........................................:`.........../
............./__.(.....“~-,_..............................,:`........../
.........../(_....”~,_........“~,_....................,:`........_/
..........{.._$;_......”=,_.......“-,_.......,.-~-,},.~”;/....}
...........((.....*~_.......”=-._......“;,,./`..../”............../
...,,,___.\`~,......“~.,....................`.....}............../
............(....`=-,,.......`........................(......;_,,-”
............/.`~,......`-...............................\....../\
.............\`~.*-,.....................................|,./.....\,__
,,_..........}.>-._\...................................|..............`=~-,
.....`=~-,_\_......`\,.................................\
...................`=~-,,.\,...............................\
................................`:,,...........................`\..............__
.....................................`=-,...................,%`>--==``
........................................_\..........._,-%.......`\
...................................,<`.._|_,-&``................`\
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.