 |
 |
Opinions needed - database application
|
 |
|
 |
|
Senior User
Join Date: Feb 2003
Location: USA
Status:
Offline
|
|
I'm meeting with a potential new client on Monday. As I understand it they are currently running some custom Windows software based on VB and SQL Server. They have some Mac machines that have to run the software through Remote Desktop. They are unhappy with the software and basically want to start over. The goal is a stable database application accessible from both Windows and Mac clients, and remotely from home or on the road. Total users is about 40, 20 in the office and 20 on the road. He expressed interest in doing the whole thing as a web based application, but I'm not so sure. To me, doing a web app just for remote access for their employees doesn't make a lot of sense. The data is never going to be used on their "regular" web site.
They just got a new Dell server running Win2K3 and SQL Server. They aren't opposed to changing that to something else as long as it's not a lot of $$$.
Sadly, I have to wonder if I'm not better off recommending that they stay with SQL Server and I just rewrite the client software. They can use Remote Desktop on the Macs and even Linux rdesktop if need be. I could do a cross platform app in RB but have no idea how I would connect to the SQL Server.
Any thoughts?? TIA...
|
|
MacBook 2.0 160/2GB/SuperDrive
Lots of older Macs
|
| |
|
|
|
 |
|
 |
|
Grizzled Veteran
Join Date: Jun 2002
Status:
Offline
|
|
Couldn't you use Java for cross-platform?
|
|
|
| |
|
|
|
 |
|
 |
|
Senior User
Join Date: Oct 2000
Location: Midwest
Status:
Offline
|
|
SQL is just a protocol. There is quite a bit on conversation about using RB as a front end to relational databases on their mailing lists. If you have access to the code and the database design, it should not be too difficult to use a less proprietary db engine and re-create the SQL interface so that you can have cross platform access. Take a look through the RB-NUG archives and you find a lot of threads about this same question.
HTH
Craig
|
|
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Dec 2001
Location: Atlanta, GA, USA
Status:
Offline
|
|
The right solution is definitely a web-based application. It would work from anywhere in the world on any platform, and no client software is required besides a web browser. It can be secured using SSL if needed, and password protection is part of the protocol.
As to your platform, I would recommend they take their existing Dell server, install Linux on it with a PostgreSQL or MySQL database (depending on the demands of the application). The cost is zero, and it will handily outperform the solution they have now.
The application would likely be developed in Java or PHP. Since it's their own server, I would recommend java running on a Tomcat server, which is also free.
I am a professional developer that creates database driven applications for my employer, so I'd be happy to answer any questions along these lines you may have. I also do this kind of consulting on the side if you're interested.
|
|
Mac Pro 2x 2.66 GHz Dual core, Apple TV 160GB, two Windows XP PCs
|
| |
|
|
|
 |
|
 |
|
Addicted to MacNN
Join Date: May 2001
Location: Cupertino, CA
Status:
Offline
|
|
If you want to keep the SQL Server and write a cross platform web app, then your best bet is probably to go with ASP.NET. The only reason I'd see not to use a web based app is if you need a richer client interface. In that case I'd recommend writing a Java client, personally. But honestly, if they really wanted to support three platforms with rich client interfaces, they should not have bought a Windows server...
I don't think there's anything wrong with SQL Server for a 40 user application, and if they have any other applications they may need a database for then it may be worthwhile just to keep that server around as a DB server, since they already made the investment.
|
|
|
| |
|
|
|
 |
|
 |
|
Senior User
Join Date: Feb 2003
Location: USA
Status:
Offline
|
|
Thanks to all for all the input! I did think about Java then remembered that I have never really learned the language properly, and have never developed with it before. I'm not all that concerned about the db backend, I'm very familiar with PostgreSQL and MySQL, and somewhat familiar with MSSQL. As is the case with Arkham_c I develop database oriented apps for a living, but they have either been strictly windows or Mac, and have been based on either Postgres, MySql, or dbase/FoxPro. It's the cross platform nature of this request that is a first for me.
I hesitate on the web based app only because they don't have a full time IT person or even a nearby consultant, and opening up their server to the web does introduce some security concerns. Esp. if we went with IIS. But yes, it sure does make it available to any machine with a web browser. I'm comfortable with PHP but haven't worked that much with ASP.
Don't know, maybe it's time for a quick course in Java...
Again, thanks for the input.
|
|
MacBook 2.0 160/2GB/SuperDrive
Lots of older Macs
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Dec 2001
Location: Atlanta, GA, USA
Status:
Offline
|
|
Originally posted by techtrucker:
Thanks to all for all the input! I did think about Java then remembered that I have never really learned the language properly, and have never developed with it before. I'm not all that concerned about the db backend, I'm very familiar with PostgreSQL and MySQL, and somewhat familiar with MSSQL.
If you're new to Java web development, I'd suggest keeping it simple. Run Tomcat, do the development as Java servlets, and use the Jakarta Velocity template engine, available here with documentation and example code:
http://jakarta.apache.org/velocity/index.html
There is a pretty good servlets tutorial from Sun which can be downloaded here:
http://java.sun.com/docs/books/tutor...t-servlets.zip
You can get Tomcat here:
http://jakarta.apache.org/tomcat/
Make sure you go for the "4.x" version of Tomcat.
|
|
Mac Pro 2x 2.66 GHz Dual core, Apple TV 160GB, two Windows XP PCs
|
| |
|
|
|
 |
|
 |
|
Senior User
Join Date: Feb 2003
Location: USA
Status:
Offline
|
|
Thanks Arkham_c, I think I have some reading to do... 
|
|
MacBook 2.0 160/2GB/SuperDrive
Lots of older Macs
|
| |
|
|
|
 |
|
 |
|
Forum Regular
Join Date: Aug 2002
Location: Atlanta, GA, USA
Status:
Offline
|
|
Man, this just smacks of a good app for webobjects. They could keep their SQL Server back-end and have a web-based app use the existing data (if it's in good shape).
|
|
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Oct 1999
Location: San Jose, Ca
Status:
Offline
|
|
To continue on what flanders said, with WebObjects you could make both a web based app, and a java app for the desktop, and have both be completely cross-platform, without doing an more work.
In fact, if the application is simple enough, you might even be able to create it with the "direct to web" and "direct to java client" methods.... and that would be very fast. There are limitations on what is practical through those methods, but they can be rather powerful. And since this will not be in the hands of clients, most of my reservations about the direct-to routes are eliminated.
Take a look... you can easily develop on MacOS X (with the included FrontBase install), and then move your deployment over to a Win/SQL Server combo with only a single change in the EOModel file.
|
|
|
| |
|
|
|
 |
|
 |
|
Senior User
Join Date: Feb 2003
Location: USA
Status:
Offline
|
|
Thanks for the WO recommendation. I've never used WO but this may be a good time to investigate it. Just started downloading the Eval copy...
|
|
MacBook 2.0 160/2GB/SuperDrive
Lots of older Macs
|
| |
|
|
|
 |
|
 |
|
Senior User
Join Date: Feb 2003
Location: USA
Status:
Offline
|
|
...Only to discover it's not 10.3 ready yet (the Evaluation, that is). *Sigh*
|
|
MacBook 2.0 160/2GB/SuperDrive
Lots of older Macs
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Dec 2001
Location: Atlanta, GA, USA
Status:
Offline
|
|
Originally posted by techtrucker:
...Only to discover it's not 10.3 ready yet (the Evaluation, that is). *Sigh*
And it's not free. WebObjects was really advanced for its time, but JDO (Java Data Objects) has caught up with it if you're looking for an enterprise solution, and it's free.
http://java.sun.com/products/jdo/index.jsp
http://jdocentral.com/
I still say that WebObjects, JDO, and J2EE are all overkill for what you're looking to do.
|
|
Mac Pro 2x 2.66 GHz Dual core, Apple TV 160GB, two Windows XP PCs
|
| |
|
|
|
 |
|
 |
|
Addicted to MacNN
Join Date: May 2001
Location: Cupertino, CA
Status:
Offline
|
|
Originally posted by Arkham_c:
And it's not free. WebObjects was really advanced for its time, but JDO (Java Data Objects) has caught up with it if you're looking for an enterprise solution, and it's free.
http://java.sun.com/products/jdo/index.jsp
http://jdocentral.com/
I still say that WebObjects, JDO, and J2EE are all overkill for what you're looking to do.
WebObjects' value is that it's a complete platform for Java web applications -- including very sophisticated frameworks, development tools, and a deployment environment (with associated tools). You won't find any comparable product in the Java world for the price WO goes for. That said, one can also cobble together a free Java solution using various technologies like JDO, servlets, JSP, etc. I wouldn't go with WO for this project, personally, it sounds like overkill. WO also has a steep learning curve. WO, and products like it, are valuable for larger projects.
|
|
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Dec 2001
Location: Atlanta, GA, USA
Status:
Offline
|
|
Originally posted by itai195:
WebObjects' value is that it's a complete platform for Java web applications -- including very sophisticated frameworks, development tools, and a deployment environment (with associated tools). You won't find any comparable product in the Java world for the price WO goes for. That said, one can also cobble together a free Java solution using various technologies like JDO, servlets, JSP, etc. I wouldn't go with WO for this project, personally, it sounds like overkill. WO also has a steep learning curve. WO, and products like it, are valuable for larger projects.
I saw a demo from Sun on Project RAVE a few months back. It's now out as a beta under the name Java Studio Creator. It is an IDE that lets you do end-to-end development of a web application with minimal coding. Very impressive, and likely comparable to what WebObjects offers. Since the resulting app is J2EE, it will run on any of a number of app servers/containers.
http://developers.sun.com/prodtech/javatools/jscreator/
I'm not recommending it for this small application, but it does look to be a good way for a new Java developer to produce an enterprise-class web application (much like WO) without the steep learning curve of WO or standard J2EE.
|
|
Mac Pro 2x 2.66 GHz Dual core, Apple TV 160GB, two Windows XP PCs
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Oct 1999
Location: San Jose, Ca
Status:
Offline
|
|
Arkham_c: From a quick look over the SUN website, I don't think that it is going to be easier to use than WebObjects... in fact it seems to be missing some of the features that make WO so easy to make complex systems, plus it is completely missing the "direct to" features.
I do like the look of it, but it is still a lesser sibling to WO.
And in case you missed it, WO can now use any J2EE container as the server, so it will run just about anywhere.
|
|
|
| |
|
|
|
 |
|
 |
|
Addicted to MacNN
Join Date: May 2001
Location: Cupertino, CA
Status:
Offline
|
|
I took a quick glance at JSO and, while it looks like a nice tool, I don't think it's going to match what WO offers. As larkost mentioned -- it doesn't sound like it has rapid development features. It also doesn't look like it comes with all of the deployment tools that WO offers. Also, while it looks like it simplifies database interaction, it doesn't look like JSO supports JDO, does it? They're also not adding support for n-tier or rich clients until at least next year. Also, it's not going to be free either. And one other thing worth mentioning is that WO has been around for a while and has a proven track record for web app development, while JSO won't see a first official release until late 2004.
As far as WO's learning curve goes... Web application development in general has a steep learning curve, IMO. WO is easier to learn if one already has some web app development experience, but, as with any other large development platform, it takes some time to learn how to use all of the tools, frameworks, etc. The EO Framework alone is huge and very complex, but OTOH a lot of web applications don't need to delve into the framework too deeply.
Thanks for the heads up though, JSO looks like an interesting development. I will make sure to try it out as soon as I have a chance.
|
|
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Dec 2001
Location: Atlanta, GA, USA
Status:
Offline
|
|
I've not used the Java Studio Creator personally (I installed it on my iBook today, but have not really tried it out yet). I did see a demo though, and they connected to a database using JDBC and immediately mapped the tables to objects (some having complex, multi-table foreign key relationships) in a matter of seconds. They build a web interface graphically by dragging form elements out onto the screen, mapped database objects and queries to web tables, and had the whole web app going in a matter of minutes. It was definitely a RAD tool, and definitely geared towards building enterprise apps quickly. The online discussions mention it as a higher-level of development than other MVC tools like Struts. They liken it to WebForms in ASP.NET, although I've never used that.
I'm not familiar with WO, so it's hard to compare them. I did sit in a WO demo at an Apple Market Center some years ago, but I don't recall the specifics. I know WO is highly regarded, but I wonder how much of it has been eclipsed by newer tools. And since WO doesn't work with Panther, I can't try it out for myself to see.
Oh, and WO is not free either. You have to spend $700 to get a deployment license. That's very reasonable if that's an unlimited-client license, but it's more than the free solutions I mentioned earlier.
|
|
Mac Pro 2x 2.66 GHz Dual core, Apple TV 160GB, two Windows XP PCs
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Oct 1999
Location: San Jose, Ca
Status:
Offline
|
|
Arkham_c: Much of what you are describing is exactly what WebObjects has had for many years. The only thing I remember EOModler not doing was automatically mapping the Foreign Keys for me, but since I was using MySQL, this could have been database specific.
WebObjects does indeed run on Panther. It is possible that the demo version does not, but I have not looked at the demo version in years.
As far as I have seen, WO is still the premiere Web development environment out there. It just does so much for you, and wiring up the interfaces is very well thought out. There are a few places where I think it needs work (formatters should be able to change type...).
And $700 (699) for a box with a license for both development (Windows and MacOS X) and deployment (anything with a J2EE serverlet container), that runs on as many processors as your box has, and for unlimited clients (unlimited simultaneous transactions), I don't think you will even approach that with any other license. I was in the crowd at the WWDC when the 98% price reduction was announced, people were astounded.
And here is SUN's official word on jsc's cost down the road:
http://developers.sun.com/prodtech/j...qs/general.jsp
8.___Will Java Studio Creator be open source? If not, how much will it cost?
Although we are some time away from being ready to release Java Studio Creator to the world and have not yet made a final decision, our current thinking is that Java Studio Creator tools will not be released as free or open source software. The tools that are created by the Java Studio Creator team will likely be priced at a level that provides significant value to developers compared to competitive offerings. Stay tuned for more updates as we get closer to release!
|
|
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Dec 2001
Location: Atlanta, GA, USA
Status:
Offline
|
|
Originally posted by larkost:
Arkham_c: Much of what you are describing is exactly what WebObjects has had for many years. The only thing I remember EOModler not doing was automatically mapping the Foreign Keys for me, but since I was using MySQL, this could have been database specific.
WebObjects does indeed run on Panther. It is possible that the demo version does not, but I have not looked at the demo version in years.
As far as I have seen, WO is still the premiere Web development environment out there. It just does so much for you, and wiring up the interfaces is very well thought out. There are a few places where I think it needs work (formatters should be able to change type...).
I will check out WebObjects. It turns out that you can run the free developer edition on 10.3.3. I found this document which describes the installation process as:
[list=1][*]Install Mac OS X 10.3[*]Update to Mac OS X 10.3.3[*]Xcode Developer tools CD[*]Xcode 1.1 Software Update[*]WebObjects 5.2 Developer[*]WebObjects 5.2.2 Developer[*]WebObjects 5.2.3 Developer[/list=1]
|
|
Mac Pro 2x 2.66 GHz Dual core, Apple TV 160GB, two Windows XP PCs
|
| |
|
|
|
 |
|
 |
|
Forum Regular
Join Date: Aug 2002
Location: Atlanta, GA, USA
Status:
Offline
|
|
that's right, if you don't do the install just like that some parts of WO or xcode get broken. Also if you're on Panther, make sure you're running the 5.2.3 WO and the 1.4.2 java.
|
|
|
| |
|
|
|
 |
|
 |
|
Senior User
Join Date: Feb 2003
Location: USA
Status:
Offline
|
|
Originally posted by Arkham_c:
I will check out WebObjects. It turns out that you can run the free developer edition on 10.3.3. I found this document which describes the installation process as:
[list=1][*]Install Mac OS X 10.3[*]Update to Mac OS X 10.3.3[*]Xcode Developer tools CD[*]Xcode 1.1 Software Update[*]WebObjects 5.2 Developer[*]WebObjects 5.2.2 Developer[*]WebObjects 5.2.3 Developer[/list=1]
Thanks, going to install the demo now...
|
|
MacBook 2.0 160/2GB/SuperDrive
Lots of older Macs
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Dec 2001
Location: Atlanta, GA, USA
Status:
Offline
|
|
Originally posted by techtrucker:
Thanks, going to install the demo now...
A warning -- it seems that installing WO causes a process to be running on your machine whether you're using WO or not. I killed it in /System/Library/StartupItems, but it's there nonetheless.
|
|
Mac Pro 2x 2.66 GHz Dual core, Apple TV 160GB, two Windows XP PCs
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Oct 1999
Location: San Jose, Ca
Status:
Offline
|
|
I assume that you are talking about the Frontbase Database? It is not a big consumer of resources if you are not actively using it.
|
|
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Sep 2000
Location: in front of the keyboard
Status:
Offline
|
|
I wrote Plaster Mold inventory tracking system for my mother's ceramic studio as a favor for her.
I just did a J2EE 3 tier app (JSP, Servlet, EJB) using Model2 MVC--because that's what I know, and I can whip stuff like that out in no time.
They only have a handful of users, I just put JBoss/Jetty on their machine, and they can access the app via Mozilla for any machine on their LAN.
I just used Hypersonic as the db, and so far, they have a few thousand records and it works great.
|
|
signatures are a waste of bandwidth
especially ones with political tripe in them.
|
| |
|
|
|
 |
|
 |
|
Senior User
Join Date: Feb 2003
Location: USA
Status:
Offline
|
|
Originally posted by Kristoff:
I wrote Plaster Mold inventory tracking system for my mother's ceramic studio as a favor for her.
I just did a J2EE 3 tier app (JSP, Servlet, EJB) using Model2 MVC--because that's what I know, and I can whip stuff like that out in no time.
They only have a handful of users, I just put JBoss/Jetty on their machine, and they can access the app via Mozilla for any machine on their LAN.
I just used Hypersonic as the db, and so far, they have a few thousand records and it works great.
Never heard of Hypersonic, have a link handy?
This whole project is getting tough to write a proposal for. The customer emailed me, wants to see several options. He is familiar with FileMaker Pro and wants a proposal using FM. Wants another proposal for me to use the existing SQL Server 2000 and rewrite the front end. And another proposal going to something different altogether, such as MySQL and doing a web app. And they are looking for a solution that allows for a lot of reports, including the capability to create their own reports. At this point, esp. considering the report demand, I'm starting to lean toward FileMaker. He expressed interest in getting away from MS products. So in some respects it's great, he's a Mac guy and while he needs the app to be cross platform he'd rather go with something Mac friendly. And something with more lenient licensing restrictions, doesn't want to get sucked into Software Assurance.
The Win2K3 server isn't his fault, it was purchased before he took over.
A lot on the plate, trying to sort it all out...
Thanks for all the input, this has been a good thread!
|
|
MacBook 2.0 160/2GB/SuperDrive
Lots of older Macs
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Sep 2000
Location: in front of the keyboard
Status:
Offline
|
|
|
|
|
signatures are a waste of bandwidth
especially ones with political tripe in them.
|
| |
|
|
|
 |
|
 |
|
Dedicated MacNNer
Join Date: Sep 2003
Location: Pittsburgh, Pennsylvania
Status:
Offline
|
|
If you're looking at migrating a database, and rewriting a front-end application all at once on your own, I hope for your sake it's simple, that just sounds like a cluster-f*!# to me. I've had experience migrating from SQL Server to Oracle, and that was a very long process, just one database, few million rows. That didn't include the 150 stored procedures.
I also just finished writing a front-end application. We retooled an ASP application, rewrote the interface, and did some minor code touch up. That alone took two/three people working 45 hours a week almost three months. We are all experienced ASP programmers too.
I can't speak for your project, ours might have been a bit larger, but building from the ground up take a long time, you have to consider req gathering, correct code design, then implementation, and testing.
I have a lot of SQL Server experience, you can use anything you're comfortable with to access it, ASP, PHP, Java, anything. If you have it in you to write a cgi in C it will be able to talk to SQL Server w/o a problem. Best of luck.
|
|
|
| |
|
|
|
 |
|
 |
|
Senior User
Join Date: Feb 2003
Location: USA
Status:
Offline
|
|
Thanks Partisan01, I appreciate the feedback. Fortunately, the only thing they want out of the existing data is the customer database, only a few hundred records. They're ready to basically start from scratch.
I submitted a proposal with several options, will have to see which way they choose to go. Will let you all know...
|
|
MacBook 2.0 160/2GB/SuperDrive
Lots of older Macs
|
| |
|
|
|
 |
 |
|
 |
|
|
|
|
|

|
|
 |
Forum Rules
|
 |
 |
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is Off
|
|
|
|
|
|
 |
 |
 |
 |
|
 |
|