4 ms·
Let's look at the stack bottom-up. You'll need probably some kind of Database, right? For most of the usecases in different web-apps a document-based approach
by anonyfox 13y ago
Let's look at the stack bottom-up.
You'll need probably some kind of Database, right? For most of the usecases in different web-apps a document-based approach is just a perfect fit, i recommend MongoDB, since its fast and very easy to use, and the query language is just javascript. If you need something really fast, choose an in-memory-DB like Redis (again, mostly you don't need this, 99% of all webapps won't have serious traffic).
For the serverside-stuff itself, i highly recommend Node.js. Pair it with one of its great frameworks like express, and you'll be up and running in a couple of days. Don't even bother with RoR, as of today it is quite a steep learning curve to master, especially with all the different components of the rails-stack. Also see https://news.ycombinator.com/item?id=6171440 https://news.ycombinator.com/item?id=6171440 about Ruby/Rails in startups. Since you wrote what kind of webapps you're writing, node.js should be a good fit for you. It's lightweight, fast and you don't need another language to learn, since its just JS.
For the Frontend-development it depends on what type of websites you'll be developing. If its a "classic" webapp, you'll be fine without additions. If you want to build a single-page-application, have a look at backbone.js, it's a client-MV* framework. I prefer it over the alternatives because of it's minimalistic and intuitive approach, the spirit of node.js.
When it comes to styling and the view-code, you'll have jade as html-templating-language and stylus as css-preprocessor-language if you want, thei're some kind of default with node.js / express and pretty good. For layouting, bootstrap is the best ui-framework out there, hands down. Take a look at the (mature) version 2.X or the (upcoming) version 3.
If you take my suggested road down, you'll have a complete javascript-stack, one language to rule them all. Using the same skillset, you can even build desktopapps with node-webkit or mobile apps with phonegap for example. Just don't bother with additional languages, ecosystems and all the hassle, JS will do the job for you today.
If you want some kind of standardlibrary for javascript, or better known as the "swiss army knife", have a look at http://underscorejs.org/ http://underscorejs.org/ .