Steve Huffman on Lessons Learned at Reddit
thinkvitamin.com
thinkvitamin.com
I feel like like there needs to be a better middleground for having some schema but being able to augment it easily with metadata that you're not querying against (yet). Then later extracting the metadata into queryable columns.
I wrote a post outlining some ideas of how to do this: https://github.com/shazow/everything/blob/master/idea/arbitr...
I've only implemented bits and pieces of this in practice, huge convenience so far.
We used Friendly at my previous company wego.com and t worked quite well although I don't know shehar they at still using it. (Friendly doesnt look like it's in activ development)
Here's a thought: dynamic apps should render a page exactly one way in html, and rely on javascript and cookies to post-process the site so it APPEARS to be customized for that particular user. That includes admin widgets.
That particularly applies for displaying how many minutes ago something was generated. Serve it with a date-time format, use javascript to post-process into "x seconds ago" or "x minutes ago".
If someone isn't logged in, or isn't an admin, and they hack their javascript to display user or admin stuff, who cares? The user/admin requests sent to the webserver won't succeed anyway, because they rely on having an admin session cookie.
If there's meaningful rather than just UI stuff that users or admins get to see, then you have to cache that separately, but you can even do stuff like loading it dynamically with js so the publicly visible (cached) content can still be used, and you cut down the amount of stuff your server has to auto-generate. It can cache the separate pages (xml, json, whatever) that serve the logged-in user content, as well.
I wonder if Steve (or rather, jedberg or someone else at reddit) were to give the talk today, if 'memcache' and 'memcachedb' would both be replaced by Redis?
As for replacing memcached, I'm certainly open to it, but from what I've read, the performance of memcache for what we use it for is better than redis.
Reddit has done a great job of serving a massive amount of traffic, given the size of their staff especially.
Still, it was well worth watching and I'm glad Huffman decided to go there.
For example, we heard "search sucks" for weeks after we switched to the new service, until we announced the switch, and then all of a sudden the tune changed. :)