Hacker News new | past | comments | ask | show | jobs | submit login

web.py never really worked well, so we ended up rewriting it again. The interesting thing was that Django still wasn't up to the task when we did that, mostly because it's templating engine was too slow. So we chose Pylons instead.

It should be noted that Django has since fixed that issue.




Was there one specific problem with web.py or multiple issues? Was there ever a write up about what you guys learned from trying web.py? Would be an interesting read.


Keysersosa answered this better below, but basically maintainability. There was no writeup, I guess because doing write-ups about internal software switches wasn't really a thing back then. :)


Yeah I think that post dates from a time where you still heard people refer to them as "weblogs".

Edit: Found it. It was the 14th post on our blog a time, but definitely light on the implementation details. http://www.redditblog.com/2005/12/on-lisp.html


Thanks for sharing this post!

About this: ===If Lisp is so great, why did we stop using it? One of the biggest issues was the lack of widely used and tested libraries. Sure, there is a CL library for basically any task, but there is rarely more than one, and often the libraries are not widely used or well documented.===

If Clojure was available back then and if you had written it in Clojure instead of Lisp (and given that Clojure can leverage JVM based libraries) - would you still have continued using Clojure?

I know this is an extremely hypothetical question but I am trying to figure out if Lisp is finally getting ready for "mainstream" adoption because Clojure is bootstrapped of the libraries of Java.


Clojure is a beautiful language and its web ecosystem is improving rapidly, but breadth of, depth of, and support for libraries is still its main weakness next to the likes of rails and django. Clojure's a lot better for solving hard problems, but you'll also spend a lot more time getting tripped up by things that seem like they should be easy and reinventing wheels. Fortunately, it seems a near certainty that this will eventually no longer be true.


I think OP meant a writeup about the switch from web.py to Pylons. I'm not sure we ever wrote that one down.


Point! I think I found it http://www.redditblog.com/2007/08/its-slow-its-unstable-its-...

Also just as anemic as the last one. Oh well.


I dunno; the ending's pretty good.


Do you guys wish you were using Django right now?


I don't work there so I don't really know, but I do know that I usually don't use Django for the reasons listed in the blog post -- namely that you have to live in their world view to write Django.


No, the reddit project itself is still based on Pylons. However redditgifts (the reddit marketplace) is based in on Django so reddit does have Django.


Do you guys know what they felt about Flask?


At the time that we switched to pylons and decided to punt django, flask didn't exist. I believe it was some time on '07 or '08. I'd check, but I also think it predates our switching to git from subversion...

Personally I like flask a lot and it's come a long way. Also, when spez and I moved on to hipmunk we started using tornado.


The switch to Git happened one day before we open sourced on June 17, 2008, I remember that day well :) So yeah, the history of when we switched to Pylons is probably lost forever sadly. But yes it was right around when I started in March '07 that you guys started working on the transition.


Do you recall what didn't work? So far web.py looks like a really nice rest-ful api backed framework. I rather like it.

http://webpy.org/


A lot of the decisions made in designing web.py were also carried over to tornado's web framework (which not coincidentally is also a web.py).

At the time (and I have to admit my memory is a little foggy as it was 7 years ago), I believe we mostly switched away from it for maintainability reasons. It wasn't under active development, and we were in the middle of a complete MVC rewrite to impose some order on some otherwise organically grown code.


That version of web.py has little relation to the one that Aaron wrote. The current version looks pretty good but I have no idea what it's scalability and modularity story is.


As a slight aside, what do you usually do to stress test a new framework to see if it's scalable?


Ask the community. :)

That's a little glib, but basically I ask other people with experience. You can throw as much fake traffic as you want at a framework but there is nothing like a real world test.


Django templating is still pretty slow.... the last time I benchmarked it (maybe 6 months ago) it was a fairly large amount slower than Jinja2 (3-4x maybe?)


Did you make sure to enable to cached template loader[1]?

>Enabling the cached template loader often improves performance drastically, as it avoids compiling each template every time it needs to be rendered.

[1] https://docs.djangoproject.com/en/dev/ref/templates/api/#dja...


That helps, but it's still well below parity.


What's cool is that there is a legitimate push to make Jinja a first class citizen in Django, with other third party templating engines being available via a new API.


Since you guys rewrote over the weekend, I don't understand why anything cannot work well...




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: