Show HN: We open-sourced our anime discovery application
github.com
github.com
Yes, I'm not a user to care about, but it's just annoying.
User profile: http://www.hummingbird.me/users/josh
Anime page: http://www.hummingbird.me/anime/attack-on-titan
<a href="/anime/" class="a_very_big_button">See Anime List</a>
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!
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?
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.
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.
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...
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.
1) Strong user/viewer affinity for the category. Generally speaking, you don't find that your typical Grey's Anatomy viewer is a "medical drama fan," who seeks out other medical dramas at every opportunity. Likewise, a rabid Family Guy viewer is probably not an "animated comedy fan," barring a very tiny and borderline-insignificant segment who is. They might be fair-weather fans, but their consumption of those categories is ad-hoc and show-dependent. Anime fans may come to the category seeking a particular show -- Cowboy Bebop, Attack on Titan, or what have you -- but many of them stick around for anime as a category. Someone who likes Law & Order isn't going to seek out other legal procedurals, but someone who likes a mecha show is going to look for more mecha shows.
2) Anime is underrepresented on TV/movie services like Netflix, or in other "mainstream" TV/movie sites and aggregators. (That said, there are anime-specialist players in these markets, such as Crunchyroll and Anime Network.)
3) High fan engagement online, more so than with many other categories of film or TV. Thus, a more addressable user base.
Of course, these factors can also work against you. As another commenter has pointed out, the characteristics that make anime unlike other genres also makes bridging the gap between anime and other genres very challenging. Anime companies are usually in the business of addressing the TAM in the anime category; they seldom find success using anime as a beachhead to attack TV or movies in general. Not saying it can't happen, or that it's never happened. But it's difficult.
It would be great to be able to search by view all by Studio or Director / Writer. In fact you tag things like Studio (eg. Ghibli) but clicking the tags doesn't do anything :)
I'm trying to go on a bit of a Maasaki Yuasa tilt following his Adventure Time episode, so it would be nice to see all of the stuff he has done in one list.
Also it might be nice to see an overview of ratings when you mouse over recommendations.
Great site though and I will continue poking around on it!
Do you guys have an API checking file hashes/fingerprints against episodes to add to your list etc? That's one of the biggest draws for AniDB (for me).
In my experience, AniDB is effectively unmaintained code. They have developers, the developers just don't know the codebase well and they don't mess with old stuff. I've heard this is because it's a behemoth Perl script, but I don't know for sure.
But to cover your main point of "an API checking file hashes/fingerprints against episodes to add to your list", I just wanna say that this is kind of a silly system: you can easily extract that data from a filename.
For example, the desktop app Taiga has an open-source parser which extracts lots of data effectively (https://github.com/erengy/anitomy) and I myself wrote a simple regex-based one for my own client. Both are capable of extracting at least the episode number, subber, and series title.
So why would Hummingbird want to store hundreds of thousands of MD5 checksums when there's better options?
We also have incredible desktop apps like HAPU that detect what you're watching (including from sources like Hulu and Crunchyroll) and updates your library. No fingerprinting or hashes necessary.
Regardless of the checking method, will there be an API to add episodes to a personal list, regardless of check sum or filname checking?
Next feature: notification of new episodes, particular by collecting group?
These are pretty much the 2 killer features I personally use AniDB for. The back end code for me is less important, because everything I need it to do, is being done. :)
The other half is discovering who has subbed what group. By maintaining a list of all the files a particular subber has released it's easy to lookup and easily determine who to get a release from without having to look everywhere.
Unfortunately, as awful as the API and interface is. It's the only one of its kind.
I'm a bit confused about your anime titles though, why is Fullmetal Alchemist in english, while Kara no Kyoukai is in romanised Japanese? Do you have a system that allows you to give preference to the title languages like AniDB does?
I also like how AniDB makes fansubs discoverable by showing who has subbed what and has ratings for the translations. Are you planning on integrating information about the fansub community? In my opinion it's a core feature of AniDB.
We do not have plans to integrate information about fansub groups because of the types of relationships we're looking to have with larger presences in the industry. We will be adding links to legal websites like CR, Amazon, Funimation, etc though. Sorry!