Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Help decide on technology stack

Posted on 2015-01-13
3
Medium Priority
?
151 Views
Last Modified: 2015-02-10
Looking to build an application that primarily does a variety of data manipulation (on large data sets) using cool and simple UI

Key factors:
- need to use all open source technologies
- need to loosely couple
- postgresql is chosen for db because reliability and data integrity are an absolute necessity for my project
- Application performance could be moderate. Application might not have more than 2 concurrent users. Application deals with "large" data sets (10-100 gigabytes for now) but user can wait few more seconds or a min for the bulk updates to happen. So high performance is not a must have.
- any other key factors to consider?

Questions:
Q1# need advice on 'how to approach towards better design'. I really want to architect it well so future enhancements could be done painlessly
Q2# PHP vs Ruby vs Python- Which programming language is better with postgresql. I am leaning towards php since I guess it has extensive support with database programming
Q3# Material to read/learn about architecting web applications
Q4# Any pitfalls or major disadvantages of using postgresql?
0
Comment
Question by:rediscovr
3 Comments
 
LVL 84

Expert Comment

by:Dave Baldwin
ID: 40548164
If you're serious, you should investigate what Facebook has done to dramatically speed up PHP.  Some more info:  http://en.wikipedia.org/wiki/HipHop_for_PHP
0
 
LVL 111

Assisted Solution

by:Ray Paseur
Ray Paseur earned 750 total points
ID: 40548680
Skip PostGreSQL and use MySQL instead.  The availability of good toolsets for MySQL is much greater than PostGreSQL, and there is no difference in the reliability, performance or data integrity.  You can use either data base right or wrong, and the way you use the database will have more to do with the success of your project than the choice of the underlying engine.  FWIW, deployments of MySQL outnumber PostGreSQL by a very, very wide margin.  This did not happen by accident; the marketplace has spoken.  Some links of interest:
http://www.wikivs.com/wiki/MySQL_vs_PostgreSQL
http://en.wikipedia.org/wiki/WebScaleSQL (similar concept to HHVM)
http://db-engines.com/en/ranking_trend (log scale in this chart)

To your specific questions:
1. Build on Laravel and MySQL, use AngularJS for the client end.  (You can use Laravel Views, but you'll make the app more sophisticated and "slick" if you use a JS front-end and a Laravel API).
2. PHP because you may want flexibility to hire professional programmers. There are lots of PHP programmers.
3. Make a Google search and start there.  Dayle Rees books are a bit hokey, but good in terms of organization.  All of these products have online help and examples galore.  Laracasts.com is a good source.
4. In the face of the popularity of MySQL and the specialized development by the WebScale consortium, I would not recommend PostGreSQL.

Last note, then I'll sign off.  If you're doing this yourself and you already know a good bit about computer science, for example, you know Ruby very well, but do not really have any depth of experience in PHP or Python, then the obvious answer is "Ruby."  If you're thinking of getting help with the build, consider your local colleges and universities.  There are often Senior CS majors or grad students who are looking for a gig.

Best of luck with the project, ~Ray
0
 
LVL 62

Accepted Solution

by:
gheist earned 750 total points
ID: 40564952
Why bash PostgreSQL? MySQL is unstable database to trick you into selling you Oracle.... At least cal it MariaDB that has data integrity bugs of MySQL fixed...
0

Featured Post

 [eBook] Windows Nano Server

Download this FREE eBook and learn all you need to get started with Windows Nano Server, including deployment options, remote management
and troubleshooting tips and tricks

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
It’s a season to be thankful, and we’re thankful for users like you who engage on site, solve technology problems, and network with others in the industry. What tech are we most thankful for? Keep reading.
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.
Suggested Courses
Course of the Month12 days, 11 hours left to enroll

971 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question