|
Oct 04
2009
|
The Dream Stack For Developing And Deploying Web ApplicationsPosted by Mike Gualtieri in Architecture and Design, Application Development |
I want to develop a Web application - a really good Web app. The kind of Web app that will make me so rich that I can buy an $9.4 million co-op over looking Central Park, a Yacht registered in Monaco, and hire an architect to build my dream-house west of Boston that is a combo of Buckminster Fuller, FLW, and MTV cribs. Throw in a vintage sweet ride like Don Draper's Cadillac and lifetime membership to the Boston Sports Club. I'm set.
The problem: What technology am I going to use to develop and and deploy a pwn-some Web app that will scale forever and never go down. (I need a great idea too!)
The solution: Enlist your illustrious help to come up with the perfect Dream Stack to help make all my dreams come true.
Dream Stack: What Are The Requirements?
The Dream Stack is a perfect combination of tools, technologies, and platforms that meet both development and deployment requirements. But, deciding what combinations of technologies to use is no simple task because there are choices and combinations galore. Here are my requirements for the Dream Stack:
Development
- Low-cost tools (because this is a startup).
- Maximize developer productivity.
- Faster development and faster change.
- Can develop great user experiences.
- Availability of talented developers (we plan to grow fast).
- Will support a scale-out deployment architecture of both data and computing.
Deployment
- Low-cost, linear-cost deployment (because this is a startup).
- Support scale-out architecture of both data and computing.
- Architected to never go down.
- Employs security features
- Easy to manage and monitor
Your Thoughts? What Is The Dream Stack?
Your Dream Stack should consist of tools, technologies, and platforms that are currently available either as open source, commercialy available products or a combination of both. Your stack will probably, but not necessarily, include programming languages, databases, app servers and/or cloud, IDEs, libraries, and other platform technologies. Any combination is fine as long as it meets the requirements of the Dream Stack.
1. What other requirements should the Dream Stack have?
2. What is your recommended Dream Stack?
Mike Gualtieri, Senior Analyst, Forrester Research

written by Jack Woehr, October 04, 2009
written by Jack Woehr, October 06, 2009
written by ranjix _, October 08, 2009
my current answer is python on the server side (immediate development, fairly simple language and a ton of libs) and javascript (YUI toolkit or others, FireBug plugin) on the client side. keep your architecture simple, make sure it's completely and trivially clusterable (take care how you make your db also) and ask some graphic designers for a nice set of graphics.
as for the workflow, visual development, security and all the rest, those will be in my next framework. they might be in some MS world already (visual studio and whatever workflow app they currently have, descendent of biztalk, don't really know), but can't tell you, don't really use MS.
good luck









