We started working on Hummingbird slightly over a year ago and have grown quite a bit since then. We have a total of 50,000 registered users and ~30% MAU.
We decided to open-source it because we don’t always have the time we would like to work on it after putting in hours at work/school, and we had a lot of our users interested in helping out. We also found that working out in the open is a lot more fun!
We have a fairly modern stack, the backend uses Rails, Postgres and Redis. Front-end is a client-side application written using Ember. (Mostly — there are legacy pages still rendered using Rails and some performance-sensitive parts that use React.)
The current incumbent in this niche is a website called MyAnimeList (myanimelist.net) which has upwards of 2 million registered users. Considering it looks like it hasn’t been updated since 2005 we strongly feel this niche deserves better.
Not updating a website people use regularly is not a bad thing - people are used to the UI, and changing shit only ruins the experience when people need to re-learn how to use the damn thing.
Also, it's not like MAL is "not updated", since it constantly has new content added - much of it user contributed, but those contributions get locked up behind a server, and we don't have access to it except through the website itself.
I don't suppose you would be offering the ability to query data, which will inevitably be user-contributed?
Hummingbird already offers an API through Mashape, which is infinitely more thorough than any competitor's.
Additionally, MAL has lots of minor bugs, and how can you trust a site that hasn't been maintained in 5 years to store your password correctly? 2009 was a scary place.
This is pure speculation, but I wouldn't be surprised if MAL is storing passwords as MD5+salt. They do just email it to you in plaintext when you register.
And recovery is a 6 digit pin, which is totally plenty of entropy.
I can confirm that at least as of 2012 or so they were storing passwords as a salted md5 hash. I did point out to a staff member that this was not a good idea and was brushed off, so I assume this hasn't changed since then.
You register and login over HTTP. I would bet they just store it in plaintext. But does it really matter with the first piece of information, how they store your password?
You say you have 50,000 registered users. Can I ask how many visitors you receive a day? What type of server structure you have? I'm currently building a webapp and would like to know what hardware you have running it.
We get between 300 and 500 rpm depending on the time of the day, all of which is served from a 8GB DO droplet running 4 Unicorn processes. Our forum (we use Discourse) also gets similar traffic, it is hosted on a 4GB droplet.
We see around 200K uniques per month. This month will be a bit higher due to HN traffic. We're running this on a Digital Ocean droplet and AWS for our media. It's a surprisingly simple set-up, really.
Ember has been amazing. It makes managing a growing application a lot easier. There was a steep learning curve for me personally, especially because at the time I was starting out the documentation wasn't very good. (It is amazing now, though!)
I also like React a lot but it only deals with the view layer, it doesn't give you any structure for the bigger picture of things. I guess this is something that Flux addresses but I haven't looked into it.
I did briefly look into integrating React to be used as Ember's view layer but decided to drop it since HTMLbars looked like it was around the corner (hah). It is still pretty easy to use React with Ember now, though it feels hacky because you end up having to call forceUpdate a lot. I wrote a post about how it works here: http://discuss.emberjs.com/t/can-reactjs-be-used-as-a-view-w...
Successful. We started Hummingbird because we were very dissatisfied with the state of things in this industry. If MAL improved as a direct result of our hard work, then we're positively effecting an experience for hundreds of thousands of users.
In the meantime we're going to keep innovating and working towards the platform we want to have. Now that we're open source, if we stumble or come up short, somebody else can carry on the torch.
We decided to open-source it because we don’t always have the time we would like to work on it after putting in hours at work/school, and we had a lot of our users interested in helping out. We also found that working out in the open is a lot more fun!
We have a fairly modern stack, the backend uses Rails, Postgres and Redis. Front-end is a client-side application written using Ember. (Mostly — there are legacy pages still rendered using Rails and some performance-sensitive parts that use React.)
The current incumbent in this niche is a website called MyAnimeList (myanimelist.net) which has upwards of 2 million registered users. Considering it looks like it hasn’t been updated since 2005 we strongly feel this niche deserves better.
Please let us know what you think!