Build a new web service from scratch in days...for fun and profit?
(a.k.a. Startups for the hyper-impatient)
(a.k.a. "Stealth mode" is for weenies!)
* Which framework(s)
* Which language(s)
* What skills required
The goal is not to lecture but to listen to real-world examples, hear tales from the trenches, and provide starting points for those interested in bringing a new service to the web...NOW.
I did a simple search on HotJobs (keyword, 94043), first as a job seeker:
Ruby - 80 jobs
(Ruby Rails - 26 jobs)
PHP - 419
Python - 387
Java - 2342
(Java Spring - 100)
(J2EE - 886)
Web 2.0 - 150
Is Web 2.0 a good financial bet for engineers? Hmmmm....ok, now the demand side. (I have an employer account.) Search for keyword, Mountain View, CA and metro area, resumes from last 30 days:
Ruby - 36
(Ruby Rails - 7)
PHP - 353
Python - 93
Java - 1000 (hmmm, this seems like too round a number...perhaps their search only returns 1000 max?)
(Java Spring - 868)
(J2EE - 1000, ok now I *know* that something's funny. Fine, assume Java >>1000)
Web 2.0 - 1000 (again)
So, unfortunately HotJobs won't cooperate. If I get a chance, I'll try Dice. But still, to me, as an employer OR an engineer, the financial incentive to move from Java to Web 2.0 seems murky at best. Let's see what the group thinks.
If the short answer is: use rails stupid. Then perhaps we can take this forward through an exercise. To facilitate this, I propose the following... We take a hypothetical service idea, sketch the design, and then debate the architecture. Here are the rules I have in mind:
1. Must require data (what service doesn't)
2. Must require mass market UI appeal for web browsers
3. Must scale (architecturally and design, not business model) to >10M users within 3 months
4. Must allow for user content creation
5. Must have a "reasonable" chance of implementation within 48-96 hours
6. There are no other rules beyond these.
To start, I will propose the following hypothetical idea, but others can be presented and majority rules.
Idea 1: A site for startups to post projects to developers to work on for free in exchange for royalty payments if and when they are successful. Think of it as a site for "Venture Technologists" --- engineers who have knowledge capital, but no money. Startups who have ideas, but no engineers and no money, promise to reward participants for their contributions when/if they generate *Revenue*. (I think we all know profits are so pre-Web 2.0!)
Let's not get into legal details, business plans, etc.; let's focus on the architecture and tools in this session.
Here's a bootstrap list of frameworks I know of and have looked at...some briefly...some painfully over months of labor...please add more!
- Java - Spring, ServiceMix, Sails, Tapestry
- PHP - CakePHP, PRADO, Zend, Code Igniter
- Ruby - Rails
- Perl - Catalyst
- Python - Pylons
- Content Management Systems (in some apps, I consider these frameworks) - Drupal
NOTE: for the above idea, I hereby declare that any and all participants who contribute code will share equally in any proceeds if the service is actually developed and coded. Who knows!? I reserve final judgment to adjust allocations for those who contribute materially in non-code ways, or people I find amusing or entertaining. And myself of course :)