HN, it's been six months since I launched NewsBlur (http://news.ycombinator.com/item?id=1834305) and I've been working nearly every single day in my free time to bring this API to light.
As some of you know, it's entirely open-source on GitHub (http://github.com/samuelclay) and a number of NewsBlur's users subscribe to NewsBlur's GitHub history, so there's this crazy meta quine-esque feel to coding in the open.
Building an API is hard. I didn't realize it'd be so many moving parts that don't care to align, but comb it over a few dozen times and it's finally there. This is the first API I've built myself, so the obvious things aren't so obvious. Like don't build endpoints that are named /reader/load_single_feed instead of the more RESTful /reader/feed/:id.
If I were to be perfectly RESTful, I'd have PUT and DELETE methods on the same endpoint URLs. But for now the API exists as a bunch of discrete endpoints that each have their own quirks. Smoothing them over is something that will take some experience and some real-world battle testing.
I'd like to think that this goes to show that anybody can build an API (and a service beneath it). I think the consistent message I've had to deal with every single day, even as hard as it got sometimes/always, was to not give up. It's a bit easier now to not give up, but those first few months, when everything broke and nothing worked, and the night would pass and I'd wake up to dead robots, were tough.
Lend me your thoughts. I'd love to hear feedback so I can make this API/service better and improve my own education in the process.
NewsBlur (first time trying it) is such a polished experience with all the little bells and whistles of a seasoned Apple app that I am having a very hard time believing that you are a single developer and not 6, full time, seasoned UX designers and programmers all rolled into one.
For what it's worth, NewsBlur is so polished, when I went to add a feed to my account I thought to myself: "Shit, I bet this guy will auto-complete the feed URL from well-known feeds" ... then when I popped up the dialog I thought "wow, that is a really big stretch for me to assume/hope for that... I'll cut him some slack if it doesn't.
Of course, it did and I had a little smirk on my face and mumbled "Damn, this guy is good".
No idea what you have planned for the future, but I imagine NewsBlur is one of many-to-be-aquired ventures you will create.
Thanks for the feedback. I really appreciate it. Really, I run on props, and a comment like this is worth at least a month of energy.
As for being acquired, I feel like it's this myth that great projects get acquired or sold. But I haven't even heard a peep about potential interest. And NewsBlur has hundreds of premium users keeping the servers on at night! You'd be surprised, but I have yet to hear about any interest whatsoever. It's nice to have a profitable project, but if I were in it for the potential acquisition, I would've quit a looong time ago. It's just not worth it (or maybe it is... 10 million, 10 million, no whammy, STOP).
This looks really cool. Does it have cross-origin resource sharing enabled? This would be useful for sites that would like to use it directly from javascript.
EDIT: I've just seen the login mechanism; I don't think CORS would be useful with this.
Sure, you would need to login for most endpoints, but I have a number of additions that I'm planning: OAuth, HTTP Basic Auth, and JSONP when given a callback parameter.
I agree, it'd be useful to use some of this data from JavaScript, but only a couple endpoints are publicly accessible (statistics and feed info, really). Everything else depends on the user's subscriptions and intelligence classifiers.
As one of the premium Newsblur users, I love this. I also love bugging Samuel with bugs and suggestions almost daily, the best part is - he replies! :)
You only see the premium product when you first activate your feeds. Standard users only have 64 feeds, but when you first import your feeds, you're asked whether you want to go premium.
I try to stay out of your way as much as possible. Notice how there's no logo when you're reading your feeds.
Oh, and you should totally go premium. It would make my day. :-) It also helps keep the site running on its 6 servers.
I would become a regular [premium] user if the application worked well with Arc90's Readability. I use Chrome w/ Readability Redux. Any suggestions as to how to use both Newsblur and Readability together would have me sold.
As some of you know, it's entirely open-source on GitHub (http://github.com/samuelclay) and a number of NewsBlur's users subscribe to NewsBlur's GitHub history, so there's this crazy meta quine-esque feel to coding in the open.
Building an API is hard. I didn't realize it'd be so many moving parts that don't care to align, but comb it over a few dozen times and it's finally there. This is the first API I've built myself, so the obvious things aren't so obvious. Like don't build endpoints that are named /reader/load_single_feed instead of the more RESTful /reader/feed/:id.
If I were to be perfectly RESTful, I'd have PUT and DELETE methods on the same endpoint URLs. But for now the API exists as a bunch of discrete endpoints that each have their own quirks. Smoothing them over is something that will take some experience and some real-world battle testing.
I'd like to think that this goes to show that anybody can build an API (and a service beneath it). I think the consistent message I've had to deal with every single day, even as hard as it got sometimes/always, was to not give up. It's a bit easier now to not give up, but those first few months, when everything broke and nothing worked, and the night would pass and I'd wake up to dead robots, were tough.
Lend me your thoughts. I'd love to hear feedback so I can make this API/service better and improve my own education in the process.