This form does not yet contain any fields.
    Search
    Monday
    Sep092013

    Sunstroke 1.6

    My blog, as is often the case with these things, has turned into an almost complete non-entity. It's gotten to the point where I only seem to blog about new releases of my app, Sunstroke. Well, unfortunately, now is not the time I will break that streak because, today, I'm incredibly excited to announce the release of Sunstroke 1.6, which makes Sunstroke into the app I've always wanted it to be.

    This new version introduces a lot of new features and bug fixes, but the stand-out feature is full-text, saved searches. As of version 1.6, you can search across every feed and every article currently in Sunstroke's database. That includes all of your Kindling, everything belonging to any of your groups, and, most importantly, all of your Sparks. (For those of you who aren't using Sparks, you really, really need to start. I wrote a long article about how to use Fever to its full potential that you might find useful.) Not only can you use Sunstroke to search for something that interests you now, but, more importantly, you can save an unlimited (with in-app purchase…more on that later) number of searches. These saved searches update automatically every time Sunstroke syncs with Fever. Therefore, you'll never again miss any news related to your favorite football team ("Green Bay Packers"), your most-lusted-after consumer electronics device ("iPhone 5S"), or yourself ("Anthony Drendel"). Since Sunstroke searches across Kindling, groups, and Sparks, you could drastically reduce the number of feeds you subscribe to in Kindling or groups while remaining confident that you are not missing anything about any of the topics that interest you most. Remember, RSS shouldn't be a burden. Put most of your feeds in Sparks and use Hot Links and Sunstroke's new saved searches to read the hottest news about the topics you care most about.

    Now, let's talk about this ugly in-app purchase business. Sunstroke, as all of my customers know, costs $5US and, as such, qualifies as an "expensive" iOS app. Therefore, the idea of me charging another $5US to unlock unlimited saved searches seems almost greedy. (Let me be clear, every user gets one saved search for free, and the in-app purchase button can be easily and permanently hidden in Settings.app > Sunstroke > User Interface > Hide In-App Purchase.) My intention is certainly not to be greedy, and I hope, by the end of this post, you won't see me as greedy. Up until July 2013, I had been treating Gone East LLC (my software development company) as a hobby. I had a full-time job that was paying the bills. Consequently, I didn't much care about earning a decent salary from my app sales. At the beginning of July my contract with my previous employer expired, and I decided to make a change and try to make a living off of my software development. Over the years, many of my users have said that they would love to give me more money (partially because of the huge improvements I've made to Sunstroke since I first released it). I added in-app purchase to Sunstroke in version 1.6 in order to give my users an opportunity to support me. I don't want to pressure anyone into giving me more money than they can comfortably give. So, all of my users get one saved search for free. Also, you can hide the in-app purchase button by going to Settings.app > Sunstroke > User Interface > Hide In-App Purchase. That being said, I appreciate the positive feedback and support my users have given me over the years.

    Saturday
    Jun222013

    Sunstroke: past and present

    Sunstroke 1.5 has just been released to the App Store. This update isn't a feature update. Rather, I focused all my energy on improving the user interface and user experience of the app.

    Before I talk about the specific changes I made to Sunstroke, let me give you the backstory of the app. I first started working on Sunstroke back in the days of iPhone OS 3 (yes, it was called iPhone OS, not iOS, back then). I was living in China and, up until that point, had been using Google Reader and NetNewsWire on my iPhone. Living in China, I was constantly worried that the Chinese government was going to block all access to Google services. Since I was (and still am) such a news junkie, that would have really hurt. So, when I heard that Shaun Inman had added an API to his self-hosted RSS reader, Fever, I got really excited. I immediately bought a copy and installed it on a shared host in Hong Kong. I loved the design of Fever, and I really loved the idea of the hot links list (even though, in practice, it takes a lot of effort to make it really useful). The biggest disadvantage of Fever was that there were no iPhone apps for it. Being a budding iPhone developer with one app in the App Store—the unlamented, long-discontinued Expat Eating—I immediately started developing what was to become Sunstroke. I was quite inexperienced and the resulting app was nothing to be proud of (except for the syncing system, which lives on to this day in Sunstroke and remains the fastest syncing system for Fever on any platform). In fact, to be completely honest, the app was a mess. However, it synced with Fever, downloaded all of my feeds, and could save to Instapaper. At that time, I never imagined that, one day, I would make Sunstroke into a product. Well, a little less than two years ago, I decided to spend some time developing Sunstroke into a product. I spent the next few months making Sunstroke 1.0 feature-complete. Being poor, I couldn't afford a designer. So, the resulting product was (to put it generously) bland, but many of my fellow Fever users were pretty excited to have a native iPhone client for Fever.

    Sunstroke 1.0 main view

    For most of the first year Sunstroke was available, I managed to sell one or two copies a day. I can't remember exactly, but I'm pretty sure my total income from Sunstroke was less than $1500 for the first twelve months it was available. During that time, I added a lot of features, but the design didn't radically change until version 1.3. Since I had only earned $1500 total from the app, there was no possibility of hiring a real designer to update Sunstroke's appearance. I had to muddle along by myself. I improved the UI by constantly trying new ideas, iterating on those ideas, and keeping the ones that seemed to look good to me. Even then, although it began to look a lot more modern (modern, as of two weeks ago before iOS 7 was announced), it was still predominantly gray and unexciting.

    Sunstroke 1.3 items list view

    People seemed to be pretty happy with it overall (I've managed to hold on to a 4.5 star rating worldwide in spite of—or maybe because of—Sunstroke's $5 price tag). However, as you may have heard, Google Reader is shutting down soon. All of a sudden, tons of app developers, who previously had never even mentioned Fever, decided that it was a good idea to build Fever support into their apps. Sunstroke, which never before had had any real competition, was suddenly going to be just one Fever client among many. It was obviously necessary to work on bringing Sunstroke's UI/UX up to par.

    The biggest improvement I wanted to make to Sunstroke was to add more color to the interface. Choosing interface colors is really hard, though, and I still didn't have any money for a designer. The second most important improvement I wanted to make was to make browsing through your RSS items faster. Thankfully, an idea occurred to me that seemed to address both of these issues. I decided to use the colors contained in your feeds' tiny favicons and use them to add more color to the interface and also to make the items easier to distinguish from one another. I also used the favicons' colors to color the background of the cell when you swipe it to mark the items as read or saved or to send it to one of the many sharing services I support (Instapaper, Readability, Pocket, Pinboard, or Pinbook). Even after doing that, I still felt that the interface needed a bit more color to really make it special and more informative. So, app-wide, I added a beautiful blue color to complement the red color that already pervaded Sunstroke. Those two colors serve two primary purposes in the app. In the hot links view, the temperatures of the links vary from red (really "hot) to blue (relatively "cool"). In the standard items list, the publishing date of the items will vary from red (published recently) to blue (published long ago).

    Sunstroke 1.5 hot link items listSunstroke 1.5 hot links view


    Those changes did a lot to improve the appearance and usefulness of Sunstroke, but, to be honest, the lists of items in Sunstroke had always looked pretty decent. By far, the worst-looking part of Sunstroke was the main "groups" screen. It was always dull and difficult to differentiate between Fever's super groups (Hot Links, Kindling, Saved, and Sparks) and your groups of feeds (e.g., "Technology" or "Comics"). So, I changed the background color of the groups of feeds and added a drop shadow to make them look recessed (similar to what I had already done in the list of hot links). I still wasn't satisfied with the state of the main screen. It was too static and uninformative. Additionally, although the real strength of Fever lies in its hot links list, I found that many users didn't ever access it. I wanted to do something that would prompt my users to take advantage of it. Therefore, I decided to add a featured link to the "Hot" links cell. The featured link updates whenever syncing completes and is tappable. Tapping the featured link will open the built-in web browser and take you directly to the article. I think it looks great, and I use it all the time. (It's especially useful if you set your hot links list to be from the past "day" starting "now." )

    Sunstroke 1.5 main view

    I made a bunch of other improvements to Sunstroke in version 1.5, but the most critical was a complete re-thinking of the iPad version. In version 1.4, Sunstroke became a universal app. The iPad version was really rough, though. For the most part, it was simply a blown-up version of the iPhone app. Although I'm a big believer in designing an app from scratch for its intended device, in this case, my users were clamoring for an iPad Fever client. I didn't have enough time to build a brand-new app. Therefore, I adapted Sunstroke's iPhone interface to the iPad. I wasn't terribly proud of it, but it worked and satisfied most of my users. For version 1.5, I wanted to make the iPad version more "natively iPad" and more pleasant to use. The biggest change I made was keeping the main groups view and the items lists both visible at the same time. I also modified the text sizes, line heights, and margins of the article view to make it easier to read on the large screen. The iPad version of Sunstroke has finally become a first-class iOS citizen and, for the first time, I find myself using the iPad version more than the iPhone version.

    Sunstroke 1.5 hot links list iPad

    Well, I have a lot more to say about Sunstroke, and there are many improvements in version 1.5 that I haven't mentioned, but this post is already too long as it is. I hope you all love the new version of Sunstroke. If you haven't purchased it yet, please buy Sunstroke from the App Store. If you like it, please, please, please leave a positive review in iTunes. I can't tell you how much that helps. If you don't like Sunstroke, please contact me and tell me why.

    Thanks again to all of my customers for buying Sunstroke and supporting me. I really appreciate it.

    Monday
    Jun172013

    Good photography

    I don't understand photography. Although I can recognize good photography (I know it when I see it), I have absolutely no idea how to produce it. I don't know how to "line up a shot" (hell, I don't even really understand what that phrase means), and I know less than nothing about how to work a "real" camera.

    The same is not true for my good friend, Colin Bissessar. He is the photographer behind Changsha Notes, a blog focused on street photography. He lives in Changsha (长沙), Hunan, China. As anyone who has ever lived in Changsha can attest, the city is nothing special. It's a normal Chinese city—overpopulated, drab, and grimy. Colin, however, is able to take the most marvelous shots you can imagine of this city. Through his lens, Changsha is transformed into a vibrant and truly beautiful place.

    Up until recently, Colin's blog was a well-kept secret, known only to a few of his close friends. Thankfully, he's started to get some of the recognition his skill deserves. A few days ago, Freddy Robles, a street photographer in New York City, interviewed Colin about his photography. It's a wonderful read. Check it out.

    Saturday
    Oct062012

    Chinese zoos

    I've been to two zoos in China. The first was the Beijing Zoo. It was terrible and depressing. The second was the (old, apparently) Changsha Zoo. It was terrible and depressing. My friend, Colin, recently was dragged along to the new Changsha Zoo. Looking at his pictures, I can't believe how much better this zoo is than either of the others. Wonderful to see progress made on animal rights in China.

    Tuesday
    Sep252012

    iOS Maps and China (redux)

    Here are a couple more examples of the differences between Google Maps in iOS 5 and Apple's iOS Maps in iOS 6. First, Google Maps on iOS 5 (fully zoomed in). Second, iOS 6 Maps zoomed out a bit to cover approximately the same area.

    Google Maps

    Apple Maps

    Monday
    Sep242012

    iOS Maps and China

    It seems like people really hate the new Maps in iOS 6. Now, I'm not disputing that Maps does give a lot of strange results to a lot of people all around the world, but for a large, large number of people, iOS 6 Maps has been a huge improvement over Google Maps. I'm talking about those of us who live in China (you know, the place with 1.3+ billion people and the second-largest economy in the world). Google Maps was always pretty terrible here. In the big cities and tourist centers, it was passable. Once you left China's large metropolises, however, you were pretty much on your own. You could usually see expressways, highways, and even a lot of smaller roads, but there were very, very few shops, restaurants, banks, ATMs, etc. listed. That has changed with iOS 6. Apple has chosen AutoNavi to provide map services within China. That was a smart move, because AutoNavi is a local Chinese company that provides very detailed maps of China. Google was never going to be able to map China as well as it has other parts of the globe because the Chinese government doesn't trust the motives of foreign companies—and it especially doesn't trust Google. (see update below)

    Well, don't take my word for it. Check out the difference yourself. The first map is Google Maps on iOS 5. The second is Apple's iOS Maps on iOS 6. This shows the same location just outside of Lijiang, Yunnan. Lijiang is one of the most popular tourist destinations in China. Both Google Maps and iOS Maps covers the center of the city pretty well. As you can see, though, if you move a couple of miles out of the city center, Google Maps becomes pretty useless pretty quickly.

    Google Maps

    Apple Maps

    Update: Looks like I was wrong about Google Maps not using data from AutoNavi. Google also used (some, all?) maps from AutoNavi. I still maintain that iOS 6 Maps is way better than iOS 5 Maps for users in China.

    Update: People are taking me to task for saying that iOS 6 Maps is better than the previous Maps (powered by Google). As someone who lives in China and has to find my way around, the superiority of iOS 6 Maps is clear. In my experience, the new version of Maps zooms in much further, shows more points of interest, clearly labels banks and cellphone shops (China Mobile, China Unicom, and China Telecom), and gives the locations of ATMs and public restrooms (my original iPad running iOS 5 with Google-powered Maps doesn't show either of those things). The killer feature, though, is that iOS 6 Maps shows both English names and Chinese characters for everything, whereas Google-powered Maps only shows the English translation (on iOS devices whose language is English). This is killer. English translations are almost useless in China because—guess what—Chinese people don't speak English. For those of us who can read (at least some) Chinese, this feature is even more important. We can ask for places by name instead of just pointing at its location on a map. So, yes, I may have been wrong to say that Google doesn't use AutoNavi's maps (although, I can't see how they use the same provider since Google-powered Maps and iOS 6 Maps show such wildly different maps for the same location), and for that I apologize. Nonetheless, looking at Google-powered Maps and iOS 6 Maps side-by-side, I would choose iOS 6 Maps every time.

    Wednesday
    Sep122012

    Sunstroke review roundup

    I'm thrilled to say that Sunstroke has been starting to get a lot of attention. The reviews/mentions are scattered all over the web, though, so I thought that I'd collect them here for anyone who might be interested. From newest to oldest:

    I really appreciate all of the work the people listed above put into writing about Sunstroke. It means a lot to me to see something I worked hard to create used by so many different people. That's all a developer could ever hope for (well, that and obscene wealth). If I forgot to mention any reviews, send me an email at anthony at goneeast.

    Wednesday
    Sep052012

    Why and how I use Fever

    Let's get this out of the way at the beginning. I'm the developer of Sunstroke—the first (and still best, in my admittedly biased opinion) iPhone client for Shaun Inman's Fever. I think the combination of Fever and Sunstroke is the single best way to stay informed and up to date. I want everyone who reads this to go out and buy Fever and Sunstroke. You'll be happy you did.

    Why use Fever?

    After all, everyone knows that RSS is dead. Besides, Twitter is a much better way to keep up with the news, right?

    Well, I love Twitter, but it has been undergoing some fairly profound changes recently. These changes threaten to undermine how much control Twitter's users have over their information and the ways they can view the tweets of the people they follow. Still, ignoring whatever might happen to it in the future, using Twitter as it exists today to keep informed has a number of downsides. Twitter's greatest limitation (or, depending on your perspective, its greatest strength) is that it severely limits the length of tweets. This inevitably forces a user to follow an embedded link or search elsewhere for detailed information about whatever topic is being tweeted about. This extra step takes time and acts as a barrier between a reader and the information. Worse, if you do follow a link in a tweet, you might be wasting your time. The brevity of Twitter posts and the prevalent use of URL shorteners means that you don't always know what you're going to get when you click on a link in a tweet.

    In general, RSS is a better way to follow the news. Many RSS feeds are full-text feeds that let you read every article posted to the sites you subscribe to. All the information you require is right there. No clicking on opaque shortened URLs to find out details. Of course, this too has a downside. RSS creates too much noise. Perusing high-volume sites like Engadget or The Verge takes forever.

    Fever solves this problem by doing two things. First, it hides most of your feeds away from sight—freeing you from the compulsion to constantly refresh Fever to see what's new. Second, it curates (everyone's favorite buzzword!) your feeds and pulls out the most frequently linked-to items. Fever turns these items into a "Hot" list ranked by temperature. The more popular an item is, the higher its temperature is. One of the greatest features of Fever's Hot list is that its items don't necessarily have to come from feeds you've subscribed to. For example, a couple of weeks ago, when Twitter posted its infamous "Changes coming in Version 1.1 of the Twitter API" announcement, it very quickly made it to the top of my Hot list, even though I don't subscribe to Twitter's development feed. The announcement reached the top of my Hot list because so many sites I do subscribe to (Daring Fireball, The Brooks ReviewThe Unofficial Apple Weblog, etc.) linked to it. Thanks to Fever's Hot list, you don't have to spend all of your free time scrolling through endless feeds trying to find interesting items. You can go to Fever (or open up Sunstroke on your iPhone), check to see if there are any new Hot items, and then go back to whatever it was you were doing.

    Fever Hot list

    Sunstroke Hot list

    How should Fever be used?

    Fever is unique among RSS readers in that it doesn't simply organize feeds according to groups ("Technology," "Politics," "Comics," etc.). Instead, it divides your feeds into two supergroups: Kindling and Sparks. Kindling (which can be further separated into user-defined groups like the previously-mentioned "Technology," "Politics," "Comics," etc.) contains the feeds that you want to see every update for. Ideally, the Kindling supergroup shouldn't contain too many feeds—just the key ones. Sparks contains everything else. In Fever and Sunstroke, Sparks is visible, but it's way down at the bottom and its count of unread items is never shown. It's designed to never be perused (although it can be, if you're particularly masochistic). The key to using Fever effectively is to know which feeds belong in Kindling and which belong in Sparks.

    The only feeds you should put in Kindling are those whose updates are must-read. For me, that includes Ars Technica (full-text subscriber feed), Daring Fireball, The Brooks Review (full-text member feed), Marco.org, Marginal Revolution, Moneybox, Tea Leaf Nation, China Law Blog, Changsha Notes, and a handful of others. I never want to miss anything posted to those sites.

    Everything else goes in Sparks. For me, that is the other 400+ feeds I subscribe to. I never read them directly. I only see their posts when they are promoted to the Hot list.

    Of course, building an effective Hot list is not as simple as just throwing hundreds of feeds into Sparks. There are some kinds of feeds that contribute to building a valuable Hot list, and others that are completely useless.

    The best feeds to add to Sparks are those with a lot of links to other sites. For this, the best are "linked list" feeds whose authors find articles that you consistently enjoy. Daring Fireball, Marco.org, and The Brooks Review are terrific examples of linked list sites. Of course, for most people, those sites are so interesting that they belong in Kindling. If you can survive not reading every post those sites make, though, you'd be well served putting them in Sparks. Another category of feeds that belong in Sparks are high-volume blogs, such as Gizmodo, Engadget, and The Verge. These and other similar blogs often link out to other sites. Plus, the sheer number of posts these kinds of sites make every day would overwhelm you if placed in Kindling. You should also add some "most popular articles" feeds from one or more of the various bookmarking sites. Personally, I love and heavily use Pinboard. I subscribe to Pinboard's "Popular items from Pinboard" feed. You may also want to subscribe to some Pinboard tags. For example, I subscribe to Pinboard's "China" tag feed. These particular feeds should never be read directly, but they do a great job of pushing interesting articles to the top of your Hot list. Another good source is Alltop. Alltop allows you to subscribe to targeted RSS feeds that collect the top articles around the Web. For instance, if you are interested in sports, subscribe to the RSS feed for Alltop's sports page. Again, because of the huge number of articles Alltop posts every day, its feeds don't belong anywhere near your Kindling supergroup. Stash them in Sparks.

    The worst kinds of feeds to add to Sparks are those from traditional media outlets like the New York Times, Washington Post, and BBC. These feeds usually don't include the full text of their articles and almost never include any links. The Guardian does provide full-text feeds, but doesn't include many links in the articles. Occasionally, you can find some blogs associated with traditional media companies that are useful. One example would be James Fallows' blog for The Atlantic. In most cases, though, steer clear of traditional media.

    As you can probably guess, it's very easy to build a valuable Hot list of technology-related links. Unfortunately, it's surprisingly difficult to build a comprehensive Hot list featuring links covering many different topics. If this is your goal, you must get creative. I, for example, wanted to include more general-interest news in my Hot list. So, first, I subscribed to Google News' "World News" feed. Then, I subscribed to other, more targeted Google News feeds (e.g., "Chicago News" and "China News"). After that, I subscribed to the Huffington Post. This turned out to be a gold mine, because, at the bottom of the Huffington Post's home page, it lists every news source and blog that contributes to its news coverage. I went through that list and subscribed to the feeds from the ones that seemed the most interesting. After doing all of this, my Hot list contained both technology-related links and general news links. Success!

    It's not easy to build a valuable Hot list, but the reward—a short, well-curated list of the hottest news that doesn't take all day to read through—is well worth it.

    Update: Ben Brooks mentioned another reason to use Fever. Just as an aside, take a look at the URL of Ben's post. This is something that I think everyone should suffer from. Amiright, ladies?

    Tuesday
    May222012

    Now that's professionalism

    If you haven't already, stop what you're doing and go listen to Dan Benjamin's Regarding The Talk Show. Classy. Pitch-perfect.

    I take back what I said previously about Dan (now, it's time for John Gruber to be classy and professional).

    Saturday
    May192012

    Unprofessional

    Earlier today, we learned that John Gruber has decided to leave the 5by5 podcasting network to join the Mule Radio Syndicate. For any fans of Gruber and Dan, this came as quite a surprise. I think I speak for a lot of fans of The Talk Show when I say that I'll really miss the interplay between them. I wish Gruber the best on his new show, though. Of course, I'll continue to read Daring Fireball, and I'll also continue to listen to a bunch of shows on 5by5, especially Hypercritical, Amplified, Build and Analyze, The Critical Path, and Back to Work.

    I'm not going to talk about whether or not Gruber made a bad decision switching to Mule Radio. Who knows? Maybe his show will become better than ever. Also, I'm certainly not going to argue that Gruber had no right to switch networks. Although Gruber and Dan were (are?) friends and had created an incredibly popular show together, every man has to make the choices that he thinks are best for himself and his family. However, I think both of them have handled this situation absolutely terribly, and I'm disappointed by the lack of respect shown to the fans of the show—many of whom have expressed dismay at the dissolution of their partnership.

    Gruber and Dan are both professionals, but in this they acted almost childishly. We didn't hear anything from Gruber about his move to Mule Radio until his post on Daring Fireball. We didn't hear—and haven't yet heard—anything from Dan about the cancellation of The Talk Show on 5by5. I can understand wanting to the keep the move a secret, but, after the secret was out, both of the guys should have said something publicly about what happened. I don't mean that they should have told everyone everything that led to the split, but, as professionals, they should have amicably acknowledged the split. A simple "I really enjoyed my time on 5by5, but I've decided to try something new" from Gruber and a simple "We'll miss John, but everyone here at 5by5 wishes him the best" from Dan would have sufficed. That would have been the correct (and professional) way to handle this situation. Petulant silence is most definitely the wrong way to deal with it.

    What bothers me most about this whole situation is that Gruber and Dan's behavior (as well as some not-safe-for-work remarks by others) shows a profound lack of respect for the fans of the show. Both of the guys have worked hard to create a show that people care about. They were incredibly successful at this. A lot of people tuned in every week to listen to The Talk Show and, by listening so often, have come to feel like they "know" Gruber and Dan (in the same way that some of the 5by5 hosts have said that they felt like they "knew" Steve Jobs because they followed his life and work so closely). These listeners are the ones who—by tuning in every week, visiting the sponsors, buying T-shirts, and purchasing an iPhone app—made the show possible and profitable. They deserve better than the silence they've received thus far from Gruber and Dan.