Browse files

add philosophy file

  • Loading branch information...
1 parent cfa38bf commit 69485b3440e837bafa8ac8e3bdbc2b71a0ef60b0 @aaronsw aaronsw committed Mar 14, 2011
Showing with 33 additions and 0 deletions.
  1. +33 −0
@@ -0,0 +1,33 @@
+layout: default
+title: Philosophy
+# The Philosophy
+The slogan is: "Think about the ideal way to write a web app. Write the code to make it happen."
+This is literally how I developed I wrote a web application in Python just imagining how I wanted the API should be. It started with <code>import web</code>, of course, and then had a place to define URLs, simple functions for GET and POST, a thing to deal with input variables and so on. Once the code looked right to me, I did whatever it took to make it execute _without changing the application code_ -- the result was
+In response to someone complaining about having "yet another template language", [I wrote a bit more about my philosophy](
+> You don't have to use it -- each part of is completely separate
+> from the others. But you're right, it is "yet another template
+> language". And I'm not going to apologize for it.
+> The goal of is to build the ideal way to make web apps. If
+> reinventing old things with only small differences were necessary to
+> achieve this goal, I would defend reinventing them. The difference
+> between the ideal way and the almost-ideal way is, as Mark Twain
+> suggested, the difference between the lighting and the lightning bug.
+> But these aren't just small differences. Instead of exposing Python
+> objects, allows you to build HTTP responses. Instead of trying
+> to make the database look like an object, makes the database
+> easier to use. And instead of coming up with yet another way to write
+> HTML, the template system tries to bring Python into HTML. Not
+> many other people are really trying to do that.
+> You can disagree that these ways are better and say why. But simply
+> criticizing them for being different is a waste of time. Yes, they are
+> different. That's the whole point.

0 comments on commit 69485b3

Please sign in to comment.