PDA

View Full Version : Opinions Wanted - FileMaker to...




jasongodoy
Mar 22, 2008, 12:06 AM
Hello all...I have a few questions regarding Mac OS X as a viable platform for a program I would like to develop for the company I work for (small business).

Right now, the main system we use was developed in FileMaker 8.5/9.0. It works great and has met every single need (with minor headaches) that the company has had thus far. My problem lies with scalability, performance, and application features in the near future. Eventually we are going to expand to multiple locations and web access (employee/customers) will become more of a priority. Our main system must scale to support all this. Also, the purchasing of FileMaker plugins to get functionality that FileMaker should have built in is getting just crazy expensive as our user base continues to grow.

One module of the system I would need to develop would average about 200,000 - 400,000 records a year, so performance (especially for reporting) and database scalability are really key. The rest of the modules (6 total) average between 20,000 - 50,000 records a year.

As one of many newbies in the forum, my questions run quite numerous, but I suppose the best question for me to ask is what backend can a Mac OS X application use? Can I use a database such as MySQL and write to it via a Mac OS X application I developed? Could I also use the same MySQL database for use with a PHP application (developed later for remote users-non Mac OS X/or outside customers)? If MySQL is not a good option, what database backend would work well with a native Mac OS X application as well as a language such as PHP?

I'm scoping this project out right now, so getting opinions on core components such as choosing the correct database backend and if whether or not Mac OS X is a right kind of platform to develop my application upon are the most important kind of questions to get answered right now.

Thanks in advance,

Jason



yeroen
Mar 22, 2008, 01:03 AM
The fact that it's Mac OS X won't prohibit it from using standard databases and database APIs (unless of course you absolutely have your heart set on MS Access). MySQL, PostgreSQL, OpenBase, Oracle etc. all work with Mac OS X as well as any other UNIX platform. Of course, some of these options (MySQL, PostgreSQL) are much more economical (i.e. free) than the others. If FileMaker is too expensive, that rules out Oracle in particular as an option.

jasongodoy
Mar 22, 2008, 09:03 AM
Thanks for the response yeroen!

It's not that FileMaker is too expensive, its that for the most basic functionality (i.e. Checking File System for Files, changing printers on the fly, script triggers still don't exist; these examples plus more all require plug-ins. It just the principal of the whole situation. Mac OS X seems like a very stable and fun platform to build an application for (on the desktop side). If I had a backend say "MySQL", it would be nice to build a web application in PHP for remote users.

Going to a SQL based solution with a Mac OS X application on the desktop and PHP for the web seems like a good solution. Is it hard to get MySQL working with Xcode? Should I start learning Objective-C 2.0 or Xcode first? I have about a year timeframe to get this project off the ground, so I'd like to take best approach to learning Mac OS X technologies and integrating it with MySQL.

Does anyone have any experience integrating a Mac OS X application with MySQL?

Jason

SC68Cal
Mar 22, 2008, 09:32 AM
If you are using ObjC, you can probably just wrap the MySQL C API inside an object and go from there.

Cromulent
Mar 22, 2008, 09:45 AM
Thanks for the response yeroen!

It's not that FileMaker is too expensive, its that for the most basic functionality (i.e. Checking File System for Files, changing printers on the fly, script triggers still don't exist; these examples plus more all require plug-ins. It just the principal of the whole situation. Mac OS X seems like a very stable and fun platform to build an application for (on the desktop side). If I had a backend say "MySQL", it would be nice to build a web application in PHP for remote users.

Going to a SQL based solution with a Mac OS X application on the desktop and PHP for the web seems like a good solution. Is it hard to get MySQL working with Xcode? Should I start learning Objective-C 2.0 or Xcode first? I have about a year timeframe to get this project off the ground, so I'd like to take best approach to learning Mac OS X technologies and integrating it with MySQL.

Does anyone have any experience integrating a Mac OS X application with MySQL?

Jason

You seem to be getting confused.

Xcode is just an IDE, and while some things such as debugging take a little while to learn it is mostly just about learning how to do specific things.

MySQL is going to be accessed from C not from Objective-C. I'm not sure if Objective-C can be used to access C libraries, but even if it does it will most likely add another layer of complexity to your program.

C would be the best option to write the backend in and then you can write the GUI either using the Carbon APIs in C or using the Cocoa APIs in Objective-C.

PHP is platform independent pretty much and just requires you to have a working webserver setup correctly such as Apache (which is probably the best option as there is just so much documentation out there for getting it running correctly).

Personally I'd opt to use PostgreSQL over MySQL as it is more standards compliant.

Edit : It seems you can access C libraries from Objective-C as posted above. In that case it would probably make it easier to write the application in Objective-C and use Cocoa for the GUI elements.