1) Choose a popular language so you can easily find programmers.
2) Object oriented is best.
3) Structured is best.
4) Probably the simplest way to identify good code (and a good language) is to read some. The more straight forward it seems, the better it is. (Easy to understand = hard to hide bugs)
5) Evolve instead of Develop your code. (Build simple apps for fast feedback, change/add code to improve it.)
6) Whatever you have written will be wrong. Plan for change. Expect to undo.
7) Write the code in two orders
.
a) Code the observable (probably GUI) first for feedback
b) Code the confusing/problematic parts first for feed-forward
George Cabrera III, I have a lifelong love of learning.
An
accurate answer really depends on what you are doing with your "web
startup." If you're making a complex site like Quora or Facebook, you
will need a whole different set of tools than if you're making something
simple.
If your website is just as simple thing that represents your business, then you can do something as easy as use Wordpress or Ruby on Rails and be done with it.
If the website is your product, then you're probably in the "complex site" category and don't want to mess around with systems or languages that aren't heavily supported, aren't widely used, or haven't faced rigorous trials by fire. In this case, Python is almost certainly your best bet for addressing 1, 2, and 3.
Some reasons in favor of Python:
Some reasons against other options:
EDIT: I agree with Janssen Choong's answer as well. I was only addressing some of the technical aspects of this choice and not the very important business aspects.
If your website is just as simple thing that represents your business, then you can do something as easy as use Wordpress or Ruby on Rails and be done with it.
If the website is your product, then you're probably in the "complex site" category and don't want to mess around with systems or languages that aren't heavily supported, aren't widely used, or haven't faced rigorous trials by fire. In this case, Python is almost certainly your best bet for addressing 1, 2, and 3.
Some reasons in favor of Python:
- It's very well known, easy to learn, and is taught in lots of CS programs, so it'll be easier to hire people.
- There are a ton of frameworks for building sites, including Pylons and Django, that are used by many large websites including this one. (Quora uses Pylons, Python, and AWS Quora Infrastructure: What languages and frameworks were used to code Quora?)
- It's a very elegant and consistent programming language.
- It's got exceptional documentation and excellent learning resources like http://learnpythonthehard
way.org/
Some reasons against other options:
- PHP: It has a lot of inconsistencies as a language that result in subtle and difficult bugs in mature code bases.
- PHP:
It's really difficult to keep a mature codebase fast. It's fast IFF
you're very careful with it or use something like HipHop for PHP (https://developers.faceb
ook.com/...).
- Rails does too much work for you. This may seem odd, but once you get past the initial stages of a website, you can be held back by Rails easily.
- Javascript is necessary in the browser and interesting on the server, but it's not easy language to grasp for a lot of programmers.
EDIT: I agree with Janssen Choong's answer as well. I was only addressing some of the technical aspects of this choice and not the very important business aspects.
No comments:
Post a Comment