Question:
What programming language is best for my purposes?
2011-01-01 20:14:17 UTC
Hello everyone,

To get to the point, I'm looking to create some form of a application or web app for business purposes. As a overview of the application requirements, it will first and foremost need to be a database to store a lot of information (sensitive information, both data and files), but will need to allow for lots of options, such as allowing the client to submit/edit/delete information or contracts. They will also need to use submitted information to create documents and forms (using Microsoft Word?) as well as send messages and save documents and information to the clients pc. Multiple users will need to access it at once (although I understand when multiple users access the same file, the original user can edit but all others become read only or locked out). I want to use MySQL with PHP, but just from my description of the application, it tells me that I need real time client-side privileges, right?

Will a combination of MySQL, PHP, and Java work? Or do I need to use something more complex like C++? I was hoping to use simpler language if possible. Will it be better to have a main server and web application that multiple businesses/clients login to in order to access their information? Or should I have it so each client installs their own software? (I have never done this before and would need to learn how to create software that can be installed) It would be ideal if I were able to create a single database with a web interface and store all information on a single secure server, but allow the application to create documents for the client and save them on their pc and give clients permissions based on their login to edit info, HOWEVER, I do not know if this is possible.

Any help anyone? Thanks in advance. If you need further information, just let me know.
Three answers:
?
2011-01-01 20:39:41 UTC
I'd suggest you go with a CMS instead of trying to build from scratch. Sharepoint has the capability of doing everything you've written, but you'd either have to tweak the authentication method so you can store user data in a database, or you'd need to implement active directory.



There's another company that provides a share point like CMS software for free (may be charging now, but haven't checked in the last 6 months). I don't remember their name, but do a search for CMS and you'll see tons. This would get you up and running within a matter of weeks, rather than years.



What you're describing costs a lot of money to build. Lot of time, and some very knowledgeable people involved. I'm just warning you that youre probably biting off more than you can comfortable chew. Sounds like a fun project though. Good luck with it!



Edit: if you're thinking of incorporating documents and email, usually it's better to stick with MS software all around for the integration abilities. I find PHP and C#.Net similar in a lot of ways. Not to mention .net has the asp membership provider and the login/validation controls pre-built.
2011-01-02 04:46:51 UTC
I am not fully sure of the full specification of what you are looking to create, but it sounds like there are many parts to it. I will try my best to cover them.



First of all, a database is the right way to go to store lots of related information in record form. Access to the database can come from many pieces of software written in many different languages, so that does little to answer your question.



Creating Word documents will be tricky with any program, since the Word .doc format is not *technically* open source (however, a few people have written programs that create such a format). You might consider generating reports in an HTML format to print or send to clients. You can also generate a PDF from that as well.



Saving on client pc's remotely (if I understand correctly) is not an easy thing, due to security issues. What you can do is make the information from the database (in report or PDF format) readily available to your clients through a portal like interface using secure authentication. If by client you mean your own employee's, then an internal web application will suite your needs.



Now, as for the language, many will serve this purpose. PHP and MySQL will definitely fill this role, however the applications development might take more time that you are willing to invest in the project. It almost sounds like you are looking for a CRM product, in that case, many commercial options (and free) are available. SugarCRM, Salesforce, and Microsoft CRM to name a few. There is also Oracle Forms, which generated interfaces for data entry to an Oracle database.
2011-01-02 04:40:44 UTC
PHP, SQL (MySQL is a program, not a language) and Javascript (which is not Java).



And a programmer experienced in designing web database front ends. If you want to learn to do it, expect to be starting on the program in about 5 years (that's about how long it will take you to learn all you'll need to know and get the experience you'll need to now write an app that will destroy your data). You'll need a checkout system, so anyone editing a document can check it out and everyone else will get a "the document is checked out - you can read the version still on the site but not edit it" message.



You'll need a lot of security and I suggest that you run the site inside and require VPN access to get to the site. You're also going to need someone to set up and maintain your server.



This is NOT a do-it-yourself project, this is an easy "penny wise, million-dollar-foolish" project if you try to do it on the cheap. (What's it going to cost if all that sensitive information gets hacked from your site? Do you even know what "SQL injection" means?)



Hire a good web development company - it'll be a lot cheaper.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Continue reading on narkive:
Loading...