Out of curiosity: when you say "weekend project", do you mean one person working for a single weekend? Because I've been seeing more and more "weekend projects" showing up on HN that look like they took a small team a week to put together, and it's really making me feel self-conscious about taking several days to just to get a couple of JS frameworks up and running on a simple proof-of-concept web-app — to say nothing of CSS, UI, server stuff, QA, error handling, etc. etc. etc. Am I really that far out of the loop?! Either way, great work!
Yep, I was on vacation and wrote most of the app in a weekend. I wrote the FAQ and about pages on my phone while we were traveling, and then it took one more evening to add most of the products. And I've spent a few more hours fixing bugs and adding some more products. I have to admit, I was surprised at how fast I got it done. It was a really focussed sprint.
Rails app / Reddit integration - I've been a Rails developer for a while, so was very familiar with most of the gems I used. (devise, omniauth, resque, etc.)
Server stuff - Heroku is pricy, but it's awesome. Although I might migrate to a much cheaper Digital Ocean box this weekend.
CSS - Zurb Foundation is amazing. The menu bar, in particular, has really awesome built-in responsiveness. There's a little custom CSS, but most is stock framework.
Admin interface - I used RailsAdmin, which is perfect for small apps. It can do so much out of the box. (For bigger apps, I prefer ActiveAdmin)
Error handling - I just added the airbrake gem and configured my self-hosted Errbit instance. I've had it running on Heroku for a few years now.
QA - Thanks for your help!
The most time-consuming things were writing a simple Reddit API with httparty (none of the gems I looked at supported OAuth), adding very basic PG array support to Rails Admin, and making the site work on mobile (responsive design was very fun to learn).
People like to brag. If someone says "this took us a weekend to put together", I generally expect (for example) all the planning was already done, a code skeleton was already put together, etc...
Any time someone says "oh here's a little project I put together in a weekend" your "bragging" detector should be quietly blinking, which signals to you the claims are likely at least a little inflated.
This is great. For a weekend project this looks and feels very polished.
Possible suggestions: it looks like it is 'just' retrieving one's list of subscribed subreddits then displaying manually curated lists for each category, which means every user who is subscribed to a subreddit will be shown the same products in this category.
I don't know if you are planning on continuing work on this project, but if you are adding more items implementing an actual recommender system could do wonders (for example, by looking at what users with similar subscriptions have favorited). I feel the Reddit-browsing demographic is one that would be very receptive to this type of thing since some subreddits are all about about social-based discovery.
I'm willing to guess one can learn a surprising lot about one's preferences by looking at their Reddit subscriptions. For example, you may be able to guess the clothing style of someone who is subscribed to r/malefashionadvice, r/newyork, and r/finance, or that someone who reads both r/audiophile and r/metal might like different headphones than someone who participates a lot in r/classicalmusic.
An actual recommendation engine would be a lot of fun to build. It would be awesome to recommend products based on subreddit clusters, and similarities between users.
But I don't really want to build a giant AI that sifts through the entire Amazon catalog. I feel that it's a nicer user experience when you just offer a small selection of manually curated products, and some studies show that limiting the number of choices can make people more likely to buy something [1]. I used to list a few CDs and MP3 downloads, but deleted those after I decided that there are already much better music recommendation engines, and they're subscription based. My line of thinking is that I should just start doing a few categories really well, and then expand later.
You're arguing apples and oranges here. Yes, offering a smaller selection can increase conversion but that has nothing to do with how the curation process works on the backend to present the selection. Whether you do it by your method or by going full on AI, you can still present a limited selection. The only difference is how algorithmic the recommendations can be on an individual level
That's a good point. I guess my adverse reaction to building a proper recommendation engine is because I've never experienced one that works really well. I've never seen a decent product suggestion from Amazon and Google. But maybe the problem is that their suggestions are based on my search history, instead of my specific interests.
Can you build a useful algorithm without data? That sounds awesome, I just have no idea how one would create something like that (except by starting with something like this)
I have a Reddit account but no subreddits. The result is a "Sorry, we couldn't find any products!". I'd recommend a fallback... it may be not personalized, but at least it gives me something.
Another feedback, the title is a bit misleading to me. I expected to find a list of products sorted à la Reddit, like [1], not really a personalization based on my subreddits.
I was thinking of doing something like this last year but never got around to it. I wanted to build the user experience around commenting on reddit using eg #buythis or #dontbuythis anywhere in a comment and it'll hopefully attract attention and spread. I think there's especially potential with movies and games on itunes and amazon.
from the faq:
3) How do you find these products?
Most of the products on our site are hand picked. We sometimes use automated tools to search Reddit for product links, and only import the awesome ones.
that's boring. i was expecting some sort of algorithmic awesomeness, just pasting the amazon urls of things you see on reddit into a website is not especially novel.
It's a perfectly fine business decision. It works and it shipped, which is an awesome way to make money. I'm not trying to take anything away from the product here, but there isn't anything interesting about it. I feel like the bar for a show HN post should be a bit higher than a template for amazon referral links.
That feature would definitely be on the roadmap if I keep working on it. Would be really fun to build. But I decided to just start small, and see if this is something people might actually use.
Well, yeah, that's the idea. I just thought it would be cool if there were a site that could show me T-Shirts for all of my favorite bands and TV shows, and it grew from there.
I'm really keen to write a chat app in Go this weekend which matches up similar Reddit users based on common subreddits. I was thinking to host it at chat.youshouldbuythese.com, and use that to drive traffic to the site.