PodSearch

Developing Perspective

#123: Introducing Feed Wrangler.

 

00:00:00 ◼   ► Hello and welcome to Developing Perspective. Developing Perspective is a podcast covering

00:00:03 ◼   ► news of note in iOS development, Apple and the like. I'm your host, David Smith. I'm

00:00:07 ◼   ► an independent iOS and Mac developer based in the Herne, Virginia. This is show number

00:00:11 ◼   ► 123, and today is Thursday, May 2nd, 2013. Developing Perspective is never longer than

00:00:17 ◼   ► 15 minutes, so let's get started. All right, so it has been a wild week for me. If you've

00:00:23 ◼   ► been paying attention, this week I launched Feed Wrangler, my latest product, application,

00:00:28 ◼   ► platform, whatever you want to call it.

00:00:31 ◼   ► I actually intended originally to do this show the day of launch

00:00:34 ◼   ► and to have that initial, hey, this is how the day went.

00:00:37 ◼   ► But I was a little bit crazy.

00:00:39 ◼   ► And it's been a wild week getting everything--

00:00:43 ◼   ► I can give attention to everything that needs attention.

00:00:46 ◼   ► And so I'll talk a little bit about that process,

00:00:48 ◼   ► a little bit about what's going on.

00:00:49 ◼   ► But first, now that I can talk openly and freely about it,

00:00:53 ◼   ► I can talk about what Free Drangler is, where it came from.

00:00:56 ◼   ► So Feed Wrangler is an RSS service.

00:01:00 ◼   ► It was actually something that I started months ago

00:01:02 ◼   ► before Google Reader even announced

00:01:04 ◼   ► that they were going to be going out of business.

00:01:06 ◼   ► It's something that I've wanted for a long time.

00:01:09 ◼   ► I think about RSS in a slightly different way

00:01:11 ◼   ► than a lot of services do in terms of I

00:01:16 ◼   ► have a very focused and intentional sort of way

00:01:19 ◼   ► in which I like to read my news and the way in which I like

00:01:21 ◼   ► to follow things and the way I like to process it.

00:01:24 ◼   ► And so I always wanted a system that

00:01:26 ◼   ► was more geared towards that, that sort of heads

00:01:29 ◼   ► in that direction.

00:01:30 ◼   ► And so that's what I did with Feed Wrangler.

00:01:31 ◼   ► And so it's an RSS aggregation service, kind of like you'd

00:01:34 ◼   ► expect.

00:01:34 ◼   ► You give it a collection of feeds,

00:01:36 ◼   ► it goes and collects all the articles and linked items

00:01:38 ◼   ► from that and pulls them in.

00:01:41 ◼   ► And then the place where it starts to then diverge and get

00:01:45 ◼   ► beyond that is in really in two ways.

00:01:48 ◼   ► It has a few power user features,

00:01:49 ◼   ► things that help you really organize your news.

00:01:52 ◼   ► So you can do things like what I call smart streams, which

00:01:54 ◼   ► are either collections of feeds, which is like its simplest form,

00:01:59 ◼   ► where basically you can just say, take these five feeds.

00:02:01 ◼   ► These are my must check feeds.

00:02:04 ◼   ► And you can put them into a list.

00:02:06 ◼   ► And so if you have a little bit of time,

00:02:08 ◼   ► you can read through your whole timeline.

00:02:09 ◼   ► You can just quickly hit that and make sure you're up to date

00:02:14 ◼   ► on whatever the most important things are,

00:02:15 ◼   ► those kind of feeds that you always want to check.

00:02:18 ◼   ► You can also apply search filters to those.

00:02:20 ◼   ► I'm actually working on making it so you can apply

00:02:22 ◼   ► regular expressions to them.

00:02:24 ◼   ► So there's a lot of work that is heading in that direction.

00:02:26 ◼   ► But it's a way to really narrowly tailor and aggregate

00:02:29 ◼   ► your news in a way that's rather than just having

00:02:31 ◼   ► this huge, massive, overwhelming inbox of all the news

00:02:34 ◼   ► everywhere that you have to plow through.

00:02:36 ◼   ► It gives you a nice, easy way to, in a proactive way,

00:02:40 ◼   ► control it.

00:02:41 ◼   ► Also, it has things like filters, which I like.

00:02:43 ◼   ► It lets you take a particular keyword,

00:02:45 ◼   ► and items that match that keyword

00:02:47 ◼   ► are automatically marked as read in the system.

00:02:50 ◼   ► So this is a great thing.

00:02:51 ◼   ► I find that there are certain feeds

00:02:53 ◼   ► that I like half the content.

00:02:56 ◼   ► Say that they're talking about mobile development,

00:02:59 ◼   ► but I'm only interested in the iOS stuff.

00:03:01 ◼   ► I'm not interested in, say, the Windows Phone stuff.

00:03:03 ◼   ► So I could add a Windows Phone filter,

00:03:05 ◼   ► and I wouldn't see the articles up front

00:03:08 ◼   ► that match that criteria.

00:03:10 ◼   ► And those are kind of things.

00:03:12 ◼   ► And then additionally, I wanted a service

00:03:14 ◼   ► that really had a next level of integration

00:03:17 ◼   ► with a read-letter service.

00:03:18 ◼   ► I personally use Instapaper.

00:03:20 ◼   ► FeederAngler integrates the same way

00:03:21 ◼   ► with Instapaper and Pocket.

00:03:24 ◼   ► And really what I want is a service

00:03:25 ◼   ► that it can be a bit more intelligent about what

00:03:28 ◼   ► it's doing.

00:03:29 ◼   ► So often what I'll do-- this is kind of a typical workflow for

00:03:31 ◼   ► me-- is during the day, I'll be kind of sitting on Twitter

00:03:34 ◼   ► or whatever.

00:03:35 ◼   ► Articles will come to my attention, interesting things

00:03:38 ◼   ► people post.

00:03:39 ◼   ► And typically what I'll do is just write in Twitter,

00:03:41 ◼   ► write in Tweetbot, in the browser, whatever.

00:03:43 ◼   ► I can right click on it and say, send to Instapaper.

00:03:45 ◼   ► It goes into my queue, which is great,

00:03:48 ◼   ► except for almost always what happens then is that night, a

00:03:52 ◼   ► whole bunch of art, like I'll find that same article in my

00:03:55 ◼   ► RSS feed, you know, for certain writers, certain people, it's

00:03:58 ◼   ► the things that I am interested in are almost always also

00:04:03 ◼   ► subscribed to that author's feed. And so what I wanted to do

00:04:06 ◼   ► is, you know, for example, in that instance, if an article is

00:04:09 ◼   ► already in your insta paper queue, or in your pocket queue,

00:04:11 ◼   ► and feed wrangler can detect that, it'll go ahead and mark it

00:04:14 ◼   ► as read optionally, it's up to you, you know, you can, this is

00:04:17 ◼   ► feature that you can enable, but you can just say, this is what I

00:04:19 ◼   ► do is that, you know, I just want any focus. What I've said

00:04:21 ◼   ► is, I put it in my Instagram, I've said, I'm going to read it

00:04:24 ◼   ► later, I don't need to see it again, I don't need to be

00:04:26 ◼   ► constantly reminded of this article that I've already said,

00:04:28 ◼   ► I'm going to deal with later. So that's the kind of thing that

00:04:30 ◼   ► I've been doing. And so that's what feed Wrangler is. And it

00:04:33 ◼   ► launched on Tuesday, and it's been pretty well received, kind

00:04:35 ◼   ► of blown away in some ways by the nice things people have said

00:04:38 ◼   ► about it. And, you know, it's just sort of a start. One thing

00:04:42 ◼   ► that I'm doing very differently with feed Wrangler than I have

00:04:44 ◼   ► in the past. And what I've done with other services or other products that I've launched

00:04:48 ◼   ► is that feederangler rather than being a one-time charge or those types of things, you know,

00:04:53 ◼   ► rather than like a weather app where you're just like, you just buy it and it just kind

00:04:56 ◼   ► of works. Feederangler I'm structuring as a subscription. I'm structuring it as a yearly

00:05:00 ◼   ► priced service that you buy for about $18.99 a year. I wish I could do $19, but Apple doesn't

00:05:08 ◼   ► pricing in whole dollars. So it's $18.99 a year. And what I'm

00:05:13 ◼   ► trying to do there is create a sustainable platform to do this

00:05:17 ◼   ► with. Definitely a problem like this is kind of tricky. If

00:05:20 ◼   ► you're doing it kind of like I am sort of a one man shop

00:05:23 ◼   ► approach where you're going up against these large venture

00:05:26 ◼   ► backed companies, these larger organizations that have lots of

00:05:29 ◼   ► resources and manpower. And so what I really want is to have a

00:05:33 ◼   ► sustainable way to do this. You know, I don't want it to be

00:05:36 ◼   ► something that I need to constantly be worried about kind of the income and revenue of the

00:05:41 ◼   ► business I'd like to if I can kind of stabilize that a little bit, do it on a subscription

00:05:45 ◼   ► basis so that I can kind of plan and know what you know, what sort of what level of

00:05:49 ◼   ► effort and I can afford to put into it because of the sort of revenue I'm going to get and

00:05:53 ◼   ► it's not like every day with a typical app store sale and it's like every day you have

00:05:57 ◼   ► to find a new set of customers in a way that with a subscription model, you don't quite

00:06:01 ◼   ► You know, you have a certain amount of cancellations, obviously, but you have a bit more dependability

00:06:07 ◼   ► of that income.

00:06:08 ◼   ► It's not like you need to upgrade revenue in the same way.

00:06:09 ◼   ► It's like every year, essentially, is upgrade revenue.

00:06:12 ◼   ► And then my job, and this is the thing that I really love, it changes a little bit the

00:06:15 ◼   ► dynamic of sort of my job as your developer.

00:06:18 ◼   ► Because in a typical app sales model, my job is to try and make that initial sale.

00:06:25 ◼   ► And really, that's it, in the sense that once you've made that first sale, I've gotten most

00:06:31 ◼   ► of the money I'm ever going to get from you. And so financially, my interests are not necessarily

00:06:35 ◼   ► aligned with making you happier and happier and happier and happier. Now, obviously, I

00:06:40 ◼   ► want to make you happy. I want to increase goodwill and word of mouth and those types

00:06:45 ◼   ► of things. But it's always been kind of complicated for me because what do I, what do I, you know,

00:06:51 ◼   ► how do you sort of balance those two things where you get, you know, you launch an app

00:06:55 ◼   ► that has a lot of say, has the classic thing in iOS. It's a big spike up at the beginning,

00:06:59 ◼   ► you know, a lot of income in the first couple of days, and then it starts to tail off and

00:07:02 ◼   ► it starts to tail off. And you start to be still, you know, you still have all these

00:07:05 ◼   ► users, those people who gave you money with certain expectations. And it's like, how do

00:07:09 ◼   ► you kind of square those two? And what I like about subscriptions, and this is so far, it

00:07:13 ◼   ► seems to be going well, and I hope this kind of thing can continue, is what I'd love is

00:07:18 ◼   ► to be able to get to a point where it's like my job now is to make all the people who have

00:07:23 ◼   ► signed up delighted, so delighted with the service that in a year, they're delighted

00:07:28 ◼   ► to give me another another round of subscription. And that's a very different sort of psychologically,

00:07:33 ◼   ► it's a very different model that I have this very definite goal in mind that it's like,

00:07:37 ◼   ► okay, I'm going to keep making the product better and better and better and better and

00:07:40 ◼   ► then making the service better and better and better and better, so that people want

00:07:44 ◼   ► to stay with it. They say that people want to stay with a product and service and are

00:07:48 ◼   ► excited about it. And we'll, you know, share it out from there. There's kind of some interesting

00:07:53 ◼   ► things that come along with this. I definitely had gotten a lot of feedback about why I don't

00:07:57 ◼   ► of a trial or a demo. So right now the service, if you want to sign up, you have to sign up.

00:08:01 ◼   ► I have a, you know, sort of a risk-free trial in the sense that if you sign up and you don't

00:08:06 ◼   ► like it, I'll give you your money back. One thing I love actually about having a web-based

00:08:10 ◼   ► system, I use Stripe for credit card payments, is if you don't like the service, I can very

00:08:15 ◼   ► easily just go click a button and give you your money back. Because at the end of the

00:08:18 ◼   ► day, what I don't want to do, it's like what I want is a, you know, a reasonably large

00:08:23 ◼   ► base or whatever, a sustainable base of users who are delighted to have paid for the service.

00:08:29 ◼   ► If that's not you, if you don't fall into that category, if you try to just not your

00:08:32 ◼   ► thing, I don't, that's great. I mean, I wish I could make you happy. And you all certainly

00:08:38 ◼   ► am open to suggestions and things. And you've had some people who say like, I like the service,

00:08:41 ◼   ► if it had this, this and this, I'd stay with it. Fair enough. That's great to know. And

00:08:45 ◼   ► I'll kind of keep that in mind. It's great to be able to do that in a way that with the

00:08:49 ◼   ► iOS App Store, which is a little bit trickier, where all refunds are processed by Apple and

00:08:53 ◼   ► you have no control over that. It's really hard to kind of navigate that when someone

00:08:56 ◼   ► says, "Oh, I don't like it. Can you give me my money back?" It's like, "Well, not really.

00:08:59 ◼   ► You have to go to Apple. You have to kind of navigate it that way."

00:09:02 ◼   ► And so that's kind of been a nice thing that I can kind of be able to focus on what is

00:09:09 ◼   ► essentially going to be a smaller group of hopefully more loyal and dedicated users.

00:09:15 ◼   ► And I like that business model. I like where it's going. I'm glad that the launch went

00:09:18 ◼   ► well enough to kind of validate it that I can kind of run in

00:09:20 ◼   ► this direction. And honestly, just taking a step back, one

00:09:23 ◼   ► thing that I've said many times, I think on the show, and that's

00:09:27 ◼   ► very true of the way that I make do my business is a lot of what

00:09:30 ◼   ► I do is a question of building sustain, being being able to

00:09:34 ◼   ► serve build sustainable business generally, by averages that you

00:09:38 ◼   ► know, it's like feed Wrangler, I don't expect will ever be

00:09:40 ◼   ► necessarily my, my, my, my, my sole income, my sole focus, I

00:09:44 ◼   ► have a lot of different things that I do have a lot of

00:09:46 ◼   ► different applications. But it'll be one of the main focuses and I sort of what I'm hoping

00:09:50 ◼   ► to do, and it seems to be heading in that direction, is to yourself to build another

00:09:54 ◼   ► stool leg to the stool that my business sits on that hopefully can keep me doing this,

00:09:58 ◼   ► you know, keeping doing the thing that I like indefinitely. Um, let's see, one of the things

00:10:03 ◼   ► that I want to talk about that was just always kind of the funny thing. So obviously, I launched

00:10:08 ◼   ► on Tuesday, and essentially, I mean, almost immediately there had ran all kinds of server

00:10:13 ◼   ► travel, server problems, all kinds of things were going on.

00:10:16 ◼   ► It was actually kind of funny.

00:10:17 ◼   ► A friend of mine, Rob Ryan, who actually comes in and visits

00:10:21 ◼   ► the office I work in periodically,

00:10:22 ◼   ► who actually launched Briefs, which is an awesome product

00:10:25 ◼   ► if you're interested in, for rapid prototyping.

00:10:28 ◼   ► But he launched that on Wednesday,

00:10:29 ◼   ► so definitely check that out.

00:10:31 ◼   ► But we were both in this mode of getting ready to launch

00:10:33 ◼   ► and getting ready to launch.

00:10:34 ◼   ► And then we were just here till the late hours

00:10:37 ◼   ► getting everything ready.

00:10:38 ◼   ► He was working on his issues.

00:10:39 ◼   ► I was working on my issues.

00:10:41 ◼   ► And that first launch day is always intimidating.

00:10:44 ◼   ► No matter how well you plan for it, no matter how much you think you're set, there will

00:10:47 ◼   ► always be something that comes up.

00:10:49 ◼   ► There will always be something that catches you up and tricks you.

00:10:52 ◼   ► There were some assumptions that I was making about the kinds of feeds that people would

00:10:58 ◼   ► have or even just like my test set of feeds wasn't a good representation of kind of what

00:11:04 ◼   ► some people have and so there are all kinds of parsing errors and load problems.

00:11:07 ◼   ► And it's like, I love that it's a cloud service, though,

00:11:10 ◼   ► where I can kind of-- I went into-- and I think

00:11:12 ◼   ► I mentioned this last time.

00:11:13 ◼   ► I've structured a lot of it in terms

00:11:15 ◼   ► of this very queue-based process.

00:11:17 ◼   ► And so it's nice that as my queues started

00:11:19 ◼   ► to get out of control, and rather

00:11:21 ◼   ► that things were being put in faster than they were being

00:11:25 ◼   ► processed, I could just spin up some more workers

00:11:28 ◼   ► and a little more processes to go through and run the imports,

00:11:30 ◼   ► run all the things.

00:11:31 ◼   ► And so I definitely think that validates

00:11:33 ◼   ► a lot of that concept that I was doing of saying,

00:11:35 ◼   ► I want to build a web server that

00:11:38 ◼   ► has this reliability that's built in from a Q-based

00:11:41 ◼   ► approach.

00:11:41 ◼   ► And it also works out nicely.

00:11:42 ◼   ► I've had nodes go down in my processing queue,

00:11:45 ◼   ► but that's fine.

00:11:46 ◼   ► I have to deal with retrying those tasks.

00:11:49 ◼   ► But other than that, other things just

00:11:51 ◼   ► pick up the slack and keep working.

00:11:53 ◼   ► So I definitely recommend that approach,

00:11:54 ◼   ► and it seems to have worked well.

00:11:56 ◼   ► And I'm delighted to say that now I'm

00:11:57 ◼   ► able to actually record this episode

00:11:59 ◼   ► and to take a step back.

00:12:00 ◼   ► Things have settled down.

00:12:02 ◼   ► Things are working as planned.

00:12:03 ◼   ► Last night I got up in the middle of the night

00:12:06 ◼   ► to do some server upgrades, do some changes there.

00:12:09 ◼   ► I turned out one of my big database machines

00:12:11 ◼   ► didn't quite have enough memory, so I upgraded

00:12:13 ◼   ► that and a few other things.

00:12:15 ◼   ► But so far, things are good.

00:12:17 ◼   ► And things are settling down.

00:12:18 ◼   ► And I like that I can now sit back and start

00:12:20 ◼   ► focusing on features again.

00:12:21 ◼   ► Like, now that I've got the infrastructure in place,

00:12:23 ◼   ► now that I've got the system to a place

00:12:25 ◼   ► that it's stable and solid, that's really exciting to me

00:12:30 ◼   ► and kind of to be able to be heading in that direction.

00:12:33 ◼   ► And it's just kind of fun.

00:12:34 ◼   ► I mean, I love that I build-- I love building things

00:12:38 ◼   ► that I use on a regular basis.

00:12:40 ◼   ► And it's kind of part of one of the things

00:12:42 ◼   ► that I'd struggled with initially

00:12:43 ◼   ► with some of my earlier apps.

00:12:45 ◼   ► I-- were things that I thought were good ideas or interesting

00:12:48 ◼   ► things in the marketplace.

00:12:50 ◼   ► And what I found is it was very hard for me

00:12:52 ◼   ► to stay motivated in creating those and sustaining them,

00:12:55 ◼   ► especially in terms of doing updates and keeping them going,

00:12:58 ◼   ► when I didn't really use them on a regular basis.

00:13:01 ◼   ► And that's part of why I made Check the Weather, you know,

00:13:02 ◼   ► weather app that I use all the time, because I need to constantly know what the weather

00:13:06 ◼   ► is like, what it's going to be like that day.

00:13:08 ◼   ► And now I have an RSS reader, which is something that I use on a regular regular, you know,

00:13:12 ◼   ► I use constantly.

00:13:13 ◼   ► You know, it's probably the probably the second or third most used app on my phone.

00:13:18 ◼   ► It's probably Tweetbot first, probably it and then mail.

00:13:22 ◼   ► So it's pretty, it's pretty high there in terms of something that I use.

00:13:25 ◼   ► And so now it's great because I have all these ideas and motivations to make it better.

00:13:29 ◼   ► I love aligning those two interests,

00:13:30 ◼   ► so that I'm excited and motivated

00:13:32 ◼   ► to make the product better.

00:13:34 ◼   ► And I'm excited and motivated to share that with other people,

00:13:38 ◼   ► and hopefully let them benefit from that experience as well.

00:13:42 ◼   ► All right, so that's it about Feed Wrangler for today.

00:13:44 ◼   ► If you have questions about the process, the launch process,

00:13:47 ◼   ► specific things in the thing, definitely send me an email,

00:13:49 ◼   ► david@developingperspective.com.

00:13:51 ◼   ► And I'd be happy to address them on the show.

00:13:53 ◼   ► I'll probably be talking about a little bit of post-mortem

00:13:56 ◼   ► over the next week or two.

00:13:58 ◼   ► otherwise kind of random notes. I did get a ticket to WWDC. I

00:14:02 ◼   ► don't think I think they went on sale after I recorded the last

00:14:07 ◼   ► show. So that was kind of exciting. I was just I just

00:14:09 ◼   ► happened to get it. I was, you know, sitting there, retry,

00:14:11 ◼   ► retry, retry, and, you know, happened to be one of the lucky

00:14:15 ◼   ► few who got a ticket that way. So I'll definitely be out there

00:14:17 ◼   ► in California, in San Francisco for WWDC. If you're around, you

00:14:21 ◼   ► know, of course, let me know we'll try and meet up exactly how

00:14:23 ◼   ► that works. It's always a bit complicated, but definitely

00:14:25 ◼   ► look for me in San Francisco then. And otherwise, yeah, it's been a busy week, a lot going on,

00:14:32 ◼   ► and I hope you like Feed Wrangler. I hope you, if you're a listener to the show, if

00:14:35 ◼   ► you're a frequent, if you feel like you get something out of it, I would definitely appreciate

00:14:39 ◼   ► your support if you at least check it out, take a look, see if it's something that you

00:14:41 ◼   ► want to do. I get a lot of people who ask, you know, what can I do to support developing

00:14:46 ◼   ► perspective? The best thing is to, you know, support the products that I make to allow

00:14:50 ◼   ► me to keep doing this. All right, that's it for today's show. As always, questions, comments,

00:14:54 ◼   ► concerns and complaints, I'm on Twitter @_DavidSmith, DavidSmith@AppNet, and have a great week.