Live data from Hacker News

Rewriting Reddit (2005)

aaronsw.com

111–118 of 118 posts

Re: Rewriting Reddit (2005)

#111

Earlier quoted context omitted.

I'm not too familiar with Django but with several other frameworks and I definitely feel like this applies to lots of them out there. In my experience though, I've worked on teams with developers who criticize frameworks for those reasons, choose a minimal or no framework at all, and spend a ton of extra, unnecessary time reinventing a worse version of a framework they decided 'sucked' once they realize they need sec…

Django actually seems to be one of the least offensive frameworks to me in that respect. It didn't really try to be clever and it did things that made sense with a minimal amount of magic.

Found the same. Bit of a steep learning curve when starting a project from scratch, but it's very much a plateaux

Re: Rewriting Reddit (2005)

#112
post #23

I think you can leverage these criticisms at about 90% of the framework software out there written in just about any language. Most developers like to create complex, complicated software mainly to show off their "cleverness" without thinking through the implications for the people that have to use it. It's as if they think that by cramming in every design pattern they can think of and using many different libraries…

I'm not too familiar with Django but with several other frameworks and I definitely feel like this applies to lots of them out there. In my experience though, I've worked on teams with developers who criticize frameworks for those reasons, choose a minimal or no framework at all, and spend a ton of extra, unnecessary time reinventing a worse version of a framework they decided 'sucked' once they realize they need sec…

Great point. That's probably the worst case, IMO, along with over-engineering and plain spaghetti. I should have mentioned it, but I think my PTSD from dealing with such engineers and projects is still overwhelming.

Re: Rewriting Reddit (2005)

#113
post #87

Earlier quoted context omitted.

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.

Re: Rewriting Reddit (2005)

#114

Earlier quoted context omitted.

I'm not too familiar with Django but with several other frameworks and I definitely feel like this applies to lots of them out there. In my experience though, I've worked on teams with developers who criticize frameworks for those reasons, choose a minimal or no framework at all, and spend a ton of extra, unnecessary time reinventing a worse version of a framework they decided 'sucked' once they realize they need sec…

I almost went down this route on a project once. As soon as I noticed myself writing an identity map, I slapped myself in the face and just downloaded Symfony.

Symfony is awesome but I feel they try to stuff too much into the default framework configuration. I don't want all those silly annotations, for example.

Re: Rewriting Reddit (2005)

#115
post #97

Earlier quoted context omitted.

You mean Diaspora? (or maybe there's another clone I missed out on). The founder of Diaspora committed suicide. I think the project mostly died with him.

Wow, I didn't know about this suicide :( Is the project really dead though? I have no personal experience, but these stats show a growing number of active users: http://pods.jasonrobinson.me/

Oh interesting. I didn't know it was still moving along. It had a lot of momentum a few years back, but hasn't been making nearly as much noise since. Not sure if the founder's suicide actually correlated with the dropoff in media attention.

Re: Rewriting Reddit (2005)

#116
post #94
post #42

We currently use web.py + gevent to run our API where I work. It's really easy to work with since it's so tiny and simple, and since we only need JSON in and out for now, it's perfectly sufficient. Before web.py, we were on a scary Tornado implementation. The API was rewritten to web.py in a week with a minimal delta. We won't be on web.py forever, and gevent sometimes kicks up minor fusses, but I think web.py has gi…

I'm not very familiar with Tornado (we've switched to mostly Flask now) but I'd be interested to know what kinds of problems cropped up that lead you to switch to web.py

Tornado requires asynchronous I/O. Almost all of the existing I/O was done synchronously. Yeah.

Re: Rewriting Reddit (2005)

#117

Earlier quoted context omitted.

> And all that django-specific logic that needs to be in there makes it harder to read unless you're familiar with the django ecosystem. What "django-specific" logic? Those are standard imports and a few helper objects, the kind of which you'll find in any web framework. [edit: importants => imports]

I've been using flask lately and I could compress four of those imports into one import in flask. And the settings aren't even necessary. All these things, when compared to a true microframework, contribute in legibility of the code.

You're right. Settings are not even necessary in my example, as we should be fine with defaults in most cases. The only lines you really need are these four:

  from django.conf import settings
  settings.configure(ROOT_URLCONF='polls')
  from django.core.wsgi import get_wsgi_application
  application = get_wsgi_application()
You lose some of the Django niceties (like being able to provide your own custom settings on the command-line) but flask doesn't have them anyway.

Re: Rewriting Reddit (2005)

#118
I've used CherryPy on a number of projects, and I really like it, but rarely see it mentioned in discussions of Python web programming. It's light and minimal, and seems equally deft for writing APIs as conventional web page driven apps. Flask is mentioned all the time, however. Does anyone have insight into the popularity of Flask vs. CherryPy?
Post reply on HN