Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

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.

Please let us know what you think!



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?


ughhhh. I find it so hard to understand that this is still a thing that happens on the internet nowadays.


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.


Wow, here's me thinking that you would have separate servers for database and web server and load balancers. Gives me faith.


We actually have the architecture in place for that, it turns out it was completely unnecessary. (See: https://github.com/hummingbird-me/ansible-deploy)

The application layer is completely horizontally scalable, all I need to do is edit the config file to add or remove servers and run ansible.


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.


What has been your experience with Ember? How would you compare it with React? I realize that they are for somewhat different purposes.


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...


Out of curiosity, how would you feel if MAL used your code in updating the UI of their site?


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.

I think that's the beauty of open-source.


Do they really need the code to clone the UI? I'd be more worried about the suggestion system.


hah, that would make the MAL devs competent, not going to happen


That would require there to actually be MAL devs. Last I heard, they're down to one guy and he's AWOL.


regardless of the status, i will take a look and try to help since im an anime fan!




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

Search: